> For the complete documentation index, see [llms.txt](https://docs.screendesk.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.screendesk.io/helpdesk-integrations/zendesk/zendesk-macros.md).

# Zendesk macros

Create and test Zendesk macros that request customer screen recordings and associate submissions with the correct ticket.

Use a Zendesk macro to insert a Screendesk recording request into a ticket reply. The customer opens the link, records the issue in a supported browser, and submits the video. The ticket ID in the link tells Screendesk where to return the recording.

If you are evaluating the product first, see the [Zendesk screen recording workflow](https://screendesk.io/zendesk). This guide covers macro setup, testing, and troubleshooting.

## Before you create the macro

* Connect the intended Zendesk workspace to your Screendesk account. Follow the [Zendesk integration guide](https://docs.screendesk.io/helpdesk-integrations/zendesk).
* Use a recording request link from that same Screendesk account.
* Have permission to manage macros in Zendesk and a test ticket you can safely use.
* Decide who should see the reply. A macro inserts content; an agent still reviews and submits the ticket update. Do not assume creating a macro automatically sends a request.

## 1. Create a recording request macro

In Zendesk, open **Admin Center → Workspaces → Agent tools → Macros**, then choose **Add macro**. Labels may vary with your Zendesk interface.

Name the macro **Request customer screen recording**. Choose the agents who can use it.

Add a **Comment/Reply** action (called **Comment/Description** in some interfaces). Insert a short explanation and your recording link. Keep the request focused on the issue and ask the customer to avoid showing private information.

## 2. Prepare the ticket-specific recording link

In Screendesk, choose **Request recording** and copy your generic request URL. Preserve the account and user key values from your own URL.

A generic request may have this form. The values below are placeholders, not working credentials:

```
https://app.screendesk.io/recordings/new?ak=YOUR_ACCOUNT_KEY&key=YOUR_USER_KEY&src=rria
```

To associate the submission with the Zendesk ticket:

1. Add `zid={{ticket.id}}` as a query parameter.
2. Change the source value to `src=rrz`.
3. Preserve the other parameters required by your generated link. The established macro link format includes `p=1`.

```
https://app.screendesk.io/recordings/new?zid={{ticket.id}}&ak=YOUR_ACCOUNT_KEY&key=YOUR_USER_KEY&src=rrz&p=1
```

Replace both key placeholders with the values from your own recording request. Do not copy another workspace's link. Zendesk replaces `{{ticket.id}}` when the macro is applied to a ticket; Screendesk uses `zid` and the Zendesk source to associate the recording.

Treat your workspace request URL as operational configuration. Share it only where customers are intended to receive recording requests, rather than publishing its key values in documentation.

## 3. Add a customer reply

Replace `[YOUR TICKET-SPECIFIC RECORDING LINK]` with your prepared link:

```
Hi {{ticket.requester.first_name}},

Could you record the steps that lead to this issue so we can see what happens?

Open this link: [YOUR TICKET-SPECIFIC RECORDING LINK]

In a desktop browser, choose the screen, window, or tab you want to share, start recording, and show the issue. Stop and submit the recording when you are done.

Please avoid showing passwords, payment details, or unrelated private information. You do not need to create a Screendesk account or install the Chrome extension for this browser recording request.

Thank you!
```

For a mobile customer, explain that the request uses their phone camera. Do not promise desktop-style mobile screen capture.

Save the macro. Before sending, the agent should preview the populated reply and confirm it is appropriate for the customer.

## 4. Test the complete return path

Use a test ticket and synthetic information before sharing the macro broadly.

1. Apply the macro and inspect the reply. Confirm the ticket placeholder becomes the correct ticket ID and that the link points to the intended Screendesk account.
2. Open the customer link in a separate supported browser session. Confirm a customer can reach the recorder without signing into an agent account.
3. Record a harmless sample, stop, and submit it.
4. Return to the original Zendesk ticket. Check that the recording arrives as an internal note, opens for the intended agent, and plays correctly.
5. Try a second test ticket to confirm the macro does not reuse the first ticket's ID.

A link opening successfully is only the first check. Verify submission and ticket association before rollout. Repeat a separate test for each channel you plan to support; an email-ticket test does not prove every Messenger workflow.

## Troubleshooting

### The ticket placeholder stays in the link

Apply the macro inside a saved ticket and inspect the reply Zendesk generates. Confirm the placeholder is exactly `{{ticket.id}}`, without escaped braces or spaces. A documentation example opened directly will not have a real ticket ID.

### The recording does not return to the ticket

Check the populated `zid`, `src=rrz`, and the account/user key values from the intended workspace. Confirm the Zendesk integration is connected to that account. Submit the recording fully; stopping capture alone is not a submission.

If it still fails, contact support with the test ticket ID, timestamp, and a description of what happened. Avoid putting workspace keys into a public bug report.

### The customer cannot share their screen

Ask the customer to use a supported desktop browser, check browser and operating-system screen-sharing permissions, and select a screen, window, or tab. A mobile camera request is a different capture flow.

### Console or network logs are missing

A video request does not guarantee technical logs. These require the supported capture configuration and an eligible plan. Check [Screendesk pricing](https://screendesk.io/pricing) and test the returned context before relying on it for an engineering escalation.

## Turn the recording into a useful handoff

Add the observed steps, expected behavior, environment, recording URL, and relevant timestamp to your engineering issue. Keep hypotheses separate from what the recording actually shows. Attach logs only if they were captured.

See the [Jira bug report guide](https://blog.screendesk.io/jira-bug-report/) for a handoff format. For product evaluation, use the [Zendesk integration page](https://screendesk.io/zendesk) or the [Screendesk and Birdie.so comparison](https://screendesk.io/compare/birdie).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.screendesk.io/helpdesk-integrations/zendesk/zendesk-macros.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
