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

# link.updated

export const WebhookResponseBodyParameters = ({type, children}) => <div>
    <h2>Response body parameters</h2>
    <p>
      All webhook payloads follow a consistent top-level structure with
      event-specific data nested within the <code>data</code> object.
    </p>
    <ParamField body="id" type="string">
      The event ID.
    </ParamField>
    <ParamField body="event" type="string">
      The event type that triggered the webhook (e.g., <code>{type}</code>).
    </ParamField>
    <ParamField body="createdAt" type="string">
      ISO 8601 timestamp when the webhook event was created.
    </ParamField>
    <ParamField body="data" type="object">
      Event-specific data containing detailed information about the event. The
      data object for the <code>{type}</code> event contains the following
      parameters:
      <Expandable defaultOpen title="object parameters">
        {children}
      </Expandable>
    </ParamField>
  </div>;

Event triggered when a [link is updated](/docs/api-reference/links/update).

<WebhookResponseBodyParameters type="link.updated">
  <ParamField body="id" type="string">
    Unique identifier for the link.
  </ParamField>

  <ParamField body="domain" type="string">
    The short link domain (e.g. <code>dub.sh</code>).
  </ParamField>

  <ParamField body="key" type="string">
    The short link path/slug.
  </ParamField>

  <ParamField body="url" type="string">
    The destination URL.
  </ParamField>

  <ParamField body="shortLink" type="string">
    Full short link URL.
  </ParamField>

  <ParamField body="qrCode" type="string">
    URL to the QR code image for this link.
  </ParamField>

  <ParamField body="userId" type="string">
    ID of the user who owns the link.
  </ParamField>

  <ParamField body="workspaceId" type="string">
    ID of the workspace the link belongs to.
  </ParamField>

  <ParamField body="clicks" type="number">
    Total click count for the link.
  </ParamField>

  <ParamField body="createdAt" type="string">
    ISO 8601 timestamp when the link was created.
  </ParamField>

  <ParamField body="updatedAt" type="string">
    ISO 8601 timestamp when the link was last updated.
  </ParamField>
</WebhookResponseBodyParameters>

<ResponseExample>
  ```json Response theme={null}
  {
    "id": "event_KleiO4HBwZFbO1vZLWIPZ2AtX",
    "event": "link.updated",
    "createdAt": "2024-08-26T16:41:52.346Z",
    "data": {
      "id": "cm0b87844000dismqhkviju54",
      "domain": "dub.sh",
      "key": "sOvvXDT",
      "externalId": null,
      "url": "https://github.com/stack-auth/stack",
      "trackConversion": false,
      "archived": false,
      "expiresAt": null,
      "expiredUrl": null,
      "password": null,
      "proxy": false,
      "title": null,
      "description": null,
      "image": null,
      "video": null,
      "rewrite": false,
      "doIndex": false,
      "ios": null,
      "android": null,
      "geo": null,
      "publicStats": false,
      "tagId": null,
      "tags": [],
      "comments": null,
      "shortLink": "https://dub.sh/sOvvXDT",
      "qrCode": "https://api.dub.co/qr?url=https://dub.sh/sOvvXDT?qr=1",
      "utm_source": null,
      "utm_medium": null,
      "utm_campaign": null,
      "utm_term": null,
      "utm_content": null,
      "userId": "cm022rkcw0000ikt14mscg9sg",
      "workspaceId": "ws_cm022sis60003ikt1syy7kfhl",
      "clicks": 0,
      "lastClicked": null,
      "leads": 0,
      "sales": 0,
      "saleAmount": 0,
      "createdAt": "2024-08-26T16:41:52.084Z",
      "updatedAt": "2024-08-26T16:41:52.084Z",
      "testCompletedAt": null,
      "testStartedAt": null,
      "projectId": "cm022sis60003ikt1syy7kfhl"
    }
  }
  ```
</ResponseExample>
