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

# List all your website widget embeds

> Every widget deployment in your organisation, newest first, revoked ones included so you can see an embed existed and was withdrawn. One page, and no cursor.

Revoked deployments stay in the list so you can see that an embed existed and was withdrawn.

The response envelope key is `deployments`, not `data`, and the list is a single page: there is no cursor.

You need the `assistant.read` permission, which the owner, admin, editor and member (`normal`) roles hold. Authenticate with an `arukz_sk_` API key or a signed-in console session.

<ParamField query="limit" type="integer" default="50">
  How many deployments to return, from 1 to 100.
</ParamField>

## Response

<ResponseField name="deployments" type="object[]" required>
  The deployments, newest first.

  <Expandable title="properties">
    <ResponseField name="id" type="string" required>
      The deployment's ID (UUID).
    </ResponseField>

    <ResponseField name="name" type="string" required>
      The embed's label.
    </ResponseField>

    <ResponseField name="widget_key" type="string" required>
      The public widget key, `arukz_wk_` followed by the deployment ID.
    </ResponseField>

    <ResponseField name="assistant_id" type="string" required>
      The embedded assistant's ID.
    </ResponseField>

    <ResponseField name="status" type="string" required>
      `active`, `revoked` or `expired`. `expired` means the current time is past `expires_at`; an
      expired embed answers nothing. A revoked embed reads `revoked` even after its expiry.
    </ResponseField>

    <ResponseField name="allowed_origins" type="string[]" required>
      Origins allowed to host the widget, sorted.
    </ResponseField>

    <ResponseField name="created_at" type="string" required>
      When the deployment was created, ISO 8601 in UTC.
    </ResponseField>

    <ResponseField name="created_by" type="string | null" required>
      ID of the user who created it, or `null` when it was created with an API key.
    </ResponseField>

    <ResponseField name="expires_at" type="string | null" required>
      When the embed expires, or `null` if it does not.
    </ResponseField>

    <ResponseField name="revoked_at" type="string | null" required>
      When the embed was revoked, or `null`.
    </ResponseField>

    <ResponseField name="last_used_at" type="string | null" required>
      When the widget key last authenticated a request, or `null` if never.
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={"theme":{"light":"github-light","dark":"github-dark"}}
  curl --request GET "$MITHUNAI_URL/arukz/api/v1/widget-deployments?limit=50" \
    --header "Authorization: Bearer $MITHUNAI_API_KEY"
  ```

  ```python Python theme={"theme":{"light":"github-light","dark":"github-dark"}}
  import os, requests

  response = requests.get(
      f"{os.environ['MITHUNAI_URL']}/arukz/api/v1/widget-deployments",
      headers={"Authorization": f"Bearer {os.environ['MITHUNAI_API_KEY']}"},
      params={"limit": 50},
      timeout=30,
  )
  response.raise_for_status()
  for deployment in response.json()["deployments"]:
      print(deployment["name"], deployment["status"], deployment["widget_key"])
  ```

  ```javascript JavaScript theme={"theme":{"light":"github-light","dark":"github-dark"}}
  const response = await fetch(
    `${process.env.MITHUNAI_URL}/arukz/api/v1/widget-deployments?limit=50`,
    {
      headers: { Authorization: `Bearer ${process.env.MITHUNAI_API_KEY}` },
    },
  )
  const { deployments } = await response.json()
  console.log(deployments)
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={"theme":{"light":"github-light","dark":"github-dark"}}
  {
    "deployments": [
      {
        "id": "8d0f5a2e-3c41-4b7a-9e6d-1f2a3b4c5d6e",
        "name": "Docs site widget",
        "widget_key": "arukz_wk_8d0f5a2e-3c41-4b7a-9e6d-1f2a3b4c5d6e",
        "assistant_id": "5b1e9c2a-7d4f-4e3b-9a61-0c8f2d7e4a13",
        "status": "active",
        "allowed_origins": ["https://docs.example.com", "https://www.example.com"],
        "created_at": "2026-09-20T14:03:11.482190+00:00",
        "created_by": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
        "expires_at": null,
        "revoked_at": null,
        "last_used_at": "2026-09-24T07:58:30.021455+00:00"
      },
      {
        "id": "c47e2b90-5d18-4a6f-b3c2-9e0d1f2a3b4c",
        "name": "Staging widget",
        "widget_key": "arukz_wk_c47e2b90-5d18-4a6f-b3c2-9e0d1f2a3b4c",
        "assistant_id": "5b1e9c2a-7d4f-4e3b-9a61-0c8f2d7e4a13",
        "status": "revoked",
        "allowed_origins": ["http://localhost:3000"],
        "created_at": "2026-09-10T09:00:00.000000+00:00",
        "created_by": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
        "expires_at": null,
        "revoked_at": "2026-09-19T11:45:12.380917+00:00",
        "last_used_at": "2026-09-19T11:02:44.513620+00:00"
      }
    ]
  }
  ```

  ```json 400 theme={"theme":{"light":"github-light","dark":"github-dark"}}
  { "code": "validation_error", "message": "The page size must be between 1 and 100." }
  ```

  ```json 401 theme={"theme":{"light":"github-light","dark":"github-dark"}}
  { "code": "authentication_error", "message": "Authentication is required." }
  ```

  ```json 403 theme={"theme":{"light":"github-light","dark":"github-dark"}}
  { "code": "authorization_error", "message": "You do not have permission to perform this action." }
  ```
</ResponseExample>
