---
title: "List A/B templates"
method: GET
path: "/ab-templates"
tags: ["A/B Templates"]
---

# List A/B templates

`GET /ab-templates`

## Request

- Base URL: `https://gajo.io/api/v1`
- URL: `https://gajo.io/api/v1/ab-templates`
- Auth: API key in header `x-api-key`

**Requires a Pro plan.** Returns your active A/B templates. A/B templates are abstract: variant names and traffic percentages only, no URLs. Concrete destinations are set per link with `POST /urls/{code}/binding`.

## Response `200`

Your A/B templates.

- AbTemplateListResult: Envelope shared by every response.
  - `success` true, required: `true` when the request succeeded.
  - `message` string, nullable: Human-readable status or error message. Often `null` on reads.
  - `data` AbTemplate[], required: Operation-specific payload; `null` or absent when there is nothing to return.
    - `name` string, required
    - `description` string, nullable, required
    - `active` boolean, required
    - `createdDate` string, date-time, required
    - `updatedDate` string, date-time, nullable, required
    - `variants` object[], required
      - `variantName` string, required
      - `splitPercentage` integer, required
      - `priority` integer, required: Position in the template (0-based, request order).

## Other responses

- `401`: The `x-api-key` header is missing, or the key is unknown or revoked.
- `403`: Your plan is not Pro (the message names the Pro feature).
- `429`: Per-minute rate limit exceeded. Wait `Retry-After` seconds.
- `500`: Unexpected server error.

---

[API](https://skmtc.dev/gajo/apis/gajo-api.md) · [All operations](https://skmtc.dev/gajo/apis/gajo-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gajo/apis/gajo-api/revisions/de6fe920cc26?raw)
