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

# Inicio rápido

> Comience a usar Avala en menos de 60 segundos

<Tip>
  **Requisitos previos:** Necesita una cuenta de Avala. [Regístrese en avala.ai](https://avala.ai) o cree una de forma programática con el SDK (ver a continuación), luego cree una API key en **[Configuración > Seguridad](https://avala.ai/settings?section=security)**.
</Tip>

<CodeGroup>
  ```bash Python theme={null}
  pip install avala
  ```

  ```bash TypeScript theme={null}
  npm install @avala-ai/sdk
  ```

  ```bash CLI theme={null}
  curl -fsSL https://avala.ai/install.sh | bash
  ```
</CodeGroup>

<CodeGroup>
  ```python Python theme={null}
  from avala import Client

  client = Client(api_key="avk_your_api_key")

  for dataset in client.datasets.list():
      print(dataset.name, dataset.item_count)
  ```

  ```typescript TypeScript theme={null}
  import Avala from "@avala-ai/sdk";

  const avala = new Avala({ apiKey: "avk_your_api_key" });

  const page = await avala.datasets.list();
  page.items.forEach(d => console.log(d.name, d.itemCount));
  ```

  ```bash CLI theme={null}
  export AVALA_API_KEY="avk_your_api_key"
  avala datasets list
  ```

  ```bash cURL theme={null}
  curl https://api.avala.ai/api/v1/datasets/ \
    -H "X-Avala-Api-Key: avk_your_api_key"
  ```
</CodeGroup>

Eso es todo. A continuación se presenta un recorrido paso a paso de lo que está sucediendo y lo que puede hacer después.

***

## Crear una cuenta

Puede registrarse en [avala.ai](https://avala.ai) o crear una cuenta de forma programática. La función `signup` del SDK no requiere una API key — devuelve una al completarse exitosamente.

<CodeGroup>
  ```python Python theme={null}
  from avala import signup

  result = signup(email="dev@acme.com", password="SecurePass123!")
  print(f"API Key: {result.api_key}")
  ```

  ```typescript TypeScript theme={null}
  import { signup } from "@avala-ai/sdk";

  const result = await signup({ email: "dev@acme.com", password: "SecurePass123!" });
  console.log(`API Key: ${result.apiKey}`);
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.avala.ai/api/v1/signup/ \
    -H "Content-Type: application/json" \
    -d '{"email": "dev@acme.com", "password": "SecurePass123!"}'
  ```
</CodeGroup>

***

## Obtener su API Key

1. Inicie sesión en [Mission Control](https://avala.ai).
2. Vaya a **[Configuración > Seguridad](https://avala.ai/settings?section=security)**.
3. Haga clic en **Crear API Key**, asígnele un nombre, seleccione los alcances y copie la clave.

<Warning>
  Las API keys se muestran solo una vez al momento de su creación. Guárdela en un lugar seguro antes de cerrar el diálogo.
</Warning>

Configúrela como variable de entorno para que todos los SDKs y el CLI la detecten automáticamente:

```bash theme={null}
export AVALA_API_KEY="avk_your_api_key"
```

## Listar datasets

<CodeGroup>
  ```python Python theme={null}
  from avala import Client

  client = Client()  # reads AVALA_API_KEY from env

  for dataset in client.datasets.list():
      print(f"{dataset.name} — {dataset.item_count} items")
  ```

  ```typescript TypeScript theme={null}
  import Avala from "@avala-ai/sdk";

  const avala = new Avala();  // reads AVALA_API_KEY from env

  const page = await avala.datasets.list();
  for (const d of page.items) {
    console.log(`${d.name} — ${d.itemCount} items`);
  }
  ```

  ```bash CLI theme={null}
  avala datasets list
  ```

  ```bash cURL theme={null}
  curl https://api.avala.ai/api/v1/datasets/ \
    -H "X-Avala-Api-Key: $AVALA_API_KEY"
  ```
</CodeGroup>

## Listar proyectos

<CodeGroup>
  ```python Python theme={null}
  for project in client.projects.list():
      print(f"{project.name} ({project.status})")
  ```

  ```typescript TypeScript theme={null}
  const projects = await avala.projects.list();
  projects.items.forEach(p => console.log(`${p.name} (${p.status})`));
  ```

  ```bash CLI theme={null}
  avala projects list
  ```

  ```bash cURL theme={null}
  curl https://api.avala.ai/api/v1/projects/ \
    -H "X-Avala-Api-Key: $AVALA_API_KEY"
  ```
</CodeGroup>

## Crear una exportación

<CodeGroup>
  ```python Python theme={null}
  export = client.exports.create(project="proj_uid_here")
  print(f"Export {export.uid}: {export.status}")
  ```

  ```typescript TypeScript theme={null}
  const exp = await avala.exports.create({ project: "proj_uid_here" });
  console.log(`Export ${exp.uid}: ${exp.status}`);
  ```

  ```bash CLI theme={null}
  avala exports create --project proj_uid_here
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.avala.ai/api/v1/exports/ \
    -H "X-Avala-Api-Key: $AVALA_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"project": "proj_uid_here"}'
  ```
</CodeGroup>

<Info>
  Las exportaciones se ejecutan de forma asíncrona. Consulte el estado con `client.exports.get(uid)` o verifique `avala exports get <uid>` hasta que se complete.
</Info>

## Verificar uso de límite de tasa

Los SDKs exponen los encabezados de límite de tasa de cada respuesta:

<CodeGroup>
  ```python Python theme={null}
  info = client.rate_limit_info
  print(f"{info['remaining']}/{info['limit']} requests remaining")
  print(f"Resets at: {info['reset']}")
  ```

  ```typescript TypeScript theme={null}
  const info = avala.rateLimitInfo;
  console.log(`${info.remaining}/${info.limit} requests remaining`);
  ```
</CodeGroup>

## Próximos pasos

<CardGroup cols={3}>
  <Card title="Python SDK" icon="python" href="/docs/es/sdks/python">
    Soporte async, paginación, manejo de errores y type hints completos.
  </Card>

  <Card title="TypeScript SDK" icon="js" href="/docs/es/sdks/typescript">
    Cero dependencias. Funciona en Node.js, Deno y Bun.
  </Card>

  <Card title="Referencia del CLI" icon="terminal" href="/docs/es/sdks/cli">
    Gestione datasets, proyectos, exportaciones y almacenamiento desde su terminal.
  </Card>
</CardGroup>

<CardGroup cols={3}>
  <Card title="Webhooks" icon="bell" href="/docs/integrations/webhooks">
    Reciba notificaciones en tiempo real para eventos de dataset, exportación y tareas.
  </Card>

  <Card title="Servidor MCP" icon="robot" href="/docs/integrations/mcp-setup">
    Use Avala con Claude, Cursor y VS Code a través de asistentes de IA.
  </Card>

  <Card title="Referencia de la API" icon="square-terminal" href="/docs/api-reference/overview">
    Referencia completa de endpoints con esquemas de solicitud y respuesta.
  </Card>
</CardGroup>
