Everything the published npm package exports from src/index.ts, with the signature of every
public member. This file is the contract consumers depend on.
Generated — do not edit by hand. Regenerate with npm run api-surface:update.
tests/apiSurface.test.ts fails when the code and this file disagree. Renaming, removing
or reshaping anything below breaks consumers and requires a major version bump; adding to it
requires a minor one.
DEFAULT_MAX_PAYLOAD_BYTES: numberDEFAULT_MAX_RESPONSE_BYTES: numberDEFAULT_REQUEST_TIMEOUT_MS: numberconstructor(eventType: string, payload: string, payloadContentType: string, labels: Record<string, string>, metadata?: Record<string, string>, occurredAt?: Date, eventId?: string): Event
eventId?: string
eventType: string
labels: Record<string, string>
metadata?: Record<string, string>
occurredAt?: Date
payload: string
payloadContentType: stringconstructor(service: string, resourceType: string, verb: string): EventType
static fromString(s: string): EventType | Hook0ClientError
resourceType: string
service: string
verb: stringconstructor(apiUrl: string, applicationId: string, token: string, debug?: boolean, options?: Hook0ClientOptions): Hook0Client
sendEvent(event: Event): Promise<string>
upsertEventTypes(eventTypes: string[]): Promise<string[]>constructor(message?: string): Hook0ClientError
static EventSending(eventId: string | undefined, error: Error): Hook0ClientError
static ExpiredWebhook(signed_at: Date, tolerance: number, current_time: Date): Hook0ClientError
static GetAvailableEventTypes(error: Error): Hook0ClientError
static InvalidEventType(s: string): Hook0ClientError
static InvalidSignature(signature: string): Hook0ClientError
static MissingHeader(headerName: string): Hook0ClientError
static PayloadTooLarge(eventId: string, size: number, maximum: number): Hook0ClientError
static RetriesExhausted(eventId: string, attempts: number, waitedMs: number, lastFailure: string): Hook0ClientError
static SignatureParsing(signature: string): Hook0ClientError
static TimestampParsingInSignature(timestamp: string): Hook0ClientErrorconstructor(retryPolicy?: RetryPolicy, requestTimeoutMs?: number, maxPayloadBytes?: number, maxResponseBytes?: number): Hook0ClientOptions
maxPayloadBytes: number
maxResponseBytes: number
requestTimeoutMs: number
retryPolicy: RetryPolicyMAX_ATTEMPTS_CAP: numberMAX_HEADER_BYTES: numberMAX_HEAD_BYTES: numberMAX_RESPONSE_HEADERS: numberconstructor(maxAttempts?: number, initialBackoffMs?: number, maxBackoffMs?: number, maxTotalDelayMs?: number): RetryPolicy
static disabled(): RetryPolicy
attempts(): number
backoffCeilingMs(retry: number): number
delaysMs(draws: number[]): number[]
initialBackoffMs: number
maxAttempts: number
maxBackoffMs: number
maxTotalDelayMs: numberconstructor(timestamp: number, v0: Buffer | null, h: string[], v1: Buffer | null): Signature
static PAYLOAD_SEPARATOR: string
static PAYLOAD_SEPARATOR_BYTES: Buffer<ArrayBuffer>
static SIGNATURE_PART_ASSIGNATOR: string
static SIGNATURE_PART_HEADER_NAMES_SEPARATOR: string
static SIGNATURE_PART_SEPARATOR: string
static parse(signature: string): Signature
h: string[]
timestamp: number
v0: Buffer<ArrayBufferLike>
v1: Buffer<ArrayBufferLike>
verify(payload: Buffer, headers: Headers, secret: string): booleanapplication_id: string
name: string
organization_id: stringapplication_id: string
consumption: ApplicationInfoConsumption
name: string
onboarding_steps: ApplicationInfoOnboardingSteps
organization_id: string
quotas: ApplicationInfoQuotasevents_per_day?: numberevent: ApplicationInfoOnboardingStepsEvent
event_type: ApplicationInfoOnboardingStepsEventType
subscription: ApplicationInfoOnboardingStepsSubscription"ToDo" | "Done""ToDo" | "Done""ToDo" | "Done"days_of_events_retention_limit: number
events_per_day_limit: numbername: string
organization_id: stringcreated_at: string
deleted_at?: string
name?: string
token: stringapplication_id: string
name?: stringconstructor(transport: Transport): ApplicationSecretsApi
create(body: ApplicationSecretPost): Promise<ApplicationSecret>
delete(applicationSecretToken: string, applicationId: string): Promise<void>
read(applicationId: string): Promise<ApplicationSecret[]>
update(applicationSecretToken: string, body: ApplicationSecretPost): Promise<ApplicationSecret>constructor(transport: Transport): ApplicationsApi
create(body: ApplicationPost): Promise<Application>
delete(applicationId: string): Promise<void>
get(applicationId: string): Promise<ApplicationInfo>
list(organizationId: string): Promise<Application[]>
update(applicationId: string, body: ApplicationPost): Promise<Application>constructor(transport: Transport): ErrorsApi
list(): Promise<Problem[]>event_id: string
event_type_name: string
ip: string
labels: unknown
metadata?: unknown
occurred_at: string
payload_content_type: string
received_at: stringapplication_id: string
event_id?: string
event_type: string
labels: Record<string, string>
metadata?: Record<string, string>
occurred_at: string
payload: string
payload_content_type: stringevent_type_name: string
resource_type_name: string
service_name: string
verb_name: stringapplication_id: string
resource_type: string
service: string
verb: stringconstructor(transport: Transport): EventTypesApi
create(body: EventTypePost): Promise<EventType>
delete(eventTypeName: string, applicationId: string): Promise<void>
get(eventTypeName: string, applicationId: string): Promise<EventType>
list(applicationId: string): Promise<EventType[]>event_id: string
event_type_name: string
ip: string
labels: unknown
metadata?: unknown
occurred_at: string
payload: string
payload_content_type: string
received_at: stringconstructor(transport: Transport): EventsApi
get(eventId: string, applicationId: string): Promise<EventWithPayload>
ingest(body: EventPost): Promise<IngestedEvent>
list(applicationId: string): Promise<Event[]>
replay(eventId: string, body: ReplayEvent): Promise<void>constructor(transport: Transport): EventsPerDayApi
listForApplication(applicationId: string, from?: string, to?: string): Promise<EventsPerDayEntry[]>
listForOrganization(organizationId: string, from?: string, to?: string): Promise<EventsPerDayEntry[]>amount: number
application_id: string
application_name: string
date: string
is_provisional: booleanapplication_id: string
event_id: string
received_at: stringconstructor(transport: Transport): InstanceApi
get(): Promise<InstanceConfig>application_secret_compatibility: boolean
auto_db_migration: boolean
biscuit_public_key: string
cloudflare_turnstile_site_key?: string
formbricks?: InstanceConfigFormbricks
matomo?: InstanceConfigMatomo
password_minimum_length: number
quota_enforcement: boolean
registration_disabled: boolean
support_email_address: stringapi_host: string
environment_id: stringsite_id: number
url: stringname: string
organization_id: string
plan?: OrganizationPlan
role: stringconsumption: OrganizationInfoConsumption
name: string
onboarding_steps: OrganizationInfoOnboardingSteps
organization_id: string
plan?: OrganizationInfoPlan
quotas: OrganizationInfoQuotas
users: OrganizationInfoUsers[]applications?: number
events_per_day?: number
members?: numberapplication: OrganizationInfoOnboardingStepsApplication
event: OrganizationInfoOnboardingStepsEvent
event_type: OrganizationInfoOnboardingStepsEventType
subscription: OrganizationInfoOnboardingStepsSubscription"ToDo" | "Done""ToDo" | "Done""ToDo" | "Done""ToDo" | "Done"label: string
name: stringapplications_per_organization_limit: number
days_of_events_retention_limit: number
events_per_day_limit: number
members_per_organization_limit: numberemail: string
first_name: string
last_name: string
role: string
user_id: stringlabel: string
name: stringconstructor(transport: Transport): PayloadContentTypesApi
list(): Promise<string[]>detail: string
id: ProblemId
status: number
title: string
type: string
validation?: unknownconstructor(status: number, problem: Problem | undefined, detail: string): ProblemError
kind?: ProblemId
problem?: Problem
status: number"OrganizationNameMissing" | "UserAlreadyExist" | "RegistrationDisabled" | "PasswordTooShort" | "PasswordTooLong" | "PasswordSimilarToEmail" | "PasswordSimilarToName" | "PasswordTooCommon" | "PasswordNotDiverseEnough" | "OrganizationIsNotEmpty" | "InvitedUserDoesNotExist" | "InvitedUserAlreadyInOrganization" | "ApplicationNameMissing" | "InvalidRole" | "EventTypeAlreadyExist" | "EventTypeDoesNotExist" | "UnauthorizedWorkers" | "EventAlreadyIngested" | "EventInvalidPayloadContentType" | "EventInvalidBase64Payload" | "EventInvalidJsonPayload" | "LabelsAmbiguity" | "InvalidDateRange" | "AuthNoAuthorizationHeader" | "AuthInvalidAuthorizationHeader" | "AuthApplicationSecretLookupError" | "AuthInvalidApplicationSecret" | "AuthBiscuitLookupError" | "AuthInvalidBiscuit" | "AuthFailedLogin" | "AuthEmailNotVerified" | "AuthEmailAlreadyVerified" | "AuthFailedRefresh" | "AuthEmailExpired" | "TooManyMembersPerOrganization" | "TooManyApplicationsPerOrganization" | "TooManyEventsToday" | "TooManySubscriptionsPerApplication" | "TooManyEventTypesPerApplication" | "JsonPayload" | "Validation" | "NotFound" | "InternalServerError" | "Forbidden" | "RateLimited" | "ServiceUnavailable"constructor(transport: Transport): QuotasApi
get(): Promise<QuotasResponse>enabled: boolean
limits: QuotasResponseLimitsglobal_applications_per_organization_limit: number
global_days_of_events_retention_limit: number
global_event_types_per_application_limit: number
global_events_per_day_limit: number
global_members_per_organization_limit: number
global_subscriptions_per_application_limit: numberapplication_id: stringcreated_at: string
delay_until?: string
event: RequestAttemptEvent
event_id: string
failed_at?: string
http_response_status?: number
picked_at?: string
request_attempt_id: string
response_id?: string
retry_count: number
status: RequestAttemptStatus
subscription: RequestAttemptSubscription
succeeded_at?: stringevent_id: string
event_type_name: stringat?: string
full_processing_ms?: number
since?: string
type: RequestAttemptStatusType
until?: string"waiting" | "pending" | "in_progress" | "successful" | "failed"description?: string
subscription_id: stringconstructor(transport: Transport): RequestAttemptsApi
get(requestAttemptId: string, applicationId: string): Promise<RequestAttempt>
read(applicationId: string, eventEventTypeNames?: string, eventId?: string, maxCreatedAt?: string, minCreatedAt?: string, paginationCursor?: string, subscriptionId?: string): Promise<RequestAttempt[]>body?: string
elapsed_time_ms?: number
headers?: Record<string, string>
http_code?: number
response_error_name?: string
response_id: stringconstructor(transport: Transport): ResponseApi
get(responseId: string, applicationId: string): Promise<Response>biscuit: string
created_at: string
name: string
token_id: stringconstructor(transport: Transport): ServiceTokenApi
create(body: ServiceTokenPost): Promise<ServiceToken>
delete(serviceTokenId: string, organizationId: string): Promise<void>
edit(serviceTokenId: string, body: ServiceTokenPost): Promise<ServiceToken>
get(serviceTokenId: string, organizationId: string): Promise<ServiceToken>
list(organizationId: string): Promise<ServiceToken[]>name: string
organization_id: stringapplication_id: string
created_at: string
dedicated_workers: string[]
description?: string
event_types: string[]
is_enabled: boolean
label_key: string
label_value: string
labels: Record<string, string>
metadata: Record<string, string>
secret: string
subscription_id: string
target: SubscriptionTarget
updated_at: stringapplication_id: string
dedicated_workers?: string[]
description?: string
event_types: string[]
is_enabled: boolean
label_key?: string
label_value?: string
labels?: Record<string, string>
metadata?: Record<string, string>
target: SubscriptionPostTargetheaders: unknown
method: string
type: string
url: stringheaders: unknown
method: string
type: string
url: stringconstructor(transport: Transport): SubscriptionsApi
create(body: SubscriptionPost): Promise<Subscription>
delete(subscriptionId: string, applicationId: string): Promise<void>
get(subscriptionId: string): Promise<Subscription>
list(applicationId: string): Promise<Subscription[]>
update(subscriptionId: string, body: SubscriptionPost): Promise<Subscription>request(request: TransportRequest): Promise<TransportResponse>body?: string
method: string
path: string
query: readonly [string, string][]payload: string
status: numberraiseForStatus(status: number, payload: string): voidreadPayload<T>(status: number, payload: string): TverifyWebhookSignature(signature: string, payload: Buffer, headers: Headers, subscriptionSecret: string, tolerance: number): trueverifyWebhookSignatureWithCurrentTime(signature: string, payload: Buffer, headers: Headers, subscriptionSecret: string, tolerance: number, currentTime: Date): true