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

# Resource dropdowns

> Fast label/value lists of templates, campaigns and custom fields — for dynamic dropdowns.

These endpoints return compact `{ value, label }` lists, sized for populating dropdowns in tools like Make. They're database-paginated and fast. All use the [`X-Sender-Tenant` + `X-API-Key`](/en/api-reference/authentication) headers and the standard [pagination](/en/api-reference/pagination) shape.

## Templates

```http theme={null}
GET /api/v1/public/templates
```

<ParamField query="limit" type="integer" default="50">Page size 1–100.</ParamField>
<ParamField query="offset" type="integer" default="0">Records to skip.</ParamField>
<ParamField query="channel" type="string">Filter by `email`, `sms` or `push`.</ParamField>

Item shape:

<ResponseField name="value" type="string">Template UUID.</ResponseField>
<ResponseField name="label" type="string">Template name.</ResponseField>
<ResponseField name="channel" type="string">`email` / `sms` / `push`.</ResponseField>

## Campaigns

```http theme={null}
GET /api/v1/public/campaigns
```

<ParamField query="limit" type="integer" default="50">Page size.</ParamField>
<ParamField query="offset" type="integer" default="0">Records to skip.</ParamField>
<ParamField query="page" type="integer">1-based page.</ParamField>
<ParamField query="status" type="string">Filter by campaign status.</ParamField>
<ParamField query="channel" type="string">Filter by channel.</ParamField>
<ParamField query="search" type="string">Free text (max 255).</ParamField>
<ParamField query="sort" type="string">e.g. `-createdAt`, `-updatedAt`.</ParamField>

Item shape:

<ResponseField name="value" type="string">Campaign UUID.</ResponseField>
<ResponseField name="label" type="string">Campaign name.</ResponseField>

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

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

## Custom fields

```http theme={null}
GET /api/v1/public/custom-fields
```

<ParamField query="limit" type="integer" default="50">Page size.</ParamField>
<ParamField query="offset" type="integer" default="0">Records to skip.</ParamField>

Item shape:

<ResponseField name="value" type="string">Custom field UUID.</ResponseField>
<ResponseField name="label" type="string">Field name.</ResponseField>
<ResponseField name="kind" type="string">Field kind.</ResponseField>

<CodeGroup>
  ```bash cURL theme={null}
  curl "https://api.senderz.app/api/v1/public/templates?channel=email&limit=100" \
    -H "X-Sender-Tenant: your-workspace-slug" \
    -H "X-API-Key: your-api-key"
  ```

  ```json Response theme={null}
  {
    "success": true,
    "data": {
      "items": [
        { "value": "tpl_…", "label": "Welcome email", "channel": "email" }
      ],
      "limit": 100,
      "offset": 0,
      "total": 1,
      "has_more": false,
      "next_cursor": null
    }
  }
  ```
</CodeGroup>
