> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Intercom Create Phone Switch: Inputs, Cost & CLI Example

> Create a phone Switch. Intercom Intercom Create Phone Switch docs include request fields, response shape, pricing notes, and Deepline CLI examples.

## Run in Enrichment Spreadsheet

<Info>
  Use this function as a column step in `deepline enrich`.
</Info>

```bash theme={null}
deepline enrich --input leads.csv --output leads.enriched.csv --with 'result=intercom_create_phone_switch:{"phone":"{{phone}}"}' --json
```

<Tip>
  Map payload values to spreadsheet columns with `{{column_name}}` placeholders.
</Tip>

## Input Schema

| Name                        | Type     | Required | Default | Description                                                                                                                                                                                                                                                                                         |
| --------------------------- | -------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `payload.phone`             | `string` | Yes      |         | Phone number in E.164 format, that will receive the SMS to continue the conversation in the Messenger.                                                                                                                                                                                              |
| `payload.custom_attributes` | `record` | No       |         | An object containing the different custom attributes associated to the conversation as key-value pairs. For relationship attributes the value will be a list of custom object instance models. System-defined attributes such as "CX Score rating" and "CX Score explanation" may also be included. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "You can create an phone switch",
    "properties": {
      "phone": {
        "type": "string",
        "description": "Phone number in E.164 format, that will receive the SMS to continue the conversation in the Messenger."
      },
      "custom_attributes": {
        "type": "object",
        "description": "An object containing the different custom attributes associated to the conversation as key-value pairs. For relationship attributes the value will be a list of custom object instance models. System-defined attributes such as \"CX Score rating\" and \"CX Score explanation\" may also be included.",
        "additionalProperties": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "integer"
            },
            {
              "type": "object",
              "additionalProperties": true
            },
            {
              "type": "object",
              "description": "The list of associated custom object instances for a given reference attribute on the parent object.",
              "properties": {
                "type": {
                  "type": "string"
                },
                "instances": {
                  "type": "array",
                  "description": "The list of associated custom object instances for a given reference attribute on the parent object.",
                  "items": {
                    "type": [
                      "object",
                      "null"
                    ],
                    "description": "A Custom Object Instance represents an instance of a custom object type. This allows you to create and set custom attributes to store data about your customers that is not already captured by Intercom. The parent object includes recommended default attributes and you can add your own custom attributes.",
                    "properties": {
                      "id": {
                        "type": "string",
                        "description": "The Intercom defined id representing the custom object instance."
                      },
                      "external_id": {
                        "type": "string",
                        "description": "The id you have defined for the custom object instance."
                      },
                      "external_created_at": {
                        "type": [
                          "integer",
                          "null"
                        ],
                        "description": "The time when the Custom Object instance was created in the external system it originated from.",
                        "format": "date-time"
                      },
                      "external_updated_at": {
                        "type": [
                          "integer",
                          "null"
                        ],
                        "description": "The time when the Custom Object instance was last updated in the external system it originated from.",
                        "format": "date-time"
                      },
                      "created_at": {
                        "type": "integer",
                        "description": "The time the attribute was created as a UTC Unix timestamp",
                        "format": "date-time"
                      },
                      "updated_at": {
                        "type": "integer",
                        "description": "The time the attribute was last updated as a UTC Unix timestamp",
                        "format": "date-time"
                      },
                      "type": {
                        "type": "string",
                        "description": "The identifier of the custom object type that defines the structure of the custom object instance."
                      },
                      "custom_attributes": {
                        "type": "object",
                        "description": "The custom attributes you have set on the custom object instance.",
                        "additionalProperties": {
                          "type": "string"
                        }
                      }
                    },
                    "additionalProperties": false
                  }
                }
              },
              "additionalProperties": false
            }
          ]
        }
      }
    },
    "required": [
      "phone"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output Schema

| Name          | Type     | Required | Default | Description                                    |
| ------------- | -------- | -------- | ------- | ---------------------------------------------- |
| `result.data` | `object` | Yes      |         | Phone Switch Response                          |
| `result.meta` | `object` | No       |         | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": [
          "object",
          "null"
        ],
        "description": "Phone Switch Response",
        "properties": {
          "type": {
            "type": "string",
            "default": "phone_call_redirect",
            "enum": [
              "phone_call_redirect"
            ]
          },
          "phone": {
            "type": "string",
            "description": "Phone number in E.164 format, that has received the SMS to continue the conversation in the Messenger."
          }
        },
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Advanced: Direct CLI

<Info>
  Use direct execution for single payload debugging.
</Info>

```bash theme={null}
deepline tools execute intercom_create_phone_switch --payload '{
  "phone": "string"
}' --json
```

### CLI flags

| Flag                        | Description                                         |
| --------------------------- | --------------------------------------------------- |
| `--json`                    | Print machine-readable output.                      |
| `--wait`                    | Wait for terminal provider status when supported.   |
| `--debug`                   | Enable wait mode with additional status/log output. |
| `--wait-timeout SECONDS`    | Max seconds to wait in wait mode.                   |
| `--poll-interval SECONDS`   | Polling interval in seconds during wait mode.       |
| `--timeout SECONDS`         | Request timeout in seconds.                         |
| `--connect-timeout SECONDS` | Connection timeout in seconds.                      |

## Cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.
* Billing mode: `no_bill`.
