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

# Introducción a la API

> API REST de Neuracall para análisis de llamadas

## URL Base

```
https://api.neuracall.com
```

Todos los endpoints de la API usan HTTPS y siguen convenciones REST.

## Autenticación

Todos los endpoints (excepto `/v1/auth`) requieren un token Bearer en el header `Authorization`:

```
Authorization: Bearer <access_token>
```

<Card title="Ver guía de autenticación" icon="lock" href="/authentication">
  Aprende como obtener y usar tokens de acceso
</Card>

## Formato de Respuestas

Las respuestas exitosas retornan JSON con código HTTP 2xx:

```json theme={null}
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "PROCESS_COMPLETED",
  "score_percentage": 85.0,
  ...
}
```

## Paginación

Los endpoints de listado soportan paginación:

| Parametro | Tipo    | Default | Descripción                  |
| --------- | ------- | ------- | ---------------------------- |
| `page`    | integer | 0       | Número de pagina (0-indexed) |
| `size`    | integer | 20      | Items por pagina (max 100)   |

**Respuesta paginada:**

```json theme={null}
{
  "content": [...],
  "page": 0,
  "size": 20,
  "content_length": 20,
  "total_elements": 150,
  "total_pages": 8
}
```

## Formatos de Audio Soportados

Para el endpoint de creación de análisis:

| Formato | Extension | MIME Type  |
| ------- | --------- | ---------- |
| MP3     | .mp3      | audio/mpeg |
| WAV     | .wav      | audio/wav  |
| M4A     | .m4a      | audio/mp4  |
| FLAC    | .flac     | audio/flac |
| OGG     | .ogg      | audio/ogg  |
| WEBM    | .webm     | audio/webm |

## Manejo de Errores

Los errores retornan un código HTTP 4xx o 5xx con el siguiente formato:

```json theme={null}
{
  "code": "001-001-0001",
  "path": "body.external_id",
  "message": "The field external_id is required"
}
```

### Códigos HTTP

| Código | Descripción                                     |
| ------ | ----------------------------------------------- |
| 400    | Bad Request - Datos de solicitud invalidos      |
| 401    | Unauthorized - Token invalido o expirado        |
| 403    | Forbidden - Sin permisos para esta operación    |
| 404    | Not Found - Recurso no encontrado               |
| 422    | Validation Error - Error de validación de datos |
| 500    | Internal Server Error - Error del servidor      |

## Rate Limiting

La API tiene límites de tasa para garantizar disponibilidad. Si excedes el limite, recibiras un error 429.

<Tip>
  Contacta a soporte si necesitas límites más altos para tu caso de uso.
</Tip>

## Versionado

La API actual es **v1**. Todos los endpoints incluyen el prefijo `/v1/` en la ruta.

## SDKs y Ejemplos

<CardGroup cols={3}>
  <Card title="Python" icon="python" href="/integrations/examples/python">
    Ejemplos con requests
  </Card>

  <Card title="Node.js" icon="node-js" href="/integrations/examples/nodejs">
    Ejemplos con fetch
  </Card>

  <Card title="cURL" icon="terminal" href="/integrations/examples/curl">
    Ejemplos de linea de comandos
  </Card>
</CardGroup>

## Grupos de Endpoints

<CardGroup cols={2}>
  <Card title="Authentication" icon="lock" href="/api-reference/auth/obtain-token">
    Obtener tokens de acceso
  </Card>

  <Card title="Call Analysis" icon="phone" href="/api-reference/call-analysis/create">
    Crear y consultar análisis de llamadas
  </Card>

  <Card title="Analysis Models" icon="sliders" href="/api-reference/models/list">
    Gestionar modelos de evaluación
  </Card>

  <Card title="Statistics" icon="chart-bar" href="/api-reference/stats/basic">
    Obtener métricas agregadas
  </Card>
</CardGroup>
