# Certainly.io

There is no native Certainly-Screendesk integration, but Screendesk's recording request link can be embedded directly in Certainly's chatbot cards and buttons to trigger screen recordings from AI-assisted conversations.

### How It Works

Screendesk provides a direct recording request link that can be embedded anywhere:

```
https://app.screendesk.io/recordings/new?ak={ACCOUNT_KEY}&key={USER_KEY}&src=rria&p=1
```

End users click the link, record their screen in-browser (no install required), and the recording appears in the Screendesk dashboard. You can find that link on the dashboard.

<figure><img src="https://3820804400-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfW6XSzJSKsNyZnOkSJPt%2Fuploads%2F1h3Rqlvhj8DT7EQXl8UT%2FCleanShot%202026-04-02%20at%2018.54.32%402x.png?alt=media&#x26;token=e2574bd4-5481-4928-8858-7dd3b153b0b3" alt=""><figcaption></figcaption></figure>

### Recording Request Link Parameters

| Parameter | Required | Description                                                     |
| --------- | -------- | --------------------------------------------------------------- |
| `ak`      | Yes      | Account key — identifies the Screendesk workspace               |
| `key`     | Yes      | User API key — identifies the agent requesting the recording    |
| `src`     | No       | Source identifier for tracking (use `rria` for generic request) |
| `ce`      | No       | Customer email — associates the recording with a customer       |
| `zid`     | No       | Zendesk ticket ID — links the recording to a Zendesk ticket     |
| `p=1`     | No       | Show account recorder instead of personal recorder.             |

### Integration Methods

#### A) Generic Card with "Open URL" Button (Simplest)

1. In Certainly's bot builder, open the relevant Module
2. Add a **Generic Card** with a title like "Record Your Screen"
3. Add a **Button** with Action: "Open URL"
4. Paste the Screendesk recording link:

   ```
   https://app.screendesk.io/recordings/new?ak=YOUR_ACCOUNT_KEY&key=USER_KEY&src=rria&p=1
   ```
5. Set the link to open in another tab so the chat stays open

#### B) Dynamic Card with Variables (Personalized)

1. Collect the customer's email in an earlier module and store it as a Custom Variable (`customer_email`)
2. If you also have a Zendesk ticket ID, store it as a Custom Variable such as `zendesk_id`
3. Use Jinja2 templating to embed the values in the URL:

   ```
   https://app.screendesk.io/recordings/new?ak=YOUR_ACCOUNT_KEY&key=YOUR_API_KEY&src=rria&ce={{customer_email}}&zid={{zendesk_id}}
   ```

This associates the recording with the customer automatically.

If you have a Zendesk ticket ID available, you can also pass `zid` from a custom variable. This links the recording to the Zendesk ticket as well.

#### C) Web SDK (Programmatic)

Use Certainly's Web SDK to send the recording link programmatically from bot logic:

```js
certainly.sendMessage({
  sender: "bot",
  message: {
    text: "Please record your screen so we can help you faster: https://app.screendesk.io/recordings/new?ak=YOUR_ACCOUNT_KEY&key=YOUR_API_KEY&src=rria&p=1"
  },
  webchatKey: "1"
});
```

### Source Tracking

Recordings triggered from Certainly use the `src` parameter for analytics. Recommended values:

* `rria` — Generic "request recording in-app" (works out of the box)
* `rrz` — Generic "Zendesk Ticket" (works out of the box)

### Relevant Documentation

#### Certainly

* [Generic Cards](https://support.certainly.io/knowledge/Add-clickable-Generic-Cards-with-images-to-your-bot)
* [Webhooks](https://support.certainly.io/knowledge/configure-webhooks-for-use-in-your-chatbot)
* [Web SDK](https://support.certainly.io/knowledge/certainly-s-conversational-web-sdk)

#### Screendesk

* [Screen Recording Experience](https://docs.screendesk.io/use-case/request-screen-recordings/screen-recording-experience)
* [API Overview](https://docs.screendesk.io/api/v1/screendesk-api/overview)
