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

# Historique des opérations

> Ce point de terminaison renvoie l'historique des opérations sur les crédits.

## GET /credits/history

Renvoie la liste des opérations de crédits de l'utilisateur authentifié (achats, consommations, remboursements). Nécessite une authentification par session (jeton d'accès JWT).

<Note>
  **Pour les intégrations tierces :** utilisez `GET /credits/history/api` avec authentification par clé d'API.
</Note>

### Paramètres de requête

<ParamField query="limit" type="number" default="20">
  Nombre d'opérations à renvoyer (100 au maximum).
</ParamField>

<ParamField query="offset" type="number" default="0">
  Nombre d'opérations à ignorer pour la pagination.
</ParamField>

<ParamField query="type" type="string">
  Filtre par type : `purchase`, `usage` ou `refund`.
</ParamField>

### Réponse

<ResponseField name="transactions" type="array">
  Tableau d'objets opération.

  <Expandable title="Propriétés d'une opération">
    <ResponseField name="id" type="string">
      Identifiant unique de l'opération.
    </ResponseField>

    <ResponseField name="type" type="string">
      Type : `purchase`, `usage` ou `refund`.
    </ResponseField>

    <ResponseField name="amount" type="number">
      Nombre de crédits (positif pour un ajout, négatif pour une consommation).
    </ResponseField>

    <ResponseField name="description" type="string">
      Description de l'opération.
    </ResponseField>

    <ResponseField name="siteId" type="string">
      Identifiant du site associé (pour les consommations).
    </ResponseField>

    <ResponseField name="createdAt" type="string">
      Horodatage ISO 8601 de l'opération.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="total" type="number">
  Nombre total d'opérations.
</ResponseField>

<ResponseField name="hasMore" type="boolean">
  Indique s'il existe d'autres opérations à récupérer.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.llmgenerator.com/api/v1/credits/history?limit=10" \
    -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    'https://api.llmgenerator.com/api/v1/credits/history?limit=10&type=usage',
    {
      headers: { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' }
    }
  );

  const history = await response.json();
  ```
</RequestExample>

<ResponseExample>
  ```json Success (200) theme={null}
  {
    "transactions": [
      {
        "id": "txn_abc123",
        "type": "purchase",
        "amount": 500,
        "description": "Purchased Professional Pack",
        "siteId": null,
        "createdAt": "2026-01-15T10:00:00.000Z"
      },
      {
        "id": "txn_def456",
        "type": "usage",
        "amount": -50,
        "description": "llms.txt generation for example.com (enhanced)",
        "siteId": "550e8400-e29b-41d4-a716-446655440000",
        "createdAt": "2026-01-20T14:30:00.000Z"
      },
      {
        "id": "txn_ghi789",
        "type": "usage",
        "amount": -25,
        "description": "llms.txt generation for another-site.com (simple)",
        "siteId": "660e8400-e29b-41d4-a716-446655440001",
        "createdAt": "2026-01-22T09:15:00.000Z"
      }
    ],
    "total": 47,
    "hasMore": true
  }
  ```
</ResponseExample>

***

## GET /credits/history/api

Renvoie l'historique des opérations sur les crédits avec authentification par clé d'API. Adapté aux intégrations tierces.

### Authentification

Authentification par clé d'API obligatoire. Indiquez votre clé dans l'en-tête `Authorization` :

```
Authorization: Bearer llmgen_your_api_key_here
```

### Paramètres de requête

Identiques à `/credits/history` ci-dessus.

### Réponse

Identique à `/credits/history` ci-dessus.

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.llmgenerator.com/api/v1/credits/history/api?limit=10" \
    -H "Authorization: Bearer llmgen_your_api_key_here"
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    'https://api.llmgenerator.com/api/v1/credits/history/api?limit=10&type=usage',
    {
      headers: { 'Authorization': 'Bearer llmgen_your_api_key_here' }
    }
  );

  const history = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      'https://api.llmgenerator.com/api/v1/credits/history/api',
      headers={'Authorization': 'Bearer llmgen_your_api_key_here'},
      params={'limit': 10, 'type': 'usage'}
  )

  history = response.json()
  ```
</RequestExample>
