> ## 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.

# Obtener el uso del proyecto

> Obtén el uso de créditos, los detalles de la suscripción y el número de solicitudes por servicio de un proyecto durante el ciclo de créditos actual.

## Descripción general

Devuelve una vista completa del consumo de créditos de un proyecto durante el ciclo de créditos actual, incluidos los créditos restantes, los detalles del plan de suscripción y un desglose de las solicitudes por tipo de servicio (RPC, DAS, gRPC, WebSocket, etc.).

Todas las cifras de créditos corresponden al `creditCycle`: el período durante el cual los créditos se acumulan y se restablecen, derivado del ancla de facturación de la suscripción. Todos los proyectos tienen uno, incluidos los planes gratuitos. El `subscriptionDetails.billingCycle` es el período de facturación; es informativo y tiene el valor `null` en los planes gratuitos, que nunca se facturan.

## Parámetros de la solicitud

<ParamField path="id" type="string" required>
  El ID del proyecto cuyo uso quieres obtener. Debe coincidir con el proyecto asociado a la clave de API utilizada para la autenticación.
</ParamField>

## Campos de la respuesta

<ParamField body="creditsRemaining" type="number">
  Créditos restantes en el ciclo de créditos actual. Se calculan restando los créditos normales consumidos del límite de créditos del plan, con un mínimo de cero.
</ParamField>

<ParamField body="creditsUsed" type="number">
  Total de créditos consumidos durante el ciclo de créditos actual, incluidos los créditos normales y prepagados.
</ParamField>

<ParamField body="prepaidCreditsRemaining" type="number">
  Créditos prepagados que aún están disponibles.
</ParamField>

<ParamField body="prepaidCreditsUsed" type="number">
  Créditos prepagados consumidos durante el ciclo de créditos actual.
</ParamField>

<ParamField body="creditCycle" type="object">
  El período al que corresponden todas las cifras de créditos de esta respuesta, durante el cual los créditos se acumulan y se restablecen, derivado del ancla de facturación de la suscripción. Siempre está presente en todos los planes, incluidos los gratuitos.
</ParamField>

<ParamField body="creditCycle.start" type="string">
  Fecha de inicio del ciclo de créditos en formato `YYYY-MM-DD` (UTC).
</ParamField>

<ParamField body="creditCycle.end" type="string">
  Fecha de finalización del ciclo de créditos en formato `YYYY-MM-DD` (UTC).
</ParamField>

<ParamField body="subscriptionDetails" type="object">
  Información sobre el plan de suscripción y el ciclo de facturación.
</ParamField>

<ParamField body="subscriptionDetails.billingCycle" type="object | null">
  Fechas de inicio y finalización del ciclo de facturación actual. Solo tiene fines informativos: tiene el valor `null` en los planes gratuitos, que nunca se facturan. En los planes de pago, normalmente coincide con `creditCycle`.
</ParamField>

<ParamField body="subscriptionDetails.billingCycle.start" type="string">
  Fecha de inicio del ciclo de facturación en formato `YYYY-MM-DD`.
</ParamField>

<ParamField body="subscriptionDetails.billingCycle.end" type="string">
  Fecha de finalización del ciclo de facturación en formato `YYYY-MM-DD`.
</ParamField>

<ParamField body="subscriptionDetails.creditsLimit" type="number">
  Asignación total de créditos para el ciclo de créditos según tu plan.
</ParamField>

<ParamField body="subscriptionDetails.plan" type="string">
  El nombre del plan de suscripción (por ejemplo, `"business"`, `"professional"`).
</ParamField>

<ParamField body="credits" type="object">
  Consumo de créditos por producto durante el ciclo de créditos actual, expresado en créditos enteros. Incluye todos los productos. Los valores sin procesar se acumulan y se redondean una sola vez al final para que coincidan con la facturación, por lo que, después del redondeo, es posible que la suma de los créditos por producto no coincida exactamente con `creditsUsed`.
</ParamField>

<ParamField body="credits.rpc" type="number">
  Créditos consumidos por el RPC estándar de Solana.
</ParamField>

<ParamField body="credits.enhancedApi" type="number">
  Créditos consumidos por la API mejorada (por ejemplo, transacciones analizadas y metadatos de tokens).
</ParamField>

<ParamField body="credits.walletApi" type="number">
  Créditos consumidos por la API de billetera.
</ParamField>

<ParamField body="credits.das" type="number">
  Créditos consumidos por la API de DAS (estándar de activos digitales).
</ParamField>

<ParamField body="credits.webhooks" type="number">
  Créditos consumidos por los webhooks.
</ParamField>

<ParamField body="credits.laserstreamGrpc" type="number">
  Créditos consumidos por LaserStream gRPC (medidos por ancho de banda).
</ParamField>

<ParamField body="credits.laserstreamWebsocket" type="number">
  Créditos consumidos por LaserStream WebSocket (medidos por ancho de banda).
</ParamField>

<ParamField body="credits.preConfirmations" type="number">
  Créditos consumidos por Preconfirmations.
</ParamField>

<ParamField body="credits.archival" type="number">
  Créditos consumidos por el almacenamiento de archivos históricos.
</ParamField>

<ParamField body="credits.photon" type="number">
  Créditos consumidos por Photon (compresión ZK).
</ParamField>

<ParamField body="credits.other" type="number">
  Créditos consumidos por el uso sin categorizar.
</ParamField>

<ParamField body="requests" type="object">
  Número de solicitudes durante el ciclo de créditos actual, solo para los productos medidos por solicitudes. Los productos LaserStream medidos por ancho de banda (`laserstreamGrpc`, `laserstreamWebsocket`) no aparecen aquí; consulta `dataTransfer`. Campos: `rpc`, `enhancedApi`, `walletApi`, `das`, `webhooks`, `preConfirmations`, `archival`, `photon`, `other`.
</ParamField>

<ParamField body="dataTransfer" type="object">
  Bytes transferidos durante el ciclo de créditos actual, solo para los productos LaserStream medidos por ancho de banda. Estos productos se facturan según los datos transferidos, no según el número de solicitudes, por lo que aparecen aquí y en `credits`, pero nunca en `requests`. Campos: `laserstreamGrpc`, `laserstreamWebsocket`.
</ParamField>

## Parámetros de la solicitud

<ParamField body="id" type="string" required>
  El ID del proyecto cuyo uso quieres obtener. Debe coincidir con el proyecto asociado a la clave de API.
</ParamField>


## OpenAPI

````yaml es/openapi/admin-api/getProjectUsage.yaml GET /v0/admin/projects/{id}/usage
openapi: 3.0.3
info:
  title: API de administración de Helius
  description: >
    Acceso programático a los datos de uso y facturación del proyecto.


    ## Autenticación


    Todas las solicitudes requieren una clave de API que se envía de una de
    estas formas:

    - Encabezado: `X-Api-Key: YOUR_API_KEY`

    - Parámetro de consulta: `?api-key=YOUR_API_KEY`
  version: 1.0.0
  contact:
    name: Soporte de API
    url: https://helius.dev
servers:
  - url: https://admin-api.helius.xyz
    description: Servidor de producción
security:
  - ApiKeyQuery: []
  - ApiKeyHeader: []
paths:
  /v0/admin/projects/{id}/usage:
    get:
      tags:
        - Administración
      summary: Obtener el uso del proyecto
      description: >
        Obtén el uso de créditos, los detalles de la suscripción y la cantidad
        de solicitudes por servicio de un proyecto durante el ciclo de créditos
        actual, es decir, el período durante el cual se acumulan y restablecen
        los créditos, indicado en el campo `creditCycle`.


        La clave de API que se usa para la autenticación debe pertenecer al
        proyecto especificado en la ruta. Las solicitudes en las que el proyecto
        de la clave de API no coincida con el parámetro `id` devolverán un error
        `400`.
      operationId: getProjectUsage
      parameters:
        - name: id
          in: path
          required: true
          description: >-
            El ID del proyecto cuyo uso quieres obtener. Debe coincidir con el
            proyecto asociado a la clave de API.
          schema:
            type: string
            format: uuid
            example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
      responses:
        '200':
          description: El uso del proyecto se obtuvo correctamente.
          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: >-
            Solicitud incorrecta: el ID del proyecto en la ruta no coincide con
            el proyecto asociado a la clave de API.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 400
                message: ID de proyecto no válido
                error: Solicitud incorrecta
        '401':
          description: >-
            No autorizado: falta la clave de API, tiene un formato incorrecto o
            no se encontró.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 401
                message: Falta la clave de API o no es válida
                error: No autorizado
        '403':
          description: >-
            Prohibido: la API de administración no está habilitada para este
            proyecto.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 403
                message: La API de administración no está habilitada para este proyecto
                error: Prohibido
        '429':
          description: >-
            Demasiadas solicitudes: se superó el límite de 5 solicitudes por
            segundo.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 429
                message: 'ThrottlerException: demasiadas solicitudes'
                error: Demasiadas solicitudes
        '500':
          description: >-
            Error interno del servidor: ocurrió un error en el servidor (p. ej.,
            faltan datos de facturación).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                statusCode: 500
                message: Error interno del servidor
                error: Error interno del servidor
components:
  schemas:
    ProjectUsageResponse:
      type: object
      properties:
        creditsRemaining:
          type: number
          description: >-
            Cantidad de créditos restantes en el ciclo de créditos actual. Se
            calcula como `creditsLimit - regularCreditsUsed`, con un mínimo de
            0.
          example: 487500
        creditsUsed:
          type: number
          description: >-
            Total de créditos consumidos en el ciclo de créditos actual,
            incluidos los créditos normales y prepagados.
          example: 12500
        prepaidCreditsRemaining:
          type: number
          description: Cantidad de créditos prepagados restantes.
          example: 50000
        prepaidCreditsUsed:
          type: number
          description: >-
            Cantidad de créditos prepagados consumidos en el ciclo de créditos
            actual.
          example: 0
        creditCycle:
          type: object
          description: >
            El período al que se limitan todas las cifras de créditos de esta
            respuesta, es decir, el período durante el cual se acumulan y
            restablecen los créditos, derivado de la fecha de referencia de
            facturación de la suscripción. Siempre está presente en todos los
            planes, incluidos los planes gratuitos que nunca se facturan.
          properties:
            start:
              type: string
              description: Fecha de inicio del ciclo de créditos (`YYYY-MM-DD`, UTC).
              example: '2026-04-01'
            end:
              type: string
              description: Fecha de finalización del ciclo de créditos (`YYYY-MM-DD`, UTC).
              example: '2026-05-01'
        subscriptionDetails:
          type: object
          description: >-
            Detalles sobre el plan de suscripción del proyecto y su ciclo de
            facturación.
          properties:
            billingCycle:
              type: object
              nullable: true
              description: >
                Fechas de inicio y finalización del ciclo de facturación actual.
                Solo tiene fines informativos; es `null` en los planes
                gratuitos, que nunca se facturan. En los planes de pago,
                normalmente coincide con `creditCycle`.
              properties:
                start:
                  type: string
                  description: Fecha de inicio del ciclo de facturación.
                  example: '2026-04-01'
                end:
                  type: string
                  description: Fecha de finalización del ciclo de facturación.
                  example: '2026-05-01'
            creditsLimit:
              type: number
              description: >-
                Asignación total de créditos para el ciclo de créditos actual
                según el plan.
              example: 500000
            plan:
              type: string
              description: Nombre del plan de suscripción.
              example: business
        credits:
          type: object
          description: >
            Consumo de créditos por producto durante el ciclo de créditos
            actual, expresado en créditos enteros.

            Incluye todos los productos. Los valores sin procesar se acumulan y
            se redondean una sola vez al final para

            coincidir con la facturación, por lo que la suma de los créditos por
            producto puede no ser exactamente igual a `creditsUsed` después

            del redondeo.
          properties:
            rpc:
              type: number
              description: Créditos consumidos por el RPC estándar de Solana.
              example: 4500
            enhancedApi:
              type: number
              description: >-
                Créditos consumidos por la API mejorada (p. ej., transacciones
                analizadas y metadatos de tokens).
              example: 1200
            walletApi:
              type: number
              description: Créditos consumidos por la API de billetera.
              example: 0
            das:
              type: number
              description: >-
                Créditos consumidos por la API DAS (estándar de activos
                digitales).
              example: 5000
            webhooks:
              type: number
              description: Créditos consumidos por los webhooks.
              example: 800
            laserstreamGrpc:
              type: number
              description: >-
                Créditos consumidos por LaserStream gRPC (medidos por ancho de
                banda).
              example: 1500
            laserstreamWebsocket:
              type: number
              description: >-
                Créditos consumidos por LaserStream WebSocket (medidos por ancho
                de banda).
              example: 800
            preConfirmations:
              type: number
              description: Créditos consumidos por Preconfirmations.
              example: 100
            archival:
              type: number
              description: Créditos consumidos por Archival.
              example: 0
            photon:
              type: number
              description: Créditos consumidos por Photon (compresión ZK).
              example: 0
            other:
              type: number
              description: Créditos consumidos por uso sin categorizar.
              example: 0
        requests:
          type: object
          description: >
            Cantidad de solicitudes durante el ciclo de créditos actual, solo
            para productos medidos por solicitud.

            Los productos LaserStream medidos por ancho de banda
            (`laserstreamGrpc`, `laserstreamWebsocket`)

            no aparecen aquí; consulta `dataTransfer`.
          properties:
            rpc:
              type: number
              description: Cantidad de solicitudes RPC estándar de Solana.
              example: 4500
            enhancedApi:
              type: number
              description: Cantidad de solicitudes de la API mejorada.
              example: 1200
            walletApi:
              type: number
              description: Cantidad de solicitudes de la API de billetera.
              example: 0
            das:
              type: number
              description: >-
                Cantidad de solicitudes de la API DAS (estándar de activos
                digitales).
              example: 5000
            webhooks:
              type: number
              description: Cantidad de eventos de entrega de webhooks.
              example: 800
            preConfirmations:
              type: number
              description: Cantidad de solicitudes de Preconfirmations.
              example: 50
            archival:
              type: number
              description: Cantidad de solicitudes RPC de archivado.
              example: 0
            photon:
              type: number
              description: Cantidad de solicitudes de Photon (compresión ZK).
              example: 0
            other:
              type: number
              description: Cantidad de solicitudes sin categorizar.
              example: 0
        dataTransfer:
          type: object
          description: >
            Bytes transferidos durante el ciclo de créditos actual, solo para
            los productos

            LaserStream medidos por ancho de banda. Estos productos se facturan
            según los datos transferidos, no según

            la cantidad de solicitudes, por lo que aparecen aquí y en `credits`,
            pero nunca en `requests`.
          properties:
            laserstreamGrpc:
              type: number
              description: Bytes transferidos mediante LaserStream gRPC.
              example: 15000000
            laserstreamWebsocket:
              type: number
              description: Bytes transferidos mediante LaserStream WebSocket.
              example: 8000000
    ErrorResponse:
      type: object
      properties:
        statusCode:
          type: integer
          description: Código de estado HTTP.
        message:
          type: string
          description: Mensaje de error legible para humanos.
        error:
          type: string
          description: Nombre del error HTTP.
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: api-key
      description: Clave de API enviada como parámetro de consulta.
    ApiKeyHeader:
      type: apiKey
      in: header
      name: X-Api-Key
      description: Clave de API enviada como encabezado de la solicitud.

````