> ## 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.

# Obtener el certificado de una base de datos

> Obtiene el certificado de una base de datos concreta a partir de su ID.

**id** `string` *required*

El ID de la base de datos de la que se va a obtener el certificado.

### Respuesta

La respuesta es un objeto JSON que contiene los componentes del certificado en formato PEM para la conexión TLS con la base de datos, además de la CA y un paquete PKCS#12 cuando la base de datos los tiene.

**response** `object`

Los detalles del certificado para conexiones seguras a la base de datos.

**Mostrar objeto**

**crt** `string`

El certificado de cliente. Úsalo con `key` para la autenticación TLS de cliente.

**key** `string`

La clave privada del certificado de cliente. Úsala con `crt` para la autenticación TLS de cliente.

**pem** `string`

Un único archivo PEM con la clave privada del cliente, el certificado de cliente y el certificado de la CA, en ese orden. Úsalo cuando un driver necesite un único archivo de cliente combinado; para verificar la cadena de certificados del servidor, usa la parte de la CA.

**ca** `string`

El certificado de la CA (PEM) que firma el certificado del servidor de la base de datos, por separado. Úsalo para verificar la cadena de certificados del servidor. No aparece en bases de datos antiguas; la CA sigue siendo la última parte de `pem`.

**p12** `string`

La identidad de cliente en PKCS#12, codificada en base64, con una contraseña vacía. Decodifícala a un archivo `.p12` para los drivers que solo aceptan una identidad PKCS#12, como Prisma 6. No aparece en bases de datos antiguas.

```json Response theme={null}
{
  "response": {
    "crt": "-----BEGIN CERTIFICATE-----\nMIID1TCCAr2gAwIBAgIUe7z...\n-----END CERTIFICATE-----",
    "key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQE...\n-----END PRIVATE KEY-----",
    "pem": "-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUT...\n-----END CERTIFICATE-----",
    "ca": "-----BEGIN CERTIFICATE-----\nMIIDazCCAlOgAwIBAgIUT...\n-----END CERTIFICATE-----",
    "p12": "MIIJqQIBAzCCCW8GCSqGSIb3DQEHAaCCCWAEgglc..."
  }
}
```

### Uso

Todos los motores requieren TLS **y** el certificado de cliente. Guarda cada campo en un archivo:

| Campo | Guardar como | Contiene |
| - | - | - |
| `crt` | `certificate.crt` | Certificado de cliente |
| `key` | `certificate.key` | Clave privada del cliente |
| `pem` | `certificate.pem` | Clave del cliente + certificado del cliente + la CA que firma el servidor |
| `ca` | `ca.pem` | La CA que firma el servidor (cuando está presente) |
| `p12` | `certificate.p12` (decodifica antes el base64) | Identidad de cliente en PKCS#12, con contraseña vacía (cuando está presente) |

Usa `ca.pem` (o `certificate.pem`, que termina con la misma CA) como archivo de CA y, en MongoDB, `certificate.pem` como archivo de certificado y clave. Usa `certificate.crt` + `certificate.key` como certificado de cliente, o `certificate.p12` cuando el driver solo acepta una identidad PKCS#12 (Prisma 6, con contraseña vacía). El puerto es único para cada base de datos: léelo en [Obtener una base de datos](https://docs.vertracloud.app/es-es/api-reference/endpoint/databases/get.md). Los comandos y los ejemplos de driver para cada motor están en [¿Cómo me conecto a cada motor?](https://docs.vertracloud.app/es-es/databases.md#cómo-me-conecto-a-cada-motor).

### Respuestas de error

**code** `string`

El código de error que indica el motivo del fallo. Valores posibles:

* `AUTH_TOKEN_MISSING`, `API_KEY_INVALID`, `SESSION_REVOKED`: Falta la cabecera `Authorization`, la clave de API no es válida o la sesión del panel fue revocada (`401`).
* `API_KEY_IP_DENIED`, `API_KEY_SCOPE_DENIED`: La clave de API se usa desde una IP que no está en su lista de permitidas, o no tiene el ámbito que requiere la ruta (`403`).
* `ACCESS_DENIED`: El recurso pertenece a otra cuenta, o no tienes el permiso de workspace necesario para él (`403`).
* `DATABASE_NOT_FOUND_OR_FORBIDDEN`: La base de datos indicada no existe o el usuario no tiene acceso.
* `FAILED_TO_GET_CERTIFICATE`: No se pudo obtener el certificado.

**message** `string`

Un mensaje descriptivo con más detalles sobre el error.

```json Error Response (403) theme={null}
{
  "code": "ACCESS_DENIED"
}
```

```json Error Response (404) theme={null}
{
  "code": "DATABASE_NOT_FOUND_OR_FORBIDDEN"
}
```

```json Error Response (500) theme={null}
{
  "code": "FAILED_TO_GET_CERTIFICATE"
}
```


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