Outbound API Fields

Crystal Field Updated by Crystal Field

The following information provides the field scripts needed for your Outbound Call feature. To do this you will need your API key as requested in Outbound Calling with Smith.ai: Getting Started.

Please be sure to work with your developer to use the following scripts.
Url:
POST request to:
https://app.smith.ai/api/vr/v1/outbound/

Authentication:
Standard authorization header:
'token <your api access token>'
Main Fields -

These are the fields required for a post request

"callback_number": {
    "type": "string",
    "required": true,
    "description": "The number to callback"
},
"reason": {
    "type": "choice",
    "required": true,
    "description": "Reason for the callback",
    "choices": [
        {
            "display_name": "Spanish caller",
            "value": 1
        },
        {
            "display_name": "Schedule a consultation",
            "value": 2
        },
        {
            "display_name": "Advise it is outside practice areas",
            "value": 3
        },
        {
            "display_name": "Collect payment(s)",
            "value": 4
        },
        {
            "display_name": "Reschedule an appointment",
            "value": 5
        },
        {
            "display_name": "Inform them a follow up email was sent",
            "value": 6
        },
        {
            "display_name": "Correct a mistake",
            "value": 7
        },
        {
            "display_name": "Other",
            "value": 8
        }
    ]
},
"reason_other_text": {
    "type": "string",
    "required": false unless “reason” is 8 - other,
    "description": "Reason for the call other",
    "max_length": 200
},
"action_required": {
    "type": "string",
    "required": true,
    "description": "Instructions if recipient answers (cannot contain html links)",
    "max_length": None
},
"action_fallback": {
    "type": "string",
    "required": true,
    "description": "Instructions if recipient doesn’t answer (cannot contain html links)"
    "max_length": 200
},

Client Fields -
 "first_name": {
    "type": "string",
    "required": false,
    "description": "First name of the recipient (if known)"
},
"last_name": {
    "type": "string",
    "required": false,
    "description": "Last name of the recipient (if known)"
},
"email": {
    "type": "string",
    "required": false,
    "description": "Email of the recipient (if known)"
},

Availability Fields -
 "availability": {
    "type": "choice",
    "required": true,
    "description": "Availability",
    "choices": [
        {
            "display_name": "24/7",
            "value": 1
        },
        {
            "display_name": "Use Pro's availability",
            "value": 2
        },
        {
            "display_name": "Custom",
            "value": 3
        },
        {
            "display_name": "Use Pro's default outbound configuration",
            "value": 4
        }
    ]
},

Custom Availability Fields -

These are additional fields that you can use

 "custom_from": {
"type": "time",
"required": "only if 'availability' is custom (3)",
"description": "Custom from"
},
"custom_to": {
"type": "time",
"required": "only if 'availability' is custom (3)",
"description": "Custom to (must be greater than custom_from)"
},
"custom_weekdays": {
"type": "nested object",
"required": "only if 'availability' is custom (3)",
"description": "Custom weekdays",
"example": {
"monday": false,
"tuesday": true,
"wednesday": true,
"thursday": true,
"friday": true,
"saturday": false,
"sunday": false,
},
},
"cadence_unit": {
"type": "choice",
"required": "if 'availability' is 24/7 (1) or custom (3)",
"description": "Cadence unit",
"choices": [
{
"display_name": "Minutes",
"value": 1
},
{
"display_name": "Hours",
"value": 2
},
{
"display_name": "Days",
"value": 3
}
]
},
"cadence_amount": {
"type": "integer",
"required": "if 'availability' is 24/7 (1) or custom (3)",
"description": "Cadence amount",
"min_value": 1
},
"attempts": {
"type": "integer",
"required": "if 'availability' is 24/7 (1) or custom (3)",
"description": "Attempts",
"min_value": 1
},
"custom_timezone": {
"type": "string",
"required": "only if 'availability' is custom (3)",
"description": "Custom timezone"
}

Optional Fields -
"language": {
"type": "choice",
"required": false,
"description": "Language"
"choices": [
{
"display_name": "English",
"value": "en"
},
{
"display_name": "Spanish",
"value": "es"
},
],
“default”: “en”
}

a few sample payloads from our unit tests…

{
'callback_number': '6505130855',
'reason': 2, (schedule a consultation),
'action_required': 'Please call the client back as soon as possible',
'action_fallback': 'Call them again',
'first_name': 'John',
'attempts': 2,
'cadence_amount': 1,
'cadence_unit': 1, (minutes)
'availability': 3, (custom)
'custom_from': '07:00 AM',
'custom_to': '06:00 PM',
'custom_weekdays': {
'monday': 'false',
'tuesday': 'true',
'wednesday': 'true',
'thursday': 'true',
'friday': 'true',
'saturday': 'false',
'sunday': 'false',
},
'custom_timezone': 'US/Pacific',
},

{
'callback_number': '6505130855',
'reason': 2, (schedule a consultation)
'action_required': 'Please call the client back as soon as possible',
'action_fallback': 'Call them again',
'first_name': 'John',
'attempts': 0,
'cadence_amount': 2,
'cadence_unit': 2, (hours)
'availability': 1, (24/7)
},

{
'callback_number': '6505130855',
'reason': 2, (schedule a consultation)
'action_required': 'Please call the client back as soon as possible',
'action_fallback': 'Call them again!',
'first_name': 'John',
'attempts': 3,
'cadence_amount': 1,
'cadence_unit': 2, (hours)
'availability': 3, (custom)
'custom_from': '08:00 AM',
'custom_to': '06:00 PM',
'custom_weekdays': {
'monday': 'true',
'tuesday': 'true',
'wednesday': 'true',
'thursday': 'true',
'friday': 'true',
'saturday': 'false',
'sunday': 'false',
},
'custom_timezone': 'US/Pacific',
},

How did we do?

Generate a Virtual Receptionist Plan API key

Smith.ai Chat API Documentation for Extended Data and Widget Visibility

Contact