curl --request POST 'https://gyra-core.gyramais.com.br/v1/collections/6612a7f30000000000000001/cancel' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{"reason":"Operação desistida pelo cliente."}'const resposta = await fetch("https://gyra-core.gyramais.com.br/v1/collections/6612a7f30000000000000001/cancel", {
method: "POST",
headers: {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"reason": "Operação desistida pelo cliente."
}),
});
const dados = await resposta.json();
import requests
resposta = requests.post(
"https://gyra-core.gyramais.com.br/v1/collections/6612a7f30000000000000001/cancel",
headers={"Authorization": f"Bearer {token}"},
json={
"reason": "Operação desistida pelo cliente."
},
)
dados = resposta.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gyra-core.gyramais.com.br/v1/collections/{id}/cancel",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'reason' => 'Operação desistida pelo cliente.'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://gyra-core.gyramais.com.br/v1/collections/{id}/cancel"
payload := strings.NewReader("{\n \"reason\": \"Operação desistida pelo cliente.\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://gyra-core.gyramais.com.br/v1/collections/{id}/cancel")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"reason\": \"Operação desistida pelo cliente.\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://gyra-core.gyramais.com.br/v1/collections/{id}/cancel")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"reason\": \"Operação desistida pelo cliente.\"\n}"
response = http.request(request)
puts response.read_body{
"id": "6612a7f30000000000000051",
"registryId": "6612a7f30000000000000001",
"templateSlug": "onboarding-pj",
"templateName": "Onboarding PJ",
"status": "CANCELED",
"canceledAt": "2026-09-06T10:02:00.000Z",
"subjectName": "AURORA COMPONENTES INDUSTRIAIS LTDA",
"subjectDocument": "11444777000161",
"itemsTotal": 5,
"itemsResolved": 3,
"itemsAwaitingOperator": 0
}{
"code": 400,
"message": "reason must be shorter than or equal to 500 characters"
}{
"code": 401,
"message": "Token de acesso inválido."
}{
"code": 403,
"message": "Você não tem permissão para acessar este recurso."
}{
"code": 404,
"message": "Solicitação não encontrada."
}{
"code": 409,
"message": "Esta solicitação já está encerrada."
}{
"code": 500,
"message": "Internal server error"
}{
"code": 502,
"message": "Não foi possível cancelar a solicitação."
}Cancelar Solicitação
A operação caiu, ou o pedido foi criado errado.
curl --request POST 'https://gyra-core.gyramais.com.br/v1/collections/6612a7f30000000000000001/cancel' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{"reason":"Operação desistida pelo cliente."}'const resposta = await fetch("https://gyra-core.gyramais.com.br/v1/collections/6612a7f30000000000000001/cancel", {
method: "POST",
headers: {
Authorization: `Bearer ${token}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"reason": "Operação desistida pelo cliente."
}),
});
const dados = await resposta.json();
import requests
resposta = requests.post(
"https://gyra-core.gyramais.com.br/v1/collections/6612a7f30000000000000001/cancel",
headers={"Authorization": f"Bearer {token}"},
json={
"reason": "Operação desistida pelo cliente."
},
)
dados = resposta.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://gyra-core.gyramais.com.br/v1/collections/{id}/cancel",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'reason' => 'Operação desistida pelo cliente.'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://gyra-core.gyramais.com.br/v1/collections/{id}/cancel"
payload := strings.NewReader("{\n \"reason\": \"Operação desistida pelo cliente.\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://gyra-core.gyramais.com.br/v1/collections/{id}/cancel")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"reason\": \"Operação desistida pelo cliente.\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://gyra-core.gyramais.com.br/v1/collections/{id}/cancel")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"reason\": \"Operação desistida pelo cliente.\"\n}"
response = http.request(request)
puts response.read_body{
"id": "6612a7f30000000000000051",
"registryId": "6612a7f30000000000000001",
"templateSlug": "onboarding-pj",
"templateName": "Onboarding PJ",
"status": "CANCELED",
"canceledAt": "2026-09-06T10:02:00.000Z",
"subjectName": "AURORA COMPONENTES INDUSTRIAIS LTDA",
"subjectDocument": "11444777000161",
"itemsTotal": 5,
"itemsResolved": 3,
"itemsAwaitingOperator": 0
}{
"code": 400,
"message": "reason must be shorter than or equal to 500 characters"
}{
"code": 401,
"message": "Token de acesso inválido."
}{
"code": 403,
"message": "Você não tem permissão para acessar este recurso."
}{
"code": 404,
"message": "Solicitação não encontrada."
}{
"code": 409,
"message": "Esta solicitação já está encerrada."
}{
"code": 500,
"message": "Internal server error"
}{
"code": 502,
"message": "Não foi possível cancelar a solicitação."
}Quando usar
A operação caiu, ou o pedido foi criado errado. Os links param de funcionar e nenhum lembrete sai. O motivo fica na trilha.Authorizations
Enter JWT token
Path Parameters
Id da solicitacao.
Body
Motivo do cancelamento.
Response
O detalhe da solicitacao, ja em CANCELED (mesmo corpo de GET /v1/collections/{id}).
Uma solicitacao de coleta com itens, destinatarios e trilha.
DRAFT, SENT, IN_PROGRESS, COMPLETED, EXPIRED, CANCELED AUTOMATIC, REVIEW NONE: a plataforma nao avisou ninguem e quem entrega o link e voce.
WHATSAPP, EMAIL, BOTH, NONE Dias apos o envio.
O comportamento herdado do modelo.
Recado do operador ao destinatario.
Resumo do cadastro alvo, para evitar uma segunda chamada.
Hide child attributes
Hide child attributes
DOCUMENT, IDENTITY, CONSENT, SIGNATURE, FORM, CUSTOM CONTRATO_SOCIAL, ALTERACAO_CONTRATUAL, ESTATUTO_SOCIAL, REQUERIMENTO_EMPRESARIO, ATA_ASSEMBLEIA, PROCURACAO_PJ, CERTIDAO_JUNTA, CERTIDAO_QSA, IRPJ_ECF, DECLARACAO_FATURAMENTO, CERTIFICADO_SIMPLES_NACIONAL, DEMONSTRACOES_FINANCEIRAS, EXTRATO_BANCARIO, CERTIDAO_PGFN_PJ, CERTIDAO_FGTS, CADIN_FEDERAL, CADIN_ESTADUAL, ESOCIAL_PJ, DOC_IDENTIDADE, COMPROVANTE_RESIDENCIA, DIRPF, COMPROVANTE_RENDA, CERTIDAO_PF, PROCURACAO_PF, COMPROVACAO_ESTADO_CIVIL, FORA_DE_ESCOPO, NAO_IDENTIFICADO, null O que o destinatario le.
Regras da coleta para este item (recencia, formatos, metodos de identidade).
PENDING, ALREADY_ON_FILE, SUBMITTED, PROCESSING, VALIDATED, REJECTED, MANUAL_REVIEW, AWAITING_OPERATOR, WAIVED, EXPIRED O documento que este item gerou no cadastro.
VALIDO, INVALIDO, INCONCLUSIVO, ANALISE_MANUAL, null Motivo tecnico, para o operador.
Um por arquivo enviado, com o parecer de cada um. Vazio no item que ainda nao recebeu nada.
Hide child attributes
Hide child attributes
PENDING, ALREADY_ON_FILE, SUBMITTED, PROCESSING, VALIDATED, REJECTED, MANUAL_REVIEW, AWAITING_OPERATOR, WAIVED, EXPIRED VALIDO, INVALIDO, INCONCLUSIVO, ANALISE_MANUAL, null SCR, null O formulario pedido.
O que a extracao sugeriu.
O que a pessoa respondeu.
A avaliacao da verificacao em portugues (veredito, similaridade, prova de vida, sinais de antifraude). O payload cru do provedor NAO vem aqui.
Quantas imagens estao guardadas. Os enderecos saem por acao explicita, que fica na trilha.
INDIVIDUAL, JOINT SIGNATURE, SIGNATURE_AND_IDENTITY, null "2 de 4 assinaram", ja pronto.
Hide child attributes
Hide child attributes
Nome das partes obrigatorias que faltam.
Assinaram o texto e esperam a verificacao de identidade.
Partes sem contato para receber o link.
true quando a via em PDF pode nascer.
APPROVED, RESEND_REQUESTED, WAIVED, null Por que o item nasceu ALREADY_ON_FILE, em portugues.
true quando ha via assinada para baixar em GET /v1/collections/{id}/items/{itemId}/signed-document.
Quantos e-mails foram oferecidos para a verificacao por e-mail (nunca quais).
Hide child attributes
Hide child attributes
E.164.
FAILED quer dizer que a MENSAGEM nao chegou. NO_ITEMS: nao sobrou item para essa pessoa.
PENDING, DELIVERED, OPENED, IN_PROGRESS, COMPLETED, FAILED, NO_ITEMS PENDING, SENT, DELIVERED, FAILED PENDING, SENT, DELIVERED, FAILED So volta na criacao e na reemissao. O token cru nunca e persistido.
A trilha, append-only. O detalhe traz os 100 eventos mais recentes.
Itens esperando decisao humana (AWAITING_OPERATOR ou MANUAL_REVIEW).

