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

# Listar Assinaturas

> Recupera uma lista paginada de todas as assinaturas ativas.

## Visão Geral

Este endpoint retorna todas as assinaturas ativas do parceiro, com suporte a paginação para facilitar a navegação em grandes volumes de dados.

## Autenticação

<ParamField header="x-api-key" type="string" required>
  Sua chave de API fornecida pela Zentek.
</ParamField>

## Query Parameters

<ParamField query="page" type="number" default="1">
  Número da página a ser exibida.
</ParamField>

<ParamField query="page_size" type="number" default="10">
  Número de itens por página (máximo: 100).
</ParamField>

## Exemplo de Request

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://api.partner.zentek.com.br/v1/subscriptions?page=1&page_size=10" \
    -H "x-api-key: SUA_API_KEY" \
    -H "Accept: application/json"
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch('https://api.partner.zentek.com.br/v1/subscriptions?page=1&page_size=10', {
    headers: {
      'x-api-key': 'SUA_API_KEY',
      'Accept': 'application/json'
    }
  });
  ```
</CodeGroup>

## Response

<ResponseField name="data" type="array">
  Lista de assinaturas.

  <Expandable title="Estrutura da Assinatura">
    <ResponseField name="partner_id" type="string">
      ID do parceiro.
    </ResponseField>

    <ResponseField name="start_date" type="string">
      Data de início da assinatura (ISO 8601).
    </ResponseField>

    <ResponseField name="expiry_date" type="string">
      Data de expiração da assinatura (ISO 8601).
    </ResponseField>

    <ResponseField name="plan_id" type="string">
      ID do plano contratado.
    </ResponseField>

    <ResponseField name="beneficiary" type="object">
      Dados do beneficiário (nome, CPF, e-mail, endereço, etc.).
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="pagination" type="object">
  Informações de paginação.

  <Expandable title="Campos de Paginação">
    <ResponseField name="page" type="number">
      Página atual.
    </ResponseField>

    <ResponseField name="page_size" type="number">
      Itens por página.
    </ResponseField>

    <ResponseField name="total_items" type="number">
      Total de itens disponíveis.
    </ResponseField>

    <ResponseField name="total_pages" type="number">
      Número total de páginas.
    </ResponseField>

    <ResponseField name="has_next" type="boolean">
      Indica se há uma próxima página.
    </ResponseField>

    <ResponseField name="has_previous" type="boolean">
      Indica se há uma página anterior.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json 200 - Sucesso theme={null}
  {
    "data": [
      {
        "partner_id": "pa_10000",
        "start_date": "2023-02-22T06:16:49.584Z",
        "expiry_date": "2024-02-22T06:16:49.584Z",
        "plan_id": "plan_10000",
        "beneficiary": {
          "name": "João Silva",
          "cpf": "34567898233",
          "email": "joao.silva@example.com"
        }
      }
    ],
    "pagination": {
      "page": 1,
      "page_size": 10,
      "total_items": 1,
      "total_pages": 1,
      "has_next": false,
      "has_previous": false
    }
  }
  ```
</ResponseExample>
