UNPKG

stripe

Version:
229 lines (198 loc) 6.39 kB
// File generated from our OpenAPI spec declare module 'stripe' { namespace Stripe.V2 { export type Event = | Stripe.Events.V1BillingMeterErrorReportTriggeredEvent | Stripe.Events.V1BillingMeterNoMeterFoundEvent | Stripe.Events.V2CoreEventDestinationPingEvent; } namespace Stripe.Events { /** * Occurs when a Meter has invalid async usage events. */ export interface V1BillingMeterErrorReportTriggeredEvent extends V2.EventBase { type: 'v1.billing.meter.error_report_triggered'; // Retrieves data specific to this event. data: V1BillingMeterErrorReportTriggeredEvent.Data; // Object containing the reference to API resource relevant to the event. related_object: Event.RelatedObject; // Retrieves the object associated with the event. fetchRelatedObject(): Promise<Billing.Meter>; } namespace V1BillingMeterErrorReportTriggeredEvent { export interface Data { /** * Extra field included in the event's `data` when fetched from /v2/events. */ developer_message_summary: string; /** * This contains information about why meter error happens. */ reason: Data.Reason; /** * The end of the window that is encapsulated by this summary. */ validation_end: string; /** * The start of the window that is encapsulated by this summary. */ validation_start: string; } namespace Data { export interface Reason { /** * The total error count within this window. */ error_count: number; /** * The error details. */ error_types: Array<Reason.ErrorType>; } namespace Reason { export interface ErrorType { /** * Open Enum. */ code: ErrorType.Code; /** * The number of errors of this type. */ error_count: number; /** * A list of sample errors of this type. */ sample_errors: Array<ErrorType.SampleError>; } namespace ErrorType { export type Code = | 'archived_meter' | 'meter_event_customer_not_found' | 'meter_event_dimension_count_too_high' | 'meter_event_invalid_value' | 'meter_event_no_customer_defined' | 'missing_dimension_payload_keys' | 'no_meter' | 'timestamp_in_future' | 'timestamp_too_far_in_past'; export interface SampleError { /** * The error message. */ error_message: string; /** * The request causes the error. */ request: SampleError.Request; } namespace SampleError { export interface Request { /** * The request idempotency key. */ identifier: string; } } } } } } /** * Occurs when a Meter's id is missing or invalid in async usage events. */ export interface V1BillingMeterNoMeterFoundEvent extends V2.EventBase { type: 'v1.billing.meter.no_meter_found'; // Retrieves data specific to this event. data: V1BillingMeterNoMeterFoundEvent.Data; } namespace V1BillingMeterNoMeterFoundEvent { export interface Data { /** * Extra field included in the event's `data` when fetched from /v2/events. */ developer_message_summary: string; /** * This contains information about why meter error happens. */ reason: Data.Reason; /** * The end of the window that is encapsulated by this summary. */ validation_end: string; /** * The start of the window that is encapsulated by this summary. */ validation_start: string; } namespace Data { export interface Reason { /** * The total error count within this window. */ error_count: number; /** * The error details. */ error_types: Array<Reason.ErrorType>; } namespace Reason { export interface ErrorType { /** * Open Enum. */ code: ErrorType.Code; /** * The number of errors of this type. */ error_count: number; /** * A list of sample errors of this type. */ sample_errors: Array<ErrorType.SampleError>; } namespace ErrorType { export type Code = | 'archived_meter' | 'meter_event_customer_not_found' | 'meter_event_dimension_count_too_high' | 'meter_event_invalid_value' | 'meter_event_no_customer_defined' | 'missing_dimension_payload_keys' | 'no_meter' | 'timestamp_in_future' | 'timestamp_too_far_in_past'; export interface SampleError { /** * The error message. */ error_message: string; /** * The request causes the error. */ request: SampleError.Request; } namespace SampleError { export interface Request { /** * The request idempotency key. */ identifier: string; } } } } } } /** * A ping event used to test the connection to an EventDestination. */ export interface V2CoreEventDestinationPingEvent extends V2.EventBase { type: 'v2.core.event_destination.ping'; // Object containing the reference to API resource relevant to the event. related_object: Event.RelatedObject; // Retrieves the object associated with the event. fetchRelatedObject(): Promise<V2.EventDestination>; } } }