Register an endpoint as an agent tool

POSThttps://server.heyrik.com/api/v1/custom-apis

Headers

AuthorizationstringRequired

Use Bearer $HEYRIK_API_KEY with an account-scoped API key. Keep the key on your server.

Get your API key

Parameters 6

Fields documented for this operation. See the request example for placement and structure.

namestringRequired

Tool name the agent calls, e.g. check_order_status.

urlstringRequired

Your https endpoint.

methodstring

GET | POST | PUT | PATCH | DELETE. Default POST.

headersobject

Sent on every call — put your own auth header here.

descriptionstring

Tells the agent WHEN to use it. Be specific.

parametersobject

JSON-Schema of the arguments the agent should supply.

Response

Explore the example values. This is not a complete response schema.

dataobject
Explore 4 properties
idstring

Example "capi_3f81"

namestring

Example "check_order_status"

urlstring

Example "https://api.acme.com/orders/status"

methodstring

Example "POST"

Error reference
POST/custom-apis
cURL
curl -X POST https://server.heyrik.com/api/v1/custom-apis \
  -H "Authorization: Bearer $HEYRIK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "check_order_status",
    "url": "https://api.acme.com/orders/status",
    "method": "POST",
    "headers": { "X-Api-Key": "your-own-key" },
    "description": "Look up the delivery status of an order by its id.",
    "parameters": {
      "type": "object",
      "properties": { "order_id": { "type": "string", "description": "The order id" } },
      "required": ["order_id"]
    }
  }'
Response example
JSON
{
  "data": {
    "id": "capi_3f81",
    "name": "check_order_status",
    "url": "https://api.acme.com/orders/status",
    "method": "POST"
  }
}

Illustrative examples · No live request is sent

Docs

Build sophisticated voice experiences with HeyRik.

© 2026 HeyRik · Support