{"openapi":"3.1.0","info":{"title":"Frame io V2 Projects (BYOK) API","version":"0.1.0","description":"Frame io V2 Projects (BYOK) lets an AI assistant read your own Frame io V2 Projects data through the Frame io V2 Projects API with a key you supply (Frame.io V2 developer token). Read-only: 6 tools (list_accounts, get_account, list_teams, get_team, list_team_projects, get_project). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached; it is...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-frameio-v2-projects.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-frameio-v2-projects/docs"},"termsOfService":"https://connectorbay.com/byok-frameio-v2-projects/terms"},"servers":[{"url":"https://byok-frameio-v2-projects.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-frameio-v2-projects/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_accounts":{"post":{"operationId":"list_accounts","summary":"List the Frame.io accounts the token's user can access, with storage, file, project and team counts. Use for \"Which Fram","description":"List the Frame.io accounts the token's user can access, with storage, file, project and team counts. Use for \"Which Frame.io accounts do I have access to\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_accountsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_account":{"post":{"operationId":"get_account","summary":"Get one Frame.io account's name, storage use and file, folder, project, team and member counts. Billing and owner detail","description":"Get one Frame.io account's name, storage use and file, folder, project, team and member counts. Billing and owner details are left out. Use for \"How much storage is my Frame.io account using\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Frame.io account ID (a UUID), from list_accounts.","maxLength":60,"title":"Account Id","type":"string"}},"required":["account_id"],"title":"get_accountArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_teams":{"post":{"operationId":"list_teams","summary":"List the teams of a Frame.io account with access level, storage and limits, and file, project and member counts. Use for","description":"List the teams of a Frame.io account with access level, storage and limits, and file, project and member counts. Use for \"Which teams are on my Frame.io account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"account_id":{"description":"Frame.io account ID (a UUID), from list_accounts.","maxLength":60,"title":"Account Id","type":"string"}},"required":["account_id"],"title":"list_teamsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_team":{"post":{"operationId":"get_team","summary":"Get one Frame.io team: access level, storage use and limit, member limit and file, folder and project counts. Use for \"H","description":"Get one Frame.io team: access level, storage use and limit, member limit and file, folder and project counts. Use for \"How full is this Frame.io team's storage\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"team_id":{"description":"Frame.io team ID (a UUID), from list_teams.","maxLength":60,"title":"Team Id","type":"string"}},"required":["team_id"],"title":"get_teamArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_team_projects":{"post":{"operationId":"list_team_projects","summary":"List the projects of a Frame.io team with description, archive status, counts, storage and dates; archived ones only whe","description":"List the projects of a Frame.io team with description, archive status, counts, storage and dates; archived ones only when asked. Use for \"What projects does this Frame.io team have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"team_id":{"description":"Frame.io team ID (a UUID), from list_teams.","maxLength":60,"title":"Team Id","type":"string"},"archived_filter":{"anyOf":[{"const":"all","type":"string"},{"type":"null"}],"default":null,"description":"Pass all to include archived projects as well as active ones.","title":"Archived Filter"}},"required":["team_id"],"title":"list_team_projectsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_project":{"post":{"operationId":"get_project","summary":"Get one Frame.io project: description, archive status, file and folder counts, collaborator count, storage and its root ","description":"Get one Frame.io project: description, archive status, file and folder counts, collaborator count, storage and its root folder asset ID. Use for \"How many files are in this Frame.io project\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Frame.io project ID (a UUID), from list_team_projects.","maxLength":60,"title":"Project Id","type":"string"}},"required":["project_id"],"title":"get_projectArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}