diff --git a/docs/api-reference/webhooks/types.mdx b/docs/api-reference/webhooks/types.mdx index 263f58ef1..c43718890 100644 --- a/docs/api-reference/webhooks/types.mdx +++ b/docs/api-reference/webhooks/types.mdx @@ -1,7 +1,7 @@ --- -title: "Event Types" -description: "List of the supported webhook types" -icon: "globe" +title: 'Event Types' +description: 'List of the supported webhook types' +icon: 'globe' --- `conversation.started` @@ -143,4 +143,103 @@ When a third-party software agent responds to a previously handed-off conversati } ``` +----- + +`phone.incoming_call_started` + +This event is triggered when an incoming call is initiated, providing details about the call’s origin, state, and participants. + + +```typescript +{ + event: "phone.incoming_call_started"; + organization_id: string; + data: { + type: 'AI' | 'human_agent'; + id: string; + direction: 'Incoming'; + call_state: string; + call_timestamp: Date; + duration: number | null; + caller: { name: string | null; number: string }; + called: { name: string | null; number: string }; + }; +} +``` + + +--- + +`phone.outgoing_call_started` + +This event is triggered when an outgoing call is initiated, providing details about the call’s origin, state, and participants. + + +```typescript +{ + event: "phone.outgoing_call_started"; + organization_id: string; + data: { + type: 'human_agent'; + id: string; + direction: 'Outgoing'; + call_state: string; + call_timestamp: Date; + duration: number | null; + caller: { name: string | null; number: string }; + called: { name: string | null; number: string }; + }; +} +``` + +--- + + +`phone.incoming_call_ended` + +This event is triggered when an incoming call ends, providing details about the call’s origin, state, and participants. + + +```typescript +{ + event: "phone.incoming_call_ended"; + organization_id: string; + data: { + type: 'AI' | 'human_agent'; + id: string; + direction: 'Incoming'; + call_state: string; + call_timestamp: Date; + duration: number | null; + caller: { name: string | null; number: string }; + called: { name: string | null; number: string }; + }; +} +``` + + +--- + +`phone.outgoing_call_ended` + +This event is triggered when an outgoing call ends, providing details about the call’s origin, state, and participants. + + +```typescript +{ + event: "phone.outgoing_call_ended"; + organization_id: string; + data: { + type: 'human_agent'; + id: string; + direction: 'Outgoing'; + call_state: string; + call_timestamp: Date; + duration: number | null; + caller: { name: string | null; number: string }; + called: { name: string | null; number: string }; + }; +} +``` + diff --git a/docs/dashboard/zapier-integration.mdx b/docs/dashboard/zapier-integration.mdx new file mode 100644 index 000000000..2a6b1ce49 --- /dev/null +++ b/docs/dashboard/zapier-integration.mdx @@ -0,0 +1,158 @@ +--- +title: "Zapier" +icon: "asterisk" +description: "Open is integrated with Zapier! You can automate multiple Open actions and triggers using zapier.com and using OpenCX app." +--- + +This guide shows you how to create your own zaps using Open's Action and Triggers. + +A Zapier zap consists of a Trigger and an Action. + +Zapier Triggers allows you to do an action when something happens. + +Zapier Action is an action that happens when a trigger is activated. + +## Open Actions + + + Create a new contact to be stored in your Open Dashboard. + + + Deletes a contact from your contact list. + + + Lists all your contacts. + + + Creates a chat session with a contact in any type of channel + + + Lists all chat sessions of organization. + + + Lists the history of a particular chat session + + + Make an AI phone call using your phone number created in Open + + + Send emails to multiple contacts, possibly with a time delay. To send emails using the API, you must first verify the domain you want to send emails from. You can add and verify custom domains in the settings. + + + + +## Open Triggers + + + Is triggered when a new conversation of any channel type starts + + + Is triggered when a new conversation of any channel type ends + + + Triggers when a conversation is handed off to a human agent. Note that a handoff event can happen for multiple reasons; for example, a human agent might decide to take over the conversation, or the AI might decide to hand off the conversation to a human agent. + + + + + +## Steps for creating you first Zap using Open's Actions and Triggers + +### Creating a Zap using one of Open's Triggers + + + + Firstly go to your Zapier Zaps Dashboard using [this](https://zapier.com/app/zaps) link, and signup if you do not have an account. + + + Click on the "+ Create" button on the top right to create a new Zap. The following screen should now be visible. + + Press on the box with the title "Trigger" + + + This screen should now be visible. + + In the search bar type "OpenCX" and our app should be visible to choose. + + Choose this app. + + + This screen should now be visible. + + After choosing one of our triggers for this example we chose "Conversation Started", you will then press on the sign in button below to sign in using you Open Account so we can verify your identity. + You will then be redirected to this page + + Here we request an API key that is connected to you open account. To get this API key simply go to your [Open account](https://cloud.opencopilot.so/) and then go to the settings + + Then choose "API Token" from the left menu + + Press "Add" to add a new token, choose a name for this token. Copy the generated token and store it in a safe place, then paste it in the Zapier Login Screen like so. + + Then press continue and you will be immediatly redirected to your Zap. + + Your trigger part of the Zap is now setup and ready! + + + +### Creating a Zap using one of Open's Actions + +For actions you will do the exact same steps as Triggers with the exception that you will be choosing Action instead. + + + + diff --git a/docs/images/choose-open-option.png b/docs/images/choose-open-option.png new file mode 100644 index 000000000..102d0a289 Binary files /dev/null and b/docs/images/choose-open-option.png differ diff --git a/docs/images/open-settings-api-tokens.png b/docs/images/open-settings-api-tokens.png new file mode 100644 index 000000000..52d65c94e Binary files /dev/null and b/docs/images/open-settings-api-tokens.png differ diff --git a/docs/images/open-settings.png b/docs/images/open-settings.png new file mode 100644 index 000000000..2f1a00fe7 Binary files /dev/null and b/docs/images/open-settings.png differ diff --git a/docs/images/zap-preview.png b/docs/images/zap-preview.png new file mode 100644 index 000000000..78c02a21e Binary files /dev/null and b/docs/images/zap-preview.png differ diff --git a/docs/images/zapier-app-search.png b/docs/images/zapier-app-search.png new file mode 100644 index 000000000..0a101b696 Binary files /dev/null and b/docs/images/zapier-app-search.png differ diff --git a/docs/images/zapier-choose-trigger.png b/docs/images/zapier-choose-trigger.png new file mode 100644 index 000000000..0b7e46217 Binary files /dev/null and b/docs/images/zapier-choose-trigger.png differ diff --git a/docs/images/zapier-login-added-api-key.png b/docs/images/zapier-login-added-api-key.png new file mode 100644 index 000000000..6e9caec6b Binary files /dev/null and b/docs/images/zapier-login-added-api-key.png differ diff --git a/docs/images/zapier-login.png b/docs/images/zapier-login.png new file mode 100644 index 000000000..c206fada5 Binary files /dev/null and b/docs/images/zapier-login.png differ diff --git a/docs/images/zapier-zaps.png b/docs/images/zapier-zaps.png new file mode 100644 index 000000000..ce128e4cf Binary files /dev/null and b/docs/images/zapier-zaps.png differ diff --git a/docs/mint.json b/docs/mint.json index 3ffec080c..db18c5be4 100644 --- a/docs/mint.json +++ b/docs/mint.json @@ -77,7 +77,8 @@ "group": "Native Integrations", "pages": [ "dashboard/zendesk_integration", - "dashboard/shopify_integration" + "dashboard/shopify_integration", + "dashboard/zapier_integration" ] }, { @@ -91,16 +92,6 @@ "api-reference/contacts/update" ] }, - { - "group": "Phone", - "icon": "phone", - "pages": [ - "api-reference/phone/buy", - "api-reference/phone/get-all-phones", - "api-reference/phone/delete", - "api-reference/phone/update" - ] - }, { "group": "Email", "icon": "envelope",