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

# Obtener información de créditos

> Devuelve el saldo de crédito del equipo autenticado, el desglose por lote, la suscripción activa y si se permite el uso.

Para una visión general guiada, consulta [Saldo y facturación](/balance-billing/balance-and-billing).


## OpenAPI

````yaml es/openapi/billing.json GET /user/credits/info
openapi: 3.0.3
info:
  title: API de Balance y Facturación
  version: 1.0.0
  description: Lee el saldo de crédito y compra recargas para el equipo autenticado.
servers:
  - url: https://api.olostep.com
security: []
tags:
  - name: Balance & Billing
    description: Endpoints de saldo de crédito y compra de recargas.
paths:
  /user/credits/info:
    get:
      tags:
        - Balance & Billing
      summary: Obtener información de crédito
      description: >-
        Devuelve el saldo de crédito del equipo autenticado, desglose por lote,
        suscripción activa y si se permite el uso. Útil para widgets de
        facturación, paneles de uso y verificaciones previas a trabajos grandes.
      responses:
        '200':
          description: >-
            Saldo de crédito y contexto de facturación para el equipo
            autenticado.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreditsInfoResponse'
              example:
                credits: 12500
                breakdown:
                  - purchase_kind: Subscription
                    allocated_units: 10000
                    remaining_units: 8500
                    expiry_date: 1735689600
                  - purchase_kind: Top-up
                    allocated_units: 5000
                    remaining_units: 4000
                    expiry_date: 1743465600
                active_subscription:
                  id: SUB_PRO
                  display_name: Pro
                  credits: 10000
                  created_at: 1704067200
                allow_usage: true
        '402':
          description: Clave API inválida.
        '500':
          description: Error interno del servidor.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error: Internal Server Error
      security:
        - Authorization: []
components:
  schemas:
    CreditsInfoResponse:
      type: object
      properties:
        credits:
          type: integer
          description: Créditos totales restantes en todos los lotes no vencidos.
        breakdown:
          type: array
          items:
            $ref: '#/components/schemas/CreditsBreakdownItem'
          description: Detalle de crédito por lote.
        active_subscription:
          $ref: '#/components/schemas/ActiveSubscription'
        allow_usage:
          type: boolean
          description: Si el equipo aún puede consumir créditos.
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Código de error legible por máquina.
        retry_after:
          type: integer
          description: >-
            Segundos hasta que se permita otro intento de compra (solo
            respuestas de enfriamiento).
        cooldown_seconds:
          type: integer
          description: >-
            Ventana de enfriamiento en segundos (solo respuestas de
            enfriamiento).
    CreditsBreakdownItem:
      type: object
      properties:
        purchase_kind:
          type: string
          enum:
            - Subscription
            - Top-up
            - Manual
            - Setup
            - Pending
          description: Cómo se emitió el lote de crédito.
        allocated_units:
          type: integer
          description: Créditos originalmente asignados a este lote.
        remaining_units:
          type: integer
          description: Créditos aún disponibles en este lote.
        expiry_date:
          type: integer
          description: Marca de tiempo Unix cuando este lote expira.
    ActiveSubscription:
      type: object
      properties:
        id:
          type: string
          description: >-
            ID del producto de suscripción (por ejemplo, `SUB_PRO`). Se usa
            `SUB_BASE` cuando no existe una suscripción activa.
        display_name:
          type: string
          description: Nombre del plan legible para humanos.
        credits:
          type: integer
          description: Créditos incluidos en el plan activo.
        created_at:
          type: integer
          description: Marca de tiempo Unix cuando se creó la suscripción.
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer
      description: >-
        Encabezado de autenticación Bearer del tipo Bearer <token>, donde
        <token> es tu token de autenticación.

````