What Are Custom Actions?
Custom Actions allow you to package a series of connected blocks - for example, prompts, logic branches, and API requests - into a single reusable block.Once created, you can reuse this action across multiple call flows, share it with your organization, or even publish it to the marketplace. Think of a Custom Action as a mini reusable workflow inside your larger flow. It behaves like a single block but contains its own inner logic, inputs, and outputs.
Why Custom Actions Matter
- Reusability: Build a workflow once (e.g., appointment scheduling, lead collection, verification) and reuse it across multiple flows.
- Consistency: Ensure teams follow the same steps and structure for repeated processes.
- Scalability: Share standard actions (like “Verify Customer Identity”) across teams and departments.
- Maintainability: Update logic in one plac, changes automatically propagate to all flows using that action.
Building a Custom Action (Appointment Example)
Let’s build a Make Appointment Custom Action that collects a preferred time, checks availability, and books an appointment.
1
Start from Your Flow
- Open an existing call flow (e.g., your appointment scheduling flow).
- Click the + button under any existing block.
- Select Build a Custom Action. A purple editor window opens - his is your custom action workspace.
2
Add Blocks to Your Custom Action
Inside the purple area (your Custom Action workspace), you can start building just like you would in a regular flow.
- Click the + button below the Start node to open the block selector, then choose any block you want to add — for example, Talk, Collect, API Request, or Send Email.
- Alternatively, you can drag blocks into the purple area from an existing flow.
3
Example: Configuring an Appointment Custom Action
Let’s walk through how to configure a Custom Action that handles appointment scheduling for a legal office.Connect an API Request BlockNext, you’ll connect to your firm’s booking system or calendar API to check available slots.
- Click the + button under your Collect block and select API Request.
- In the configuration panel:
- Method:
GET - Endpoint
- Headers: include your
Content-Type(e.g.,application/json) andapiKey - Body Parameters.
- You can reference any collected variables using double curly braces.
4
Offer Available Time Slots
After retrieving availability, add a Talk block to read back available slots to the caller.Example prompt:
“I found two available slots - tomorrow at 10 AM and Thursday at 2 PM. Which one would you prefer?”
- If the caller chooses a time, capture their response with another Collect block (e.g.,
preferredSlot).
5
Book the Appointment
Next, add a second API Request block to confirm the booking:
- Endpoint
- Method:
POST
bookingId or meetingLink.6
Connect Output Paths
Output nodes define how your Custom Action communicates results back to the main flow.
They act as exit points - determining what happens once your action finishes, whether it succeeds, fails, or the caller ends the process.
Understanding Output PathsEach output path represents a possible outcome of your action. For example:
They act as exit points - determining what happens once your action finishes, whether it succeeds, fails, or the caller ends the process.

- Success: The action completed successfully. i.e The appointment was booked and confirmed.
- Fail: Something went wrong during the process. i.e The booking API request failed or returned an error.
- Not Interested: The caller declined to proceed. i.e The client decided not to book or continue with the call.
- Click any empty area inside the purple Custom Action box (the group area).
- The Global Settings panel will slide in from the right side.
- Under Output Paths, you’ll see existing nodes (e.g., Success, Fail, Not Interested).
- To create a new one, click ➕ Add Output Path, then enter a name - for example, Escalate or Reschedule.
- Click Done to save your changes.
7
Connect to End Call and Post-Call Actions
Once your appointment logic is complete and all outcome paths are defined, you need to connect your Custom Action to the End Call block and any post-call actions that should run after the conversation finishes.
This ensures a clean and professional call experience for both your AI agent and the client.Add the End Call BlockAt the bottom of your flow, click the + button and select End Call.
This block finalizes the interaction once all other actions have run.Link Each Output Path to Its Next StepMake sure every outcome path from your Custom Action connects to the appropriate block:
These connections ensure that each scenario is gracefully handled without leaving the caller in an unfinished state.Add Optional Post-Call ActionsIf you want to follow up or log the appointment automatically, add post-call blocks:
Once all nodes are connected and fields are configured, your Custom Action for appointment booking is ready.In the next section, we’ll show you how to publish your Custom Action to your organization or the Phonely Marketplace so others can reuse it.
This ensures a clean and professional call experience for both your AI agent and the client.Add the End Call BlockAt the bottom of your flow, click the + button and select End Call.
This block finalizes the interaction once all other actions have run.Link Each Output Path to Its Next StepMake sure every outcome path from your Custom Action connects to the appropriate block:
| Output Path | Typical Connection | Example Action |
|---|---|---|
| Success | End Call> Send SMS or Send Email | “Your consultation is confirmed for Thursday at 2 PM.” |
| Error | > Escalate to Support or Transfer Call | Route the caller to a live receptionist if booking fails. |
| Not Interested | > End Call | Politely close the call: “Alright, no problem — thank you for your time.” |
- Send Email: Send an internal summary to your legal assistant or client.
- Send SMS: Send a text reminder or confirmation link.
- API Request: Log the appointment into your CRM or case-management system.
- Code Block: Run custom logic - for example, update case status or trigger automation in another tool.

8
Publishing Your Custom Action
Once your Custom Action is complete and tested, the next step is to publish it — either for private testing, internal team use, or public sharing. Publishing determines who can access, reuse, and configure the action in other call flows.
Accessing the Publish OptionsTo begin publishing:

- Click the ⋯ (three vertical dots) at the top-right corner of the purple Custom Action area.
- From the dropdown menu, select one of the following options:
| Option | Purpose |
|---|---|
| Save as Draft | Keeps the Custom Action private to your current flow. Ideal for ongoing testing or early prototypes. |
| Publish to Organization | Shares the Custom Action with your team members. Everyone in your organization can add it to their own call flows and update to newer versions. |
| Publish to Marketplace | Submits the action for public review and distribution, making it available to all users on Phonely. |
9
Configure Customizable Fields
After selecting a publish option, Phonely will prompt you to configure fields.
This step defines which variables other users can edit when they use your Custom Action in their own flows.
This step defines which variables other users can edit when they use your Custom Action in their own flows.
- The Configure Fields window opens automatically.
Here you’ll see all available nodes, such as headers and query parameters, listed on the left panel. - Check the boxes next to the parameters that you want users to customize — for example:
- On the right side, Phonely shows editable text fields labeled:
“User will enter value here.”
This indicates that the selected parameter will be visible and configurable by others. - Click Next to continue once you’ve chosen all relevant fields.
10
Finalize the Integration details and Submit
After configuring fields, you’ll move to the Finalize Custom Action window.
This is where you define how your integration will appear to others.
This is where you define how your integration will appear to others.
- Integration Name: Choose an existing integration or create a new one.
- Description: Provide a clear summary of what your Custom Action does.
- Icon: Select an icon to represent your Custom Action.
- Action Name: Enter a short, clear title for the action.
-
Click Submit to finalize and publish.

11
Your Custom Action is now ready to use
After submission, you’ll receive a confirmation message indicating that your Custom Action has been successfully created or updated.Depending on your chosen option:
- Draft: Appears only within your current project.
- Organization: Appears in your team’s shared action library.
- Marketplace: Submitted for review by Phonely’s moderation team before public listing.
- Update the action
- Edit metadata (name, description)
- Re-publish


