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

# Configure the Queue External API

> Create a scoped Queue credential, configure outbound webhooks, and understand the operational boundary.

## What you'll accomplish

You will create an integration credential limited to one Queue Unit and selected services, then configure signed webhook delivery.

## Prerequisites

* `queue.manage` permission.
* A configured Queue Unit with at least one Category.
* A server-side integration client. Never place the credential in public browser code.

## Create a Queue credential

1. Open the Queue Unit and select **External API**.
2. Select **Create Credential**.
3. Enter a readable credential name and stable client ID.
4. Select the operation scopes: issue tickets, read tickets, list services, or read live state.
5. Select the exact service Categories the integration may access.
6. Create the credential and copy the secret once into a secure server-side secret store.

<Frame caption="The External API page documents request freshness, idempotency, endpoints, responses, webhooks, and credential state for the selected Queue Unit.">
  <img src="https://mintcdn.com/layarva/hwiHWc_xHWMO3Kmw/images/queue/external-api.png?fit=max&auto=format&n=hwiHWc_xHWMO3Kmw&q=85&s=131dc52cab5f70bd1df6170095429f01" alt="Queue External API page with base URL, request headers, endpoints, responses, and webhook guidance" width="1920" height="889" data-path="images/queue/external-api.png" />
</Frame>

<Frame caption="A Queue credential is scoped to exact operations and service Categories and cannot cross into another Queue Unit.">
  <img src="https://mintcdn.com/layarva/hwiHWc_xHWMO3Kmw/images/queue/api-credential.png?fit=max&auto=format&n=hwiHWc_xHWMO3Kmw&q=85&s=99b69f98dccada498e66db1c40c8aab1" alt="Create Queue API Credential dialog with operation scopes and allowed services" width="1920" height="889" data-path="images/queue/api-credential.png" />
</Frame>

## Request security

Every request uses:

* `Authorization: Bearer <queue-api-key>`
* Optional `X-Correlation-ID` for tracing.

`POST /tickets` additionally uses:

* `X-Request-Timestamp` containing current UTC ISO-8601 time.
* A unique `X-Request-Nonce`.
* `Idempotency-Key`.

Timestamp freshness is five minutes, nonce replay records live for ten minutes, and the shared default limit is 60 requests per minute per credential.

## Configure a webhook endpoint

1. Select **Add endpoint**.
2. Enter a name and public HTTPS URL.
3. Select completed and/or no-show ticket events.
4. Save the endpoint and copy its signing secret securely.
5. Use **Send test** before accepting production traffic.

<Frame caption="Queue webhooks can subscribe independently to completed and no-show ticket events.">
  <img src="https://mintcdn.com/layarva/hwiHWc_xHWMO3Kmw/images/queue/webhook-endpoint.png?fit=max&auto=format&n=hwiHWc_xHWMO3Kmw&q=85&s=5231844f1ef9eccb0bb3dc9d283cc791" alt="Queue webhook endpoint form with completed and no-show event choices" width="1920" height="889" data-path="images/queue/webhook-endpoint.png" />
</Frame>

Webhooks are sent by the Platform after Queue operations are applied. This preserves order after an Edge outage and avoids duplicate branch-side delivery.

## Related guides

* [Queue API Quickstart](/developers/queue-api)
* [Authenticate Queue API Requests](/developers/authentication)
* [Verify Queue Webhooks](/developers/webhooks)
