@lexnode/legal-data-sdk 1.18.0 → 1.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +54 -0
- package/dist/client.d.ts +6 -1
- package/dist/client.js +47 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.js +2 -0
- package/dist/types.d.ts +4 -1
- package/dist/webhooks.d.ts +9 -0
- package/package.json +2 -2
- package/schema.d.ts +390 -16
package/README.md
CHANGED
|
@@ -75,6 +75,7 @@ await lexnode.subscriptions.create({ tribunalAlias, processNumber, externalRef }
|
|
|
75
75
|
await lexnode.searchJobs.get(jobId);
|
|
76
76
|
await lexnode.events.list({ limit: 50 });
|
|
77
77
|
await lexnode.webhooks.endpoints.list();
|
|
78
|
+
await lexnode.webhooks.unsubscribedEventTypes();
|
|
78
79
|
await lexnode.usage.get();
|
|
79
80
|
```
|
|
80
81
|
|
|
@@ -160,6 +161,9 @@ A afirmação é sua: sem ela, um `POST` repetido cria um **segundo** recurso
|
|
|
160
161
|
endpoints para a mesma URL entregam cada evento em dobro, e o segredo do
|
|
161
162
|
primeiro fica órfão. Em toda outra rota o `requestId` é só rastreio.
|
|
162
163
|
|
|
164
|
+
A exceção é o `UPSTREAM_TIMEOUT` da leitura de um processo, que a política não
|
|
165
|
+
repete — ver [a seção da fonte lenta](#ler-um-processo-quando-a-fonte-está-lenta).
|
|
166
|
+
|
|
163
167
|
## Webhooks
|
|
164
168
|
|
|
165
169
|
```ts
|
|
@@ -252,6 +256,56 @@ if (desfecho.kind === "sync") {
|
|
|
252
256
|
}
|
|
253
257
|
```
|
|
254
258
|
|
|
259
|
+
## Ler um processo quando a fonte está lenta
|
|
260
|
+
|
|
261
|
+
A ficha (`processes.get`) vai à fonte processual quando o acervo não tem o
|
|
262
|
+
processo fresco; o retrato (`processes.snapshot`) vai sempre, e só recorre ao
|
|
263
|
+
acervo quando a fonte falha. A fonte às vezes leva perto de um minuto por
|
|
264
|
+
consulta. `waitSeconds` diz quanto o motor espera por ela: de 10 a 180
|
|
265
|
+
segundos, padrão 20 na API.
|
|
266
|
+
|
|
267
|
+
```ts
|
|
268
|
+
const { data, meta } = await lexnode.processes.get(numero, {
|
|
269
|
+
tribunalAlias: "api_publica_tjsp",
|
|
270
|
+
waitSeconds: 120,
|
|
271
|
+
});
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
**O prazo da chamada acompanha a espera.** Sem `timeoutMs` na chamada, o SDK
|
|
275
|
+
usa o maior entre o prazo do cliente e a espera mais 15 s: depois da fonte, a
|
|
276
|
+
ficha ainda espera até 10 s pelo resumo das publicações do processo, e o resto
|
|
277
|
+
é a rede. Com `waitSeconds: 120`, a chamada desiste aos 135 s, e não aos 30 s do
|
|
278
|
+
padrão; sem `waitSeconds`, o SDK conta a espera padrão da API, e a chamada
|
|
279
|
+
desiste aos 35 s. Um `timeoutMs` explícito sempre vence. O mesmo vale para a
|
|
280
|
+
chamada genérica (`request`) nessas duas rotas.
|
|
281
|
+
|
|
282
|
+
**O tempo esgotado não se repete sozinho.** `UPSTREAM_TIMEOUT` (504) nessas
|
|
283
|
+
duas leituras é lentidão da fonte, não ausência do processo, e a política de
|
|
284
|
+
retentativa não o repete: a espera já correu inteira, e repetir na hora a
|
|
285
|
+
dobraria diante da mesma fonte lenta. As outras recusas retentáveis seguem a
|
|
286
|
+
política. Para insistir, a decisão é sua — uma nova chamada com espera maior,
|
|
287
|
+
ou a vigília do processo (`watchProcess`), que consulta em segundo plano.
|
|
288
|
+
|
|
289
|
+
**`meta.partialIndex`: o processo veio de parte do índice.** Quando a fonte
|
|
290
|
+
responde com só parte do índice e o processo estava na parte que respondeu, ele
|
|
291
|
+
é servido, e `meta.partialIndex` diz quantas partes falharam (`shardsFailed`),
|
|
292
|
+
de quantas (`shardsTotal`, nulo quando a fonte não as contou) e se o prazo
|
|
293
|
+
interno dela estourou (`timedOut`). O processo servido é o que a fonte tem, mas
|
|
294
|
+
outra instância do mesmo número — outro grau — pode estar na parte que não
|
|
295
|
+
respondeu. A resposta parcial que não serve o processo — sem ele, ou com uma
|
|
296
|
+
instância diferente da que o acervo já guarda — é 502 `UPSTREAM_UNAVAILABLE`
|
|
297
|
+
retentável, nunca 404.
|
|
298
|
+
|
|
299
|
+
```ts
|
|
300
|
+
if (meta.partialIndex) {
|
|
301
|
+
// Outro grau deste número, se existir, pode não ter vindo.
|
|
302
|
+
}
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
**Agentes têm a espera deles.** No canal para agentes (MCP), as tools
|
|
306
|
+
`ler_processo` e `consultar_processo` escolhem a espera em `maxWaitSeconds`, na
|
|
307
|
+
mesma faixa e com padrão de 120 s; esse canal não passa pelo SDK.
|
|
308
|
+
|
|
255
309
|
## Frescor: o `total: 0` qualificado
|
|
256
310
|
|
|
257
311
|
Um resultado vazio não distingue sozinho "não existe" de "a fonte ainda não
|
package/dist/client.d.ts
CHANGED
|
@@ -10,7 +10,11 @@ export interface LexNodeClientOptions {
|
|
|
10
10
|
apiKey: string;
|
|
11
11
|
/** Sub-tenant padrão (`X-Office-Id`). Cada chamada pode trocá-lo ou omiti-lo. */
|
|
12
12
|
officeId?: string;
|
|
13
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* Prazo de cada chamada, em ms. Padrão: 30 s. A ficha e o retrato de um
|
|
15
|
+
* processo levam o maior entre este prazo e a espera pela fonte mais 15 s —
|
|
16
|
+
* `waitSeconds`, ou o padrão de 20 s da API quando ele falta.
|
|
17
|
+
*/
|
|
14
18
|
timeoutMs?: number;
|
|
15
19
|
/** Transporte alternativo — o `fetch` global é o padrão. */
|
|
16
20
|
fetch?: typeof globalThis.fetch;
|
|
@@ -90,6 +94,7 @@ export declare function createLexNodeClient(options: LexNodeClientOptions): {
|
|
|
90
94
|
};
|
|
91
95
|
deliveries: (query?: Query<"/v1/webhooks/deliveries", "get">, opts?: CallOptions) => Promise<LexNodeResult<"/v1/webhooks/deliveries", "get">>;
|
|
92
96
|
health: (opts?: CallOptions) => Promise<LexNodeResult<"/v1/webhooks/health", "get">>;
|
|
97
|
+
unsubscribedEventTypes: (opts?: CallOptions) => Promise<LexNodeResult<"/v1/webhooks/unsubscribed-event-types", "get">>;
|
|
93
98
|
};
|
|
94
99
|
};
|
|
95
100
|
export type LexNodeClient = ReturnType<typeof createLexNodeClient>;
|
package/dist/client.js
CHANGED
|
@@ -17,6 +17,24 @@ const IDEMPOTENT_METHODS = new Set(["get", "delete"]);
|
|
|
17
17
|
const REQUEST_ID_IDEMPOTENT_WRITES = new Set([
|
|
18
18
|
"post /v1/publications/text-searches",
|
|
19
19
|
]);
|
|
20
|
+
/**
|
|
21
|
+
* As leituras de UM processo em que quem chama escolhe, em `waitSeconds`,
|
|
22
|
+
* quanto o motor espera pela fonte processual.
|
|
23
|
+
*/
|
|
24
|
+
const SOURCE_WAIT_ROUTES = new Set([
|
|
25
|
+
"get /v1/processes/{processNumber}",
|
|
26
|
+
"get /v1/processes/{processNumber}/snapshot",
|
|
27
|
+
]);
|
|
28
|
+
/**
|
|
29
|
+
* A espera que o motor aplica a essas leituras quando a chamada não traz
|
|
30
|
+
* `waitSeconds`: o padrão do parâmetro no contrato.
|
|
31
|
+
*/
|
|
32
|
+
const SOURCE_WAIT_API_DEFAULT_SECONDS = 20;
|
|
33
|
+
/**
|
|
34
|
+
* O que a chamada espera além da espera do motor: na ficha, até 10 s de
|
|
35
|
+
* enriquecimento depois da fonte, e a rede.
|
|
36
|
+
*/
|
|
37
|
+
const SOURCE_WAIT_MARGIN_MS = 15_000;
|
|
20
38
|
/** O que um valor de cabeçalho não pode conter: `fetch` recusa montá-lo. */
|
|
21
39
|
const FORBIDDEN_HEADER_CHARS = /[\r\n\0]/u;
|
|
22
40
|
/** Hosts em que falar claro é desenvolvimento, não credencial exposta. */
|
|
@@ -87,6 +105,23 @@ function appendQuery(url, query) {
|
|
|
87
105
|
}
|
|
88
106
|
}
|
|
89
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* O prazo da chamada que não trouxe `timeoutMs` próprio.
|
|
110
|
+
*
|
|
111
|
+
* Numa leitura que espera pela fonte, o motor pode levar a espera inteira
|
|
112
|
+
* antes de responder — a de `waitSeconds` ou, sem ele, a padrão da API: o
|
|
113
|
+
* prazo cobre essa espera mais a margem e nunca fica abaixo do prazo do
|
|
114
|
+
* cliente. Nas outras rotas, vale o prazo do cliente.
|
|
115
|
+
*/
|
|
116
|
+
function defaultCallTimeoutMs(method, path, query, clientTimeoutMs) {
|
|
117
|
+
if (!SOURCE_WAIT_ROUTES.has(`${method} ${path}`))
|
|
118
|
+
return clientTimeoutMs;
|
|
119
|
+
const requested = Number(query?.waitSeconds);
|
|
120
|
+
const waitSeconds = Number.isFinite(requested) && requested > 0
|
|
121
|
+
? requested
|
|
122
|
+
: SOURCE_WAIT_API_DEFAULT_SECONDS;
|
|
123
|
+
return Math.max(clientTimeoutMs, waitSeconds * 1_000 + SOURCE_WAIT_MARGIN_MS);
|
|
124
|
+
}
|
|
90
125
|
/**
|
|
91
126
|
* Junta o prazo do cliente ao `signal` de quem chamou.
|
|
92
127
|
*
|
|
@@ -146,10 +181,19 @@ function sleep(ms, signal) {
|
|
|
146
181
|
* repetir é seguro. Uma escrita fora da lista só é repetida quando quem chama
|
|
147
182
|
* declara `idempotent: true` — quem conhece o próprio uso pode afirmar o que o
|
|
148
183
|
* contrato não afirma, mas a afirmação é dele, e explícita.
|
|
184
|
+
*
|
|
185
|
+
* O tempo esgotado da fonte (`UPSTREAM_TIMEOUT`) numa leitura que espera por
|
|
186
|
+
* ela não se repete: o motor já esperou tudo o que a chamada pediu, e repetir
|
|
187
|
+
* na hora dobra a espera diante da mesma fonte lenta. As demais recusas
|
|
188
|
+
* retentáveis dessas leituras seguem a política.
|
|
149
189
|
*/
|
|
150
190
|
function mayRetry(error, method, path, options) {
|
|
151
191
|
if (!(error instanceof LexNodeError) || !error.retryable)
|
|
152
192
|
return false;
|
|
193
|
+
if (error.code === "UPSTREAM_TIMEOUT" &&
|
|
194
|
+
SOURCE_WAIT_ROUTES.has(`${method} ${path}`)) {
|
|
195
|
+
return false;
|
|
196
|
+
}
|
|
153
197
|
if (IDEMPOTENT_METHODS.has(method))
|
|
154
198
|
return true;
|
|
155
199
|
if (options.idempotent === true)
|
|
@@ -212,7 +256,8 @@ export function createLexNodeClient(options) {
|
|
|
212
256
|
catch (error) {
|
|
213
257
|
throw LexNodeError.invalidRequest("O corpo da chamada não é serializável em JSON.", error);
|
|
214
258
|
}
|
|
215
|
-
const timeoutMs = args.timeoutMs ??
|
|
259
|
+
const timeoutMs = args.timeoutMs ??
|
|
260
|
+
defaultCallTimeoutMs(String(method), String(path), bag.params?.query, defaultTimeoutMs);
|
|
216
261
|
const link = linkAbort(timeoutMs, args.signal);
|
|
217
262
|
let response;
|
|
218
263
|
let raw;
|
|
@@ -425,6 +470,7 @@ export function createLexNodeClient(options) {
|
|
|
425
470
|
...opts,
|
|
426
471
|
}),
|
|
427
472
|
health: (opts = {}) => request("/v1/webhooks/health", "get", { ...opts }),
|
|
473
|
+
unsubscribedEventTypes: (opts = {}) => request("/v1/webhooks/unsubscribed-event-types", "get", { ...opts }),
|
|
428
474
|
},
|
|
429
475
|
};
|
|
430
476
|
}
|
package/dist/errors.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import type { RateLimitSnapshot } from "./types.js";
|
|
|
9
9
|
* os dois por literal redigitado descobre o engano em produção. A lista é
|
|
10
10
|
* fechada para o que se conhece e aberta para o que vier (ver `LexNodeError`).
|
|
11
11
|
*/
|
|
12
|
-
export declare const LEXNODE_ERROR_CODES: readonly ["INVALID_MONITOR", "TRIBUNAL_NOT_SUPPORTED", "VALIDATION_ERROR", "UNAUTHORIZED", "QUOTA_EXCEEDED", "INSUFFICIENT_SCOPE", "LGPD_FORBIDDEN", "PLAN_FEATURE_NOT_INCLUDED", "SANDBOX_UPSTREAM_DISABLED", "MOVEMENTS_NOT_AVAILABLE", "PRECEDENT_NOT_FOUND", "PROCESS_NOT_FOUND", "RESOURCE_NOT_FOUND", "RESOURCE_CONFLICT", "QUERY_TOO_BROAD", "RATE_LIMITED", "UPSTREAM_RATE_LIMITED", "INTERNAL_ERROR", "UPSTREAM_UNAVAILABLE", "DATABASE_TIMEOUT", "DATABASE_UNAVAILABLE", "SYNC_ABANDONED", "UPSTREAM_TIMEOUT", "ACCOUNT_SUSPENDED", "ENTITLEMENT_EXPIRED", "PROJECT_DISABLED", "SUBSCRIPTION_INACTIVE", "MONITOR_ALREADY_EXISTS", "MONITOR_NOT_FOUND", "SEARCH_JOB_NOT_FOUND", "PUBLICATION_NOT_FOUND", "EVENT_NOT_FOUND", "TEXT_ALERT_NOT_FOUND", "TEXT_SEARCH_NOT_FOUND", "CLIENT_TIMEOUT", "CLIENT_NETWORK_ERROR", "CLIENT_INVALID_REQUEST", "CLIENT_MISSING_PATH_PARAM", "INVALID_RESPONSE", "SEARCH_JOB_BUDGET_EXCEEDED", "PAGINATION_LIMIT_REACHED"];
|
|
12
|
+
export declare const LEXNODE_ERROR_CODES: readonly ["INVALID_MONITOR", "TRIBUNAL_NOT_SUPPORTED", "PERSONAL_DOCUMENT_QUERY_NOT_ALLOWED", "VALIDATION_ERROR", "UNAUTHORIZED", "QUOTA_EXCEEDED", "INSUFFICIENT_SCOPE", "LGPD_FORBIDDEN", "PLAN_FEATURE_NOT_INCLUDED", "SUB_TENANT_LIMIT_EXCEEDED", "SANDBOX_UPSTREAM_DISABLED", "MOVEMENTS_NOT_AVAILABLE", "PRECEDENT_NOT_FOUND", "PROCESS_NOT_FOUND", "RESOURCE_NOT_FOUND", "RESOURCE_CONFLICT", "QUERY_TOO_BROAD", "RATE_LIMITED", "UPSTREAM_RATE_LIMITED", "INTERNAL_ERROR", "UPSTREAM_UNAVAILABLE", "DATABASE_TIMEOUT", "DATABASE_UNAVAILABLE", "SYNC_ABANDONED", "UPSTREAM_TIMEOUT", "ACCOUNT_SUSPENDED", "ENTITLEMENT_EXPIRED", "PROJECT_DISABLED", "SUBSCRIPTION_INACTIVE", "MONITOR_ALREADY_EXISTS", "MONITOR_NOT_FOUND", "SEARCH_JOB_NOT_FOUND", "PUBLICATION_NOT_FOUND", "EVENT_NOT_FOUND", "TEXT_ALERT_NOT_FOUND", "TEXT_SEARCH_NOT_FOUND", "CLIENT_TIMEOUT", "CLIENT_NETWORK_ERROR", "CLIENT_INVALID_REQUEST", "CLIENT_MISSING_PATH_PARAM", "INVALID_RESPONSE", "SEARCH_JOB_BUDGET_EXCEEDED", "PAGINATION_LIMIT_REACHED"];
|
|
13
13
|
/**
|
|
14
14
|
* Um código conhecido — ou qualquer outro.
|
|
15
15
|
*
|
package/dist/errors.js
CHANGED
|
@@ -11,12 +11,14 @@
|
|
|
11
11
|
export const LEXNODE_ERROR_CODES = [
|
|
12
12
|
"INVALID_MONITOR",
|
|
13
13
|
"TRIBUNAL_NOT_SUPPORTED",
|
|
14
|
+
"PERSONAL_DOCUMENT_QUERY_NOT_ALLOWED",
|
|
14
15
|
"VALIDATION_ERROR",
|
|
15
16
|
"UNAUTHORIZED",
|
|
16
17
|
"QUOTA_EXCEEDED",
|
|
17
18
|
"INSUFFICIENT_SCOPE",
|
|
18
19
|
"LGPD_FORBIDDEN",
|
|
19
20
|
"PLAN_FEATURE_NOT_INCLUDED",
|
|
21
|
+
"SUB_TENANT_LIMIT_EXCEEDED",
|
|
20
22
|
"SANDBOX_UPSTREAM_DISABLED",
|
|
21
23
|
"MOVEMENTS_NOT_AVAILABLE",
|
|
22
24
|
"PRECEDENT_NOT_FOUND",
|
package/dist/types.d.ts
CHANGED
|
@@ -150,7 +150,10 @@ export interface CallOptions {
|
|
|
150
150
|
officeId?: string | null;
|
|
151
151
|
/** Aborta a chamada. É COMBINADO com o prazo, nunca o substitui. */
|
|
152
152
|
signal?: AbortSignal;
|
|
153
|
-
/**
|
|
153
|
+
/**
|
|
154
|
+
* Prazo desta chamada, em ms. Vence o do construtor e o que o cliente
|
|
155
|
+
* calcula para a ficha e o retrato de um processo a partir da espera.
|
|
156
|
+
*/
|
|
154
157
|
timeoutMs?: number;
|
|
155
158
|
/**
|
|
156
159
|
* `X-Request-Id`. Cunhado quando ausente.
|
package/dist/webhooks.d.ts
CHANGED
|
@@ -127,6 +127,13 @@ export interface PublicationCreatedPayload {
|
|
|
127
127
|
/** Só na vigília por nome de parte. */
|
|
128
128
|
partyName?: string;
|
|
129
129
|
partyRole?: string | null;
|
|
130
|
+
/** Só na vigília por CNPJ: o literal vigiado — o documento pontuado
|
|
131
|
+
* inteiro, ou a raiz `NN.NNN.NNN` quando `includeBranches`. */
|
|
132
|
+
partyDocument?: string;
|
|
133
|
+
includeBranches?: boolean;
|
|
134
|
+
/** `document`: o CNPJ consta no teor — a empresa foi citada no ato, seja
|
|
135
|
+
* ou não parte. */
|
|
136
|
+
matchedBy?: "document";
|
|
130
137
|
}
|
|
131
138
|
export interface MonitorSyncSucceededPayload {
|
|
132
139
|
monitorId: string;
|
|
@@ -177,6 +184,8 @@ export interface MonitorSyncSucceededPayload {
|
|
|
177
184
|
refusedDays?: string[];
|
|
178
185
|
term?: string;
|
|
179
186
|
partyName?: string;
|
|
187
|
+
partyDocument?: string;
|
|
188
|
+
includeBranches?: boolean;
|
|
180
189
|
publicationsMatched?: number;
|
|
181
190
|
}
|
|
182
191
|
export interface MonitorSyncFailedPayload {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lexnode/legal-data-sdk",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Cliente TypeScript do LexNode, o motor de dados
|
|
3
|
+
"version": "1.24.0",
|
|
4
|
+
"description": "Cliente TypeScript do LexNode, o motor de dados jur\u00eddicos do Brasil: transporte tipado, erros classificados, verifica\u00e7\u00e3o de webhook e os tipos gerados do contrato OpenAPI.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://www.lexnode.com.br/docs",
|
|
7
7
|
"keywords": [
|
package/schema.d.ts
CHANGED
|
@@ -73,7 +73,7 @@ export interface paths {
|
|
|
73
73
|
};
|
|
74
74
|
/**
|
|
75
75
|
* Estado público do motor
|
|
76
|
-
* @description Estado operacional de cada capacidade, sem autenticação: é a página que se consulta antes de abrir chamado. Devolve estado, nunca volume — se uma capacidade está de pé, não quantas requisições ela serviu. `NO_SIGNAL` significa que não houve consulta à fonte na última hora, então não há o que medir. A resposta é cacheada por 30 segundos.
|
|
76
|
+
* @description Estado operacional de cada capacidade, sem autenticação: é a página que se consulta antes de abrir chamado. Devolve estado, nunca volume — se uma capacidade está de pé, não quantas requisições ela serviu. `NO_SIGNAL` significa que não houve consulta à fonte na última hora, então não há o que medir. Cada capacidade carrega também quando a fonte foi lida (`lastReadAt`) e, onde existe uma data de conteúdo para o acervo inteiro, até quando ela está lida (`readThrough`) — é com ela que se escreve "nada encontrado" sem confundir ausência com atraso. A resposta é cacheada por 30 segundos.
|
|
77
77
|
*/
|
|
78
78
|
get: operations["getPublicStatus"];
|
|
79
79
|
put?: never;
|
|
@@ -93,7 +93,7 @@ export interface paths {
|
|
|
93
93
|
};
|
|
94
94
|
/**
|
|
95
95
|
* Listar os tribunais suportados
|
|
96
|
-
* @description Retorna os tribunais suportados e, para cada um, as fontes que o servem em `sources`: o eixo de processo, o diário e, onde existe, o acervo de jurisprudência. A entrada do ramo `ADMINISTRATIVE` tem só o acervo — consulta de processo, busca e colheita no diário, vigília e calendário forense a recusam com `TRIBUNAL_NOT_SUPPORTED`. É daqui que sai a grafia aceita nas demais rotas, pela sigla (`code`) ou pelo apelido da fonte (`alias`); a chave que liga uma publicação ao catálogo é `code`.
|
|
96
|
+
* @description Retorna os tribunais suportados e, para cada um, as fontes que o servem em `sources`: o eixo de processo, o diário e, onde existe, o acervo de jurisprudência. A entrada do ramo `ADMINISTRATIVE` tem só o acervo — consulta de processo, busca e colheita no diário, vigília e calendário forense a recusam com `TRIBUNAL_NOT_SUPPORTED`. É daqui que sai a grafia aceita nas demais rotas, pela sigla (`code`) ou pelo apelido da fonte (`alias`); a chave que liga uma publicação ao catálogo é `code`. Cada entrada traz também `processIndex`: até quando o índice da fonte foi lido no eixo do processo daquele tribunal — a data com que se escreve "não encontrei" sem confundir ausência com atraso.
|
|
97
97
|
*
|
|
98
98
|
* **Escopo exigido na chave de API:** `TRIBUNALS_READ`
|
|
99
99
|
*/
|
|
@@ -115,7 +115,7 @@ export interface paths {
|
|
|
115
115
|
};
|
|
116
116
|
/**
|
|
117
117
|
* Calendário forense do tribunal
|
|
118
|
-
* @description Retorna os
|
|
118
|
+
* @description Retorna os dias em que o prazo não corre num tribunal dentro de uma janela de datas: os feriados nacionais, o Dia da Justiça (8/12) em todo tribunal, os feriados forenses que a lei federal dá à Justiça Federal e aos tribunais superiores, e que as justiças do Trabalho e Eleitoral adotam (segunda de Carnaval, Semana Santa de quarta a domingo, 11/8 e 1º/11), todos com `scope` NATIONAL, o recesso de fim de ano (art. 220 do CPC), os feriados estaduais da UF do tribunal e, com `municipalityIbgeCode`, os municipais da comarca. O tribunal vai em `court`, pela sigla (`court=TJSP`) ou pelo apelido da fonte; `tribunalAlias` continua aceito como sinônimo. A janela vai em `from`/`to`, no formato AAAA-MM-DD. Quando o tribunal transferiu um feriado por ato próprio e o motor conhece o ato, o feriado sai no dia que o ato fixa, com `transfer` dizendo de qual dia veio. `coverage` diz, camada a camada, o que esta resposta consultou.
|
|
119
119
|
*
|
|
120
120
|
* **Escopo exigido na chave de API:** `TRIBUNALS_READ`
|
|
121
121
|
*/
|
|
@@ -159,7 +159,7 @@ export interface paths {
|
|
|
159
159
|
};
|
|
160
160
|
/**
|
|
161
161
|
* Obter um processo pelo número
|
|
162
|
-
* @description Retorna o registro exato do processo para o tribunal e o número informados, com resolução cache-first quando disponível.
|
|
162
|
+
* @description Retorna o registro exato do processo para o tribunal e o número informados, com resolução cache-first quando disponível. `waitSeconds` escolhe quanto esperar pela fonte processual. Quando a fonte responde com parte do índice e o processo está na parte que respondeu, ele é servido e `meta.partialIndex` diz quantas partes falharam (`shardsFailed`), de quantas (`shardsTotal`) e se o prazo interno da fonte estourou (`timedOut`): outra instância do mesmo número, se existir, pode não ter vindo. A exceção é o processo que veio de uma instância diferente da que o acervo já guarda do número: a guardada pode estar na parte que não respondeu, e a resposta parcial não é servida. Resposta parcial que não serve o processo — sem ele, ou com a outra instância — é 502 `UPSTREAM_UNAVAILABLE` retentável, nunca 404.
|
|
163
163
|
*
|
|
164
164
|
* **Escopo exigido na chave de API:** `PROCESSES_READ`
|
|
165
165
|
*/
|
|
@@ -203,7 +203,7 @@ export interface paths {
|
|
|
203
203
|
};
|
|
204
204
|
/**
|
|
205
205
|
* Obter um snapshot vivo do processo
|
|
206
|
-
* @description Busca o hit exato do processo no upstream do CNJ e retorna o registro normalizado do processo, o payload bruto da fonte e as movimentações CNJ normalizadas.
|
|
206
|
+
* @description Busca o hit exato do processo no upstream do CNJ e retorna o registro normalizado do processo, o payload bruto da fonte e as movimentações CNJ normalizadas. `waitSeconds` escolhe quanto esperar pela fonte processual. Quando a fonte responde com parte do índice e o processo está na parte que respondeu, ele é servido e `meta.partialIndex` diz quantas partes falharam (`shardsFailed`), de quantas (`shardsTotal`) e se o prazo interno da fonte estourou (`timedOut`): outra instância do mesmo número, se existir, pode não ter vindo. A exceção é o processo que veio de uma instância diferente da que o acervo já guarda do número: a guardada pode estar na parte que não respondeu, e a resposta parcial não é servida. Resposta parcial que não serve o processo — sem ele, ou com a outra instância — é 502 `UPSTREAM_UNAVAILABLE` retentável, nunca 404.
|
|
207
207
|
*
|
|
208
208
|
* **Escopo exigido na chave de API:** `PROCESSES_READ`
|
|
209
209
|
*/
|
|
@@ -269,7 +269,7 @@ export interface paths {
|
|
|
269
269
|
};
|
|
270
270
|
/**
|
|
271
271
|
* Listar monitores
|
|
272
|
-
* @description Paginação keyset: passe em `cursor` o `meta.nextCursor` da resposta anterior. `officeScoped=true` restringe aos monitores atribuídos ao `X-Office-Id` da chamada. Os campos de alvo (`tribunalAlias`, `processNumber`, `oabNumber`, `oabState`, `term`, `partyName`) filtram pelo que o monitor vigia, nas mesmas grafias que a criação aceita — quem mantém um sensor por alvo pergunta pelo alvo em vez de paginar a conta inteira.
|
|
272
|
+
* @description Paginação keyset: passe em `cursor` o `meta.nextCursor` da resposta anterior. `officeScoped=true` restringe aos monitores atribuídos ao `X-Office-Id` da chamada. Os campos de alvo (`tribunalAlias`, `processNumber`, `oabNumber`, `oabState`, `term`, `partyName`, `partyDocument`) filtram pelo que o monitor vigia, nas mesmas grafias que a criação aceita — quem mantém um sensor por alvo pergunta pelo alvo em vez de paginar a conta inteira.
|
|
273
273
|
*
|
|
274
274
|
* **Escopo exigido na chave de API:** `MONITORS_READ`
|
|
275
275
|
*/
|
|
@@ -277,7 +277,7 @@ export interface paths {
|
|
|
277
277
|
put?: never;
|
|
278
278
|
/**
|
|
279
279
|
* Criar um monitor
|
|
280
|
-
* @description Cria um monitor PROCESS, OAB ou
|
|
280
|
+
* @description Cria um monitor PROCESS, OAB, TERM, PARTY ou DOCUMENT. O motor varre as fontes na própria agenda: monitor OAB emite `PUBLICATION_CREATED` a cada publicação nova do advogado; monitor TERM vigia a edição diária do diário por um termo livre (mínimo 5 caracteres — piso da fonte —, casamento por palavra inteira, varredura nacional) e emite `PUBLICATION_CREATED` — com o campo `term` no payload — para cada menção compartilhável nova; monitor PARTY vigia pelo nome de parte no cadastro da publicação e emite `PUBLICATION_CREATED` com `partyName` e `partyRole`; monitor DOCUMENT vigia pelo CNPJ no TEOR (`partyDocument`, nos 14 dígitos ou pontuado — normalizado para a grafia pontuada, a única que o teor escreve) e emite `PUBLICATION_CREATED` com `partyDocument`, `includeBranches` e `matchedBy: "document"` — a empresa foi citada no ato, seja ou não parte, o que alcança a decisão que manda citá-la antes de ela figurar nos destinatários; `includeBranches: true` vigia a raiz de 8 dígitos e alcança matriz e filiais (muda a contagem; nunca é o padrão). TERM, PARTY e DOCUMENT dividem a mesma vaga do plano. Monitor PROCESS emite `MONITOR_SYNC_SUCCEEDED` (com o campo `changed`) a cada varredura — cadência de 15 minutos, até 96 por dia por monitor, quase todos sem novidade — e `MONITOR_SYNC_FAILED` quando a varredura falha. Para ser notificado de movimentação nova de um processo, use POST /v1/subscriptions. **Vigília de aparição:** um monitor PROCESS cujo alvo a fonte ainda não indexou é aceito e fica esperando — `targetSeenAt: null` na resposta marca a espera, a varredura em espera emite `MONITOR_SYNC_SUCCEEDED` com `awaitingAppearance: true`, e a primeira aparição chega com `firstAppearance: true`. Informe `distributedAt` (AAAA-MM-DD, nunca no futuro; imutável depois de criado — corrigir a data é recriar o monitor) para a espera ter critério de parada: enquanto a data-limite do índice da fonte não alcança a data, o alvo nem é consultado; quando a ultrapassa com folga de 3 dias e nada apareceu, o monitor entra em ERROR — cadastro provavelmente errado — sem deixar de tentar. **Alvo já vigiado:** o monitor é único por alvo dentro da conta e do projeto, e o segundo pedido responde 409 `MONITOR_ALREADY_EXISTS` com `error.details.monitorId` — o id do que já está lá, para quem compõe sensor e assinatura seguir sem procurar na lista.
|
|
281
281
|
*
|
|
282
282
|
* **Escopo exigido na chave de API:** `MONITORS_WRITE`
|
|
283
283
|
*/
|
|
@@ -497,7 +497,7 @@ export interface paths {
|
|
|
497
497
|
};
|
|
498
498
|
/**
|
|
499
499
|
* Listar publicações
|
|
500
|
-
* @description Retorna as publicações que casam com os filtros informados. Uma consulta com escopo de processo é lake-first e incremental: a primeira busca faz a captura completa
|
|
500
|
+
* @description Retorna as publicações que casam com os filtros informados. Uma consulta com escopo de processo é lake-first e incremental: a primeira busca faz a captura completa na fonte e grava no data lake; as seguintes buscam apenas o delta desde a publicação mais recente conhecida e servem as linhas consolidadas do lake. `text`, `partyName`, `lawyerName` e `partyDocument` filtram na própria fonte; os matches de `text` são adicionalmente revalidados localmente com fronteira de palavra, então itens cujo conteúdo só casa por substring são descartados (`total` permanece a contagem reportada pela fonte). **Os três eixos de empresa se completam:** `partyName` casa por continência de palavras e acha as irmãs de uma família de razões sociais; `lawyerName` confirma quais pertencem ao mesmo grupo, porque o corpo de procuradores é compartilhado; `partyDocument` — o CNPJ nos 14 dígitos ou pontuado, normalizado para `NN.NNN.NNN/NNNN-NN` — casa o documento no TEOR e acha a empresa citada no ato (mandada citar, garantidora, penhorada) antes de ela figurar como parte. A reconfirmação local por documento é substring literal, e cada item assim casado vem com `matchedBy: "document"`; compare com `parties` para saber se a empresa já é parte. `includeBranches=true` busca pela raiz de 8 dígitos e alcança matriz e filiais — opção declarada, porque muda a contagem; nunca é o padrão. `partyDocument` não se combina com `text`. Um CPF em qualquer desses campos é recusado com `PERSONAL_DOCUMENT_QUERY_NOT_ALLOWED`. **Antes de concluir que uma publicação não existe, leia `sourceIndex.lastEditionDate`:** é a última edição do diário que o motor detectou no ar. O diário publica uma edição por dia útil, e `total: 0` sem a edição do dia detectada significa *ainda não saiu*, não *não existe*. A prova vale numa direção só: edição detectada NÃO garante o índice do dia completo — ele continua recebendo itens ao longo do dia, então um zero com a edição de hoje no ar ainda pode virar publicação horas depois. O campo acompanha toda resposta, sem custo adicional.
|
|
501
501
|
*
|
|
502
502
|
* **Escopo exigido na chave de API:** `PUBLICATIONS_READ`
|
|
503
503
|
*/
|
|
@@ -757,7 +757,7 @@ export interface paths {
|
|
|
757
757
|
};
|
|
758
758
|
/**
|
|
759
759
|
* Consultar o uso do projeto da API key atual
|
|
760
|
-
* @description Retorna o uso do período, os créditos restantes, métricas de uso agrupadas e os eventos de uso recentes da conta e do projeto autenticados. `byOffice` reparte o consumo pelos valores de `X-Office-Id` que as requisições informaram — é o recorte para repassar custo a sub-contas. A entrada com `officeId: null` reúne o que nenhuma requisição atribuiu mais o trabalho recorrente (varredura de monitor, entrega de webhook), então a soma das partes fecha com o total.
|
|
760
|
+
* @description Retorna o uso do período, os créditos restantes, métricas de uso agrupadas e os eventos de uso recentes da conta e do projeto autenticados. `byOffice` reparte o consumo pelos valores de `X-Office-Id` que as requisições informaram — é o recorte para repassar custo a sub-contas. A entrada com `officeId: null` reúne o que nenhuma requisição atribuiu mais o trabalho recorrente (varredura de monitor, entrega de webhook), então a soma das partes fecha com o total. `subTenantLimit` é quantos sub-tenants o plano admite por período (nulo é sem teto) e `subTenantsUsed` quantos já receberam requisição no período da conta inteira — um office novo além do teto é recusado com 403 `SUB_TENANT_LIMIT_EXCEEDED`; os já atendidos passam sempre.
|
|
761
761
|
*
|
|
762
762
|
* **Escopo exigido na chave de API:** `USAGE_READ`
|
|
763
763
|
*/
|
|
@@ -814,6 +814,28 @@ export interface paths {
|
|
|
814
814
|
patch?: never;
|
|
815
815
|
trace?: never;
|
|
816
816
|
};
|
|
817
|
+
"/v1/webhooks/unsubscribed-event-types": {
|
|
818
|
+
parameters: {
|
|
819
|
+
query?: never;
|
|
820
|
+
header?: never;
|
|
821
|
+
path?: never;
|
|
822
|
+
cookie?: never;
|
|
823
|
+
};
|
|
824
|
+
/**
|
|
825
|
+
* Tipos de evento que a conta produz e nenhum receptor assina
|
|
826
|
+
* @description Os tipos de evento que a conta produziu nos últimos 30 dias e que nenhum endpoint ativo assina — com a contagem, o último instante e a classe: `DATA` é o produto (movimentação, publicação, achado, busca ou colheita concluída) e `OPERATIONAL` é sinal sobre a operação (`MONITOR_SYNC_FAILED` e os avisos comerciais). Um evento nasce como registro mesmo sem assinante e fica disponível por 180 dias: para fechar a lacuna, assine o tipo no endpoint (`PATCH /v1/webhooks/endpoints/{endpointId}`) e reenvie a janela (`POST /v1/webhooks/endpoints/{endpointId}/replay`) — nada é assinado nem reenviado sozinho. `MONITOR_SYNC_SUCCEEDED` nunca aparece aqui: é o sinal de vida da vigília, sai a cada varredura e não assiná-lo é a escolha esperada. O endpoint suspenso pelo motor conta como assinante; o pausado pelo dono, não. Os tipos operacionais dispensados no portal vêm em `dismissed`. A lacuna é medida por conta: qualquer endpoint ativo da conta conta como assinante, independentemente do projeto a que ele se limite. Custa 0 créditos.
|
|
827
|
+
*
|
|
828
|
+
* **Escopo exigido na chave de API:** `EVENTS_READ`
|
|
829
|
+
*/
|
|
830
|
+
get: operations["listUnsubscribedEventTypes"];
|
|
831
|
+
put?: never;
|
|
832
|
+
post?: never;
|
|
833
|
+
delete?: never;
|
|
834
|
+
options?: never;
|
|
835
|
+
head?: never;
|
|
836
|
+
patch?: never;
|
|
837
|
+
trace?: never;
|
|
838
|
+
};
|
|
817
839
|
"/v1/events": {
|
|
818
840
|
parameters: {
|
|
819
841
|
query?: never;
|
|
@@ -925,7 +947,7 @@ export interface paths {
|
|
|
925
947
|
put?: never;
|
|
926
948
|
/**
|
|
927
949
|
* Disparar uma entrega de teste
|
|
928
|
-
* @description Envia na hora, de forma síncrona, uma entrega sintética assinada (type `WEBHOOK_TEST`) ao endpoint e responde com o resultado: alcançou o receptor? Qual status HTTP voltou? Nada é gravado na fila
|
|
950
|
+
* @description Envia na hora, de forma síncrona, uma entrega sintética assinada (type `WEBHOOK_TEST`) ao endpoint e responde com o resultado: alcançou o receptor? Qual status HTTP voltou? Nada é gravado na fila e nada conta como entrega: o desfecho fica carimbado no próprio receptor (`lastTestAt`, `lastTestStatus`, `lastTestError`, visíveis em `GET /v1/webhooks/endpoints` e `GET /v1/webhooks/health`), sem tocar na série de recusas nem na suspensão. É a forma de validar conectividade e verificação de assinatura antes do primeiro evento real. Endpoint de outra conta responde 404.
|
|
929
951
|
*
|
|
930
952
|
* **Escopo exigido na chave de API:** `WEBHOOKS_WRITE`
|
|
931
953
|
*/
|
|
@@ -1181,6 +1203,10 @@ export interface operations {
|
|
|
1181
1203
|
/** @enum {string} */
|
|
1182
1204
|
status: "OPERATIONAL" | "DEGRADED" | "OUTAGE" | "NO_SIGNAL";
|
|
1183
1205
|
detail: string;
|
|
1206
|
+
/** @description Quando esta capacidade leu a fonte com sucesso pela última vez, ISO. Nulo quando não houve leitura na janela medida — o que é silêncio, não queda. */
|
|
1207
|
+
lastReadAt: string | null;
|
|
1208
|
+
/** @description Até quando o conteúdo da fonte está lido, no recorte que a capacidade serve (AAAA-MM-DD). É a data com que se escreve 'nada encontrado' sem mentir: o que é posterior a ela ainda não chegou. Nulo na capacidade que não tem data de conteúdo para o acervo inteiro — ali a data vem com o recorte, na própria resposta da consulta. */
|
|
1209
|
+
readThrough: string | null;
|
|
1184
1210
|
}[];
|
|
1185
1211
|
};
|
|
1186
1212
|
};
|
|
@@ -1221,6 +1247,12 @@ export interface operations {
|
|
|
1221
1247
|
segment: number;
|
|
1222
1248
|
code: number;
|
|
1223
1249
|
} | null;
|
|
1250
|
+
processIndex: {
|
|
1251
|
+
/** Format: date-time */
|
|
1252
|
+
updatedThrough: string | null;
|
|
1253
|
+
/** Format: date-time */
|
|
1254
|
+
checkedAt: string;
|
|
1255
|
+
} | null;
|
|
1224
1256
|
}[];
|
|
1225
1257
|
meta: {
|
|
1226
1258
|
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
@@ -1456,6 +1488,13 @@ export interface operations {
|
|
|
1456
1488
|
label: string;
|
|
1457
1489
|
uf: string | null;
|
|
1458
1490
|
municipalityIbgeCode?: number;
|
|
1491
|
+
/** @description Presente quando o tribunal transferiu o feriado por ato próprio: date é o dia em que o tribunal o observa, fromDate o dia que a lei fixa (que não sai na lista), e act e url o ato e onde ele foi lido. */
|
|
1492
|
+
transfer?: {
|
|
1493
|
+
fromDate: string;
|
|
1494
|
+
act: string;
|
|
1495
|
+
/** Format: uri */
|
|
1496
|
+
url: string;
|
|
1497
|
+
};
|
|
1459
1498
|
}[];
|
|
1460
1499
|
coverage: {
|
|
1461
1500
|
/** @enum {string} */
|
|
@@ -2002,6 +2041,8 @@ export interface operations {
|
|
|
2002
2041
|
query: {
|
|
2003
2042
|
tribunalAlias: string;
|
|
2004
2043
|
since?: unknown;
|
|
2044
|
+
/** @description Quanto esperar pela fonte processual quando o processo precisa ser buscado nela, em segundos: de 10 a 180, padrão 20. É o teto da consulta à fonte: ela às vezes leva até ~60 s por consulta, cada ida a ela espera no máximo 60 s, e a segunda ida só sai depois de uma recusa por volume ou de um erro da fonte, nunca depois de tempo esgotado. Depois dela, a ficha ainda espera até 10 s pelo resumo das publicações do processo. Tempo esgotado é 504 `UPSTREAM_TIMEOUT` (lentidão, não ausência). Dê ao seu cliente HTTP um tempo limite que cubra a espera, esses segundos da ficha e a rede: no padrão, mais de 30 s. */
|
|
2045
|
+
waitSeconds?: number;
|
|
2005
2046
|
};
|
|
2006
2047
|
header?: {
|
|
2007
2048
|
/** @description Identificador da requisição escolhido pelo cliente, ecoado em meta.requestId e no corpo de erro. Tem DOIS papéis: (1) rastreio, em toda rota — é por ele que o suporte encontra a chamada; (2) idempotência por conta em POST /v1/publications/text-searches e POST /v1/search-jobs, onde reenviar o mesmo valor reapresenta o resultado já produzido, sem nova cobrança. Fora dessas duas rotas o valor não deduplica nada: para repetir uma chamada de propósito, mande um valor novo. Aceita [A-Za-z0-9_.:-], até 200 caracteres; valor fora disso é ignorado e o motor cunha o próprio. */
|
|
@@ -2081,6 +2122,15 @@ export interface operations {
|
|
|
2081
2122
|
requestId: string;
|
|
2082
2123
|
credits?: number;
|
|
2083
2124
|
cacheHit?: boolean;
|
|
2125
|
+
/** @description Presente só quando a fonte respondeu com parte do índice e o processo estava na parte que respondeu: outra instância do mesmo número, se existir, pode não ter vindo. */
|
|
2126
|
+
partialIndex?: {
|
|
2127
|
+
/** @description Partes do índice da fonte que não responderam. */
|
|
2128
|
+
shardsFailed: number;
|
|
2129
|
+
/** @description Total de partes do índice; nulo quando a fonte não as contou. */
|
|
2130
|
+
shardsTotal: number | null;
|
|
2131
|
+
/** @description A fonte estourou o próprio prazo interno e devolveu só o que deu tempo de olhar. */
|
|
2132
|
+
timedOut: boolean;
|
|
2133
|
+
};
|
|
2084
2134
|
} & {
|
|
2085
2135
|
[key: string]: unknown;
|
|
2086
2136
|
};
|
|
@@ -2612,6 +2662,8 @@ export interface operations {
|
|
|
2612
2662
|
query: {
|
|
2613
2663
|
tribunalAlias: string;
|
|
2614
2664
|
since?: unknown;
|
|
2665
|
+
/** @description Quanto esperar pela fonte processual quando o processo precisa ser buscado nela, em segundos: de 10 a 180, padrão 20. É o teto da consulta à fonte: ela às vezes leva até ~60 s por consulta, cada ida a ela espera no máximo 60 s, e a segunda ida só sai depois de uma recusa por volume ou de um erro da fonte, nunca depois de tempo esgotado. Depois dela, a ficha ainda espera até 10 s pelo resumo das publicações do processo. Tempo esgotado é 504 `UPSTREAM_TIMEOUT` (lentidão, não ausência). Dê ao seu cliente HTTP um tempo limite que cubra a espera, esses segundos da ficha e a rede: no padrão, mais de 30 s. */
|
|
2666
|
+
waitSeconds?: number;
|
|
2615
2667
|
};
|
|
2616
2668
|
header?: {
|
|
2617
2669
|
/** @description Identificador da requisição escolhido pelo cliente, ecoado em meta.requestId e no corpo de erro. Tem DOIS papéis: (1) rastreio, em toda rota — é por ele que o suporte encontra a chamada; (2) idempotência por conta em POST /v1/publications/text-searches e POST /v1/search-jobs, onde reenviar o mesmo valor reapresenta o resultado já produzido, sem nova cobrança. Fora dessas duas rotas o valor não deduplica nada: para repetir uma chamada de propósito, mande um valor novo. Aceita [A-Za-z0-9_.:-], até 200 caracteres; valor fora disso é ignorado e o motor cunha o próprio. */
|
|
@@ -2703,6 +2755,15 @@ export interface operations {
|
|
|
2703
2755
|
requestId: string;
|
|
2704
2756
|
credits?: number;
|
|
2705
2757
|
cacheHit?: boolean;
|
|
2758
|
+
/** @description Presente só quando a fonte respondeu com parte do índice e o processo estava na parte que respondeu: outra instância do mesmo número, se existir, pode não ter vindo. */
|
|
2759
|
+
partialIndex?: {
|
|
2760
|
+
/** @description Partes do índice da fonte que não responderam. */
|
|
2761
|
+
shardsFailed: number;
|
|
2762
|
+
/** @description Total de partes do índice; nulo quando a fonte não as contou. */
|
|
2763
|
+
shardsTotal: number | null;
|
|
2764
|
+
/** @description A fonte estourou o próprio prazo interno e devolveu só o que deu tempo de olhar. */
|
|
2765
|
+
timedOut: boolean;
|
|
2766
|
+
};
|
|
2706
2767
|
} & {
|
|
2707
2768
|
[key: string]: unknown;
|
|
2708
2769
|
};
|
|
@@ -3490,7 +3551,7 @@ export interface operations {
|
|
|
3490
3551
|
cursor?: string;
|
|
3491
3552
|
limit?: number;
|
|
3492
3553
|
status?: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
3493
|
-
type?: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
3554
|
+
type?: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
3494
3555
|
officeScoped?: "true" | "false";
|
|
3495
3556
|
tribunalAlias?: string;
|
|
3496
3557
|
processNumber?: string;
|
|
@@ -3498,6 +3559,7 @@ export interface operations {
|
|
|
3498
3559
|
oabState?: string;
|
|
3499
3560
|
term?: string;
|
|
3500
3561
|
partyName?: string;
|
|
3562
|
+
partyDocument?: string;
|
|
3501
3563
|
};
|
|
3502
3564
|
header?: {
|
|
3503
3565
|
/** @description Identificador da requisição escolhido pelo cliente, ecoado em meta.requestId e no corpo de erro. Tem DOIS papéis: (1) rastreio, em toda rota — é por ele que o suporte encontra a chamada; (2) idempotência por conta em POST /v1/publications/text-searches e POST /v1/search-jobs, onde reenviar o mesmo valor reapresenta o resultado já produzido, sem nova cobrança. Fora dessas duas rotas o valor não deduplica nada: para repetir uma chamada de propósito, mande um valor novo. Aceita [A-Za-z0-9_.:-], até 200 caracteres; valor fora disso é ignorado e o motor cunha o próprio. */
|
|
@@ -3520,7 +3582,7 @@ export interface operations {
|
|
|
3520
3582
|
data: ({
|
|
3521
3583
|
id: string;
|
|
3522
3584
|
/** @enum {string} */
|
|
3523
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
3585
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
3524
3586
|
/** @enum {string} */
|
|
3525
3587
|
status: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
3526
3588
|
label?: string | null;
|
|
@@ -3531,6 +3593,7 @@ export interface operations {
|
|
|
3531
3593
|
oabState?: string | null;
|
|
3532
3594
|
term?: string | null;
|
|
3533
3595
|
partyName?: string | null;
|
|
3596
|
+
partyDocument?: string | null;
|
|
3534
3597
|
/** Format: date-time */
|
|
3535
3598
|
lastCheckedAt?: string | null;
|
|
3536
3599
|
/** Format: date-time */
|
|
@@ -3763,7 +3826,7 @@ export interface operations {
|
|
|
3763
3826
|
content: {
|
|
3764
3827
|
"application/json": {
|
|
3765
3828
|
/** @enum {string} */
|
|
3766
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
3829
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
3767
3830
|
label?: string;
|
|
3768
3831
|
tribunalAlias?: string;
|
|
3769
3832
|
processNumber?: string;
|
|
@@ -3771,6 +3834,10 @@ export interface operations {
|
|
|
3771
3834
|
oabState?: string;
|
|
3772
3835
|
term?: string;
|
|
3773
3836
|
partyName?: string;
|
|
3837
|
+
/** @description CNPJ vigiado no teor, nos 14 dígitos ou pontuado; normalizado para NN.NNN.NNN/NNNN-NN. CPF é recusado. */
|
|
3838
|
+
partyDocument?: string;
|
|
3839
|
+
/** @description Com true, busca pela raiz de 8 dígitos do CNPJ (NN.NNN.NNN) e alcança a matriz e todas as filiais; muda a contagem. Padrão false: só o estabelecimento informado. */
|
|
3840
|
+
includeBranches?: boolean;
|
|
3774
3841
|
distributedAt?: string;
|
|
3775
3842
|
};
|
|
3776
3843
|
};
|
|
@@ -3786,7 +3853,7 @@ export interface operations {
|
|
|
3786
3853
|
data: {
|
|
3787
3854
|
id: string;
|
|
3788
3855
|
/** @enum {string} */
|
|
3789
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
3856
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
3790
3857
|
/** @enum {string} */
|
|
3791
3858
|
status: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
3792
3859
|
label?: string | null;
|
|
@@ -3797,6 +3864,7 @@ export interface operations {
|
|
|
3797
3864
|
oabState?: string | null;
|
|
3798
3865
|
term?: string | null;
|
|
3799
3866
|
partyName?: string | null;
|
|
3867
|
+
partyDocument?: string | null;
|
|
3800
3868
|
/** Format: date-time */
|
|
3801
3869
|
lastCheckedAt?: string | null;
|
|
3802
3870
|
/** Format: date-time */
|
|
@@ -4277,7 +4345,7 @@ export interface operations {
|
|
|
4277
4345
|
data: {
|
|
4278
4346
|
id: string;
|
|
4279
4347
|
/** @enum {string} */
|
|
4280
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
4348
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
4281
4349
|
/** @enum {string} */
|
|
4282
4350
|
status: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
4283
4351
|
label?: string | null;
|
|
@@ -4288,6 +4356,7 @@ export interface operations {
|
|
|
4288
4356
|
oabState?: string | null;
|
|
4289
4357
|
term?: string | null;
|
|
4290
4358
|
partyName?: string | null;
|
|
4359
|
+
partyDocument?: string | null;
|
|
4291
4360
|
/** Format: date-time */
|
|
4292
4361
|
lastCheckedAt?: string | null;
|
|
4293
4362
|
/** Format: date-time */
|
|
@@ -4818,7 +4887,7 @@ export interface operations {
|
|
|
4818
4887
|
data: {
|
|
4819
4888
|
id: string;
|
|
4820
4889
|
/** @enum {string} */
|
|
4821
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
4890
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
4822
4891
|
/** @enum {string} */
|
|
4823
4892
|
status: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
4824
4893
|
label?: string | null;
|
|
@@ -4829,6 +4898,7 @@ export interface operations {
|
|
|
4829
4898
|
oabState?: string | null;
|
|
4830
4899
|
term?: string | null;
|
|
4831
4900
|
partyName?: string | null;
|
|
4901
|
+
partyDocument?: string | null;
|
|
4832
4902
|
/** Format: date-time */
|
|
4833
4903
|
lastCheckedAt?: string | null;
|
|
4834
4904
|
/** Format: date-time */
|
|
@@ -7091,6 +7161,10 @@ export interface operations {
|
|
|
7091
7161
|
text?: string;
|
|
7092
7162
|
partyName?: string;
|
|
7093
7163
|
lawyerName?: string;
|
|
7164
|
+
/** @description CNPJ citado no teor, nos 14 dígitos ou pontuado; normalizado para NN.NNN.NNN/NNNN-NN. Acha a empresa citada no ato antes de ela ser parte. CPF é recusado. */
|
|
7165
|
+
partyDocument?: string;
|
|
7166
|
+
/** @description Com true, busca pela raiz de 8 dígitos do CNPJ (NN.NNN.NNN) e alcança a matriz e todas as filiais; muda a contagem. Padrão false: só o estabelecimento informado. */
|
|
7167
|
+
includeBranches?: boolean;
|
|
7094
7168
|
availableFrom?: string;
|
|
7095
7169
|
availableTo?: string;
|
|
7096
7170
|
page?: number;
|
|
@@ -7162,6 +7236,11 @@ export interface operations {
|
|
|
7162
7236
|
/** @description Órgão julgador da publicação, como a fonte o escreve. Presente nos dois eixos; `null` quando a fonte não o declara. */
|
|
7163
7237
|
courtBody?: string | null;
|
|
7164
7238
|
shareable?: boolean;
|
|
7239
|
+
/**
|
|
7240
|
+
* @description Como o item casou a consulta por documento: `document` = o CNPJ consta no teor, a empresa foi citada no ato. Compare com `parties` para saber se ela já figura como parte.
|
|
7241
|
+
* @enum {string}
|
|
7242
|
+
*/
|
|
7243
|
+
matchedBy?: "document";
|
|
7165
7244
|
rawPayload?: unknown;
|
|
7166
7245
|
}[];
|
|
7167
7246
|
sourceItemCount?: number;
|
|
@@ -7729,6 +7808,11 @@ export interface operations {
|
|
|
7729
7808
|
/** @description Órgão julgador da publicação, como a fonte o escreve. Presente nos dois eixos; `null` quando a fonte não o declara. */
|
|
7730
7809
|
courtBody?: string | null;
|
|
7731
7810
|
shareable?: boolean;
|
|
7811
|
+
/**
|
|
7812
|
+
* @description Como o item casou a consulta por documento: `document` = o CNPJ consta no teor, a empresa foi citada no ato. Compare com `parties` para saber se ela já figura como parte.
|
|
7813
|
+
* @enum {string}
|
|
7814
|
+
*/
|
|
7815
|
+
matchedBy?: "document";
|
|
7732
7816
|
} & {
|
|
7733
7817
|
[key: string]: unknown;
|
|
7734
7818
|
}) | null;
|
|
@@ -8086,6 +8170,11 @@ export interface operations {
|
|
|
8086
8170
|
/** @description Órgão julgador da publicação, como a fonte o escreve. Presente nos dois eixos; `null` quando a fonte não o declara. */
|
|
8087
8171
|
courtBody?: string | null;
|
|
8088
8172
|
shareable?: boolean;
|
|
8173
|
+
/**
|
|
8174
|
+
* @description Como o item casou a consulta por documento: `document` = o CNPJ consta no teor, a empresa foi citada no ato. Compare com `parties` para saber se ela já figura como parte.
|
|
8175
|
+
* @enum {string}
|
|
8176
|
+
*/
|
|
8177
|
+
matchedBy?: "document";
|
|
8089
8178
|
} & {
|
|
8090
8179
|
[key: string]: unknown;
|
|
8091
8180
|
}) | null;
|
|
@@ -9888,6 +9977,11 @@ export interface operations {
|
|
|
9888
9977
|
/** @description Órgão julgador da publicação, como a fonte o escreve. Presente nos dois eixos; `null` quando a fonte não o declara. */
|
|
9889
9978
|
courtBody?: string | null;
|
|
9890
9979
|
shareable?: boolean;
|
|
9980
|
+
/**
|
|
9981
|
+
* @description Como o item casou a consulta por documento: `document` = o CNPJ consta no teor, a empresa foi citada no ato. Compare com `parties` para saber se ela já figura como parte.
|
|
9982
|
+
* @enum {string}
|
|
9983
|
+
*/
|
|
9984
|
+
matchedBy?: "document";
|
|
9891
9985
|
} & {
|
|
9892
9986
|
[key: string]: unknown;
|
|
9893
9987
|
};
|
|
@@ -11003,6 +11097,8 @@ export interface operations {
|
|
|
11003
11097
|
backgroundWork: number;
|
|
11004
11098
|
credits: number;
|
|
11005
11099
|
}[];
|
|
11100
|
+
subTenantLimit: number | null;
|
|
11101
|
+
subTenantsUsed: number;
|
|
11006
11102
|
recentEvents: {
|
|
11007
11103
|
requestId: string;
|
|
11008
11104
|
kind: string;
|
|
@@ -11012,6 +11108,10 @@ export interface operations {
|
|
|
11012
11108
|
credits: number;
|
|
11013
11109
|
/** Format: date-time */
|
|
11014
11110
|
createdAt: string;
|
|
11111
|
+
/** @description O código do erro que recusou a requisição ou o trabalho de fundo. Ausente quando foi servido. */
|
|
11112
|
+
errorCode?: string;
|
|
11113
|
+
/** @description Num 400 de validação, os campos recusados em notação de ponto (`root` é o corpo ou a query inteira). Só o nome do campo, nunca o valor enviado. */
|
|
11114
|
+
fieldPaths?: string[];
|
|
11015
11115
|
}[];
|
|
11016
11116
|
};
|
|
11017
11117
|
meta: {
|
|
@@ -11247,6 +11347,10 @@ export interface operations {
|
|
|
11247
11347
|
suspendedAt: string | null;
|
|
11248
11348
|
/** Format: date-time */
|
|
11249
11349
|
oldestPendingAt: string | null;
|
|
11350
|
+
/** Format: date-time */
|
|
11351
|
+
lastTestAt: string | null;
|
|
11352
|
+
lastTestStatus: number | null;
|
|
11353
|
+
lastTestError: string | null;
|
|
11250
11354
|
} & {
|
|
11251
11355
|
[key: string]: unknown;
|
|
11252
11356
|
})[];
|
|
@@ -11685,6 +11789,242 @@ export interface operations {
|
|
|
11685
11789
|
};
|
|
11686
11790
|
};
|
|
11687
11791
|
};
|
|
11792
|
+
listUnsubscribedEventTypes: {
|
|
11793
|
+
parameters: {
|
|
11794
|
+
query?: never;
|
|
11795
|
+
header?: {
|
|
11796
|
+
/** @description Identificador da requisição escolhido pelo cliente, ecoado em meta.requestId e no corpo de erro. Tem DOIS papéis: (1) rastreio, em toda rota — é por ele que o suporte encontra a chamada; (2) idempotência por conta em POST /v1/publications/text-searches e POST /v1/search-jobs, onde reenviar o mesmo valor reapresenta o resultado já produzido, sem nova cobrança. Fora dessas duas rotas o valor não deduplica nada: para repetir uma chamada de propósito, mande um valor novo. Aceita [A-Za-z0-9_.:-], até 200 caracteres; valor fora disso é ignorado e o motor cunha o próprio. */
|
|
11797
|
+
"x-request-id"?: string;
|
|
11798
|
+
/** @description Atribui a chamada a um sub-tenant seu (por exemplo, um escritório) na medição de uso e no roteamento de eventos. Opcional. */
|
|
11799
|
+
"x-office-id"?: string;
|
|
11800
|
+
};
|
|
11801
|
+
path?: never;
|
|
11802
|
+
cookie?: never;
|
|
11803
|
+
};
|
|
11804
|
+
requestBody?: never;
|
|
11805
|
+
responses: {
|
|
11806
|
+
/** @description Resposta padrão */
|
|
11807
|
+
200: {
|
|
11808
|
+
headers: {
|
|
11809
|
+
[name: string]: unknown;
|
|
11810
|
+
};
|
|
11811
|
+
content: {
|
|
11812
|
+
"application/json": {
|
|
11813
|
+
data: {
|
|
11814
|
+
windowDays: number;
|
|
11815
|
+
items: ({
|
|
11816
|
+
/** @enum {string} */
|
|
11817
|
+
type: "PROCESS_MOVEMENT_CREATED" | "PUBLICATION_CREATED" | "MONITOR_SYNC_SUCCEEDED" | "MONITOR_SYNC_FAILED" | "SEARCH_JOB_COMPLETED" | "PUBLICATION_TEXT_ALERT_MATCHED" | "PUBLICATION_HARVEST_COMPLETED" | "QUOTA_LOW" | "PERIOD_ENDING" | "SUBSCRIPTION_PAST_DUE";
|
|
11818
|
+
/** @enum {string} */
|
|
11819
|
+
class: "DATA" | "OPERATIONAL";
|
|
11820
|
+
count: number;
|
|
11821
|
+
/** Format: date-time */
|
|
11822
|
+
lastOccurredAt: string;
|
|
11823
|
+
} & {
|
|
11824
|
+
[key: string]: unknown;
|
|
11825
|
+
})[];
|
|
11826
|
+
dismissed: ({
|
|
11827
|
+
/** @enum {string} */
|
|
11828
|
+
type: "PROCESS_MOVEMENT_CREATED" | "PUBLICATION_CREATED" | "MONITOR_SYNC_SUCCEEDED" | "MONITOR_SYNC_FAILED" | "SEARCH_JOB_COMPLETED" | "PUBLICATION_TEXT_ALERT_MATCHED" | "PUBLICATION_HARVEST_COMPLETED" | "QUOTA_LOW" | "PERIOD_ENDING" | "SUBSCRIPTION_PAST_DUE";
|
|
11829
|
+
/** Format: date-time */
|
|
11830
|
+
dismissedAt: string;
|
|
11831
|
+
} & {
|
|
11832
|
+
[key: string]: unknown;
|
|
11833
|
+
})[];
|
|
11834
|
+
};
|
|
11835
|
+
meta: {
|
|
11836
|
+
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
11837
|
+
requestId: string;
|
|
11838
|
+
credits?: number;
|
|
11839
|
+
cacheHit?: boolean;
|
|
11840
|
+
} & {
|
|
11841
|
+
[key: string]: unknown;
|
|
11842
|
+
};
|
|
11843
|
+
};
|
|
11844
|
+
};
|
|
11845
|
+
};
|
|
11846
|
+
/** @description Resposta padrão */
|
|
11847
|
+
400: {
|
|
11848
|
+
headers: {
|
|
11849
|
+
[name: string]: unknown;
|
|
11850
|
+
};
|
|
11851
|
+
content: {
|
|
11852
|
+
"application/json": {
|
|
11853
|
+
error: {
|
|
11854
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11855
|
+
code: string;
|
|
11856
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11857
|
+
message: string;
|
|
11858
|
+
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
11859
|
+
requestId: string;
|
|
11860
|
+
/**
|
|
11861
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11862
|
+
* @enum {string}
|
|
11863
|
+
*/
|
|
11864
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11865
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11866
|
+
retryable: boolean;
|
|
11867
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11868
|
+
upstreamStatus?: number;
|
|
11869
|
+
details: {
|
|
11870
|
+
[key: string]: unknown;
|
|
11871
|
+
};
|
|
11872
|
+
};
|
|
11873
|
+
};
|
|
11874
|
+
};
|
|
11875
|
+
};
|
|
11876
|
+
/** @description Resposta padrão */
|
|
11877
|
+
401: {
|
|
11878
|
+
headers: {
|
|
11879
|
+
[name: string]: unknown;
|
|
11880
|
+
};
|
|
11881
|
+
content: {
|
|
11882
|
+
"application/json": {
|
|
11883
|
+
error: {
|
|
11884
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11885
|
+
code: string;
|
|
11886
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11887
|
+
message: string;
|
|
11888
|
+
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
11889
|
+
requestId: string;
|
|
11890
|
+
/**
|
|
11891
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11892
|
+
* @enum {string}
|
|
11893
|
+
*/
|
|
11894
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11895
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11896
|
+
retryable: boolean;
|
|
11897
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11898
|
+
upstreamStatus?: number;
|
|
11899
|
+
details: {
|
|
11900
|
+
[key: string]: unknown;
|
|
11901
|
+
};
|
|
11902
|
+
};
|
|
11903
|
+
};
|
|
11904
|
+
};
|
|
11905
|
+
};
|
|
11906
|
+
/** @description Resposta padrão */
|
|
11907
|
+
402: {
|
|
11908
|
+
headers: {
|
|
11909
|
+
[name: string]: unknown;
|
|
11910
|
+
};
|
|
11911
|
+
content: {
|
|
11912
|
+
"application/json": {
|
|
11913
|
+
error: {
|
|
11914
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11915
|
+
code: string;
|
|
11916
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11917
|
+
message: string;
|
|
11918
|
+
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
11919
|
+
requestId: string;
|
|
11920
|
+
/**
|
|
11921
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11922
|
+
* @enum {string}
|
|
11923
|
+
*/
|
|
11924
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11925
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11926
|
+
retryable: boolean;
|
|
11927
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11928
|
+
upstreamStatus?: number;
|
|
11929
|
+
details: {
|
|
11930
|
+
[key: string]: unknown;
|
|
11931
|
+
};
|
|
11932
|
+
};
|
|
11933
|
+
};
|
|
11934
|
+
};
|
|
11935
|
+
};
|
|
11936
|
+
/** @description Resposta padrão */
|
|
11937
|
+
403: {
|
|
11938
|
+
headers: {
|
|
11939
|
+
[name: string]: unknown;
|
|
11940
|
+
};
|
|
11941
|
+
content: {
|
|
11942
|
+
"application/json": {
|
|
11943
|
+
error: {
|
|
11944
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11945
|
+
code: string;
|
|
11946
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11947
|
+
message: string;
|
|
11948
|
+
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
11949
|
+
requestId: string;
|
|
11950
|
+
/**
|
|
11951
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11952
|
+
* @enum {string}
|
|
11953
|
+
*/
|
|
11954
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11955
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11956
|
+
retryable: boolean;
|
|
11957
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11958
|
+
upstreamStatus?: number;
|
|
11959
|
+
details: {
|
|
11960
|
+
[key: string]: unknown;
|
|
11961
|
+
};
|
|
11962
|
+
};
|
|
11963
|
+
};
|
|
11964
|
+
};
|
|
11965
|
+
};
|
|
11966
|
+
/** @description Resposta padrão */
|
|
11967
|
+
429: {
|
|
11968
|
+
headers: {
|
|
11969
|
+
[name: string]: unknown;
|
|
11970
|
+
};
|
|
11971
|
+
content: {
|
|
11972
|
+
"application/json": {
|
|
11973
|
+
error: {
|
|
11974
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11975
|
+
code: string;
|
|
11976
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11977
|
+
message: string;
|
|
11978
|
+
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
11979
|
+
requestId: string;
|
|
11980
|
+
/**
|
|
11981
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11982
|
+
* @enum {string}
|
|
11983
|
+
*/
|
|
11984
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11985
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11986
|
+
retryable: boolean;
|
|
11987
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11988
|
+
upstreamStatus?: number;
|
|
11989
|
+
details: {
|
|
11990
|
+
[key: string]: unknown;
|
|
11991
|
+
};
|
|
11992
|
+
};
|
|
11993
|
+
};
|
|
11994
|
+
};
|
|
11995
|
+
};
|
|
11996
|
+
/** @description Resposta padrão */
|
|
11997
|
+
500: {
|
|
11998
|
+
headers: {
|
|
11999
|
+
[name: string]: unknown;
|
|
12000
|
+
};
|
|
12001
|
+
content: {
|
|
12002
|
+
"application/json": {
|
|
12003
|
+
error: {
|
|
12004
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
12005
|
+
code: string;
|
|
12006
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
12007
|
+
message: string;
|
|
12008
|
+
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
12009
|
+
requestId: string;
|
|
12010
|
+
/**
|
|
12011
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
12012
|
+
* @enum {string}
|
|
12013
|
+
*/
|
|
12014
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
12015
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
12016
|
+
retryable: boolean;
|
|
12017
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
12018
|
+
upstreamStatus?: number;
|
|
12019
|
+
details: {
|
|
12020
|
+
[key: string]: unknown;
|
|
12021
|
+
};
|
|
12022
|
+
};
|
|
12023
|
+
};
|
|
12024
|
+
};
|
|
12025
|
+
};
|
|
12026
|
+
};
|
|
12027
|
+
};
|
|
11688
12028
|
listEvents: {
|
|
11689
12029
|
parameters: {
|
|
11690
12030
|
query?: {
|
|
@@ -11725,6 +12065,8 @@ export interface operations {
|
|
|
11725
12065
|
deliveries: {
|
|
11726
12066
|
total: number;
|
|
11727
12067
|
delivered: number;
|
|
12068
|
+
failed: number;
|
|
12069
|
+
pending: number;
|
|
11728
12070
|
};
|
|
11729
12071
|
} & {
|
|
11730
12072
|
[key: string]: unknown;
|
|
@@ -11956,6 +12298,8 @@ export interface operations {
|
|
|
11956
12298
|
deliveries: {
|
|
11957
12299
|
total: number;
|
|
11958
12300
|
delivered: number;
|
|
12301
|
+
failed: number;
|
|
12302
|
+
pending: number;
|
|
11959
12303
|
};
|
|
11960
12304
|
} & {
|
|
11961
12305
|
[key: string]: unknown;
|
|
@@ -12212,10 +12556,20 @@ export interface operations {
|
|
|
12212
12556
|
isActive: boolean;
|
|
12213
12557
|
/** Format: date-time */
|
|
12214
12558
|
suspendedAt: string | null;
|
|
12559
|
+
/** Format: date-time */
|
|
12560
|
+
lastTestAt: string | null;
|
|
12561
|
+
lastTestStatus: number | null;
|
|
12562
|
+
lastTestError: string | null;
|
|
12215
12563
|
project: {
|
|
12216
12564
|
id: string;
|
|
12217
12565
|
name: string;
|
|
12218
12566
|
} | null;
|
|
12567
|
+
reach: {
|
|
12568
|
+
/** @enum {string} */
|
|
12569
|
+
scope: "ACCOUNT" | "PROJECT";
|
|
12570
|
+
projects: number;
|
|
12571
|
+
includesFutureProjects: boolean;
|
|
12572
|
+
};
|
|
12219
12573
|
}[];
|
|
12220
12574
|
meta: {
|
|
12221
12575
|
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|
|
@@ -12452,10 +12806,20 @@ export interface operations {
|
|
|
12452
12806
|
isActive: boolean;
|
|
12453
12807
|
/** Format: date-time */
|
|
12454
12808
|
suspendedAt: string | null;
|
|
12809
|
+
/** Format: date-time */
|
|
12810
|
+
lastTestAt: string | null;
|
|
12811
|
+
lastTestStatus: number | null;
|
|
12812
|
+
lastTestError: string | null;
|
|
12455
12813
|
project: {
|
|
12456
12814
|
id: string;
|
|
12457
12815
|
name: string;
|
|
12458
12816
|
} | null;
|
|
12817
|
+
reach: {
|
|
12818
|
+
/** @enum {string} */
|
|
12819
|
+
scope: "ACCOUNT" | "PROJECT";
|
|
12820
|
+
projects: number;
|
|
12821
|
+
includesFutureProjects: boolean;
|
|
12822
|
+
};
|
|
12459
12823
|
};
|
|
12460
12824
|
signingSecret: string;
|
|
12461
12825
|
};
|
|
@@ -12915,10 +13279,20 @@ export interface operations {
|
|
|
12915
13279
|
isActive: boolean;
|
|
12916
13280
|
/** Format: date-time */
|
|
12917
13281
|
suspendedAt: string | null;
|
|
13282
|
+
/** Format: date-time */
|
|
13283
|
+
lastTestAt: string | null;
|
|
13284
|
+
lastTestStatus: number | null;
|
|
13285
|
+
lastTestError: string | null;
|
|
12918
13286
|
project: {
|
|
12919
13287
|
id: string;
|
|
12920
13288
|
name: string;
|
|
12921
13289
|
} | null;
|
|
13290
|
+
reach: {
|
|
13291
|
+
/** @enum {string} */
|
|
13292
|
+
scope: "ACCOUNT" | "PROJECT";
|
|
13293
|
+
projects: number;
|
|
13294
|
+
includesFutureProjects: boolean;
|
|
13295
|
+
};
|
|
12922
13296
|
};
|
|
12923
13297
|
meta: {
|
|
12924
13298
|
/** @description Identificador da requisição, para suporte e rastreamento. É o X-Request-Id enviado pelo cliente quando há um; senão, um req_<uuid> cunhado pelo motor. */
|