Frameo Webhooks API
The Webhooks API from Frameo — 4 operation(s) for webhooks.
The Webhooks API from Frameo — 4 operation(s) for webhooks.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/frameo-ai:frameo-ai-webhooks-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Frameo Webhooks API
description: Generate video and images with Frameo's models from your own code.
version: '1'
servers:
- url: https://api.frameo.ai
tags:
- name: Webhooks
paths:
/v1/webhook_endpoints:
get:
tags:
- Webhooks
summary: List webhook endpoints
operationId: list_endpoints_v1_webhook_endpoints_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpointList'
'400':
description: The request is invalid (invalid_request_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, revoked or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'402':
description: Not enough credits (billing_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: The key lacks a scope, or the workspace can't use this
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: No such object in this workspace
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate or concurrency limit; see Retry-After
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'502':
description: Upstream failure (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'503':
description: Briefly unavailable (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'504':
description: Timed out upstream (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- apiKey: []
post:
tags:
- Webhooks
summary: Create a webhook endpoint
operationId: create_endpoint_v1_webhook_endpoints_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateEndpoint'
required: true
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpointWithSecret'
'400':
description: The request is invalid (invalid_request_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, revoked or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'402':
description: Not enough credits (billing_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: The key lacks a scope, or the workspace can't use this
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: No such object in this workspace
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate or concurrency limit; see Retry-After
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'502':
description: Upstream failure (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'503':
description: Briefly unavailable (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'504':
description: Timed out upstream (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- apiKey: []
/v1/webhook_endpoints/{endpoint_id}:
get:
tags:
- Webhooks
summary: Get a webhook endpoint
operationId: get_endpoint_v1_webhook_endpoints__endpoint_id__get
parameters:
- name: endpoint_id
in: path
required: true
schema:
type: string
title: Endpoint Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
'400':
description: The request is invalid (invalid_request_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, revoked or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'402':
description: Not enough credits (billing_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: The key lacks a scope, or the workspace can't use this
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: No such object in this workspace
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate or concurrency limit; see Retry-After
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'502':
description: Upstream failure (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'503':
description: Briefly unavailable (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'504':
description: Timed out upstream (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- apiKey: []
patch:
tags:
- Webhooks
summary: Update a webhook endpoint
operationId: update_endpoint_v1_webhook_endpoints__endpoint_id__patch
parameters:
- name: endpoint_id
in: path
required: true
schema:
type: string
title: Endpoint Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateEndpoint'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
'400':
description: The request is invalid (invalid_request_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, revoked or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'402':
description: Not enough credits (billing_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: The key lacks a scope, or the workspace can't use this
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: No such object in this workspace
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate or concurrency limit; see Retry-After
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'502':
description: Upstream failure (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'503':
description: Briefly unavailable (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'504':
description: Timed out upstream (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- apiKey: []
delete:
tags:
- Webhooks
summary: Delete a webhook endpoint
operationId: delete_endpoint_v1_webhook_endpoints__endpoint_id__delete
parameters:
- name: endpoint_id
in: path
required: true
schema:
type: string
title: Endpoint Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpoint'
'400':
description: The request is invalid (invalid_request_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, revoked or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'402':
description: Not enough credits (billing_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: The key lacks a scope, or the workspace can't use this
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: No such object in this workspace
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate or concurrency limit; see Retry-After
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'502':
description: Upstream failure (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'503':
description: Briefly unavailable (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'504':
description: Timed out upstream (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- apiKey: []
/v1/webhook_endpoints/{endpoint_id}/rotate_secret:
post:
tags:
- Webhooks
summary: Rotate an endpoint's secret
description: 'A new signing secret. The old one stops working at once, so update the receiver first if
it can''t accept both for a moment.'
operationId: rotate_secret_v1_webhook_endpoints__endpoint_id__rotate_secret_post
parameters:
- name: endpoint_id
in: path
required: true
schema:
type: string
title: Endpoint Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookEndpointWithSecret'
'400':
description: The request is invalid (invalid_request_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, revoked or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'402':
description: Not enough credits (billing_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: The key lacks a scope, or the workspace can't use this
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: No such object in this workspace
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate or concurrency limit; see Retry-After
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'502':
description: Upstream failure (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'503':
description: Briefly unavailable (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'504':
description: Timed out upstream (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- apiKey: []
/v1/webhook_endpoints/{endpoint_id}/deliveries:
get:
tags:
- Webhooks
summary: List an endpoint's deliveries
description: Recent deliveries to this endpoint, newest first, with every attempt.
operationId: list_deliveries_v1_webhook_endpoints__endpoint_id__deliveries_get
parameters:
- name: endpoint_id
in: path
required: true
schema:
type: string
title: Endpoint Id
- name: limit
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
default: 20
title: Limit
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookDeliveryList'
'400':
description: The request is invalid (invalid_request_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Missing, invalid, revoked or expired API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'402':
description: Not enough credits (billing_error)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: The key lacks a scope, or the workspace can't use this
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: No such object in this workspace
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate or concurrency limit; see Retry-After
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'502':
description: Upstream failure (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'503':
description: Briefly unavailable (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'504':
description: Timed out upstream (api_error); safe to retry
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- apiKey: []
components:
schemas:
WebhookEndpoint:
properties:
id:
type: string
title: Id
examples:
- we_01JB4Z6Q1V5T8R2N3M4K5J6H7G
object:
type: string
const: webhook_endpoint
title: Object
default: webhook_endpoint
url:
type: string
title: Url
events:
items:
type: string
type: array
title: Events
description:
anyOf:
- type: string
- type: 'null'
title: Description
status:
type: string
title: Status
description: enabled or disabled
created_at:
type: string
title: Created At
updated_at:
type: string
title: Updated At
type: object
required:
- id
- url
- events
- status
- created_at
- updated_at
title: WebhookEndpoint
CreateEndpoint:
properties:
url:
type: string
maxLength: 2048
minLength: 8
title: Url
events:
items:
type: string
type: array
title: Events
description:
anyOf:
- type: string
maxLength: 200
- type: 'null'
title: Description
additionalProperties: false
type: object
required:
- url
title: CreateEndpoint
WebhookDelivery:
properties:
id:
type: string
title: Id
object:
type: string
const: webhook_delivery
title: Object
default: webhook_delivery
event_id:
type: string
title: Event Id
event_type:
type: string
title: Event Type
status:
type: string
title: Status
description: pending, succeeded, failed or skipped
attempts:
type: integer
title: Attempts
next_attempt_at:
anyOf:
- type: string
- type: 'null'
title: Next Attempt At
last_status_code:
anyOf:
- type: integer
- type: 'null'
title: Last Status Code
last_error:
anyOf:
- type: string
- type: 'null'
title: Last Error
created_at:
type: string
title: Created At
completed_at:
anyOf:
- type: string
- type: 'null'
title: Completed At
attempt_log:
items:
$ref: '#/components/schemas/DeliveryAttempt'
type: array
title: Attempt Log
type: object
required:
- id
- event_id
- event_type
- status
- attempts
- created_at
- attempt_log
title: WebhookDelivery
DeliveryAttempt:
properties:
attempt:
type: integer
title: Attempt
attempted_at:
type: string
title: Attempted At
status_code:
anyOf:
- type: integer
- type: 'null'
title: Status Code
error:
anyOf:
- type: string
- type: 'null'
title: Error
duration_ms:
type: integer
title: Duration Ms
type: object
required:
- attempt
- attempted_at
- duration_ms
title: DeliveryAttempt
WebhookDeliveryList:
properties:
object:
type: string
const: list
title: Object
default: list
data:
items:
$ref: '#/components/schemas/WebhookDelivery'
type: array
title: Data
type: object
required:
- data
title: WebhookDeliveryList
ErrorBody:
properties:
type:
type: string
title: Type
examples:
- invalid_request_error
code:
type: string
title: Code
examples:
- parameter_invalid
message:
type: string
title: Message
type: object
required:
- type
- code
- message
title: ErrorBody
WebhookEndpointWithSecret:
properties:
id:
type: string
title: Id
examples:
- we_01JB4Z6Q1V5T8R2N3M4K5J6H7G
object:
type: string
const: webhook_endpoint
title: Object
default: webhook_endpoint
url:
type: string
title: Url
events:
items:
type: string
type: array
title: Events
description:
anyOf:
- type: string
- type: 'null'
title: Description
status:
type: string
title: Status
description: enabled or disabled
created_at:
type: string
title: Created At
updated_at:
type: string
title: Updated At
secret:
type: string
title: Secret
description: The signing secret. Shown only here; store it now.
type: object
required:
- id
- url
- events
- status
- created_at
- updated_at
- secret
title: WebhookEndpointWithSecret
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
UpdateEndpoint:
properties:
url:
anyOf:
- type: string
maxLength: 2048
minLength: 8
- type: 'null'
title: Url
events:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Events
description:
anyOf:
- type: string
maxLength: 200
- type: 'null'
title: Description
status:
anyOf:
- type: string
enum:
- enabled
- disabled
- type: 'null'
title: Status
additionalProperties: false
type: object
title: UpdateEndpoint
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
WebhookEndpointList:
properties:
object:
type: string
const: list
title: Object
default: list
data:
items:
$ref: '#/components/schemas/WebhookEndpoint'
type: array
title: Data
type: object
required:
- data
title: WebhookEndpointList
ErrorResponse:
properties:
error:
$ref: '#/components/schemas/ErrorBody'
type: object
required:
- error
title: ErrorResponse
securitySchemes:
apiKey:
type: http
scheme: bearer
description: Your API key, fk_live_...