# Renombrar

`POST` `https://api.pushwoosh.com/messaging/v2/rename`

Establece o borra el **nombre de campaña** de un mensaje creado previamente, identificado por su `message_code`. Nada más del mensaje cambia. El contenido, la audiencia y la programación permanecen exactamente igual.

Renombrar está disponible solo mientras el mensaje está **pendiente** — creado pero aún no recogido para su envío. Un mensaje que ya pasó a `waiting`, `processing`, o a cualquier estado posterior ya no se puede renombrar. En el Panel de Control este estado se muestra como **Programado** en la columna Estado, no literalmente "Pendiente". Consulta [Estados de los mensajes](/es/product/statistics-and-analytics/message-history/#message-statuses).

<Aside type="caution" title="Importante">

- El nombre se recorta de espacios en blanco iniciales y finales y se corta a 255 caracteres. Un nombre vacío (o que contenga solo espacios en blanco) borra por completo el nombre de campaña, y el mensaje recurre a su título predeterminado en [Message History](/es/product/statistics-and-analytics/message-history/).

- Esta llamada es idempotente: enviar el mismo nombre de nuevo vuelve a aplicar el mismo valor. Aun así, actualiza la hora de última modificación del mensaje en cada llamada, haya cambiado o no el nombre realmente, por lo que una llamada repetida puede mover el mensaje a la parte superior del orden predeterminado **Última modificación** de Message History.
</Aside>

Para comprobar si un mensaje todavía está en un estado renombrable, consulta [Comprobando el estado del mensaje](#checking-message-status).


## Solicitud

Autentícate con tu [token de API del servidor](/es/developer/api-reference/api-access-token/#server-api-token) en el encabezado `Authorization: Token <API_TOKEN>`.

| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
| `message_code` | string | Sí | [Código de mensaje](/es/developer/api-reference/api-identifiers/#message-code) del mensaje a renombrar, tal como lo devuelve [`Notify`](/es/developer/api-reference/messaging-api-v2/notify/) en `result.message_code`. |
| `campaign_name` | string | Sí | Nuevo nombre de campaña. Se recorta y se corta a 255 caracteres. Una cadena vacía borra el nombre. |

### Solicitud de ejemplo

```bash
curl -X POST https://api.pushwoosh.com/messaging/v2/rename \
  -H "Authorization: Token YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "message_code": "XXXX-XXXXXXXX-XXXXXXXX",
    "campaign_name": "Flash_Sale_Push"
  }'
```

## Respuesta

En caso de éxito, devuelve un HTTP 200 con un cuerpo JSON vacío.

```json
{}
```

## Errores

Los errores utilizan el sobre de error estándar de gRPC-Gateway: `{ "code": ..., "message": ..., "details": [...] }`.

| Estado HTTP | Condición |
|---|---|
| `400` | Falta el `message_code`. |
| `400` | El mensaje no está en un estado renombrable (ya no está `pending`). |
| `403` | El mensaje pertenece a otra cuenta. |
| `404` | No existe ningún mensaje para el `message_code` proporcionado. |
| `500` | Ocurrió un error interno al cargar el mensaje o aplicar el nuevo nombre. Reintenta la solicitud. |


**Ejemplo**

Renombrar un mensaje que ya ha comenzado a enviarse devuelve HTTP `400`:

```json
{
  "code": 9,
  "message": "message status \"waiting\" is not renamable",
  "details": []
}
```

<span id="checking-message-status" />

## Comprobando el estado del mensaje

Antes de renombrar, puedes verificar si un mensaje todavía está en un estado renombrable. Además de leer la columna **Estado** en la tabla de mensajes en el Panel de Control ([**Campañas → Mensajes únicos**](/es/product/statistics-and-analytics/message-history/)), donde un mensaje renombrable muestra **Programado** en lugar de literalmente "Pendiente", puedes consultar el estado programáticamente con [`messages:list`](/es/developer/api-reference/statistics-api/message-statistics-api/#messageslist):

- Pasa el `message_code` en el array `filters.messages_codes` (junto con el `filters.application` requerido).
- Lee el campo `status` de la entrada coincidente en `items[]`.

<Aside type="note">
`messages:list` es parte de la API de Estadísticas y utiliza un encabezado de autenticación diferente al de este endpoint: `Authorization: Api <Server Key>`.
</Aside>

## Relacionado

<CardGrid>
  <LinkCard title="Notificar" href="/developer/api-reference/messaging-api-v2/notify/" />
  <LinkCard title="Actualizar" href="/developer/api-reference/messaging-api-v2/update/" />
  <LinkCard title="Cancelar" href="/developer/api-reference/messaging-api-v2/cancel/" />
  <LinkCard title="Estadísticas de mensajes" href="/developer/api-reference/statistics-api/message-statistics-api/#messageslist" />
  <LinkCard title="Resumen de la API de Mensajería v2" href="/developer/api-reference/messaging-api-v2/" />
  <LinkCard title="Migración desde v1" href="/developer/api-reference/messaging-api-v2/migration-from-v1/" />
</CardGrid>