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

# Register Protocol

> Create a new protocol (one widget) using your API key.

<ParamField header="Authorization" type="string" required>
  Bearer token from the Snippet mobile app. Format: `Bearer YOUR_API_KEY`.
</ParamField>

<ParamField body="id" type="string" required>
  Unique protocol identifier (slug). Lowercase; invalid characters are
  sanitized.
</ParamField>

<ParamField body="name" type="string" required>
  Human-readable protocol name shown in the app.
</ParamField>

<ParamField body="logo" type="string">
  Public URL to a square logo image.
</ParamField>

<ParamField body="chains" type="array[string]">
  Optional list of supported chains, e.g. `["ethereum", "polygon"]`.
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://<your-api-host>/api/register-protocol" \
    -H "Authorization: Bearer <YOUR_API_KEY>" \
    -H "Content-Type: application/json" \
    -d '{
      "id": "awesome-dex",
      "name": "Awesome DEX",
      "logo": "https://example.com/logo.png",
      "chains": ["ethereum", "polygon"]
    }'
  ```
</RequestExample>

<Info>On success, the response includes the created protocol object.</Info>

<Warning>`id` must be unique across all protocols.</Warning>
