# Placeholders

You can use **placeholders** in the **Hook URL, headers** and **body** of the request. The following placeholders are available:

| **Variable** | **Description** | Available channels |
|  --- | --- | --- |
| {{calling_phone_number}} | The calling phone number | `voice`, `sms` and `whatsapp` conversations* |
| {{called_phone_number}} | The called phone number | `voice`, `sms` and `whatsapp`  conversations* |
| {{customer_phone_number}} | The customer's phone number | `voice`, `sms` and `whatsapp`  conversations* |
| {{agent_phone_number}} | The agent's phone number | `voice`, `sms` and `whatsapp`  conversations* |
| {{a_phone_number}} | Caller’s phone number | originating number, and for non-voice channels, the requester's phone number if known |
| {{b_phone_number}} | The destination's number (typical your organization number) | `voice`, `sms` and `whatsapp`  conversations* |
| {{widget_id}} | The Dixa chat Widget ID | Legacy Chat (not available on Dixa Messenger) |
| {{facebook_page_id}} | The Facebook Page ID | `facebook` conversations* |
| {{sending_email}} | The sending email | `email` and `contactform` conversations* |
| {{receiving_email}} | The receiving email | `email` and `contactform` conversations* |
| {{agent_email}} | The assigned agent's email | all |
| {{customer_email}} | The customer's email | `email`, `contactform`, `chat` amd `messenger` conversations* |
| {{a_email}} | The sender's email address | for non-email address based channels, the requester's email if known |
| {{b_email}} | The receiver’s email address | `email` conversations* |
| {{csid}} | The conversation id in Dixa | all |
| {{customer_external_id}} | The external id of a customer | Available for all channels, if `externalId` was provided programatically for the requester/enduser. |


(*) Variables which have any invalid URL characters (eg. @ in email or + in phone number already **encoded for query string parameters** (as an example ``?email={{a_email}}`) if you use it in the hook URL. Being compliant with [RFC 3986](https://tools.ietf.org/html/rfc3986#section-3.3) encoding should not be applied if variable is a part of a path (as an example `/test/{{a_email}}`).
If the Hook URL contains any static query parameters, their values must be encoded with URL encoding.

`voice` in the above table means channels using Dixa telephony, such as callbacks, voicemail and inbound/outbound phone calls.