API
An AI agent for any API with an OpenAPI document
If your API publishes an OpenAPI 3.x document, this is the least work of any connection. Give Caterfli the URL and it generates one tool per operation, with argument schemas taken from the specification — so an argument the model proposes is checked against the real contract before any request is made.
What you get
OpenAPI capabilities, under your rules
- ✓ One tool per operation, with argument schemas from the specification
- ✓ API key in a header or query parameter, bearer, basic, or OAuth2 client credentials
- ✓ Static headers sent on every request
- ✓ Credentials encrypted at rest and never shown to the model
- ✓ An operation that cannot be parsed is skipped and reported, not fatal
- ✓ Deprecated operations are ignored
What you need to connect it
- The document URL — JSON or YAML, OpenAPI 3.x (Swagger 2.0 is not supported)
- The base URL of the API itself
- Credentials, if it needs them
Discovered tools
What a OpenAPI connection turns into
discovery · OpenAPI
ready- list_invoices read
- get_invoice read
- create_refund create
- update_customer update
- delete_customer delete Approval
Illustrative. Tool names come from each operation’s operationId.
Human approval
Destructive work waits for a person
approval
waiting- Tool
- delete_customer
- Operation
- DELETE
- Runs against
- Billing API
- Agent
- Support Agent
Exactly these values
{
"customer_id": "cus_100"
}
Your decision applies to these values only. If anything about the call changes, it stops for approval again.
The approval covers this call with these arguments. If the model re-plans, it has to ask again.
Connect OpenAPI to your first agent
Connect one system and read the agent Caterfli writes from it. There is a demo connection too, if you would rather look before you wire anything up.