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

# Detalle de instrumento

> Obtener detalle de un instrumento de bono

<Note>
  Devuelve el detalle de un instrumento de bono.
</Note>

## Parámetros de ruta

<ParamField path="symbol" type="string" required>
  Símbolo del bono (ej., "AL30").
</ParamField>

## Ejemplo de Solicitud

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.doctacapital.com.ar/api/v1/bonds/instruments/AL30/" \
    -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
  ```
</RequestExample>

## Respuesta Exitosa

<ResponseField name="data" type="array">
  Lista con el detalle del instrumento solicitado.
</ResponseField>

<ResponseField name="data[].ticker" type="string">
  Ticker del bono (ej., "GD30").
</ResponseField>

<ResponseField name="data[].name" type="string">
  Nombre completo del bono.
</ResponseField>

<ResponseField name="data[].asset_class" type="string">
  Clase de activo del bono (ej., "BOND").
</ResponseField>

<ResponseField name="data[].sub_asset_class" type="string">
  Subclase de activo del bono (ej., "HARD\_DOLLAR").
</ResponseField>

<ResponseField name="data[].sector" type="string | null">
  Sector del bono. Puede ser null.
</ResponseField>

<ResponseField name="data[].issuer" type="string | null">
  Emisor del bono. Puede ser null.
</ResponseField>

<ResponseField name="data[].law" type="string | null">
  Ley aplicable al bono. Puede ser null.
</ResponseField>

<ResponseField name="metadata" type="object">
  Metadatos de la respuesta.
</ResponseField>

## Ejemplo de Respuesta Exitosa

<ResponseExample>
  ```json Success theme={null}
  {
    "data": [
      {
        "ticker": "GD30",
        "name": "Soberano HD 2030 U$S 1.75% (GD30)",
        "asset_class": "BOND",
        "sub_asset_class": "HARD_DOLLAR",
        "sector": null,
        "issuer": null,
        "law": null
      }
    ],
    "metadata": {
      "total_records": 1
    }
  }
  ```
</ResponseExample>


## OpenAPI

````yaml GET /api/v1/bonds/instruments/{symbol}
openapi: 3.1.0
info:
  title: API de Docta
  description: >-
    API de mercado argentino: bonos (instrumentos, cashflows, curvas/yields) y
    FCI (screener, series, performance, comparaciones y analytics de industria).
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.doctacapital.com.ar
security: []
paths:
  /api/v1/bonds/instruments/{symbol}:
    get:
      tags:
        - Bonds
      description: Obtener detalle de un instrumento de bono
      parameters:
        - name: symbol
          in: path
          required: true
          schema:
            type: string
          example: AL30
      responses:
        '200':
          description: Detalle del instrumento
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstrumentDetailResponse'
        '401':
          description: No autorizado - token de acceso inválido o faltante
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                type: /errors/authentication-required
                title: Authorization header missing
                status: 401
                detail: Authorization header missing
                correlation_id: d6e20e07-0580-4e2d-9480-00a68c1ae493
        '404':
          description: Ticker no encontrado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                type: /errors/not-found
                title: Resource not found
                status: 404
                detail: Ticker not found
        '500':
          description: Error interno del servidor
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                type: /errors/internal-server-error
                title: Internal server error
                status: 500
                detail: Internal server error
                correlation_id: 6cd1fd05-63e9-4863-832f-d873e58e9d67
      security:
        - bearerAuth: []
components:
  schemas:
    InstrumentDetailResponse:
      type: object
      properties:
        data:
          type: array
          items: efc763c2-b760-4be7-ae4a-d51bb628a10e
        pagination: 3ae65f3a-2c1b-4668-8c97-d81f4b02fc65
        filters: 64410536-294c-4624-9895-d45e4ffef4a9
        metadata: f0d86a2e-bdac-4d17-8eee-e56ba59433fc
      required:
        - data
        - pagination
        - filters
        - metadata
    Error:
      required:
        - type
        - title
        - status
        - detail
        - correlation_id
      type: object
      properties:
        type:
          description: El identificador del tipo de error
          type: string
          example: /errors/authentication-required
        title:
          description: Una breve descripción del error
          type: string
          example: Invalid client credentials
        status:
          description: El código de estado HTTP
          type: integer
          example: 401
        detail:
          description: Una descripción detallada del error
          type: string
          example: Invalid client credentials
        correlation_id:
          description: Un identificador único para rastrear esta solicitud de error
          type: string
          format: uuid
          example: 2eb07802-94de-468a-b70f-75a49f3e9516
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````