Automations
🎤 AI Voice & Chat5.5GHL

A.I. Phone | Call Back Recordings

Post-call webhook that logs the AI callback summary, tags answered/unanswered, handles DND, and formats and saves any requested callback time.

1 trigger 11 steps 2 branches Advanced
What it does

When an AI callback call concludes, this automation fires via webhook — finding the contact, logging a call summary note, and extracting key information from the conversation into the contact record. It then checks whether the call was answered or not, tagging accordingly. For answered calls it checks DND status, enabling or disabling it based on the contact's preference. For unanswered calls it checks whether a callback time was given — if yes, it captures and stores that callback time in the contact profile and fires the AI at the specified time. If no callback time was given, the contact exits cleanly with the appropriate tag applied.

The value

Every callback attempt — whether answered or not — generates structured, actionable data that feeds back into the CRM automatically. No call outcome is lost, no callback commitment is forgotten, and no contact preference is ignored. The DND logic protects the business from contacting people who've opted out, while the callback time capture ensures promised callbacks are honoured precisely. The call summary note means anyone on the team can pick up the conversation with full context at any time.

Where it fits

This is the data and compliance layer of the AI voice system — the automation that makes sure every call interaction is properly recorded, respected, and acted on. It works in direct partnership with automations 2, 3, and 4 to create a complete AI phone management system: outbound calls are initiated, callbacks are scheduled, and every interaction is logged and followed up. For clients operating at volume, this automation is what keeps the phone system organised, compliant, and continuously improving based on real call data.

Overall purpose

This workflow processes AI voice-call data received through an inbound webhook. It identifies the correct contact, logs the call details, updates call-related custom fields, and routes the contact based on the call outcome. The workflow checks: - Whether the call was answered. - Whether the contact requested Do Not Disturb. - Whether the contact provided a callback time. It then applies the appropriate tags, DND settings, and callback information.

The build — trigger → steps → branches

Triggerentry point

Inbound Webhook

Inbound Webhook

Receive AI voice-call information from an external system. Webhook data includes contact phone number {{inboundWebhookRequest.lead.phone_number}}, call transcript {{inboundWebhookRequest.call.transcript}}, call duration {{inboundWebhookRequest.call.duration}}, call status {{inboundWebhookRequest.call.status}}, recording URL {{inboundWebhookRequest.call.recording_url}}, and extracted callback information {{inboundWebhookRequest.executed_actions.my_extract_info_back.return_value.back}}.

  1. Find Contact

    Action

    Find Contact · Phone = {{inboundWebhookRequest.lead.phone_number}}

    Locate the matching contact so all notes, field updates, tags, and DND settings are applied to the correct CRM record.

  2. Add Call Summary Note

    Action

    Add Note · AI Voice Recording 🎙 (transcript, duration, status, recording)

    Create a clear, human-readable call record on the contact's timeline — transcript {{inboundWebhookRequest.call.transcript}}, duration {{inboundWebhookRequest.call.duration}}, status {{inboundWebhookRequest.call.status}}, recording {{inboundWebhookRequest.call.recording_url}}.

  3. Update Call Fields

    Action

    Update Contact Fields · Call Status, Call Back Time

    Store the current AI call status ({{inboundWebhookRequest.call.status}}) and place an initial "call back time webhook" placeholder before a callback time is formatted and saved later.

If / Elsesplits into 2

Was the Call Answered?

Answered7 steps

Runs when the call is treated as successfully answered (Voice OS | Call Back Time contains "complete").

  1. Add Answered Tag

    Action

    Add Contact Tag · ai call | answered

    Mark the contact as having completed an answered AI call.

  2. Did the Contact Request DND?

    If / Else

    Webhook status contains DND extraction (placeholder)

    Placeholder value — replace with the actual value returned by the AI extraction when the contact requests no further calls. Branches: DND Enabled / No DND.

  3. DND Enabled · Enable Call DND

    Action

    Enable/Disable DND · Enable · Channel: Call

    Prevent future automated calls from being placed to the contact. Workflow ends for this branch.

  4. No DND · Was a Callback Time Provided?

    If / Else

    Custom callback field has a value

    Determine whether the contact requested a future callback and supplied a time. Branches: Call Back Time / None.

  5. Callback Time · Format Callback Time

    Action

    ChatGPT · GPT-4 Turbo · temp 0.2

    Convert the natural-language callback time (input {{inboundWebhookRequest.executed_actions.my_extract_info_back.return_value.back}}) into MM-DD-YYYY HH:MM, using {{right_now.middle_endian_date}} for relative phrases such as "Tomorrow at 3 PM", "Next Tuesday morning", or "Friday at 10:30". Return only the formatted date/time, e.g. 07-21-2025 15:00.

  6. Callback Time · Save Formatted Callback Time

    Action

    Update Field · Voice OS | Call Back Time = {{chatgpt.1.response}}

    Store the standardized callback date and time for use in future callback or scheduling automations. Workflow ends for this branch.

  7. No Callback Time · End

    Action

    No actions

    End the workflow when the contact did not provide a callback time.

Not Answered1 steps

Runs when the AI call was not answered.

  1. Add Not Answered Tag

    Action

    Add Contact Tag · ai call | not answered

    Identify contacts whose AI call attempt was unsuccessful. This tag can later trigger redial workflows, follow-up SMS messages, retry sequences, or manual review. Workflow ends.

ai-voicerecordingwebhookcallbackdndtranscript