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

# Get Pulse

> Retrieve details of a specific webhook notification pulse

Retrieves detailed information about a specific pulse webhook by its public ID, including configured triggers, associated products, source information, and current status.

## Path Parameters

<ParamField path="pulsePublicId" type="string" required>
  The unique pulse identifier (e.g., `pulse_abc123`)
</ParamField>

## Response

<ResponseField name="data" type="object">
  <Expandable title="properties">
    <ResponseField name="id" type="string">
      Unique pulse identifier (e.g., `pulse_abc123xyz`)
    </ResponseField>

    <ResponseField name="url" type="string">
      Webhook URL where notifications are sent
    </ResponseField>

    <ResponseField name="is_enabled" type="boolean">
      Whether the pulse is currently active
    </ResponseField>

    <ResponseField name="source" type="object">
      Source information about how the pulse was created

      <Expandable title="source object">
        <ResponseField name="value" type="string">
          Source value: `manual`, `zapier`, `make`, or `system`
        </ResponseField>

        <ResponseField name="label" type="string">
          Human-readable source label
        </ResponseField>

        <ResponseField name="description" type="string">
          Description of the source
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="triggers" type="array">
      Array of trigger event objects that will activate this pulse

      <Expandable title="trigger object">
        <ResponseField name="value" type="string">
          Trigger event value (e.g., `successful_sale`, `license_activated`)
        </ResponseField>

        <ResponseField name="label" type="string">
          Human-readable label
        </ResponseField>

        <ResponseField name="description" type="string">
          Description of when this trigger fires
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="products" type="array">
      Array of products this pulse is limited to. Empty array means all products will trigger this pulse.

      <Expandable title="product object">
        <ResponseField name="id" type="string">
          Product identifier
        </ResponseField>

        <ResponseField name="name" type="string">
          Product name
        </ResponseField>

        <ResponseField name="slug" type="string">
          Product slug
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="store" type="object">
      Store information

      <Expandable title="store object">
        <ResponseField name="id" type="string">
          Store identifier
        </ResponseField>

        <ResponseField name="name" type="string">
          Store name
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="can_delete" type="boolean">
      Whether the pulse can be deleted. Only manually created pulses can be deleted.
    </ResponseField>

    <ResponseField name="created_at" type="string">
      ISO 8601 timestamp with timezone
    </ResponseField>

    <ResponseField name="updated_at" type="string">
      ISO 8601 timestamp with timezone
    </ResponseField>
  </Expandable>
</ResponseField>

## Available Trigger Events

Pulses can be configured to trigger on the following events:

### Sale Events

| Value             | Label           | Description                         |
| ----------------- | --------------- | ----------------------------------- |
| `successful_sale` | Successful Sale | Triggers when a sale is successful. |
| `abandoned_sale`  | Abandoned Sale  | Triggers when a sale is abandoned.  |
| `failed_sale`     | Failed Sale     | Triggers when a sale fails.         |

### License Events

| Value               | Label             | Description                                      |
| ------------------- | ----------------- | ------------------------------------------------ |
| `license_activated` | License Activated | Triggers when a license is activated.            |
| `license_expired`   | License Expired   | Triggers when a license expires.                 |
| `license_issued`    | License Issued    | Triggers when a license is issued to a customer. |
| `license_revoked`   | License Revoked   | Triggers when a license is revoked.              |

### Special Events

| Value | Label      | Description              |
| ----- | ---------- | ------------------------ |
| `all` | All Events | Triggers for all events. |

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.chariow.com/v1/pulses/pulse_abc123xyz" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```javascript Node.js theme={null}
  const response = await fetch('https://api.chariow.com/v1/pulses/pulse_abc123xyz', {
    headers: {
      'Authorization': 'Bearer YOUR_API_KEY'
    }
  });
  const data = await response.json();
  ```

  ```php PHP theme={null}
  $ch = curl_init('https://api.chariow.com/v1/pulses/pulse_abc123xyz');
  curl_setopt($ch, CURLOPT_HTTPHEADER, [
      'Authorization: Bearer YOUR_API_KEY'
  ]);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  $response = curl_exec($ch);
  $data = json_decode($response, true);
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "message": "success",
    "data": {
      "id": "pulse_abc123xyz",
      "url": "https://example.com/webhooks/chariow",
      "is_enabled": true,
      "source": {
        "value": "manual",
        "label": "Manual",
        "description": "Created manually by user"
      },
      "triggers": [
        {
          "value": "successful_sale",
          "label": "Successful Sale",
          "description": "Triggers when a sale is successful."
        },
        {
          "value": "license_activated",
          "label": "License Activated",
          "description": "Triggers when a license is activated."
        }
      ],
      "products": [
        {
          "id": "prd_xyz789",
          "name": "Premium Course",
          "slug": "premium-course"
        }
      ],
      "store": {
        "id": "str_abc123",
        "name": "My Digital Store"
      },
      "can_delete": true,
      "created_at": "2025-01-15T10:30:00+00:00",
      "updated_at": "2025-01-15T10:30:00+00:00"
    },
    "errors": []
  }
  ```

  ```json Not Found (404) theme={null}
  {
    "message": "Pulse not found",
    "data": [],
    "errors": []
  }
  ```
</ResponseExample>
