openapi: 3.0.0
info:
description: 'For more information, see: https://developer.adobe.com/frameio'
license:
name: Adobe
url: https://www.adobe.com/legal/terms.html
title: Frame.io Account Permissions Webhooks API
version: v4.0
servers:
- url: https://api.frame.io
variables: {}
security:
- OAuth2: []
- bearer: []
tags:
- description: Manage Webhooks and related operations.
name: Webhooks
paths:
/v4/accounts/{account_id}/workspaces/{workspace_id}/webhooks:
get:
callbacks: {}
description: 'List webhooks for the given workspace.
Rate Limits: 100 calls per 1.00 minute(s) per account_user'
operationId: webhooks.index
parameters:
- description: ''
example: 53c56ed9-ff07-411d-86c7-84a40cdce1ae
in: path
name: account_id
required: true
schema:
$ref: '#/components/schemas/FrameOrAdobeId'
- description: ''
example: 60fbccf9-3573-476a-bae0-eefc8c3232c8
in: path
name: workspace_id
required: true
schema:
$ref: '#/components/schemas/UUID'
- description: ''
in: query
name: include
required: false
schema:
description: Include query parameter for webhooks
enum:
- creator
example: creator
title: Include
type: string
- description: 'Opaque Cursor query param for requests returning paginated results.
NOTE: this value is auto-generated and included as part of links from a previous response. It is not intended to be human readable.
'
in: query
name: after
required: false
schema:
$ref: '#/components/schemas/RequestAfterOpaqueCursor'
- description: ''
in: query
name: page_size
required: false
schema:
$ref: '#/components/schemas/RequestPageSize'
- description: ''
in: query
name: include_total_count
required: false
schema:
$ref: '#/components/schemas/IncludeTotalCount'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhooksWithIncludesResponse'
description: OK
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
description: Bad request
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
description: Unauthorized
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
description: Forbidden
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
description: Not found
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/Conflict'
description: Conflict
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/UnprocessableContent'
description: Unprocessable content
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
description: Too many requests
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
summary: List webhooks
tags:
- Webhooks
post:
callbacks: {}
description: 'Creates a single webhook with secret.
Valid events:
file.created, file.deleted, file.ready, file.updated, file.upload.completed, file.versioned, file.copied, folder.created, folder.deleted, folder.updated, folder.copied, comment.completed, comment.created, comment.deleted, comment.uncompleted, comment.updated, customfield.created, customfield.updated, customfield.deleted, metadata.value.updated, project.created, project.deleted, project.updated, collection.created, collection.updated, collection.deleted, share.created, share.updated, share.deleted, share.viewed
.
Rate Limits: 10 calls per 1.00 minute(s) per account_user'
operationId: webhooks.create
parameters:
- description: ''
example: 254185cc-716b-4e62-b03b-2f3e9187c645
in: path
name: account_id
required: true
schema:
$ref: '#/components/schemas/FrameOrAdobeId'
- description: ''
example: faa64472-a63f-4a84-814f-244a5ee0f8a8
in: path
name: workspace_id
required: true
schema:
$ref: '#/components/schemas/UUID'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookCreateParams'
description: Webhook params
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookCreateResponse'
description: Created
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
description: Bad request
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
description: Unauthorized
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
description: Forbidden
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
description: Not found
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/Conflict'
description: Conflict
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/UnprocessableContent'
description: Unprocessable content
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
description: Too many requests
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
summary: Create webhook
tags:
- Webhooks
/v4/accounts/{account_id}/webhooks/{webhook_id}:
delete:
callbacks: {}
description: 'Delete a webhook.
Rate Limits: 60 calls per 1.00 minute(s) per account_user'
operationId: webhooks.delete
parameters:
- description: ''
example: 33701a8d-30ae-436e-9427-f0c826360819
in: path
name: account_id
required: true
schema:
$ref: '#/components/schemas/FrameOrAdobeId'
- description: ''
example: 5902b832-cfa2-4098-bd5d-d9818f86dc0d
in: path
name: webhook_id
required: true
schema:
$ref: '#/components/schemas/UUID'
responses:
'204':
content:
'*':
schema:
$ref: '#/components/schemas/NoContent'
description: No Content
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
description: Bad request
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
description: Unauthorized
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
description: Forbidden
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
description: Not found
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/Conflict'
description: Conflict
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/UnprocessableContent'
description: Unprocessable content
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
description: Too many requests
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
summary: Delete webhook
tags:
- Webhooks
get:
callbacks: {}
description: 'Show webhook details.
Rate Limits: 100 calls per 1.00 minute(s) per account_user'
operationId: webhooks.show
parameters:
- description: ''
example: 5d399eff-9150-4b05-8bd2-47c816e5b8ac
in: path
name: account_id
required: true
schema:
$ref: '#/components/schemas/FrameOrAdobeId'
- description: ''
example: a85c2e03-4d9f-4471-979c-a21a0d3938b0
in: path
name: webhook_id
required: true
schema:
$ref: '#/components/schemas/UUID'
- description: ''
in: query
name: include
required: false
schema:
description: Include query parameter for webhooks
enum:
- creator
example: creator
title: Include
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookWithIncludesResponse'
description: OK
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
description: Bad request
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
description: Unauthorized
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
description: Forbidden
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
description: Not found
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/Conflict'
description: Conflict
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/UnprocessableContent'
description: Unprocessable content
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
description: Too many requests
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
summary: Show webhook
tags:
- Webhooks
patch:
callbacks: {}
description: 'Update webhook details.
Rate Limits: 10 calls per 1.00 minute(s) per account_user'
operationId: webhooks.update
parameters:
- description: ''
example: 0ffb5448-1727-47a0-be06-8db925635d0d
in: path
name: account_id
required: true
schema:
$ref: '#/components/schemas/FrameOrAdobeId'
- description: ''
example: 806e9584-2358-4c21-9e14-12c6c963b67a
in: path
name: webhook_id
required: true
schema:
$ref: '#/components/schemas/UUID'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookUpdateParams'
description: Webhook params
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookResponse'
description: OK
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequest'
description: Bad request
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/Unauthorized'
description: Unauthorized
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/Forbidden'
description: Forbidden
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFound'
description: Not found
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/Conflict'
description: Conflict
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/UnprocessableContent'
description: Unprocessable content
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
'429':
content:
application/json:
schema:
$ref: '#/components/schemas/TooManyRequests'
description: Too many requests
headers:
x-ratelimit-limit:
description: Rate limit
example: 100
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-remaining:
description: Rate limit remaining
example: 99
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
x-ratelimit-window:
description: Rate limit window in milliseconds
example: 60000
required: true
schema:
format: int32
minimum: 0
type: integer
style: simple
summary: Update webhook
tags:
- Webhooks
components:
schemas:
UnprocessableContent:
example:
errors:
- detail: Unprocessable content
properties:
errors:
items:
additionalProperties: false
properties:
detail:
type: string
source:
properties:
pointer:
type: string
type: object
title:
type: string
required:
- detail
type: object
type: array
required:
- errors
title: UnprocessableContent
type: object
Unauthorized:
example:
errors:
- detail: Unauthorized
properties:
errors:
items:
additionalProperties: false
properties:
detail:
type: string
source:
properties:
pointer:
type: string
type: object
title:
type: string
required:
- detail
type: object
type: array
required:
- errors
title: Unauthorized
type: object
NotFound:
example:
errors:
- detail: Not found
properties:
errors:
items:
additionalProperties: false
properties:
detail:
type: string
source:
properties:
pointer:
type: string
type: object
title:
type: string
required:
- detail
type: object
type: array
required:
- errors
title: NotFound
type: object
RequestPageSize:
default: 50
description: Page size query param for requests
example: 10
format: int32
maximum: 100
minimum: 1
title: RequestPageSize
type: integer
BadRequest:
example:
errors:
- detail: Bad request
properties:
errors:
items:
additionalProperties: false
properties:
detail:
type: string
source:
properties:
pointer:
type: string
type: object
title:
type: string
required:
- detail
type: object
type: array
required:
- errors
title: BadRequest
type: object
IncludeTotalCount:
default: false
description: Page query param to include the count of all entities
example: false
title: IncludeTotalCount
type: boolean
TooManyRequests:
example:
errors:
- detail: Too many requests
properties:
errors:
items:
additionalProperties: false
properties:
detail:
type: string
source:
properties:
pointer:
type: string
type: object
title:
type: string
required:
- detail
type: object
type: array
required:
- errors
title: TooManyRequests
type: object
NoContent:
description: Response schema for generic no content response.
example: ''
title: NoContent
type: string
WebhookWithIncludes:
allOf:
- $ref: '#/components/schemas/Webhook'
- properties:
creator:
$ref: '#/components/schemas/User'
type: object
example:
active: 'true'
created_at: '2024-02-12T21:34:58.501275Z'
creator:
active: true
avatar_url: https://assets.frame.io/uploads/cd58cb8e-24b3-4448-8d0f-9532fcd04d11/original.png?response-content-disposition=attachment%3B+filename%3D%22foo.png&Expires=1729857600&Signature=L09h0pi82dCrMYjr9lMHBragByWYh1&Key-Pair-Id=KKI497NESTHMN
email: user_email@example.com
id: 196C1A5666BF4EB00A49411B@176719f5667c82b4494214.e
name: Jon Doe
events:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
id: 6083dcd2-a5fa-4364-9497-b34ddfa0d1c2
name: My First Webhook
updated_at: '2024-02-12T21:34:58.501275Z'
url: https://my.webhook.url.dev
workspace_id: bffe8bcf-3cac-4945-9c7e-569caa5de5bd
title: WebhookWithIncludes
type: object
RequestAfterOpaqueCursor:
description: 'Opaque Cursor query param for requests returning paginated results.
NOTE: this value is auto-generated and included as part of links from a previous response. It is not intended to be human readable.
'
example:
nullable: true
title: RequestAfterOpaqueCursor
type: string
WebhookEvents:
example:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
items:
type: string
minItems: 1
title: WebhookEvents
type: array
uniqueItems: true
Links:
additionalProperties: false
description: Links to paginated data
example:
next: /v4/accounts/1234/workspaces/5678/projects?after=g3QAAAACZAACaWRtAAAAJGFiMmNiY2QzLWFkODQtNDQwMC05YTRkLWE1ZDRkMGE4ZTIxM2QABG5hbWVtAAAACVByb2plY3QgMg==
properties:
next:
description: '"Link to next page of data.
This link is the request path with the addition of the `after` query parameter to fetch the next page of results.
Optional query parameters `page_size` and `include_total_count` are supported when paginating data."
'
nullable: true
type: string
required:
- next
title: Links
type: object
WebhookCreateResponse:
additionalProperties: false
description: Returns a single webhook with secret.
example:
data:
active: 'true'
created_at: '2024-02-12T21:34:58.501275Z'
events:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
id: 6083dcd2-a5fa-4364-9497-b34ddfa0d1c2
name: My First Webhook
secret:
updated_at: '2024-02-12T21:34:58.501275Z'
url: https://my.webhook.url.dev
workspace_id: bffe8bcf-3cac-4945-9c7e-569caa5de5bd
properties:
data:
allOf:
- $ref: '#/components/schemas/Webhook'
- properties:
secret:
description: Secret used to validate webhook requests. Make sure to store your secret. You won’t be able to see it again!
type: string
required:
- secret
type: object
required:
- data
title: WebhookCreateResponse
type: object
UUID:
description: A UUID string that uniquely identifies a Frame.io entity.
example: b2702c44-c6da-4bb6-8bbd-be6e547ccf1b
format: uuid
title: UUID
type: string
WebhooksWithIncludesResponse:
additionalProperties: false
description: Frame.io webhooks
example:
data:
- active: 'true'
created_at: '2024-02-12T21:34:58.501275Z'
creator:
active: true
avatar_url: https://assets.frame.io/uploads/cd58cb8e-24b3-4448-8d0f-9532fcd04d11/original.png?response-content-disposition=attachment%3B+filename%3D%22foo.png&Expires=1729857600&Signature=L09h0pi82dCrMYjr9lMHBragByWYh1&Key-Pair-Id=KKI497NESTHMN
email: user_email@example.com
id: 196C1A5666BF4EB00A49411B@176719f5667c82b4494214.e
name: Jon Doe
events:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
id: 6083dcd2-a5fa-4364-9497-b34ddfa0d1c2
name: My First Webhook
updated_at: '2024-02-12T21:34:58.501275Z'
url: https://my.webhook.url.dev
workspace_id: bffe8bcf-3cac-4945-9c7e-569caa5de5bd
links:
next: /v4/accounts/123/workspaces/123/webhooks
total_count: 10
properties:
data:
items:
$ref: '#/components/schemas/WebhookWithIncludes'
type: array
links:
$ref: '#/components/schemas/Links'
total_count:
description: Total count
nullable: true
type: integer
required:
- data
- links
title: WebhooksWithIncludesResponse
type: object
WebhookWithIncludesResponse:
additionalProperties: false
example:
data:
active: 'true'
created_at: '2024-02-12T21:34:58.501275Z'
creator:
active: true
avatar_url: https://assets.frame.io/uploads/cd58cb8e-24b3-4448-8d0f-9532fcd04d11/original.png?response-content-disposition=attachment%3B+filename%3D%22foo.png&Expires=1729857600&Signature=L09h0pi82dCrMYjr9lMHBragByWYh1&Key-Pair-Id=KKI497NESTHMN
email: user_email@example.com
id: 196C1A5666BF4EB00A49411B@176719f5667c82b4494214.e
name: Jon Doe
events:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
id: 6083dcd2-a5fa-4364-9497-b34ddfa0d1c2
name: My First Webhook
updated_at: '2024-02-12T21:34:58.501275Z'
url: https://my.webhook.url.dev
workspace_id: bffe8bcf-3cac-4945-9c7e-569caa5de5bd
properties:
data:
$ref: '#/components/schemas/WebhookWithIncludes'
required:
- data
title: WebhookWithIncludesResponse
type: object
WebhookCreateParams:
additionalProperties: false
description: Webhook creation parameters
example:
data:
events:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
name: New Webhook
url: https://url.example.com
properties:
data:
additionalProperties: false
properties:
events:
$ref: '#/components/schemas/WebhookEvents'
name:
maxLength: 255
minLength: 1
type: string
url:
description: URL where `event` is sent
maxLength: 2000
minLength: 1
type: string
required:
- name
- events
- url
type: object
required:
- data
title: WebhookCreateParams
type: object
FrameOrAdobeId:
description: A Frame.io or Adobe entity identifier. Typically a Frame.io UUID. But for accounts, projects, folders, files, and version stacks that reside in Adobe cloud storage, which is the case for Workfront-connected accounts and projects, an Adobe-assigned id may also be used interchangeably. These ids must be prefixed with `adobe:` (e.g. `adobe:` for an account, `adobe:` for a project or folder, `adobe:`adobe:|` for a file asset).
example: b2702c44-c6da-4bb6-8bbd-be6e547ccf1b
title: FrameOrAdobeId
type: string
Conflict:
example:
errors:
- detail: Conflict
properties:
errors:
items:
additionalProperties: false
properties:
detail:
type: string
source:
properties:
pointer:
type: string
type: object
title:
type: string
required:
- detail
type: object
type: array
required:
- errors
title: Conflict
type: object
User:
description: User details
example:
active: true
avatar_url: https://assets.frame.io/uploads/cd58cb8e-24b3-4448-8d0f-9532fcd04d11/original.png?response-content-disposition=attachment%3B+filename%3D%22foo.png&Expires=1729857600&Signature=L09h0pi82dCrMYjr9lMHBragByWYh1&Key-Pair-Id=KKI497NESTHMN
email: user_email@example.com
id: 196C1A5666BF4EB00A49411B@176719f5667c82b4494214.e
name: Jon Doe
properties:
active:
description: User active status
nullable: true
type: boolean
adobe_user_id:
description: Adobe user ID
nullable: true
type: string
avatar_url:
description: User avatar image url
nullable: true
type: string
email:
description: User email
type: string
id:
description: User ID - can be null for invited users with no frame account
nullable: true
type: string
name:
description: User name
nullable: true
type: string
required:
- id
- name
- email
- avatar_url
- active
title: User
type: object
Webhook:
example:
active: 'true'
created_at: '2024-02-12T21:34:58.501275Z'
events:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
id: 6083dcd2-a5fa-4364-9497-b34ddfa0d1c2
name: My First Webhook
updated_at: '2024-02-12T21:34:58.501275Z'
url: https://my.webhook.url.dev
workspace_id: bffe8bcf-3cac-4945-9c7e-569caa5de5bd
properties:
active:
description: Webhook active status
type: boolean
created_at:
format: date-time
type: string
events:
$ref: '#/components/schemas/WebhookEvents'
id:
description: Webhook ID
format: uuid
type: string
name:
description: Webhook Name
type: string
updated_at:
format: date-time
type: string
url:
type: string
workspace_id:
description: Workspace ID
format: uuid
nullable: true
type: string
required:
- id
- name
- events
- url
- created_at
- updated_at
title: Webhook
type: object
WebhookUpdateParams:
additionalProperties: false
description: Webhook update parameters
example:
data:
active: true
events:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
name: Updated Webhook
url: https://url.example.com
properties:
data:
additionalProperties: false
properties:
active:
description: Webhook active status
type: boolean
events:
$ref: '#/components/schemas/WebhookEvents'
name:
maxLength: 255
minLength: 1
type: string
url:
description: URL where `event` is sent
maxLength: 2000
minLength: 1
type: string
type: object
required:
- data
title: WebhookUpdateParams
type: object
WebhookResponse:
additionalProperties: false
example:
data:
active: 'true'
created_at: '2024-02-12T21:34:58.501275Z'
events:
- file.created
- file.deleted
- file.ready
- file.updated
- file.upload.completed
- file.versioned
- file.copied
- folder.created
- folder.deleted
- folder.updated
- folder.copied
- comment.completed
- comment.created
- comment.deleted
- comment.uncompleted
- comment.updated
- customfield.created
- customfield.updated
- customfield.deleted
- metadata.value.updated
- project.created
- project.deleted
- project.updated
- collection.created
- collection.updated
- collection.deleted
- share.created
- share.updated
- share.deleted
- share.viewed
id: 6083dcd2-a5fa-4364-9497-b34ddfa0d1c2
name: My First Webhook
updated_at: '2024-02-12T21:34:58.501275Z'
url: https://my.webhook.url.dev
workspace_id: bffe8bcf-3cac-4945-9c7e-569caa5de5bd
properties:
data:
$ref: '#/components/schemas/Webhook'
required:
- data
title: WebhookResponse
type: object
Forbidden:
example:
errors:
- detail: Forbidden
properties:
errors:
items:
additionalProperties: false
properties:
detail:
type: string
source:
properties:
pointer:
type: string
type: object
title:
type: string
required:
- detail
type: object
type: array
required:
- errors
title: Forbidden
type: object
securitySchemes:
OAuth2:
description: 'For more information, see: https://developer.adobe.com/frameio'
flows:
authorizationCode:
authorizationUrl: https://ims-na1.adobelogin.com/ims/authorize/v2
refreshUrl: https://ims-na1.adobelogin.com/ims/token/v3
scopes:
additional_info.roles: Adobe Commerce Admin
offline_access: Maintain access to the data the user had consented to for refresh tokens
openid: Sign in a user
profile: Read the user's basic information
tokenUrl: https://ims-na1.adobelogin.com/ims/token/v3
type: oauth2
bearer:
description: 'For more information, see: https://developer.adobe.com/frameio'
flows:
authorizationCode:
authorizationUrl: https://ims-na1.adobelogin.com/ims/authorize/v2
refreshUrl: https://ims-na1.adobelogin.com/ims/token/v3
scopes:
additional_info.roles: Adobe Commerce Admin
offline_access: Maintain access to the data the user had consented to for refresh tokens
openid: Sign in a user
profile: Read the user's basic information
tokenUrl: https://ims-na1.adobelogin.com/ims/token/v3
type: oauth2
s2s_auth:
description: Server to server authentication flow
flows:
clientCredentials:
scopes:
AdobeID: Adobe ID
frame.s2s.all: Frame.io Server to Server access
openid: Sign in a user
tokenUrl: https://ims-na1.adobelogin.com/ims/token/v3
type: oauth2
x-tagGroups:
- name: Accounts, Users and Permissions
tags:
- Accounts
- Users
- Account Permissions
- Workspace Permissions
- Project Permissions
- Folder Permissions
- Groups
- name: Workspace Management
tags:
- Projects
- Workspaces
- Shares
- name: Assets
tags:
- Files
- Folders
- Version Stacks
- name: Comments
tags:
- Comments
- name: Collections
tags:
- Collections
- name: Metadata
tags:
- Metadata Fields
- Metadata
- name: Integrations
tags:
- Webhooks
- Custom Actions