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

# List Email Templates

> List your business's custom B2B email template overrides.

# List Email Templates

Returns only the templates **your business has customized** — not Khaime's built-in defaults. Use [Get Default Template](/api-reference/b2b/get-default-email-template) to see what's sent when you haven't overridden a type.

<Note>
  All documented errors below (404 Template not found, validation errors, etc.) use the same `{ success: false, message, error_code, ... }` envelope as the rest of the Partner API. The one difference: **unexpected/unhandled server errors** on `/email-templates/*` routes are passed to Express's `next(error)` rather than the shared error helper, so a genuine bug here can surface as a bare `{ status: 'error', message: 'We encountered a problem...' }` with no `success` field, instead of the richer enhanced-error shape you'd see from an unhandled error elsewhere in the API. This only matters for 500s you weren't expecting — don't design your happy-path error handling around it.
</Note>

## Response

```json theme={null}
{
  "success": true,
  "message": "Email templates retrieved successfully",
  "data": {
    "templates": [
      {
        "id": 12,
        "business_id": 1042,
        "template_type": "b2b_quote_sent",
        "name": "Custom Quote Ready Email",
        "subject": "Your quote from {{business_name}} is ready",
        "html_body": "<html>...</html>",
        "is_active": true
      }
    ],
    "available_types": [
      { "type": "rfq_received", "category": "b2b", "name": "RFQ Received", "description": "Sent to you when a customer submits an RFQ" },
      { "type": "quote_sent", "category": "b2b", "name": "Quote Sent", "description": "Sent to the customer when you send a quote" }
    ]
  }
}
```

`available_types` is filtered to B2B template types only (11 total — see the enum in [Get Default Template](/api-reference/b2b/get-default-email-template)). `templates` only ever contains rows you've explicitly saved via [Upsert Email Template](/api-reference/b2b/upsert-email-template) — an empty array means every B2B email you send uses Khaime's defaults.

<RequestExample>
  ```bash cURL theme={null}
  curl https://api.khaime.com/api/v1/partner/email-templates \
    -H "X-API-Key: pk_sandbox_your_key"
  ```
</RequestExample>
