API Docs Início Documentação Referência de API Copiar para LLM
PUT/v{version}/CreditNote/{id}/SignatureDetails
Crédito · Operação de crédito

Atualiza os detalhes da assinatura da operação

Atualiza por completo um registro de Credit Note existente.

Visão geral

Atualiza os detalhes da assinatura da operação. Permitido quando o status é Rascunho, Revisão ou Assinaturas.

Autenticação e pré-requisitos

Requer autenticação. Envie o token no header Authorization: Bearer {{token}} (JWT do AWS Cognito). Integrações servidor-a-servidor podem usar X-Api-Key. Todo tráfego é HTTPS e a credencial nunca vai na URL nem em query string.

Pré-requisitos: a rota exige identificador(es) de recurso já existente(s):

Request

Parâmetros

NomeEmTipoObrigatórioDescriçãoExemplo
idpathstring (uuid)obrigatórioId da operação de crédito3fa85f64-5717-4562-b3fc-2c963f66afa6
versionpathstringobrigatório1

Corpo da requisição

Envie no formato application/json. Corpo opcional.

Campos

CampoTipoObrigatórioDescriçãoValoresExemplo
signatureDetailsarray de objetoopcionalDetalhes da assinatura eletrônicaobjeto — ver detalhe abaixo[ … ]
unicoSignScorenumber (double)opcionalScore na Unico1000
facialSimilarityScorenumber (double)opcionalScore de similaridade facial na Unico Cloud1000

Detalhe de signatureDetails

CampoTipoObrigatórioDescriçãoValoresExemplo
registrationNumberstringopcional"12345678909"
userAgentstringopcional"texto"
ipstringopcional"texto"
geoLocationstringopcional"texto"
operationalSystemstringopcional"texto"
deviceModelstringopcional"texto"
deviceNamestringopcional"Fulano de Tal"
deviceTypestringopcional"texto"
smsValidationbooleanopcionaltrue
emailValidationbooleanopcionaltrue

Exemplo de corpo

{
  "signatureDetails": [
    {
      "registrationNumber": "12345678909",
      "userAgent": "texto",
      "ip": "texto",
      "geoLocation": "texto",
      "operationalSystem": "texto",
      "deviceModel": "texto",
      "deviceName": "Fulano de Tal",
      "deviceType": "texto",
      "smsValidation": true,
      "emailValidation": true
    }
  ],
  "unicoSignScore": 1000,
  "facialSimilarityScore": 1000
}

Response

Resposta 204 sem corpo (Atualização realizada com sucesso).

Códigos de retorno

CódigoSignificadoDetalhe do contrato
204Sucesso sem corpo de resposta.Atualização realizada com sucesso
400Requisição inválida (validação de campos ou regra de negócio).Modelo inválido
401Não autenticado — token ausente, inválido ou expirado.Não autorizado
403Autenticado, mas sem permissão para o recurso.Acesso negado
404Recurso não encontrado.Operação não encontrada

Exemplos

curl -X PUT "{{baseUrl}}/v1/CreditNote/3fa85f64-5717-4562-b3fc-2c963f66afa6/SignatureDetails" \
  -H "Authorization: Bearer {{token}}" \
  -H "Content-Type: application/json" \
  -d '{
  "signatureDetails": [
    {
      "registrationNumber": "12345678909",
      "userAgent": "texto",
      "ip": "texto",
      "geoLocation": "texto",
      "operationalSystem": "texto",
      "deviceModel": "texto",
      "deviceName": "Fulano de Tal",
      "deviceType": "texto",
      "smsValidation": true,
      "emailValidation": true
    }
  ],
  "unicoSignScore": 1000,
  "facialSimilarityScore": 1000
}'
var baseUrl = "{{baseUrl}}";
var token   = "{{token}}";

using var http = new HttpClient { BaseAddress = new Uri(baseUrl) };
http.DefaultRequestHeaders.Authorization =
    new AuthenticationHeaderValue("Bearer", token);

var rota = "/v1/CreditNote/3fa85f64-5717-4562-b3fc-2c963f66afa6/SignatureDetails";

var corpo = new StringContent(
    """
    {
      "signatureDetails": [
        {
          "registrationNumber": "12345678909",
          "userAgent": "texto",
          "ip": "texto",
          "geoLocation": "texto",
          "operationalSystem": "texto",
          "deviceModel": "texto",
          "deviceName": "Fulano de Tal",
          "deviceType": "texto",
          "smsValidation": true,
          "emailValidation": true
        }
      ],
      "unicoSignScore": 1000,
      "facialSimilarityScore": 1000
    }
    """,
    Encoding.UTF8, "application/json");

var resp = await http.PutAsync(rota, corpo);
resp.EnsureSuccessStatusCode();
// Sem corpo de resposta neste endpoint.
const baseUrl = '{{baseUrl}}';
const token   = '{{token}}';

const payload = {
  "signatureDetails": [
    {
      "registrationNumber": "12345678909",
      "userAgent": "texto",
      "ip": "texto",
      "geoLocation": "texto",
      "operationalSystem": "texto",
      "deviceModel": "texto",
      "deviceName": "Fulano de Tal",
      "deviceType": "texto",
      "smsValidation": true,
      "emailValidation": true
    }
  ],
  "unicoSignScore": 1000,
  "facialSimilarityScore": 1000
};

const resp = await fetch(`${baseUrl}/v1/CreditNote/3fa85f64-5717-4562-b3fc-2c963f66afa6/SignatureDetails`, {
  method: 'PUT',
  headers: {
    'Authorization': `Bearer ${token}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify(payload),
});

if (!resp.ok) throw new Error(`HTTP ${resp.status}`);
// Sem corpo de resposta neste endpoint.

Troque apenas {{baseUrl}} e {{token}}. No Postman, defina-os como variáveis de environment; o cURL importa em Import > Raw text.

Downloads

Este endpoint já vem configurado nas collections abaixo, na pasta da etapa correspondente.

Guia de importação: Como importar no Postman · Todos os downloads: Downloads