# Posições

Posições são as vagas, convites para os candidatos iniciarem o preenchimento do *"application"* (formulário). Dentro da *position* estarão todos os dados preenchidos na criação da vaga, quanto os dados preenchidos pelo candidato (Pessoas e Documentos).

## Create position <a href="#create-position" id="create-position"></a>

<mark style="color:orange;">`POST`</mark> `https://api.acessorh.com.br/v2/positions`

Cria uma posição na filial selecionada. *Caso utilize as funcionalidades de Guia de Exame Médico e Carta de Abertura de Conta Bancária, será necessário antes criá-las através da chamada de Upload de Arquivos e então referenciar seus UIDs nos campos de Guia e Carta.*

**Path Parameters**

| Name                                            | Type   | Description                                                   |
| ----------------------------------------------- | ------ | ------------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Token ded acesso adquirido pela plataforma Identity(*Bearer*) |

{% code title="201 OK" %}

```json
{
    "code": 201,
    "messages": null,
    "result": {
        "position_id": "9ed9063b-ed1f-44f6-9b26-f3b57b64f632"
    },
    "status": "ok"
}
```

{% endcode %}

### **Descrição do body JSON da request**

| Chave                                             | Tipo                         | Descrição                                                                          |
| ------------------------------------------------- | ---------------------------- | ---------------------------------------------------------------------------------- |
| **numMatricula**                                  | string                       | Número da matrícula                                                                |
| **limitDate**<mark style="color:red;">\*</mark>   | string, format("YYYY-mm-dd") | Data limite para o preenchimento do cadastro                                       |
| **admissionDate**                                 | string, format("YYYY-mm-dd") | Data de admissão                                                                   |
| **costCenter**                                    | string                       | Centro de custo                                                                    |
| **posNumber**                                     | string                       | Número da posição                                                                  |
| **role**<mark style="color:red;">\*</mark>        | string                       | UID ou código do cargo indicado para a vaga                                        |
| **department**<mark style="color:red;">\*</mark>  | string                       | UID ou código do departamento indicado para a vaga                                 |
| **unitID**<mark style="color:red;">\*</mark>      | string                       | UID da filial onde a posição será criada.                                          |
| **pagamento**<mark style="color:red;">\*</mark>   | object                       | Informações sobre o pagamento                                                      |
| **deficiencia**<mark style="color:red;">\*</mark> | boolean                      | Indica se a vaga é PCD                                                             |
| **jornada**                                       | string                       | Informações sobre a jornada de trabalho                                            |
| **profile**<mark style="color:red;">\*</mark>     | object                       | Informações de contato do candidato                                                |
| **exame**<mark style="color:red;">\*</mark>       | object                       | Informações sobre o agendamento de exame médico                                    |
| **docs**                                          | array\[string]               | UIDs dos documentos adicionais a serem solicitados para a vaga                     |
| **benefits**                                      | array\[string]               | UIDs dos grupos de benefícios.(Obs.: Deverá ter apenas um por categoria.)          |
| **sendSMS**<mark style="color:red;">\*</mark>     | boolean                      | Indica a necessidade do envio da notificação para o candidato através de um SMS    |
| **sendEmail**<mark style="color:red;">\*</mark>   | boolean                      | Indica a necessidade do envio da notificação para o candidato através de um e-mail |

### **Pagamento**

| Chave                                         | Tipo                         | Descrição                                                      |
| --------------------------------------------- | ---------------------------- | -------------------------------------------------------------- |
| **vinculo**<mark style="color:red;">\*</mark> | string (options)             | Vínculo empregatício                                           |
| **valor**                                     | string                       | Valor da remuneração                                           |
| **recorrencia**                               | string (options)             | Recorrência do pagamento                                       |
| **dataInicio**                                | string, format("YYYY-mm-dd") | Data de início do contrato de estágio ou aprendiz              |
| **dataTermino**                               | string, format("YYYY-mm-dd") | Data de término do contrato de estágio ou aprendiz             |
| **agenteIntegrador**                          | string(options)              | Agente integrador do contrato de estágio ou aprendiz           |
| **contaBancaria**                             | object                       | Dados referentes à configuração de cartas de abertura de conta |

{% hint style="info" %}
Os campos de `recorrencia` e de `valor` são interdependentes. Caso um seja preenchido o outro se torna *required*.
{% endhint %}

**Opções de vínculo**

{% code overflow="wrap" %}

```
"clt", "estagio", "aprendiz", "autonomo", "temporario", "verde-amarelo", "intermitente", "estatuario"
```

{% endcode %}

**Opções de recorrência**

```
"horista", "mensalista", "aulista", "comissionista", "diarista"
```

**Opções de agente integrador**

{% code overflow="wrap" %}

```
"ciee", "nube", "senai", "senac", "mudes", "coep", "rede_cidada", "espro", "guarda_mirim", "outros"
```

{% endcode %}

**Conta bancária**

| Chave                                          | Tipo            | Descrição                                                      |
| ---------------------------------------------- | --------------- | -------------------------------------------------------------- |
| **banco**<mark style="color:red;">\*</mark>    | string(options) | Código do banco do qual a carta de abertura de conta se refere |
| **carta**                                      | string          | UID do arquivo contendo a carta de abertura de conta           |
| **template**<mark style="color:red;">\*</mark> | string          | UID do modelo de abertura de conta                             |

{% hint style="info" %}
Caso queira criar a posição com uma carta de abertura de conta anexada, é necessário realizar o seu upload antes.

Apenas uma opção deve ser escolhida: carta ou template.

O ID do modelo de carta pode ser encontrado no próprio módulo de criação dentro do Acesso RH.
{% endhint %}

**Opções de banco**

{% code overflow="wrap" %}

```
"001", "033", "041", "047", "104", "151", "237", "341", "399", "735", "745", "748", "755"
```

{% endcode %}

**Profile**

| Chave                                        | Tipo                          | Descrição                      |
| -------------------------------------------- | ----------------------------- | ------------------------------ |
| **name**<mark style="color:red;">\*</mark>   | string                        | Nome do candidato              |
| **email**<mark style="color:red;">\*</mark>  | string                        | E-mail do candidato            |
| **mobile**<mark style="color:red;">\*</mark> | string, format("11911111111") | Número do celular do candidato |

**Exame**

| Chave                                         | Tipo                         | Descrição                                      |
| --------------------------------------------- | ---------------------------- | ---------------------------------------------- |
| **clinica**<mark style="color:red;">\*</mark> | string                       | UID ou código da clínica                       |
| **data**                                      | string, format("YYYY-mm-dd") | Data do agendamento                            |
| **hora**                                      | string, format("HH:MM")      | Hora do agendamento                            |
| **obs**                                       | string                       | Observações do agendamento                     |
| **guia**                                      | string                       | UID do arquivo contendo a guia do exame médico |

{% hint style="info" %}
**Obs**: Os campos *data*, *hora* e *obs*, não são obrigatórios mas é indicado que eles sejam preenchidos pois são essas informações que serão disponibilizadas para os candidatos no momento do preenchimento da vaga.

**\*guia**: Caso queira criar a posição com uma guia de exame médico anexada, é necessário realizar o seu upload antes.
{% endhint %}

### Exemplo de requisição <a href="#exemplo-de-requisicao-1" id="exemplo-de-requisicao-1"></a>

```json
{
  "numMatricula": "4242424",
  "limitDate": "2018-01-01",
  "admissionDate": "2018-01-01",
  "costCenter": "anywhere",
  "posNumber": "pos-test",
  "role": "b63e065f-d7e0-49e1-91b7-88f74516e3fe",
  "department": "bf559996-a8b9-4f5e-af57-86111b0dbde3",
  "unitID": "e37dab24-c7a4-4b92-b9d1-d2ed538b8398",
  "pagamento": {
    "vinculo": "clt",
    "valor": "4200",
    "recorrencia": "mensalista",
    "contaBancaria": {
      "banco": "001",
      "carta": "c9160763-db6c-4e8c-a1ad-ad8709c99be2"
    }
  },
  "deficiencia": false,
  "jornada": "De segunda a sexta das 15 as 19",
  "profile": {
    "name": "John Doe",
    "email": "john.doe@acessodigital.com.br",
    "mobile": "11911111111"
  },
  "exame": {
    "clinica": "6dc84ce4-7d9f-48ec-b9b1-a8a895a21fd4",
    "data": "2018-01-01",
    "hora": "14:00",
    "obs":descricao-do-body-json-da-request-1 "Comparecer de manhã",
    "guia": "e37dab24-c7a4-4b92-b9d1-32ed538b8300",
  },
  "docs": ["c9e26093-5e0c-4bd2-bea3-ac5182a6179f"],
  "benefits": ["d4260f8d-f19a-463d-acdf-958ed358bb43"],
  "sendSMS": true,
  "sendEmail": true
}
```

## Export position <a href="#export-position" id="export-position"></a>

<mark style="color:orange;">`POST`</mark> `https://api.acessorh.com.br/v2/positions/export`

Exporta posições conforme o filtro informado no formato selecionado.

**Headers**

| Name                                            | Type   | Description                                                   |
| ----------------------------------------------- | ------ | ------------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | string | Token de acesso adquirido pela plataforma Identity *(bearer)* |

{% code title="200 OK" %}

```
```

{% endcode %}

### Descrição do body JSON da request <a href="#descricao-do-body-json-da-request-2" id="descricao-do-body-json-da-request-2"></a>

| Chave                                          | Tipo            | Descrição                                            |
| ---------------------------------------------- | --------------- | ---------------------------------------------------- |
| **account**                                    | string          | UID da empresa                                       |
| **units**                                      | array\[string]  | UID das filiais                                      |
| **limit**                                      | integer         | Quantidade limite de resultados (paginação)          |
| **skip**                                       | integer         | Quantidade de resultados a serem pulados (paginação) |
| **template**<mark style="color:red;">\*</mark> | string(options) | Formatação do resultado da consulta                  |
| **templateOptions**                            | object          | Opções complementares à formatação do resultado      |
| **sort**                                       | string(options) | Ordenação dos resultados                             |
| **status**                                     | string(options) | Filtro de status das posições                        |
| **dates**                                      | object          | Filtro de resultado por data                         |

{% hint style="warning" %}
Um dos dois parâmetros,`account` ou `units,`deve ser enviado.

O máximo de resultados permitidos em uma requisição é 100. Caso o parâmetro `limit` não seja enviado, ele será definido como 100.
{% endhint %}

**Opções de sort**

```
"created", "-created", "updated", "-updated"
```

{% hint style="info" %}
As opções que contem o símbolo `-` no início, são utilizadas quando a ordenação desejada é decrescente.
{% endhint %}

**Opções de status**

```
"pending", "review", "validation", "completed",	"archived"
```

| Status     | Descrição                           |
| ---------- | ----------------------------------- |
| pending    | Posições pendentes de preenchimento |
| review     | Posições em correção após análise   |
| validation | Posições em análise                 |
| completed  | Posições preenchidas e validadas    |
| archived   | Posições arquivadas                 |

**Filtro por data**

| Chave             | Tipo   | Descrição                              |
| ----------------- | ------ | -------------------------------------- |
| **admissionDate** | object | Range da data de admissão do candidato |

**Range de datas**

| Chave                                       | Tipo   | Descrição   |
| ------------------------------------------- | ------ | ----------- |
| **start**<mark style="color:red;">\*</mark> | string | Data início |
| **end**<mark style="color:red;">\*</mark>   | string | Data fim    |

### Exemplo de requisição <a href="#exemplo-de-requisicao" id="exemplo-de-requisicao"></a>

```json
{
    "account": "2d9174c4-06b7-4956-a5dc-8824d8a2f49e",
    "limit": 100,
    "skip": 0,
    "template": "csv-v2.2",
    "sort": "-created",
    "status": [ "pending" ],
    "dates": {
       "admissionDate": {
           "start": "2020-09-01",
            "end": "2020-09-30"
        } 
    }
}
```
