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

# Incluir Ação no Assunto do CRM

> Serviço destinado a fazer a inclusão de ação no assunto no CRM.

## Endpoint

```
POST https://api.tiny.com.br/api2/crm.incluir.acao.assunto.php
```

## Parâmetros

| Parâmetro | Tipo   | Ocorrência  | Descrição                                 |
| --------- | ------ | ----------- | ----------------------------------------- |
| token     | string | obrigatório | Chave gerada para identificar sua empresa |
| acao      | object | obrigatório | Dados da ação conforme layout             |
| formato   | string | obrigatório | Formato do retorno (json)                 |

### Layout do parâmetro "acao"

| Campo                 | Tipo   | Tamanho | Ocorrência  | Descrição                                       |
| --------------------- | ------ | ------- | ----------- | ----------------------------------------------- |
| acao.id\_assunto      | int    | -       | obrigatório | Número de identificação do assunto na Olist     |
| acao.descricao\_acao  | string | -       | obrigatório | Descrição da ação                               |
| acao.tipo\_data\_acao | string | 1       | obrigatório | Código conforme tabela de Tipos de data da ação |
| acao.data\_acao       | date   | 20      | opcional    | Data da ação (formato dd/mm/yyyy) (1)           |
| acao.situacao\_acao   | string | -       | opcional    | Código conforme tabela de Situações da ação (2) |
| acao.usuario          | string | -       | opcional    | Login do usuário responsável pela ação          |

> (1) Campo data\_acao é considerado apenas quando tipo\_data\_acao = "D"

> (2) Se situacao\_acao não for enviado, assume-se "0" como padrão

## Retorno

| Campo                                       | Tipo   | Tamanho | Ocorrência  | Descrição                                 |
| ------------------------------------------- | ------ | ------- | ----------- | ----------------------------------------- |
| retorno                                     | object | -       | obrigatório | Elemento raiz do retorno                  |
| retorno.status\_processamento               | int    | -       | obrigatório | Conforme tabela "Status de Processamento" |
| retorno.status                              | string | -       | obrigatório | "OK" ou "Erro"                            |
| retorno.codigo\_erro                        | int    | -       | obrigatório | Conforme tabela "Códigos de erro"         |
| retorno.erros\[]                            | list   | -       | condicional | Lista dos erros encontrados \[0..n]       |
| retorno.erros\[].erro                       | string | -       | condicional | Descrição do erro                         |
| retorno.registros\[]                        | list   | -       | condicional | Lista de resultados da inclusão           |
| retorno.registros\[].registro               | object | -       | condicional | Elemento para representar uma ação        |
| retorno.registros\[].registro.sequencia     | int    | -       | condicional | Número sequencial                         |
| retorno.registros\[].registro.status        | string | -       | condicional | "OK" ou "Erro"                            |
| retorno.registros\[].registro.codigo\_erro  | int    | -       | condicional | Conforme tabela "Códigos de erro"         |
| retorno.registros\[].registro.erros\[]      | list   | -       | condicional | Lista dos erros \[0..n]                   |
| retorno.registros\[].registro.erros\[].erro | string | -       | condicional | Descrição do erro                         |
| retorno.registros\[].registro.id            | int    | -       | condicional | Número de identificação da ação na Olist  |

## Exemplo de parâmetro

```json theme={null}
{
  "acao": {
    "id_assunto": "1235678",
    "descricao_acao": "Contatar",
    "tipo_data_acao": "D",
    "data_acao": "15/01/2015",
    "situacao_acao": "1"
  }
}
```

## Exemplo de chamada

```bash theme={null}
curl -X POST https://api.tiny.com.br/api2/crm.incluir.acao.assunto.php \
  -d 'token=SEU_TOKEN&formato=json&acao={
    "id_assunto": "1235678",
    "descricao_acao": "Contatar",
    "tipo_data_acao": "D",
    "data_acao": "15/01/2015",
    "situacao_acao": "1"
  }'
```

## Exemplos de retorno

### Erro - Token inválido

```json theme={null}
{
  "retorno": {
    "status_processamento": 1,
    "status": "Erro",
    "codigo_erro": 2,
    "erros": [
      {
        "erro": "token invalido"
      }
    ]
  }
}
```

### Erro - Duplicidade

```json theme={null}
{
  "retorno": {
    "status_processamento": 2,
    "status": "Erro",
    "registros": [
      {
        "registro": {
          "sequencia": "1",
          "status": "Erro",
          "codigo_erro": "30",
          "erros": [
            {
              "erro": "Registro em duplicidade"
            }
          ]
        }
      }
    ]
  }
}
```

### Sucesso

```json theme={null}
{
  "retorno": {
    "status_processamento": 3,
    "status": "OK",
    "registros": [
      {
        "registro": {
          "sequencia": "1",
          "status": "OK",
          "id": "49644545"
        }
      }
    ]
  }
}
```

## Observações

* Se o campo `usuario` não for enviado, nenhum usuário é atribuído à ação
* Formato de data: dd/mm/yyyy (exemplo: "01/01/2012")
