> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chargefy.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Sessões de ativação

> Visão geral do objeto Activation Session

Uma `activation_session` representa uma sessão hospedada para ativar ou reativar o perfil financeiro de uma `organization` conectada a uma plataforma. A sessão pertence a uma plataforma, aponta para uma organização existente e **entrega uma URL temporária para o fluxo hospedado**.

<Info>
  `activation_session` também é um recurso exclusivo do Chargefy for Platforms. Criar e consultar sessões exige uma API key de plataforma com escopo `platform_admin`.
</Info>

Em termos práticos, `session` aqui não é uma sessão do seu backend nem um login permanente. É uma instância temporária de uma página hospedada pela Chargefy, com autorização embutida, para que o vendedor conectado preencha cadastro, dados de negócio, documentos e informações bancárias sem você precisar montar esse formulário. Depois de criar a sessão, redirecione o vendedor para a `url`, por exemplo:

```text theme={"theme":"css-variables"}
https://hosted.chargefy.io/activation/as_2iynJGVBaCQMWwBN?authorization_code=...
```

Use `return_url` para trazer o vendedor de volta ao seu produto quando ele concluir ou sair do fluxo.

O passo a passo completo — criação, redirect, eventos, resultado e reenvio — está no guia [Ativação hospedada](/platforms/activate-with-hosted-session).

O status financeiro não fica no objeto `activation_session`. Consulte [`GET /v1/organizations/{id}`](/api-reference/organizations/get) ou acompanhe [`organization.updated`](/api-reference/webhooks/organization.updated) **para ler `organization.activation_status`**. Se o cadastro for reprovado, o motivo e a instrução de correção também chegam pela organização, em `organization.requirements` — veja [Requisitos de ativação](/platforms/resolve-activation-rejections).

## Data Object

Este é o formato completo retornado em `create` e em `get`.

```json theme={"theme":"css-variables"}
{
  "id": "as_2iynJGVBaCQMWwBN",
  "object": "activation_session",
  "created_at": "2026-05-16T14:09:27Z",
  "expires_at": "2026-05-16T14:10:27Z",
  "livemode": true,
  "metadata": {},
  "opened_at": null,
  "organization": "org_wLLeNj3pFfKc272Y",
  "platform": "plat_imdacYDBFRYbdauG",
  "return_url": "https://meusite.com/activation/return",
  "status": "created",
  "updated_at": "2026-05-16T14:09:27Z",
  "url": "https://hosted.chargefy.io/activation/as_2iynJGVBaCQMWwBN?authorization_code={{AUTHORIZATION_CODE}}"
}
```

<ResponseField name="id" type="string">
  Identificador da sessão de ativação. Usa o prefixo `as_*`.
</ResponseField>

<ResponseField name="object" type="string">
  Sempre `"activation_session"`.
</ResponseField>

<ResponseField name="created_at" type="string">
  Data de criação em ISO 8601.
</ResponseField>

<ResponseField name="expires_at" type="string | null">
  Data de expiração da URL em ISO 8601. No `GET` e em estados fechados, vem `null`.
</ResponseField>

<ResponseField name="livemode" type="boolean">
  `true` em produção; `false` em ambiente de teste.
</ResponseField>

<ResponseField name="metadata" type="object">
  Metadata enviada na criação desta sessão de ativação. Retorna `{}` quando vazia.
</ResponseField>

<ResponseField name="opened_at" type="string | null">
  Quando o usuário abriu o fluxo hospedado pela primeira vez.
</ResponseField>

<ResponseField name="organization" type="string">
  ID canônico da organização conectada existente (`org_*`).
</ResponseField>

<ResponseField name="platform" type="string">
  ID da plataforma dona da sessão.
</ResponseField>

<ResponseField name="return_url" type="string">
  URL para onde o usuário volta ao concluir ou sair do fluxo hospedado.
</ResponseField>

<ResponseField name="status" type="string">
  Estado da sessão.

  | Valor         | Descrição                                                              |
  | ------------- | ---------------------------------------------------------------------- |
  | `created`     | Sessão criada; o fluxo hospedado ainda não foi aberto.                 |
  | `in_progress` | O vendedor abriu o fluxo hospedado e está preenchendo.                 |
  | `submitted`   | Formulário enviado. Aprovação e reprovação pertencem à `organization`. |
  | `failed`      | Valor legado que pode aparecer em uma tentativa antiga.                |
  | `expired`     | Valor legado que pode aparecer em uma tentativa antiga.                |

  Novas sessões percorrem `created`, `in_progress` e `submitted`. Os outros valores podem aparecer em registros históricos, mas não descrevem o estado financeiro atual. Para saber se a conta foi aprovada, reprovada ou permite novo envio, consulte a `organization`.
</ResponseField>

<ResponseField name="updated_at" type="string | null">
  Data da última atualização em ISO 8601.
</ResponseField>

<ResponseField name="url" type="string | null">
  URL hospedada com `authorization_code` de uso único. No `GET` e em estados fechados, vem `null`.
</ResponseField>

## Operações

* [Criar uma sessão de ativação](/api-reference/activation-sessions/create)
* [Consultar uma sessão de ativação](/api-reference/activation-sessions/get)

## Eventos

* [`organization.updated`](/api-reference/webhooks/organization.updated)

A sessão não emite evento próprio. O resultado chega pela organização conectada: o envio para análise aparece em `organization.activation_status` como `in_review`, a aprovação como `active` e, em caso de reprovação, motivo e instrução em `organization.requirements`.
