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

# Quickstart

> Make your first Paylead API call in under 15 minutes. Get an API key, pick an environment, and read a live response.

export const SHIFT_SANDBOX_URL = "https://shift.sandbox.paylead.tech";

export const SANDBOX_BASE_URL = "https://api-{programRef}.sandbox.paylead.tech";

export const PRODUCTION_BASE_URL = "https://api-{programRef}.paylead.eu";

Paylead powers bank-linked cashback. Your bank sends transactions, Paylead matches them against active [Offers](/glossary#offer), and your [Consumers](/glossary#consumer) earn [Rewards](/glossary#reward), with no codes, vouchers, or clicks.

This page walks you from zero to a working API call. By the end, you have a valid bearer token, a chosen environment, and a verified response from the Paylead sandbox.

## Before you start

You need:

* A [Program Manager](/glossary#program-manager) account in [Shift](/glossary#shift).
* A REST client (`curl`, Postman, or your language's HTTP library).
* Five minutes to read, ten to copy-paste.

## Make your first call

<Steps>
  <Step title="Get credentials and an access token">
    Sign in to the sandbox Shift (<a href={SHIFT_SANDBOX_URL}>{SHIFT_SANDBOX_URL}</a>) with your Program Manager account, then create an API client under **Settings > API Keys** (see [API keys](/program/shift/api-keys)). Copy the `client_secret` immediately; Paylead shows it once.

    Exchange the `client_id` and `client_secret` for a short-lived access token. See [Authentication](/program/user-journey/authentication) for the two-step flow.
  </Step>

  <Step title="Choose your environment">
    Use the sandbox for integration work. Switch to production only after Paylead validates your integration.

    | Environment | Base URL                           |
    | ----------- | ---------------------------------- |
    | Sandbox     | <code>{SANDBOX_BASE_URL}</code>    |
    | Production  | <code>{PRODUCTION_BASE_URL}</code> |

    Replace `{programRef}` with your Program's identifier, issued by Paylead at onboarding. See [Environments](/program/user-journey/environments) for the full comparison.
  </Step>

  <Step title="Call the Paylead API">
    List the [Brands](/glossary#brand) available in your [Program](/glossary#program). Pass your access token as a bearer credential and set the mandatory `X-Api-Version` header (for example `2.0.0`). This is a safe read-only call that confirms your token works.

    <Note>
      **Code examples coming soon.** The Paylead API (v2) is still under construction. Request and response examples for this section will be published once the contract is finalized. In the meantime, contact your Paylead account manager for early-access details.
    </Note>
  </Step>

  <Step title="Read the response">
    A successful call returns `200 OK` and a JSON array of Brands.

    <Note>
      **Code examples coming soon.** The Paylead API (v2) is still under construction. Request and response examples for this section will be published once the contract is finalized. In the meantime, contact your Paylead account manager for early-access details.
    </Note>

    If you see `401 Unauthorized`, your token is wrong or expired. See [Errors](/program/user-journey/errors).
  </Step>
</Steps>

<Check>
  You received a `200 OK` and a JSON payload. Your integration is connected to the Paylead sandbox.
</Check>

## What's next

Explore the deeper guides for your use case.

<CardGroup cols={2}>
  <Card title="Authentication" icon="key" href="/program/user-journey/authentication">
    Token format, header, and key rotation.
  </Card>

  <Card title="Environments" icon="layers" href="/program/user-journey/environments">
    Move from sandbox to production safely.
  </Card>

  <Card title="Errors" icon="triangle-alert" href="/program/user-journey/errors">
    HTTP codes, Paylead error codes, and remediation.
  </Card>
</CardGroup>
