> For the complete documentation index, see [llms.txt](https://docs.shippify.co/developers/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.shippify.co/developers/shippify-api/entregas/cambiar-estados-de-entrega.md).

# Cambiar estados de entrega

Puedes utilizar este endpoint para cambiar el estado a una entrega, aqui puedes añadir comentarios o agregar razones de problemas creados anteriormente en el sistema. Para conoces mas de los estados de Shippify, [entre aqui.](/developers/guia-de-integracion/procesos-basicos/actualizacion-de-estados/estados.md)

## Actualiza el estado de una entrega

> Actualizar el estado de una entrega por su ID o referencia.

```json
{"openapi":"3.0.0","info":{"title":"API de Shippify","version":"1.0.0"},"servers":[{"url":"https://api.shippify.co","description":"Servidor de desarrollo"}],"security":[{"Basic_Auth":[]}],"components":{"securitySchemes":{"Basic_Auth":{"type":"http","scheme":"basic"}},"schemas":{"changeStatus":{"successfulResponse":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}}},"request":{"type":"object","required":["status","comment","author"],"properties":{"status":{"description":"Nuevo estado de la ruta","type":"string","enum":["pending_to_review","processing","broadcasting","assigned","confirmed_to_pickup","going_to_pickup","at_pickup","on_delivery","going_to_dropoff","at_dropoff","dropped_off","completed","canceled","going_to_return","at_return_point","returned","not_picked_up","not_picked_up_payable","hold_by_courier"]},"comment":{"type":"string","description":"Comentario del cambio"},"reasonByCompany":{"type":"array","description":"Razones predefinidas para el cambio de estado","items":{"type":"object","required":["reasonId","reason"],"properties":{"reasonId":{"type":"integer","description":"Identificador de la razón para cambiar el estado"},"reason":{"type":"string","description":"Nombre de la razón para cambiar el estado"}}}},"author":{"type":"object","required":["id","type","name","email"],"description":"Información del usuario que realiza el cambio de estado","properties":{"type":{"type":"string","description":"Tipo de usuario","enum":["operator","admin"]},"id":{"type":"integer","description":"Identificador de usuario"},"name":{"type":"string","description":"Nombre de usuario"},"email":{"type":"string","description":"Email de usuario"}}}}}},"Unauthenticated":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}}},"paths":{"/v1/deliveries/{id}/status":{"patch":{"tags":["Entregas"],"summary":"Actualiza el estado de una entrega","description":"Actualizar el estado de una entrega por su ID o referencia.","responses":{"200":{"description":"Operación exitosa","content":{"application/json":{"schema":{"$ref":"#/components/schemas/changeStatus/successfulResponse"}}}},"401":{"description":"No autorizado","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Unauthenticated"}}}}},"parameters":[{"name":"id","in":"path","description":"Identificador o ID de referencia de la entrega para cambiar el estado.","required":true,"schema":{"type":"string"}}],"requestBody":{"description":"Aquí va la descripción","content":{"application/json":{"schema":{"$ref":"#/components/schemas/changeStatus/request"}}}}}}}}
```

## Casos de uso

<details>

<summary>Cambio de estado por referenceId</summary>

Puedes utilizar el reference id de la entrega en la url de la petición para cambiar su estado.

</details>

<details>

<summary>Cancelar entrega</summary>

```json
{
    "status": "canceled",
    "comment": "TEST",
    "author": {
        "email": "example@shippify.co",
        "id": 999,
        "name": "Test operator",
        "type": "operator"
    }
}
```

</details>

<details>

<summary>Cambiar estado a resguardo del conductor con motivo de problema</summary>

```json
{
    "status": "hold_by_courier",
    "comment": "Sur de la ciudad",
    "reasonByCompany": [
        {
            "companyId": "9065",
            "reasonId": 67,
            "reason": "ZONA PELIGROSA"
        }
    ],
    "author": {
        "type": "operator",
        "id": 1149,
        "name": "example",
        "email": "example@shippify.co"
    }
}
```

</details>

<details>

<summary>Completar entrega</summary>

```json
{
    "status": "completed",
    "comment": "",
    "author": {
        "type": "operator",
        "id": 1,
        "name": "example",
        "email": "example@shippify.co"
    }
}
```

</details>
