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

# Reportar una plantilla

> Reporta una plantilla privada a Vertra Cloud desde su enlace o desde una aplicación creada con ella, con un motivo y detalles opcionales.

Esta llamada reporta una plantilla privada a Vertra Cloud y responde `200` con `null`. Al autor no se le informa quién reportó. Los reportes los revisa la plataforma; en un caso grave con pruebas, escribe también a `abuse@vertracloud.app`.

Hay dos rutas con el mismo cuerpo: `POST /v1/share/templates/{token}/report` desde un enlace para compartir, que sigue funcionando aunque el enlace se haya revocado, y `POST /v1/apps/{id}/template/report` desde una aplicación creada a partir de la plantilla. Para la ruta de aplicación, quien llama es el propietario de la aplicación o, en un workspace, un miembro con acceso a las aplicaciones. Una cuenta puede reportar la misma plantilla como máximo 3 veces; después, la llamada falla con `429`.

Ambas necesitan el ámbito `templates:write` cuando se llama con una clave de API. Los detalles nunca se escriben en los logs.

**token** `string` *required*

El token del enlace, en la ruta de enlace.

**id** `string` *required*

El ID de la aplicación, en la ruta de aplicación.

**workspace\_id** `string`

En la ruta de aplicación, el ID del workspace cuando la aplicación pertenece a uno.

**reason** `string` *required*

`malware`, `scam`, `copyright`, `leaked_secret` u `other`.

**details** `string`

Lo que viste, hasta 1.000 caracteres.

```bash cURL theme={null}
curl -X POST https://api.vertracloud.app/v1/share/templates/vtpl_EXAMPLE_TOKEN/report \
  -H "Authorization: Bearer $VERTRA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "reason": "leaked_secret", "details": "The code has a token in src/config.js" }'
```

### Respuesta

**response** `null`

Siempre `null`.

```json Response theme={null}
{
  "response": null
}
```

### Respuestas de error

**code** `string`

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

* `API_KEY_SCOPE_DENIED`: La clave de API no tiene el ámbito `templates:write` (`403`).
* `VALIDATION_ERROR`: `reason` no es uno de los valores anteriores, o `details` supera los 1.000 caracteres (`400`).
* `SHARE_LINK_NOT_FOUND`: El token tiene un formato no válido, no existe, o su plantilla fue eliminada (`404`).
* `APP_NOT_FOUND`: En la ruta de aplicación, la aplicación no existe o no es tuya.
* `TEMPLATE_NOT_FOUND`: En la ruta de aplicación, la aplicación no vino de una plantilla (`404`).
* `RATE_LIMIT_EXCEEDED`: Ya reportaste esta plantilla 3 veces (`429`).

```json Error Response theme={null}
{
  "code": "SHARE_LINK_NOT_FOUND"
}
```


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