{"openapi":"3.1.0","info":{"title":"Feathery (BYOK) API","version":"0.1.0","description":"Feathery (BYOK) lets an AI assistant read your own Feathery data through the Feathery API with a key you supply (Feathery admin API key (US region account)). Read-only: 6 tools (list_forms, get_form_schema, list_hidden_fields, list_document_templates, get_form_defaults, list_extractions). The BYOK key travels with each request, is used for that one call only and is never stored, logged or cached;...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-feathery.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-feathery/docs"},"termsOfService":"https://connectorbay.com/byok-feathery/terms"},"servers":[{"url":"https://byok-feathery.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-feathery/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_forms":{"post":{"operationId":"list_forms","summary":"List the forms (workflows) of the Feathery account with id, name, active flag, tags and dates. Optionally only active or","description":"List the forms (workflows) of the Feathery account with id, name, active flag, tags and dates. Optionally only active or inactive forms, or forms carrying all of some tags. Use for \"What forms do I have in Feathery\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"tags":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Only forms that have all of these tags, as a comma-separated list.","title":"Tags"},"active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True for only active forms, false for only inactive; leave out for both.","title":"Active"}},"title":"list_formsArguments","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_form_schema":{"post":{"operationId":"get_form_schema","summary":"Get the schema of one form: its steps with their fields (id, type, label, required flag, tags), navigation conditions an","description":"Get the schema of one form: its steps with their fields (id, type, label, required flag, tags), navigation conditions and enabled integrations. Definition only; no submitted values. Use for \"What steps and fields does my Feathery form aSdsa5 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"form_id":{"description":"Feathery form id (from list_forms), for example 'aSdsa5'.","maxLength":60,"title":"Form Id","type":"string"}},"required":["form_id"],"title":"get_form_schemaArguments","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_hidden_fields":{"post":{"operationId":"list_hidden_fields","summary":"List the hidden field definitions of the account (id, value type, server-side flag, tags, dates). Use for \"What hidden f","description":"List the hidden field definitions of the account (id, value type, server-side flag, tags, dates). Use for \"What hidden fields are defined in Feathery\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_hidden_fieldsArguments","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_document_templates":{"post":{"operationId":"list_document_templates","summary":"List document templates uploaded by your team: id, name, type, tags and dates. File links are not returned by this tool.","description":"List document templates uploaded by your team: id, name, type, tags and dates. File links are not returned by this tool. Use for \"Which document templates does my Feathery account have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"name":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only templates whose name contains this text.","title":"Name"},"tags":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Tag filter; use ;; between tags to match any of them, for example 'claims;;insurance'.","title":"Tags"}},"title":"list_document_templatesArguments","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_form_defaults":{"post":{"operationId":"get_form_defaults","summary":"Get the default settings applied to newly created forms in your workspace (own defaults merged over any inherited from a","description":"Get the default settings applied to newly created forms in your workspace (own defaults merged over any inherited from a parent workspace). Use for \"What default settings do new Feathery forms get\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_form_defaultsArguments","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_extractions":{"post":{"operationId":"list_extractions","summary":"List document extraction definitions (Document Intelligence feature): id, name, file type, extraction type and dates. Ne","description":"List document extraction definitions (Document Intelligence feature): id, name, file type, extraction type and dates. Needs the Document Intelligence feature on the account. Use for \"What document extractions are set up in Feathery\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_extractionsArguments","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}}}}