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

# Obtenir l'utilisation du projet

> Récupérer l'utilisation des crédits, les détails de l'abonnement, et les comptes de demandes par service pour un projet dans le cycle de crédit actuel.

## Aperçu

Retourne une image complète de la consommation de crédits d'un projet pour le cycle de crédit actuel, y compris les crédits restants, les détails du plan d'abonnement, et une ventilation des demandes par type de service (RPC, DAS, gRPC, WebSocket, etc.).

Tous les chiffres de crédits sont attachés à `creditCycle` — la fenêtre où les crédits s'accumulent et se réinitialisent, dérivée de l'ancrage de facturation de l'abonnement. Chaque projet en a un, y compris les plans gratuits. `subscriptionDetails.billingCycle` est la fenêtre de facturation ; elle est informative et `null` pour les plans gratuits, qui ne sont jamais facturés.

## Paramètres de la demande

<ParamField path="id" type="string" required>
  L'ID du projet pour lequel récupérer l'utilisation. Doit correspondre au projet associé à la clé API utilisée pour l'authentification.
</ParamField>

## Champs de réponse

<ParamField body="creditsRemaining" type="number">
  Crédits restants dans le cycle de crédit actuel. Calculé comme la limite de crédit du plan moins les crédits consommés, plafonné à zéro.
</ParamField>

<ParamField body="creditsUsed" type="number">
  Total des crédits consommés dans le cycle de crédit actuel, y compris les crédits réguliers et prépayés.
</ParamField>

<ParamField body="prepaidCreditsRemaining" type="number">
  Crédits prépayés encore disponibles.
</ParamField>

<ParamField body="prepaidCreditsUsed" type="number">
  Crédits prépayés consommés dans le cycle de crédit actuel.
</ParamField>

<ParamField body="creditCycle" type="object">
  La fenêtre à laquelle chaque chiffre de crédit dans cette réponse est attaché — la période où les crédits s'accumulent et se réinitialisent, dérivée de l'ancrage de facturation de l'abonnement. Toujours présent, pour chaque plan, y compris les plans gratuits.
</ParamField>

<ParamField body="creditCycle.start" type="string">
  Date de début du cycle de crédit au format `YYYY-MM-DD` (UTC).
</ParamField>

<ParamField body="creditCycle.end" type="string">
  Date de fin du cycle de crédit au format `YYYY-MM-DD` (UTC).
</ParamField>

<ParamField body="subscriptionDetails" type="object">
  Informations sur le plan d'abonnement et le cycle de facturation.
</ParamField>

<ParamField body="subscriptionDetails.billingCycle" type="object | null">
  Dates de début et de fin du cycle de facturation actuel. Informative uniquement — `null` pour les plans gratuits, qui ne sont jamais facturés. Pour les plans payants, cela correspond normalement à `creditCycle`.
</ParamField>

<ParamField body="subscriptionDetails.billingCycle.start" type="string">
  Date de début du cycle de facturation au format `YYYY-MM-DD`.
</ParamField>

<ParamField body="subscriptionDetails.billingCycle.end" type="string">
  Date de fin du cycle de facturation au format `YYYY-MM-DD`.
</ParamField>

<ParamField body="subscriptionDetails.creditsLimit" type="number">
  Limite totale de crédits pour le cycle de crédit selon votre plan.
</ParamField>

<ParamField body="subscriptionDetails.plan" type="string">
  Le nom du plan d'abonnement (par exemple, `"business"`, `"professional"`).
</ParamField>

<ParamField body="credits" type="object">
  Consommation de crédits par produit pour le cycle de crédit actuel, en crédits entiers. Couvre chaque produit. Les valeurs sont accumulées brutes et arrondies une fois à la fin pour correspondre à la facturation, donc les crédits par produit peuvent ne pas s'additionner exactement à `creditsUsed` après arrondi.
</ParamField>

<ParamField body="credits.rpc" type="number">
  Crédits consommés par le Solana RPC standard.
</ParamField>

<ParamField body="credits.enhancedApi" type="number">
  Crédits consommés par l'API améliorée (par exemple, transactions analysées, métadonnées de jeton).
</ParamField>

<ParamField body="credits.walletApi" type="number">
  Crédits consommés par l'API de portefeuille.
</ParamField>

<ParamField body="credits.das" type="number">
  Crédits consommés par l'API DAS (Norme des Actifs Numériques).
</ParamField>

<ParamField body="credits.webhooks" type="number">
  Crédits consommés par les Webhooks.
</ParamField>

<ParamField body="credits.laserstreamGrpc" type="number">
  Crédits consommés par LaserStream gRPC (mesurés par bande passante).
</ParamField>

<ParamField body="credits.laserstreamWebsocket" type="number">
  Crédits consommés par LaserStream WebSocket (mesurés par bande passante).
</ParamField>

<ParamField body="credits.preConfirmations" type="number">
  Crédits consommés par les Pré-confirmations.
</ParamField>

<ParamField body="credits.archival" type="number">
  Crédits consommés par l'archivage.
</ParamField>

<ParamField body="credits.photon" type="number">
  Crédits consommés par Photon (Compression par ZK).
</ParamField>

<ParamField body="credits.other" type="number">
  Crédits consommés par des usages non catégorisés.
</ParamField>

<ParamField body="requests" type="object">
  Comptes de demandes pour le cycle de crédit actuel, uniquement pour les produits mesurés par demande. Les produits LaserStream mesurés par bande passante (`laserstreamGrpc`, `laserstreamWebsocket`) n'apparaissent pas ici — voir `dataTransfer`. Champs : `rpc`, `enhancedApi`, `walletApi`, `das`, `webhooks`, `preConfirmations`, `archival`, `photon`, `other`.
</ParamField>

<ParamField body="dataTransfer" type="object">
  Octets transférés pour le cycle de crédit actuel, uniquement pour les produits LaserStream mesurés par bande passante. Ces produits sont facturés par les données transférées, pas le nombre de demandes, donc ils apparaissent ici et dans `credits` mais jamais dans `requests`. Champs : `laserstreamGrpc`, `laserstreamWebsocket`.
</ParamField>

## Paramètres de la demande

<ParamField body="id" type="string" required>
  L'ID du projet pour lequel récupérer l'utilisation. Doit correspondre au projet associé à la clé API.
</ParamField>


## OpenAPI

````yaml fr/openapi/admin-api/getProjectUsage.yaml GET /v0/admin/projects/{id}/usage
openapi: 3.0.3
info:
  title: API d'administration Helius
  description: >
    Accès programmatique aux données d'utilisation et de facturation des
    projets.


    ## Authentification


    Toutes les requêtes nécessitent une clé API passée soit comme :

    - En-tête : `X-Api-Key: YOUR_API_KEY`

    - Paramètre de requête : `?api-key=YOUR_API_KEY`
  version: 1.0.0
  contact:
    name: Support API
    url: https://helius.dev
servers:
  - url: https://admin-api.helius.xyz
    description: Serveur de production
security:
  - ApiKeyQuery: []
  - ApiKeyHeader: []
paths:
  /v0/admin/projects/{id}/usage:
    get:
      tags:
        - Admin
      summary: Obtenir l'utilisation du projet
      description: >
        Récupérer l'utilisation des crédits, les détails de l'abonnement et le
        comptage des requêtes par service pour un projet dans le cycle de crédit
        actuel — la période à laquelle les crédits s'accumulent et se
        réinitialisent, rapportée dans le champ `creditCycle`.


        La clé API utilisée pour l'authentification doit appartenir au projet
        spécifié dans le chemin. Les requêtes où le projet de la clé API ne
        correspond pas au paramètre `id` renverront une erreur `400`.
      operationId: getProjectUsage
      parameters:
        - name: id
          in: path
          required: true
          description: >-
            L'ID du projet pour lequel récupérer l'utilisation. Doit
            correspondre au projet associé à la clé API.
          schema:
            type: string
            format: uuid
            example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
      responses:
        '200':
          description: Utilisation du projet récupérée avec succès.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectUsageResponse'
              example:
                creditsRemaining: 486100
                creditsUsed: 13900
                prepaidCreditsRemaining: 50000
                prepaidCreditsUsed: 0
                creditCycle:
                  start: '2026-04-01'
                  end: '2026-05-01'
                subscriptionDetails:
                  billingCycle:
                    start: '2026-04-01'
                    end: '2026-05-01'
                  creditsLimit: 500000
                  plan: business
                credits:
                  rpc: 4500
                  enhancedApi: 1200
                  walletApi: 0
                  das: 5000
                  webhooks: 800
                  laserstreamGrpc: 1500
                  laserstreamWebsocket: 800
                  preConfirmations: 100
                  archival: 0
                  photon: 0
                  other: 0
                requests:
                  rpc: 4500
                  enhancedApi: 1200
                  walletApi: 0
                  das: 5000
                  webhooks: 800
                  preConfirmations: 50
                  archival: 0
                  photon: 0
                  other: 0
                dataTransfer:
                  laserstreamGrpc: 15000000
                  laserstreamWebsocket: 8000000
        '400':
          description: >-
            Mauvaise requête — l'ID du projet dans le chemin ne correspond pas
            au projet associé à la clé API.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 400
                message: ID de projet invalide
                error: Mauvaise requête
        '401':
          description: Non autorisé — la clé API est manquante, malformée, ou introuvable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 401
                message: Clé API manquante ou invalide
                error: Non autorisé
        '403':
          description: Interdit — l'API d'administration n'est pas activée pour ce projet.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 403
                message: API d'administration non activée pour ce projet
                error: Interdit
        '429':
          description: >-
            Trop de requêtes — limite de débit de 5 requêtes par seconde
            dépassée.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 429
                message: 'ThrottlerException: Trop de requêtes'
                error: Trop de requêtes
        '500':
          description: >-
            Erreur interne du serveur — une erreur côté serveur s'est produite
            (par exemple, données de facturation manquantes).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 500
                message: Erreur du serveur interne
                error: Erreur interne du serveur
components:
  schemas:
    ProjectUsageResponse:
      type: object
      properties:
        creditsRemaining:
          type: number
          description: >-
            Nombre de crédits restants dans le cycle de crédit actuel. Calculé
            comme `creditsLimit - regularCreditsUsed`, arrondi à 0.
          example: 487500
        creditsUsed:
          type: number
          description: >-
            Total des crédits consommés dans le cycle de crédit actuel, y
            compris les crédits réguliers et prépayés.
          example: 12500
        prepaidCreditsRemaining:
          type: number
          description: Nombre de crédits prépayés restants.
          example: 50000
        prepaidCreditsUsed:
          type: number
          description: Nombre de crédits prépayés consommés dans le cycle de crédit actuel.
          example: 0
        creditCycle:
          type: object
          description: >
            La période à laquelle chaque donnée de crédit dans cette réponse est
            limitée — la période de

            crédit qui s'accumule et se réinitialise, dérivée de l'ancrage de
            facturation de l'abonnement. Toujours présent, pour chaque plan, y
            compris les plans gratuits qui ne sont

            jamais facturés.
          properties:
            start:
              type: string
              description: Date de début du cycle de crédit (`YYYY-MM-DD`, UTC).
              example: '2026-04-01'
            end:
              type: string
              description: Date de fin du cycle de crédit (`YYYY-MM-DD`, UTC).
              example: '2026-05-01'
        subscriptionDetails:
          type: object
          description: >-
            Détails sur le plan d'abonnement du projet et le cycle de
            facturation.
          properties:
            billingCycle:
              type: object
              nullable: true
              description: >
                Dates de début et de fin du cycle de facturation actuel. À titre
                informatif uniquement —

                `null` pour les plans gratuits, qui ne sont jamais facturés. Sur
                les plans payants, cela

                correspond normalement à `creditCycle`.
              properties:
                start:
                  type: string
                  description: Date de début du cycle de facturation.
                  example: '2026-04-01'
                end:
                  type: string
                  description: Date de fin du cycle de facturation.
                  example: '2026-05-01'
            creditsLimit:
              type: number
              description: >-
                Limite totale de crédits pour le cycle de crédit actuel basé sur
                le plan.
              example: 500000
            plan:
              type: string
              description: Le nom du plan d'abonnement.
              example: business
        credits:
          type: object
          description: >
            Consommation de crédits par produit pour le cycle de crédit actuel,
            en crédits entiers.

            Couvre chaque produit. Les valeurs sont accumulées à l'état brut et
            arrondies une fois à la fin pour

            correspondre à la facturation, de sorte que les crédits par produit
            peuvent ne pas s'additionner exactement à `creditsUsed` après

            l'arrondissement.
          properties:
            rpc:
              type: number
              description: Crédits consommés par le RPC Solana standard.
              example: 4500
            enhancedApi:
              type: number
              description: >-
                Crédits consommés par l'API améliorée (par exemple, transactions
                analysées, métadonnées des jetons).
              example: 1200
            walletApi:
              type: number
              description: Crédits consommés par l'API Wallet.
              example: 0
            das:
              type: number
              description: Crédits consommés par l'API DAS (Digital Asset Standard).
              example: 5000
            webhooks:
              type: number
              description: Crédits consommés par les Webhooks.
              example: 800
            laserstreamGrpc:
              type: number
              description: >-
                Crédits consommés par LaserStream gRPC (mesurement de bande
                passante).
              example: 1500
            laserstreamWebsocket:
              type: number
              description: >-
                Crédits consommés par LaserStream WebSocket (mesurement de bande
                passante).
              example: 800
            preConfirmations:
              type: number
              description: Crédits consommés par les Préconfimations.
              example: 100
            archival:
              type: number
              description: Crédits consommés par Archival.
              example: 0
            photon:
              type: number
              description: Crédits consommés par Photon (ZK Compression).
              example: 0
            other:
              type: number
              description: Crédits consommés par une utilisation non catégorisée.
              example: 0
        requests:
          type: object
          description: >
            Comptage des requêtes pour le cycle de crédit actuel, uniquement
            pour les produits tarifés à la requête.

            Les produits LaserStream mesurés par bande passante
            (`laserstreamGrpc`, `laserstreamWebsocket`)

            n'apparaissent pas ici — voir `dataTransfer`.
          properties:
            rpc:
              type: number
              description: Nombre de requêtes RPC Solana standard.
              example: 4500
            enhancedApi:
              type: number
              description: Nombre de requêtes API améliorées.
              example: 1200
            walletApi:
              type: number
              description: Nombre de requêtes API Wallet.
              example: 0
            das:
              type: number
              description: Nombre de requêtes API DAS (Digital Asset Standard).
              example: 5000
            webhooks:
              type: number
              description: Nombre d'événements de livraison de webhook.
              example: 800
            preConfirmations:
              type: number
              description: Nombre de requêtes de préconfirmations.
              example: 50
            archival:
              type: number
              description: Nombre de requêtes RPC archivées.
              example: 0
            photon:
              type: number
              description: Nombre de requêtes Photon (ZK Compression).
              example: 0
            other:
              type: number
              description: Nombre de requêtes non catégorisées.
              example: 0
        dataTransfer:
          type: object
          description: >
            Octets transférés pour le cycle de crédit actuel, uniquement pour
            les produits

            LaserStream mesurés par bande passante. Ces produits sont facturés
            par les données transférées, pas

            par le nombre de requêtes, ils apparaissent donc ici et dans
            `credits` mais jamais dans `requests`.
          properties:
            laserstreamGrpc:
              type: number
              description: Octets transférés via LaserStream gRPC.
              example: 15000000
            laserstreamWebsocket:
              type: number
              description: Octets transférés via LaserStream WebSocket.
              example: 8000000
    ErrorResponse:
      type: object
      properties:
        statusCode:
          type: integer
          description: Code de statut HTTP.
        message:
          type: string
          description: Message d'erreur lisible par l'homme.
        error:
          type: string
          description: Nom de l'erreur HTTP.
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: api-key
      description: Clé API passée en tant que paramètre de requête.
    ApiKeyHeader:
      type: apiKey
      in: header
      name: X-Api-Key
      description: Clé API passée en tant qu'en-tête de requête.

````