> ## Documentation Index
> Fetch the complete documentation index at: https://bmpdocs.moneyp.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Cadastro de vínculo

> Após o recebimento do callback de Consulta de Dados de Vínculo Empregatício (retornado a partir da requisição do passo anterior), o parceiro deve realizar o cadastro do trabalhador no sistema da BMP. Este cadastro é necessário para viabilizar a geração do contrato e a continuidade do fluxo de contratação.

<ResponseExample>
  ```text 200 theme={null}
  {
  	"mensagem": "Trabalhador criado; Empregador atualizado; Vínculo criado com sucesso."
  }
  ```
</ResponseExample>

<RequestExample>
  ```text Exemplo de requisição theme={null}
  curl --location --request POST 'https://econsignadotrabalhador.moneyp.dev.br/trabalhador/cadastrar-vinculo' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer {token}' \
  --data-raw '{
  	"cpf": "string", 
  	"matricula": "string", 
  	"codigoInscricaoEmpregador": 0,
  	"numeroInscricaoEmpregador": "string",
  	"nomeEmpregador": "string",
  	"nome": "string", 
  	"sexo": "string", 
  	"dataNascimento": "dd-mm-aaaa", 
  	"codigoCategoriaTrabalhador": 101, 
  	"elegivel": true, 
  	"valorTotalVencimentos": 0,
  	"valorBaseMargem": 0, 
  	"valorMargemDisponivel": 0, 
  	"dataAdmissao": "dd-mm-aaaa", 
  	"pessoaExpostaPoliticamente": 0,
  	"nomeMae": "string",
  	"paisNacionalidade": "string",
  	"cboDescricao": "string",
  	"dadosContato": {
  		"email": "string",
  		"telefoneCelular1": "string",
  		"telefoneFixo1": "string"
  	},
  	"dadosComplementares": {
  		"estadoCivil": 0,
  		"rg": "string",
  		"rgOrgao": "string",
  		"rgUf": "string"
  	},
  	"endereco": {
  		"cep": "string",
  		"logradouro": "string",
  		"nroLogradouro": "string",
  		"bairro": "string",
  		"cidade": "string",
  		"uf": "string"
  	}
  }'
  ```
</RequestExample>

## Endpoint

**POST** `/trabalhador/cadastrar-vinculo`

## Regras

* Dados do vínculo previamente consultados e validados.

## Descrição dos campos da Requisição

<AccordionGroup>
  <Accordion title="Dados do Trabalhador e Vínculo">
    <ParamField path="cpf" type="string" required>
      CPF do trabalhador.
    </ParamField>

    <ParamField path="matricula" type="string" required>
      Matrícula do trabalhador no vínculo informado.
    </ParamField>

    <ParamField path="codigoInscricaoEmpregador" type="number" required>
      Tipo de inscrição do empregador (1 – CNPJ, 2 – CPF).
    </ParamField>

    <ParamField path="numeroInscricaoEmpregador" type="string" required>
      Número de inscrição do empregador.
    </ParamField>

    <ParamField path="nomeEmpregador" type="string" required>
      Nome do empregador.
    </ParamField>

    <ParamField path="nome" type="string" required>
      Nome completo do trabalhador.
    </ParamField>

    <ParamField path="sexo" type="string" required>
      Sexo do trabalhador (M para Masculino, F para Feminino).
    </ParamField>

    <ParamField path="dataNascimento" type="string" required>
      Data de nascimento no formato dd-MM-yyyy.
    </ParamField>

    <ParamField path="codigoCategoriaTrabalhador" type="number" required>
      Código da categoria do trabalhador.
    </ParamField>

    <ParamField path="elegivel" type="boolean" required>
      Indica se o trabalhador está elegível para contratação.
    </ParamField>

    <ParamField path="valorTotalVencimentos" type="number" required>
      Valor total da remuneração do trabalhador.
    </ParamField>

    <ParamField path="valorBaseMargem" type="number" required>
      Base de cálculo da margem consignável.
    </ParamField>

    <ParamField path="valorMargemDisponivel" type="number" required>
      Margem consignável disponível.
    </ParamField>

    <ParamField path="dataAdmissao" type="string" required>
      Data de admissão no vínculo (dd-MM-yyyy).
    </ParamField>

    <ParamField path="pessoaExpostaPoliticamente" type="boolean" required>
      Indicação de Pessoa Exposta Politicamente (PEP).
    </ParamField>
  </Accordion>

  <Accordion title="dadosContato">
    <ParamField path="email" type="string">
      Endereço de e-mail do trabalhador.
    </ParamField>

    <ParamField path="telefoneCelular1" type="string" required>
      Telefone celular do trabalhador.
    </ParamField>

    <ParamField path="telefoneFixo1" type="string">
      Telefone fixo do trabalhador.
    </ParamField>
  </Accordion>

  <Accordion title="dadosComplementares">
    <ParamField path="rg" type="string">
      Número do RG do trabalhador.
    </ParamField>

    <ParamField path="rgOrgao" type="string">
      Órgão emissor do RG.
    </ParamField>

    <ParamField path="rguf" type="string">
      UF emissora do RG.
    </ParamField>

    <ParamField path="estadoCivil" type="string">
      Estado civil do trabalhador.
    </ParamField>
  </Accordion>

  <Accordion title="endereco">
    <ParamField path="cep" type="string" required>
      CEP do endereço.
    </ParamField>

    <ParamField path="logradouro" type="string" required>
      Logradouro do endereço.
    </ParamField>

    <ParamField path="bairro" type="string" required>
      Bairro do endereço.
    </ParamField>

    <ParamField path="cidade" type="string" required>
      Cidade do endereço.
    </ParamField>

    <ParamField path="uf" type="string" required>
      UF do endereço.
    </ParamField>

    <ParamField path="nroLogradouro" type="string" required>
      Número do logradouro.
    </ParamField>

    <ParamField path="complemento" type="string" required>
      Complemento do endereço.
    </ParamField>
  </Accordion>
</AccordionGroup>

### Cadastro de empregador

Esta requisição é opcional e pode ser utilizada quando quiser complementar o cadastro do empregador com o endereço.

<AccordionGroup>
  <Accordion title="Exemplo de requisição">
    ```shellscript theme={null}
    curl --location --request POST 'https://econsignadotrabalhador.moneyp.dev.br/trabalhador/cadastrar-empregador' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer <token>' \
    --data '{
    	"nome": "string",
    	"numeroInscricaoEmpregador": "string",
    	"codigoInscricaoEmpregador": 0,
    	"Endereco": {
    		"CEP": "string",
    		"Logradouro": "string",
    		"NroLogradouro": "string",
    		"Bairro": "string",
    		"Cidade": "string",
    		"UF": "string"
    	}
    }'
    ```
  </Accordion>

  <Accordion title="Descrição dos campos da Requisição">
    <ResponseField name="nome" type="string" required>
      Razão social do empregador.
    </ResponseField>

    <ResponseField name="numeroInscricaoEmpregador" type="string" required>
      Documento federal do empregador.
    </ResponseField>

    <ResponseField name="codigoInscricaoEmpregador" type="string" required>
      * 1 Para CNPJ
      * 2 Para CPF
    </ResponseField>

    <ResponseField name="Endereco" type="object" required>
      Objeto com endereço do empregador.

      <ResponseField name="Endereco.CEP" type="string" required>
        CEP do endereço do empregador.
      </ResponseField>

      <ResponseField name="Endereco.Logradouro" type="string" required>
        Logradouro do endereço do empregador.
      </ResponseField>

      <ResponseField name="Endereco.NroLogradouro" type="string">
        Número do logradouro do endereço do empregador.
      </ResponseField>

      <ResponseField name="Endereco.Bairro" type="string" required>
        Bairro do endereço do empregador.
      </ResponseField>

      <ResponseField name="Endereco.Cidade" type="string" required>
        Logradouro do endereço do empregador.
      </ResponseField>

      <ResponseField name="Endereco.UF" type="string" required>
        UF do endereço do empregador.
      </ResponseField>
    </ResponseField>
  </Accordion>

  <Accordion title="Response">
    ```text theme={null}
    {
    	"mensagem": "Empregador e endereço cadastrados com sucesso! Contatos não informados"
    }
    ```
  </Accordion>
</AccordionGroup>

## Comportamento esperado

* Ambas as requisições possuem **resposta síncrona**;
* O trabalhador, empregador e o vínculo ficarão **registrados no sistema da BMP**.
