Frame.io Accounts API

Manage Accounts and related operations.

Operations 2

GET /v4/accounts List accounts #
GET /v4/accounts/{account_id}/audit_logs List audit logs #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/frameio-accounts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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 Specification

frameio-accounts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'For more information, see: <a href="https://developer.adobe.com/frameio">https://developer.adobe.com/frameio</a>'
  license:
    name: Adobe
    url: https://www.adobe.com/legal/terms.html
  title: Frame.io Account Permissions Accounts API
  version: v4.0
servers:
- url: https://api.frame.io
  variables: {}
security:
- OAuth2: []
- bearer: []
tags:
- description: Manage Accounts and related operations.
  name: Accounts
paths:
  /v4/accounts:
    get:
      callbacks: {}
      description: 'List accounts for the current user. <br/>Rate Limits: 100 calls per 1.00 minute(s) per account_user'
      operationId: accounts.index
      parameters:
      - description: Sort accounts by query params
        in: query
        name: sort
        required: false
        schema:
          description: Sort by query parameter for accounts
          enum:
          - display_name_asc
          - created_at_asc
          - display_name_desc
          - created_at_desc
          example: display_name_asc
          title: AccountSort
          type: string
      - description: 'Opaque Cursor query param for requests returning paginated results.

          <br/>

          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/AccountsResponse'
          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 accounts
      tags:
      - Accounts
  /v4/accounts/{account_id}/audit_logs:
    get:
      callbacks: {}
      description: 'List audit logs with filtering capabilities via query params. <br/>Rate Limits: 100 calls per 1.00 minute(s) per account_user'
      operationId: auditlog.index
      parameters:
      - description: ''
        in: header
        name: api-version
        required: true
        schema:
          enum:
          - '4.0'
          type: string
      - description: ''
        example: 140abdd7-ee78-49d0-b126-8471a1e42400
        in: path
        name: account_id
        required: true
        schema:
          $ref: '#/components/schemas/FrameOrAdobeId'
      - description: ''
        in: query
        name: include
        required: false
        schema:
          description: Include query parameter for audit logs
          enum:
          - user
          example: user
          title: AuditLogsInclude
          type: string
      - description: ''
        example: filters[to_date]=2025-08-25&filters[from_date]=2025-07-25
        in: query
        name: filters
        required: false
        schema:
          $ref: '#/components/schemas/Filters'
      - description: 'Opaque Cursor query param for requests returning paginated results.

          <br/>

          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/AuditLogsWithIncludesResponse'
          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 audit logs
      tags:
      - Accounts
components:
  schemas:
    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:<adobe_org_id>` for an account, `adobe:<adobe_asset_id>` for a project or folder, `adobe:`adobe:<adobe_asset_id>|<version>` for a file asset).
      example: b2702c44-c6da-4bb6-8bbd-be6e547ccf1b
      title: FrameOrAdobeId
      type: string
    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
          type:
          - boolean
          - 'null'
        adobe_user_id:
          description: Adobe user ID
          type:
          - string
          - 'null'
        avatar_url:
          description: User avatar image url
          type:
          - string
          - 'null'
        email:
          description: User email
          type: string
        id:
          description: User ID - can be null for invited users with no frame account
          type:
          - string
          - 'null'
        name:
          description: User name
          type:
          - string
          - 'null'
      required:
      - id
      - name
      - email
      - avatar_url
      - active
      title: User
      type: object
    Account:
      additionalProperties: false
      description: Account details
      example:
        adobe_id: 2A3C1A3D66C621B20A494021@AdobeOrg
        created_at: '2023-09-25T19:18:29.614189Z'
        display_name: Integration Account
        id: 17b990f7-bc43-4ed3-80fd-7e203089490b
        image: https://picture.frame.io/image/convert/frameio-uploads-development/logo.png
        roles:
        - admin
        storage_limit: 300
        storage_usage: 300
        updated_at: '2024-02-07T16:44:41.986478Z'
        v4_migrated_at: '2025-02-02T16:44:41.986478Z'
      properties:
        adobe_id:
          description: Adobe IMS Organization ID associated with the account, when available.
          type:
          - string
          - 'null'
        created_at:
          description: Created Timestamp
          format: date-time
          type: string
        display_name:
          description: Account Name
          type: string
        id:
          description: Account ID
          format: uuid
          type: string
        image:
          description: The account image url
          type:
          - string
          - 'null'
        roles:
          description: Account User Roles
          items:
            enum:
            - admin
            - member
            - owner
            type: string
          type: array
        storage_limit:
          description: The number of bytes of non-archived storage in the account. Value is nil when there is no limit
          type:
          - integer
          - 'null'
        storage_usage:
          description: The number of bytes of non-archived storage the account is using
          type: integer
        updated_at:
          description: Update timestamp
          format: date-time
          type: string
        v4_migrated_at:
          description: Migration timestamp
          format: date-time
          type:
          - string
          - 'null'
      required:
      - id
      - display_name
      - roles
      - storage_limit
      - storage_usage
      - created_at
      - updated_at
      title: Account
      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
    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
    RequestAfterOpaqueCursor:
      description: 'Opaque Cursor query param for requests returning paginated results.

        <br/>

        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: <opaque_cursor>
      title: RequestAfterOpaqueCursor
      type:
      - string
      - 'null'
    Filters:
      additionalProperties: false
      description: Audit logs search filter parameters
      properties:
        event_type:
          description: Filter by event type
          enum:
          - access_request_approved
          - access_request_denied
          - access_request_submitted
          - account_aup_migration_created
          - account_aup_migration_deleted
          - account_aup_migration_downgrade_completed
          - account_aup_migration_downgrade_failed
          - account_aup_migration_downgrade_requested
          - account_aup_migration_product_migrated
          - account_aup_migration_started
          - account_aup_migration_updated
          - account_aup_user_migration_completed
          - account_aup_user_migration_created
          - account_aup_user_migration_deleted
          - account_aup_user_migration_failed
          - account_aup_user_migration_on_hold
          - account_aup_user_migration_started
          - account_aup_user_migration_unheld
          - account_aup_user_migration_updated
          - account_delinquent
          - account_field_created
          - account_field_deleted
          - account_field_updated
          - account_fio_version_migrated
          - account_locked
          - account_member_created
          - account_member_deleted
          - account_member_updated
          - account_mfa_enforced
          - account_ownership_transferred
          - account_permissions_granted_to_user
          - account_restored
          - account_updated
          - account_user_deleted
          - account_user_group_created
          - account_user_group_deleted
          - account_user_group_members_added
          - account_user_group_members_removed
          - account_user_group_sync_triggered
          - account_user_group_updated
          - account_user_updated
          - action_created
          - action_deleted
          - action_updated
          - admin_update_to_v4
          - allowed_domain_created
          - allowed_domain_deleted
          - anonymous_user_created
          - asset_assignee_changed
          - asset_copied
          - asset_created
          - asset_deleted
          - asset_metadata_created
          - asset_moved
          - asset_restored
          - asset_status_changed
          - asset_updated
          - asset_versioned
          - assets_unversioned
          - bulk_account_deletion_started
          - bulk_assets_deleted
          - bulk_assets_restored
          - bulk_assets_retranscoded
          - bulk_emails_updated
          - bulk_projects_activated
          - bulk_projects_deactivated
          - bulk_projects_mounted_storage_status_updated
          - bulk_users_removed
          - collaborator_added
          - collaborator_deleted
          - collection_updated
          - comment_completed
          - comment_created
          - comment_deleted
          - comment_liked
          - comment_uncompleted
          - comment_updated
          - controlled_domain_created
          - controlled_domain_updated
          - email_address_change_failure
          - email_address_changed
          - email_change_confirmation_requested
          - email_confirmed
          - file_uploaded
          - google_auth_disabled
          - google_auth_enabled
          - high_risk_sign_up
          - join_presentation_request_approved
          - join_project_request_approved
          - join_request_accepted
          - join_request_created
          - join_request_declined
          - join_request_deleted
          - join_request_reset
          - join_review_link_request_approved
          - join_team_request_approved
          - label_updated
          - labs_experiment_enrolled
          - labs_experiment_unenrolled
          - labs_terms_accepted
          - login_factor_created
          - login_factor_validated
          - media_created
          - media_deleted
          - metadata_value_updated
          - new_device_login
          - new_user_email_confirmation_requested
          - oauth_app_created
          - oauth_app_deleted
          - oauth_app_disabled
          - oauth_app_enabled
          - oauth_app_updated
          - password_changed
          - password_reset_requested
          - pending_account_member_created
          - pending_account_member_deleted
          - pending_collaborator_created
          - pending_collaborator_deleted
          - pending_reviewer_created
          - pending_reviewer_deleted
          - pending_team_member_created
          - pending_team_member_deleted
          - plan_created
          - plan_deleted
          - plan_updated
          - preference_updated
          - presentation_created
          - presentation_deleted
          - presentation_updated
          - project_activated
          - project_archive_completed
          - project_archived
          - project_created
          - project_deactivated
          - project_deleted
          - project_field_created
          - project_field_deleted
          - project_field_updated
          - project_invite_link_created
          - project_invite_link_revoked
          - project_moved
          - project_permissions_granted_to_account_user_group
          - project_permissions_granted_to_user
          - project_restored
          - project_unarchive_completed
          - project_unarchived
          - project_updated
          - push_tokens_added
          - push_tokens_deleted
          - resource_control_policies_updated
          - resource_invite_sent
          - review_link_assets_added
          - review_link_assets_deleted
          - review_link_created
          - review_link_deleted
          - review_link_emailed
          - review_link_updated
          - reviewer_created
          - reviewer_deleted
          - role_added
          - role_removed
          - sbwm_template_created
          - sbwm_template_deleted
          - sbwm_template_updated
          - session_refreshed
          - session_revoked
          - share_activity_tracking_consent_changed
          - share_branding_preset_updated
          - share_created
          - share_deleted
          - share_invites_sent
          - share_list_created
          - share_list_deleted
          - share_list_updated
          - share_reviewers_added
          - share_reviewers_removed
          - share_updated
          - share_viewed
          - subscription_cancelled
          - subscription_card_updated
          - subscription_created
          - subscription_line_item_created
          - subscription_line_item_deleted
          - subscription_restored
          - subscription_updated
          - team_created
          - team_creator_updated
          - team_deleted
          - team_lifecycle_policy_updated
          - team_member_created
          - team_member

# --- truncated at 32 KB (54 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/frameio/refs/heads/main/openapi/frameio-accounts-api-openapi.yml