Skip to content

CompartilhamentoController

Gerencia o compartilhamento de uma safra com outra API Key. Todas as requisições exigem X-API-ACCESS-KEY e X-API-SECRET-KEY.

POST /compartilhamento

Cria o compartilhamento. Informe safraId ou safraCodigo para localizar a safra e accessKey para identificar a API Key destinatária. A safra precisa pertencer à API Key autenticada.

curl --request POST \
  --url https://<url>/compartilhamento \
  --header 'X-API-ACCESS-KEY: <chave_de_acesso>' \
  --header 'X-API-SECRET-KEY: <chave_de_seguranca>' \
  --header 'Content-Type: application/json' \
  --data '{
    "safraId": "<id_safra>",
    "safraCodigo": "<codigo_safra>",
    "ativo": true,
    "faseId": "<id_fase_opcional>",
    "accessKey": "<access_key_destinataria>"
  }'

O controller retorna 200 OK sem corpo. A API Key destinatária é armazenada no compartilhamento; o secretKey nunca é serializado nas respostas.

GET /compartilhamento

Lista os compartilhamentos em uma página. Parâmetros opcionais: page (iniciando em zero), size (padrão 10) e sort (padrão safraId).

{
  "content": [
    {
      "id": 1,
      "safraId": "<id_safra>",
      "ativo": true,
      "faseId": "<id_fase>",
      "createdAt": "2026-01-15T10:00:00",
      "apiKey": {
        "id": 2,
        "accessKey": "<access_key_destinataria>",
        "perfil": "USER",
        "description": "<descricao>",
        "permissions": "<permissoes>",
        "active": true,
        "nome": "<nome>",
        "registro": "<registro>",
        "eori": "<eori>",
        "email": "<email>",
        "telefone": "<telefone>",
        "endereco": "<endereco>",
        "cidade": "<cidade>",
        "estado": "<estado>",
        "cep": "<cep>",
        "pais": "<pais>"
      }
    }
  ],
  "pageable": {},
  "totalElements": 1,
  "totalPages": 1,
  "size": 10,
  "number": 0,
  "first": true,
  "last": true,
  "numberOfElements": 1,
  "empty": false
}

PUT /compartilhamento

Atualiza somente o status do compartilhamento.

{
  "id": 1,
  "ativo": false
}

id é obrigatório. O retorno é 200 OK sem corpo.

DELETE /compartilhamento/{id}

Exclui o compartilhamento pelo ID numérico (Long) e retorna 200 OK sem corpo.

Erros

Falhas de negócio retornam 400 Bad Request, por exemplo quando a safra não existe, não pertence à API Key autenticada ou a API Key destinatária não é encontrada.

FSTec Logo

© 2025 FSTec — Todos os direitos reservados.