# Ciclo de Vida

Os endpoints de ciclo de vida movem uma jornada entre estados. Passe o [ID da Journey](/pt/developer/api-reference/api-identifiers/#journey-id) da jornada como `uuid` no corpo da requisição. A chamada retorna o [objeto da jornada](/pt/developer/api-reference/customer-journey-api/journey-object/) atualizado.

Uma jornada está sempre em um destes estados:

| Status | Significado |
|---|---|
| `STATUS_DRAFT` | Sendo editada. Não processa usuários. |
| `STATUS_RUNNING` | Ativa, processando usuários. |
| `STATUS_PAUSED` | Pausada temporariamente, pode ser retomada. |
| `STATUS_FINISHED` | Concluída, não processa mais usuários. |
| `STATUS_ARCHIVED` | Arquivada para armazenamento. |

## Endpoints

Todas as chamadas de ciclo de vida usam o mesmo corpo de requisição: [ID da Journey](/pt/developer/api-reference/api-identifiers/#journey-id) passado como `uuid`. Elas diferem apenas no caminho:

| Ação | Método e caminho | Estado resultante |
|---|---|---|
| Iniciar | `POST /api/v3/journeygateway/start` | `STATUS_RUNNING` |
| Pausar | `POST /api/v3/journeygateway/pause` | `STATUS_PAUSED` |
| Finalizar | `POST /api/v3/journeygateway/finish` | `STATUS_FINISHED` |
| Rascunhar | `POST /api/v3/journeygateway/draft` | `STATUS_DRAFT` |
| Arquivar | `POST /api/v3/journeygateway/archive` | `STATUS_ARCHIVED` |

## Requisição

| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| `uuid` | Sim | string | [ID da Journey](/pt/developer/api-reference/api-identifiers/#journey-id) da jornada a ser transicionada. |

```json title="Corpo"
{ "uuid": "11111111-2222-3333-4444-555555555555" }
```

A API valida o estado atual antes da transição. Por exemplo, iniciar uma jornada que já está finalizada, ou pausar uma que não está em execução, retorna um erro.

<Aside type="note">
Para iniciar uma jornada **e** aplicar edições pendentes em uma única chamada, use [Atualizar e retomar](/pt/developer/api-reference/customer-journey-api/create-update/#update-and-resume) em vez de `start`.
</Aside>

### Exemplos de requisição

#### Iniciar uma jornada

```bash
curl -X POST https://journey.pushwoosh.com/api/v3/journeygateway/start \
  -H "Authorization: Api YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "uuid": "11111111-2222-3333-4444-555555555555" }'
```

#### Pausar uma jornada

```bash
curl -X POST https://journey.pushwoosh.com/api/v3/journeygateway/pause \
  -H "Authorization: Api YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "uuid": "11111111-2222-3333-4444-555555555555" }'
```

## Resposta

Retorna o [objeto da jornada](/pt/developer/api-reference/customer-journey-api/journey-object/) atualizado: `info`, `points` e `comments`. O campo `info.status` reflete o novo estado.

### Exemplo de resposta
```json
{
  "info": {
    "uuid": "11111111-2222-3333-4444-555555555555",
    "title": "Welcome series",
    "status": "STATUS_RUNNING",
    "created_at": "2026-05-01T09:00:00Z",
    "updated_at": "2026-06-17T12:00:00Z",
    "params": { "application_code": "XXXXX-XXXXX" },
    "campaign_type": "TriggerBased"
  },
  "points": [],
  "comments": []
}
```

Consulte a [referência do objeto da jornada](/pt/developer/api-reference/customer-journey-api/journey-object/) para a lista completa de campos.

## Relacionados

<CardGrid>
  <LinkCard title="Criar e atualizar" href="/developer/api-reference/customer-journey-api/create-update/" />
  <LinkCard title="Iniciar por API" href="/developer/api-reference/customer-journey-api/start-by-api/" />
  <LinkCard title="Objeto da Journey" href="/developer/api-reference/customer-journey-api/journey-object/" />
</CardGrid>