Skip to content

Custom Actions

Custom Actions. Your API, on the call.

Describe a call to any HTTPS API, sign it with a saved credential and test it against the real thing. Build it into a Tool with steps and conditions, attach it to an agent, and the agent uses it while the caller talks, asking first before it changes anything.

On every plan.

From an API to a call, in three steps.

A Custom Action is one request to your API. A Tool puts Actions together. An agent uses the Tool on the call.

  • 1. Add a Custom Action

    The method, the address, the details the agent fills in, and the credential to sign it with.
  • 2. Build the Tool

    Inputs, Actions, conditions and a return. Test it, then publish a version.
  • 3. Attach it to an agent

    Add it to the agent's Business Tools, say what the caller hears while it runs, and publish.

Describe the request once.

Name the Action, mark it as reading or writing, and describe what it does for your team. The agent decides when to use it from the Tool you put it in.

Add the details the agent fills in, and where each one goes: the JSON body, the address, the query string or a header. GET, POST, PUT, PATCH and DELETE, to any public HTTPS address.

Create job

fieldapp.create_job@1.0.0draft

Identity

Name

fieldapp.create_job

Kind

WRITE — has side effects

Description

Opens a service job for an existing customer.

For your team. A voice agent reads the description on its Tool, not this one.

Parameters

NameTypePlacementRequired
customer_idstringBody
issuestringBody
priorityenumBody—

Webhook endpoint

Method

POST

URL

https://api.yourfieldapp.com/v1/jobs

Credential

Field app key

Timeout (ms)

10000

Signed with a saved credential.

Save a bearer token, an API key in the header you choose, or a username and password once, and any Action can sign with it.

Secrets are encrypted, never shown again after you save them, and only sent to the domains you allow.

New credential

Bearer tokenAPI keyBasic auth

Sent as-is, in the header you choose.

Name

Field app key

Header name

X-Api-Key

Value

••••••••••••••••

Allowed domains

api.yourfieldapp.com

X-Api-Key: ••••••••

The secret is encrypted at rest and never shown again — Actions reference it by an opaque handle.

Test it against the real thing.

Run a real request with your credential before anything goes live. See what Crulon sent, what your API answered, and exactly what the agent will receive.

Pick only the response fields the agent should see, and write the sentence it says with the answer.

Test call

Run test
Result
Success
Status
201
Duration
640 ms
Sent
POST https://api.yourfieldapp.com/v1/jobs

What your endpoint sent

{ "job": { "id": 1182, "status": "open", "tech": null }, "account": "…" }

What the agent receives (filtered)

{ "job": { "id": 1182 } }

Summary the agent says

Job 1182 is open.

Build it into a Tool.

Put Actions together on a canvas: look something up, check the answer, then act or return. Pass one step's result into the next, and describe the Tool in a sentence: that's what the agent reads to decide when to use it.

Test with sample data, where nothing is called, or as a live run. Publishing makes a version you can roll back to.

Open service job

open_service_jobv3 published

Input

phone, issue

Filled in by the agent

Action

Find customer

fieldapp.find_customer@^1.0.0

Condition

Customer found?

$.customer.id exists

true

Action

Create job

fieldapp.create_job

Return

Job opened

$.job.id

false

Return

Not a customer

found: false

TestVersionsExecutions
  • v3LiveKim Alvarez · today
  • v2Kim Alvarez · Oct 9 Rollback

Attach it to an agent.

Add the Tool to an agent's Business Tools. Tell it when to use the Tool, what to confirm with the caller first, and what to say while it works.

Set how long it waits, and what the caller hears if your API is slow or fails. The change goes live when you publish the agent.

Open service job

Draft — publish agent to apply

Instructions

Use when a customer reports a problem a technician needs to fix.

Confirmation

Before running, the agent should…

Read back the address and the problem, and wait for a yes.

While the tool runs

Speech while running

One moment while I take care of that.

Give up after

20 s

If it's still working, say

Still on it. · 8 s

What the caller hears

If it fails

I couldn't open the job just now. Let me pass you to the team.

Every request, on the call record.

Each Tool the agent used is on the call record with how long it took: the details it sent, the answer it got, and what it told the caller.

When something goes wrong, the record says why, in plain words: the Tool took too long, it asked the caller first, or your API reported a failure.

Tools

AI

Open service jobopen_service_job1.2 s · 00:37

Arguments

{ "phone": "(555) 014-8823", "issue": "No hot water" }

Result the agent received

{ "job": { "id": 1182 } }

What the caller was told:

“I've opened job 1182, and the team will be in touch about a visit.”

Check order statuscheck_order_status20 s · 01:12

The tool took too long

Safe by design.

Your API, your data, and the agent only does what you've allowed.

  • Built to ask before it writes

    The agent is told to read back what it's about to change and wait for a clear yes, and it can't run the write until it marks that the caller agreed. Writes you mark as harmless, like adding a note, can skip the question.
  • HTTPS, public addresses only

    Private, local and cloud-metadata addresses are blocked on every request, and redirects aren't followed.
  • Secrets stay secret

    Credentials are encrypted and write-only, and fixed values you set are never shown to the agent.
  • Only what it needs

    Pass the agent the response fields you choose, nothing more.
  • Limits on every Action

    Rate limits for each Action and the workspace, timeouts, and a size cap on every answer.
  • Roles decide who builds

    Only the roles you allow can build Actions, Tools and credentials. Everyone else can only use them.

On every plan.

Every plan can build Custom Actions. Plans differ in how many.

  • Starter, $24

    3 Custom Tools, for 1 AI agent.
  • Pro, $49

    10 Custom Tools, for up to 3 AI agents.
  • Scale, $89

    25 Custom Tools, for up to 10 AI agents.

Questions about Custom Actions.

What can I connect?

Any API that answers JSON over public HTTPS: your CRM, your field-service app, an order database, or an internal service you put online. If it has an API, your agent can use it.

How does it sign in to my API?

With a credential you save once: a bearer token, an API key in the header you choose, or a username and password. It's encrypted, never shown again, and only sent to the domains you allow.

Will the agent change things without asking?

It's built not to. The agent is told to read back what it's about to change and wait for a clear yes, and Crulon won't run the write until the agent marks that the caller agreed. It's the AI that asks, so try it with Talk in browser first. Writes you mark as harmless, like adding a note, can skip the question. You can write what it confirms for each agent.

What if my API is slow or down?

The agent waits as long as you allow, says a line you choose while it works, and tells the caller plainly if it can't get an answer. The call record shows what happened.

Can I test before it goes live?

Yes. Run a real test of each Action, and test the Tool with sample data, where nothing is called, or as a live run. The agent only uses published versions.

What counts toward my plan's limit?

Each Custom Action counts once, however many versions it has: 3 on Starter, 10 on Pro and 25 on Scale.

Put your API on the call.

Start on any plan, add your first Custom Action, and hear the agent use it on a call.

Your privacy choices

Choose which cookies crulon.ai and docs.crulon.ai may use. Your choice covers both sites in this browser. Privacy Policy