openapi: 3.2.0 info: title: Explorer Webhook Event API description: The entire API V2 documentation is interactive and can be tested here. To the right side of every endpoint you will see a box with an example request. You can click on the "Try it" button to send a request to the server right from the docs. You will need to provide an API key by clicking the `ApiKeyAuth_token` blue text. version: 2.0.0 servers: - url: https://api.instantly.ai description: Instantly API Server security: - ApiKeyAuth: [] tags: - name: WebhookEvent description: A webhook event that was sent or attempted to be sent x-group: Webhook Event paths: /api/v2/webhook-events: get: operationId: listWebhookEvent summary: List webhook event tags: - WebhookEvent description: 'Requires one of the following scopes: `webhook_events:read`, `webhook_events:all`, `all:read`, `all:all`' parameters: - schema: type: integer minimum: 1 maximum: 100 example: 10 example: 10 in: query name: limit required: false description: The number of items to return - schema: type: string example: 01956fbd-0eb1-72db-a565-82977a586084 example: 01956fbd-0eb1-72db-a565-82977a586084 in: query name: starting_after required: false description: The ID of the last item in the previous page - used for pagination. You can use the value of the `next_starting_after` field from the previous response. - schema: type: boolean example: true examples: 'true': value: true 'false': value: false in: query name: success required: false description: Filter by success status - schema: type: string format: date example: '2024-01-01' example: '2024-01-01' in: query name: from required: false description: Inclusive start of the window (YYYY-MM-DD). - schema: type: string format: date example: '2024-01-31' example: '2024-01-31' in: query name: to required: false description: Inclusive end of the window (YYYY-MM-DD). - schema: type: string example: https://webhook.site/unique-url examples: https://webhook.site/unique-url: value: https://webhook.site/unique-url lead@example.com: value: lead@example.com in: query name: search required: false description: Search by exact webhook URL or lead email match responses: '200': description: The list of Webhook Event content: application/json: schema: type: object properties: items: type: array description: The list of Webhook Event items: $ref: '#/components/schemas/WebhookEvent' next_starting_after: type: string examples: - 019ffad2-9cb3-7392-a3d7-861abf2f6361 - '2026-08-13T11:12:14.515Z' description: The filter for getting the next items after this one, this could either be a UUID, a timestamp, on an email depending on the specific API example: 019ffad2-9cb3-7392-a3d7-861abf2f6361 additionalProperties: false required: - items '401': description: This request is unauthorized (either the Authorization header is missing or invalid, or the API key has been revoked) content: application/json: schema: type: object properties: statusCode: type: number enum: - 401 examples: - 401 example: 401 error: type: string enum: - Unauthorized examples: - Unauthorized example: Unauthorized message: type: string examples: - Missing Authorization header example: Missing Authorization header required: - statusCode - error - message '402': description: This request cannot be fulfilled because the workspace does not have an active paid plan content: application/json: schema: type: object properties: statusCode: type: number enum: - 402 examples: - 402 example: 402 error: type: string enum: - Payment Required examples: - Payment Required example: Payment Required message: type: string examples: - Workspace does not have an active paid plan example: Workspace does not have an active paid plan required: - statusCode - error - message '404': description: The requested resource was not found content: application/json: schema: type: object properties: statusCode: type: number enum: - 404 examples: - 404 example: 404 error: type: string enum: - Not Found examples: - Not Found example: Not Found message: type: string examples: - Resource not found example: Resource not found required: - statusCode - error - message '429': description: You have exceeded the rate limit. Please check the rate limit docs for more information. content: application/json: schema: type: object properties: statusCode: type: number enum: - 429 examples: - 429 example: 429 error: type: string enum: - Too Many Requests examples: - Too Many Requests example: Too Many Requests message: type: string examples: - Rate limit exceeded example: Rate limit exceeded required: - statusCode - error - message /api/v2/webhook-events/{id}: get: operationId: getWebhookEvent summary: Get webhook event tags: - WebhookEvent description: 'Requires one of the following scopes: `webhook_events:read`, `webhook_events:all`, `all:read`, `all:all`' parameters: - schema: type: string format: uuid example: 019ffad2-9cb3-7392-a3d7-861b5edf9d23 example: 019ffad2-9cb3-7392-a3d7-861b5edf9d23 in: path name: id required: true description: The ID of the requested item responses: '200': description: The requested Webhook Event content: application/json: schema: $ref: '#/components/schemas/WebhookEvent' '401': description: This request is unauthorized (either the Authorization header is missing or invalid, or the API key has been revoked) content: application/json: schema: type: object properties: statusCode: type: number enum: - 401 examples: - 401 example: 401 error: type: string enum: - Unauthorized examples: - Unauthorized example: Unauthorized message: type: string examples: - Missing Authorization header example: Missing Authorization header required: - statusCode - error - message '402': description: This request cannot be fulfilled because the workspace does not have an active paid plan content: application/json: schema: type: object properties: statusCode: type: number enum: - 402 examples: - 402 example: 402 error: type: string enum: - Payment Required examples: - Payment Required example: Payment Required message: type: string examples: - Workspace does not have an active paid plan example: Workspace does not have an active paid plan required: - statusCode - error - message '404': description: The requested resource was not found content: application/json: schema: type: object properties: statusCode: type: number enum: - 404 examples: - 404 example: 404 error: type: string enum: - Not Found examples: - Not Found example: Not Found message: type: string examples: - Resource not found example: Resource not found required: - statusCode - error - message '429': description: You have exceeded the rate limit. Please check the rate limit docs for more information. content: application/json: schema: type: object properties: statusCode: type: number enum: - 429 examples: - 429 example: 429 error: type: string enum: - Too Many Requests examples: - Too Many Requests example: Too Many Requests message: type: string examples: - Rate limit exceeded example: Rate limit exceeded required: - statusCode - error - message /api/v2/webhook-events/summary: get: operationId: getWebhookEventsSummary summary: Get overview aggregates for webhook events tags: - WebhookEvent description: Get overview aggregates for webhook events including success/failure rates parameters: - schema: type: string format: date example: '2024-01-01' example: '2024-01-01' in: query name: from required: false description: Inclusive start of the window (YYYY-MM-DD). - schema: type: string format: date example: '2024-01-31' example: '2024-01-31' in: query name: to required: false description: Inclusive end of the window (YYYY-MM-DD). responses: '200': description: Default Response content: application/json: schema: type: object properties: total_events: type: number description: Total number of webhook events example: 100 successful_events: type: number description: Total number of successful webhook events example: 100 failed_events: type: number description: Total number of failed webhook events example: 100 success_rate: type: number description: Percentage (0-100) of successful webhook calls example: 50 failure_rate: type: number description: Percentage (0-100) of failed webhook calls example: 50 required: - total_events - successful_events - failed_events - success_rate - failure_rate '401': description: This request is unauthorized (either the Authorization header is missing or invalid, or the API key has been revoked) content: application/json: schema: type: object properties: statusCode: type: number enum: - 401 examples: - 401 example: 401 error: type: string enum: - Unauthorized examples: - Unauthorized example: Unauthorized message: type: string examples: - Missing Authorization header example: Missing Authorization header required: - statusCode - error - message '402': description: This request cannot be fulfilled because the workspace does not have an active paid plan content: application/json: schema: type: object properties: statusCode: type: number enum: - 402 examples: - 402 example: 402 error: type: string enum: - Payment Required examples: - Payment Required example: Payment Required message: type: string examples: - Workspace does not have an active paid plan example: Workspace does not have an active paid plan required: - statusCode - error - message '404': description: The requested resource was not found content: application/json: schema: type: object properties: statusCode: type: number enum: - 404 examples: - 404 example: 404 error: type: string enum: - Not Found examples: - Not Found example: Not Found message: type: string examples: - Resource not found example: Resource not found required: - statusCode - error - message '429': description: You have exceeded the rate limit. Please check the rate limit docs for more information. content: application/json: schema: type: object properties: statusCode: type: number enum: - 429 examples: - 429 example: 429 error: type: string enum: - Too Many Requests examples: - Too Many Requests example: Too Many Requests message: type: string examples: - Rate limit exceeded example: Rate limit exceeded required: - statusCode - error - message /api/v2/webhook-events/summary-by-date: get: operationId: getWebhookEventsSummaryByDate summary: Get overview aggregates for webhook events by date tags: - WebhookEvent description: Get overview aggregates for webhook events by Date for charts parameters: - schema: type: string format: date example: '2024-01-01' example: '2024-01-01' in: query name: from required: false description: Inclusive start of the window (YYYY-MM-DD). - schema: type: string format: date example: '2024-01-31' example: '2024-01-31' in: query name: to required: false description: Inclusive end of the window (YYYY-MM-DD). responses: '200': description: List of webhook event KPIs grouped by date content: application/json: schema: type: object description: List of webhook event KPIs grouped by date properties: items: type: array items: type: object properties: date: type: string format: date description: Date of the webhook event example: '2024-01-01' total_events: type: number description: Total number of webhook events example: 100 successful_events: type: number description: Total number of successful webhook events example: 100 failed_events: type: number description: Total number of failed webhook events example: 100 success_rate: type: number description: Success rate of the webhook events example: 50 required: - date - total_events - successful_events - failed_events - success_rate '401': description: This request is unauthorized (either the Authorization header is missing or invalid, or the API key has been revoked) content: application/json: schema: type: object properties: statusCode: type: number enum: - 401 examples: - 401 example: 401 error: type: string enum: - Unauthorized examples: - Unauthorized example: Unauthorized message: type: string examples: - Missing Authorization header example: Missing Authorization header required: - statusCode - error - message '402': description: This request cannot be fulfilled because the workspace does not have an active paid plan content: application/json: schema: type: object properties: statusCode: type: number enum: - 402 examples: - 402 example: 402 error: type: string enum: - Payment Required examples: - Payment Required example: Payment Required message: type: string examples: - Workspace does not have an active paid plan example: Workspace does not have an active paid plan required: - statusCode - error - message '404': description: The requested resource was not found content: application/json: schema: type: object properties: statusCode: type: number enum: - 404 examples: - 404 example: 404 error: type: string enum: - Not Found examples: - Not Found example: Not Found message: type: string examples: - Resource not found example: Resource not found required: - statusCode - error - message '429': description: You have exceeded the rate limit. Please check the rate limit docs for more information. content: application/json: schema: type: object properties: statusCode: type: number enum: - 429 examples: - 429 example: 429 error: type: string enum: - Too Many Requests examples: - Too Many Requests example: Too Many Requests message: type: string examples: - Rate limit exceeded example: Rate limit exceeded required: - statusCode - error - message components: schemas: WebhookEvent: title: Webhook Event description: A webhook event that was sent or attempted to be sent x-tags: - Schemas - WebhookEvent type: object properties: id: type: string description: Unique identifier for the webhook event (UUID) readOnly: true format: uuid example: 019ffad2-5d00-702c-b737-7642203d0bba timestamp_created: type: string description: Timestamp when the webhook event was created readOnly: true format: date-time example: '2026-08-13T11:11:58.208Z' timestamp_created_date: type: string description: Date when the webhook event was created (for partitioning) readOnly: true format: date example: '2024-01-15' organization_id: type: string description: Organization (workspace) UUID that owns this webhook event readOnly: true format: uuid example: 019ffad2-5d00-702c-b737-76437f425f66 payload: type: object description: JSON payload that was sent/attempted to be sent readOnly: true additionalProperties: true success: type: boolean description: Whether the webhook call was successful readOnly: true example: true retry_count: type: number description: Number of retry attempts made readOnly: true example: 0 will_retry: type: boolean description: Whether the webhook will be retried readOnly: true example: false webhook_url: type: string description: Target URL where the webhook was sent readOnly: true example: https://webhook.site/unique-url status_code: type: - 'null' - number description: HTTP status code received from the webhook endpoint (if any) readOnly: true example: 200 error_message: type: - 'null' - string description: Error message if the webhook failed readOnly: true example: Connection timeout timestamp_next_retry: type: - 'null' - string description: Timestamp for the next retry attempt (if applicable) readOnly: true format: date-time example: '2026-08-13T11:11:58.208Z' retry_group_id: type: - 'null' - string description: UUID for grouping retry attempts readOnly: true format: uuid example: 019ffad2-5d00-702c-b737-764407a691d8 retry_successful: type: - 'null' - boolean description: Whether the retry was successful (for retry events) readOnly: true example: true lead_email: type: - 'null' - string description: Email address of the lead associated with this webhook event readOnly: true example: lead@example.com response_time_ms: type: - 'null' - number description: Response time in milliseconds for the webhook call readOnly: true example: 150 required: - id - timestamp_created - timestamp_created_date - organization_id - success - retry_count - will_retry - webhook_url additionalProperties: false securitySchemes: ApiKeyAuth: type: http scheme: bearer