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

# Crear conexión del stack

> Conecta una aplicación de un stack a una base de datos, una carpeta de Blob o otra aplicación, inyectando variables gestionadas.

Conecta una aplicación del stack a una base de datos, a una carpeta de Blob o a otra aplicación del stack. La plataforma escribe las variables en la aplicación y, en el caso de una base de datos, los certificados de cliente en `/app/.vertra/certs/<database_id>/`. El modo de red es `public`: la aplicación llega a la dirección pública de la base de datos con un certificado de cliente. Requiere el scope `stacks:write` cuando se llama con una clave de API.

**stack\_id** `string` *required*

El ID del stack.

**workspace\_id** `string`

El workspace al que pertenece el stack, cuando actúas sobre él como propietario del workspace.

**app\_id** `string` *required*

La aplicación del stack que recibe las variables.

**database\_id** `string`

La base de datos a la que conectarse. Envía exactamente uno de `database_id`, `blob_id` y `target_app_id`.

**blob\_id** `string`

El ID del miembro Blob al que conectarse.

**target\_app\_id** `string`

Otra aplicación del stack a la que conectarse.

**env\_map** `object`

Nombres de variables y lo que recibe cada una. Sin este campo, la plataforma usa los nombres estándar del motor (`DATABASE_URL`, `MONGODB_URI`, `REDIS_URL`, `MYSQL_URL`), con el nombre del servicio como prefijo en la segunda conexión de un mismo motor. Valores permitidos:

* Base de datos: `url`, `host`, `port`, `user`, `password`, `database`, `ssl.ca_path`, `ssl.cert_path`, `ssl.key_path`, `ssl.pem_path` (clave, certificado y CA en un solo archivo, el formato que lee MongoDB), `ssl.p12_path` (PKCS#12 con contraseña vacía, el formato que leen Prisma 6 y versiones anteriores) y `prisma_url` (una URL de PostgreSQL para Prisma 6 y versiones anteriores; nunca se añade por defecto).
* Otra aplicación (o la propia aplicación): `url` y `domain` (solo el nombre del host, sin el esquema). Los dos siguen el cambio de subdominio o de dominio.
* Carpeta de Blob: `endpoint`, `bucket`, `region`, `prefix`, `access_key_id`, `secret_access_key` y `public_base_url` (vacío cuando la carpeta es privada).

### Response

`201` con la conexión (los mismos campos que [Listar conexiones del stack](https://docs.vertracloud.app/es-es/api-reference/endpoint/stacks/bindings/list.md)) más `restart_required` y `apps_to_restart`. Una aplicación lee las variables y los certificados solo al arrancar, así que reinicia las aplicaciones listadas en `apps_to_restart`.

```bash cURL theme={null}
curl -X POST https://api.vertracloud.app/v1/stacks/stk-abc123def456/bindings \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "app_id": "app-abc123def456",
    "database_id": "db-abc123def456",
    "env_map": { "DATABASE_URL": "url" }
  }'
```

### Errores

| Estado | Código | Cuándo |
| - | - | - |
| 400 | `VALIDATION_ERROR` | No hay exactamente un destino, o un valor de `env_map` no es válido para el destino. |
| 400 | `FORBIDDEN_KEY` | Un nombre de variable está reservado por la plataforma. |
| 409 | `ENV_DUPLICATE_KEY` | Un nombre de variable ya lo gestiona otra conexión. |
| 403 | `WORKSPACE_OWNER_ONLY` | Eres miembro del workspace, no su propietario. |
| 404 | `STACK_NOT_FOUND` | El stack no existe o pertenece a otra cuenta. |
| 404 | `STACK_MEMBER_NOT_FOUND` | La aplicación o el destino no es miembro del stack. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.