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

# Plan Limits

> Obtener los límites y uso actual del plan

## Headers

| Header          | Valor            |
| --------------- | ---------------- |
| `Authorization` | `Bearer {token}` |

## Response (200)

```json theme={null}
{
  "plan": "enterprise",
  "limits": {
    "max_projects": 999999,
    "max_cli_tools": 999999,
    "max_members": 999999,
    "skills_premium": true,
    "skills_parallel": true,
    "audit_cloud": true
  },
  "usage": {
    "projects": 3,
    "members": 1
  }
}
```

***

# Get Subscription

```
GET /api/v1/billing/subscription
```

## Response (200)

```json theme={null}
{
  "plan": "premium",
  "status": "active",
  "stripe_subscription_id": "sub_...",
  "current_period_end": "2026-05-04T12:00:00"
}
```

***

# Create Checkout

```
POST /api/v1/billing/create-checkout
```

Crea una sesión de Stripe Checkout para hacer upgrade al plan Premium.

## Request Body

```json theme={null}
{
  "success_url": "https://app.nexus.dev/dashboard/billing?session_id={CHECKOUT_SESSION_ID}",
  "cancel_url": "https://app.nexus.dev/dashboard/billing"
}
```

## Response (200)

```json theme={null}
{
  "checkout_url": "https://checkout.stripe.com/c/pay/cs_...",
  "session_id": "cs_..."
}
```

***

# Confirm Subscription

```
POST /api/v1/billing/confirm-subscription
```

Confirma el pago después de regresar de Stripe Checkout.

## Request Body

```json theme={null}
{
  "session_id": "cs_..."
}
```

## Response (200)

```json theme={null}
{
  "plan": "premium",
  "status": "active",
  "message": "Suscripción activada exitosamente"
}
```

***

# Create Portal

```
POST /api/v1/billing/create-portal
```

Genera un enlace al portal de facturación de Stripe donde el usuario puede gestionar su suscripción, actualizar método de pago, o cancelar.

## Request Body

```json theme={null}
{
  "return_url": "https://app.nexus.dev/dashboard/billing"
}
```

## Response (200)

```json theme={null}
{
  "portal_url": "https://billing.stripe.com/p/session/..."
}
```
