@lexnode/legal-data-sdk 1.18.0 → 1.25.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 +73 -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 +414 -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,75 @@ 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
|
+
Antes de recusar a resposta parcial que veio sem o processo porque partes do
|
|
306
|
+
índice ficaram fora, o motor consulta a fonte de novo — até duas vezes, com uma
|
|
307
|
+
pausa curta, enquanto a espera couber.
|
|
308
|
+
|
|
309
|
+
**`meta.otherInstances`: o número tem outro documento na fonte.** A fonte pode
|
|
310
|
+
guardar mais de um documento por número — em geral um por instância (1º grau,
|
|
311
|
+
2º grau, turma recursal…), às vezes dois no mesmo grau —, e o motor serve e
|
|
312
|
+
guarda um só: o de `data`, cujo grau está em `degree`. Quando a resposta da
|
|
313
|
+
fonte trouxe outros, `meta.otherInstances` lista cada um com o grau (`grau`), a
|
|
314
|
+
data em que a fonte o atualizou (`updatedAt`) e o órgão julgador (`courtBody`,
|
|
315
|
+
quando vem). A lista não sai para processo restrito e não inclui documento que o
|
|
316
|
+
motor classificaria como segredo de justiça.
|
|
317
|
+
|
|
318
|
+
```ts
|
|
319
|
+
for (const outra of meta.otherInstances ?? []) {
|
|
320
|
+
// Ex.: { grau: "G1", updatedAt: "2026-04-15T12:00:00.000Z" }
|
|
321
|
+
}
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
**Agentes têm a espera deles.** No canal para agentes (MCP), as tools
|
|
325
|
+
`ler_processo` e `consultar_processo` escolhem a espera em `maxWaitSeconds`, na
|
|
326
|
+
mesma faixa e com padrão de 120 s; esse canal não passa pelo SDK.
|
|
327
|
+
|
|
255
328
|
## Frescor: o `total: 0` qualificado
|
|
256
329
|
|
|
257
330
|
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.25.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; antes dela, o motor consulta a fonte de novo, até duas vezes, enquanto o prazo de `waitSeconds` couber. Quando a resposta traz mais de um documento do número — em geral um por instância, mas dois podem ser do mesmo grau —, o motor serve e guarda um só, o de `data` (grau em `degree`), e `meta.otherInstances` lista os outros que vieram: grau, data de atualização na fonte e órgão julgador.
|
|
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; antes dela, o motor consulta a fonte de novo, até duas vezes, enquanto o prazo de `waitSeconds` couber. Quando a resposta traz mais de um documento do número — em geral um por instância, mas dois podem ser do mesmo grau —, o motor serve e guarda um só, o de `data` (grau em `degree`), e `meta.otherInstances` lista os outros que vieram: grau, data de atualização na fonte e órgão julgador.
|
|
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,27 @@ 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
|
+
};
|
|
2134
|
+
/** @description Presente só quando a resposta da fonte trouxe mais de um documento do número — em geral de instâncias diferentes, mas dois podem ter o mesmo `grau`. O motor serve e guarda um só (o de `data`, que diz o grau em `degree`); estes são os outros que vieram na mesma resposta. Não inclui documento que o motor classificaria como segredo de justiça, e não aparece quando o processo servido é restrito. */
|
|
2135
|
+
otherInstances?: {
|
|
2136
|
+
/** @description O grau deste documento na fonte: G1, G2, JE, TR… */
|
|
2137
|
+
grau: string | null;
|
|
2138
|
+
/**
|
|
2139
|
+
* Format: date-time
|
|
2140
|
+
* @description Quando a fonte atualizou este documento pela última vez.
|
|
2141
|
+
*/
|
|
2142
|
+
updatedAt: string | null;
|
|
2143
|
+
/** @description O órgão julgador deste documento, quando a fonte o traz. */
|
|
2144
|
+
courtBody?: string;
|
|
2145
|
+
}[];
|
|
2084
2146
|
} & {
|
|
2085
2147
|
[key: string]: unknown;
|
|
2086
2148
|
};
|
|
@@ -2612,6 +2674,8 @@ export interface operations {
|
|
|
2612
2674
|
query: {
|
|
2613
2675
|
tribunalAlias: string;
|
|
2614
2676
|
since?: unknown;
|
|
2677
|
+
/** @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. */
|
|
2678
|
+
waitSeconds?: number;
|
|
2615
2679
|
};
|
|
2616
2680
|
header?: {
|
|
2617
2681
|
/** @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 +2767,27 @@ export interface operations {
|
|
|
2703
2767
|
requestId: string;
|
|
2704
2768
|
credits?: number;
|
|
2705
2769
|
cacheHit?: boolean;
|
|
2770
|
+
/** @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. */
|
|
2771
|
+
partialIndex?: {
|
|
2772
|
+
/** @description Partes do índice da fonte que não responderam. */
|
|
2773
|
+
shardsFailed: number;
|
|
2774
|
+
/** @description Total de partes do índice; nulo quando a fonte não as contou. */
|
|
2775
|
+
shardsTotal: number | null;
|
|
2776
|
+
/** @description A fonte estourou o próprio prazo interno e devolveu só o que deu tempo de olhar. */
|
|
2777
|
+
timedOut: boolean;
|
|
2778
|
+
};
|
|
2779
|
+
/** @description Presente só quando a resposta da fonte trouxe mais de um documento do número — em geral de instâncias diferentes, mas dois podem ter o mesmo `grau`. O motor serve e guarda um só (o de `data`, que diz o grau em `degree`); estes são os outros que vieram na mesma resposta. Não inclui documento que o motor classificaria como segredo de justiça, e não aparece quando o processo servido é restrito. */
|
|
2780
|
+
otherInstances?: {
|
|
2781
|
+
/** @description O grau deste documento na fonte: G1, G2, JE, TR… */
|
|
2782
|
+
grau: string | null;
|
|
2783
|
+
/**
|
|
2784
|
+
* Format: date-time
|
|
2785
|
+
* @description Quando a fonte atualizou este documento pela última vez.
|
|
2786
|
+
*/
|
|
2787
|
+
updatedAt: string | null;
|
|
2788
|
+
/** @description O órgão julgador deste documento, quando a fonte o traz. */
|
|
2789
|
+
courtBody?: string;
|
|
2790
|
+
}[];
|
|
2706
2791
|
} & {
|
|
2707
2792
|
[key: string]: unknown;
|
|
2708
2793
|
};
|
|
@@ -3490,7 +3575,7 @@ export interface operations {
|
|
|
3490
3575
|
cursor?: string;
|
|
3491
3576
|
limit?: number;
|
|
3492
3577
|
status?: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
3493
|
-
type?: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
3578
|
+
type?: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
3494
3579
|
officeScoped?: "true" | "false";
|
|
3495
3580
|
tribunalAlias?: string;
|
|
3496
3581
|
processNumber?: string;
|
|
@@ -3498,6 +3583,7 @@ export interface operations {
|
|
|
3498
3583
|
oabState?: string;
|
|
3499
3584
|
term?: string;
|
|
3500
3585
|
partyName?: string;
|
|
3586
|
+
partyDocument?: string;
|
|
3501
3587
|
};
|
|
3502
3588
|
header?: {
|
|
3503
3589
|
/** @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 +3606,7 @@ export interface operations {
|
|
|
3520
3606
|
data: ({
|
|
3521
3607
|
id: string;
|
|
3522
3608
|
/** @enum {string} */
|
|
3523
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
3609
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
3524
3610
|
/** @enum {string} */
|
|
3525
3611
|
status: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
3526
3612
|
label?: string | null;
|
|
@@ -3531,6 +3617,7 @@ export interface operations {
|
|
|
3531
3617
|
oabState?: string | null;
|
|
3532
3618
|
term?: string | null;
|
|
3533
3619
|
partyName?: string | null;
|
|
3620
|
+
partyDocument?: string | null;
|
|
3534
3621
|
/** Format: date-time */
|
|
3535
3622
|
lastCheckedAt?: string | null;
|
|
3536
3623
|
/** Format: date-time */
|
|
@@ -3763,7 +3850,7 @@ export interface operations {
|
|
|
3763
3850
|
content: {
|
|
3764
3851
|
"application/json": {
|
|
3765
3852
|
/** @enum {string} */
|
|
3766
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
3853
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
3767
3854
|
label?: string;
|
|
3768
3855
|
tribunalAlias?: string;
|
|
3769
3856
|
processNumber?: string;
|
|
@@ -3771,6 +3858,10 @@ export interface operations {
|
|
|
3771
3858
|
oabState?: string;
|
|
3772
3859
|
term?: string;
|
|
3773
3860
|
partyName?: string;
|
|
3861
|
+
/** @description CNPJ vigiado no teor, nos 14 dígitos ou pontuado; normalizado para NN.NNN.NNN/NNNN-NN. CPF é recusado. */
|
|
3862
|
+
partyDocument?: string;
|
|
3863
|
+
/** @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. */
|
|
3864
|
+
includeBranches?: boolean;
|
|
3774
3865
|
distributedAt?: string;
|
|
3775
3866
|
};
|
|
3776
3867
|
};
|
|
@@ -3786,7 +3877,7 @@ export interface operations {
|
|
|
3786
3877
|
data: {
|
|
3787
3878
|
id: string;
|
|
3788
3879
|
/** @enum {string} */
|
|
3789
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
3880
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
3790
3881
|
/** @enum {string} */
|
|
3791
3882
|
status: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
3792
3883
|
label?: string | null;
|
|
@@ -3797,6 +3888,7 @@ export interface operations {
|
|
|
3797
3888
|
oabState?: string | null;
|
|
3798
3889
|
term?: string | null;
|
|
3799
3890
|
partyName?: string | null;
|
|
3891
|
+
partyDocument?: string | null;
|
|
3800
3892
|
/** Format: date-time */
|
|
3801
3893
|
lastCheckedAt?: string | null;
|
|
3802
3894
|
/** Format: date-time */
|
|
@@ -4277,7 +4369,7 @@ export interface operations {
|
|
|
4277
4369
|
data: {
|
|
4278
4370
|
id: string;
|
|
4279
4371
|
/** @enum {string} */
|
|
4280
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
4372
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
4281
4373
|
/** @enum {string} */
|
|
4282
4374
|
status: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
4283
4375
|
label?: string | null;
|
|
@@ -4288,6 +4380,7 @@ export interface operations {
|
|
|
4288
4380
|
oabState?: string | null;
|
|
4289
4381
|
term?: string | null;
|
|
4290
4382
|
partyName?: string | null;
|
|
4383
|
+
partyDocument?: string | null;
|
|
4291
4384
|
/** Format: date-time */
|
|
4292
4385
|
lastCheckedAt?: string | null;
|
|
4293
4386
|
/** Format: date-time */
|
|
@@ -4818,7 +4911,7 @@ export interface operations {
|
|
|
4818
4911
|
data: {
|
|
4819
4912
|
id: string;
|
|
4820
4913
|
/** @enum {string} */
|
|
4821
|
-
type: "PROCESS" | "OAB" | "TERM" | "PARTY";
|
|
4914
|
+
type: "PROCESS" | "OAB" | "TERM" | "PARTY" | "DOCUMENT";
|
|
4822
4915
|
/** @enum {string} */
|
|
4823
4916
|
status: "ACTIVE" | "PAUSED" | "DISABLED" | "ERROR";
|
|
4824
4917
|
label?: string | null;
|
|
@@ -4829,6 +4922,7 @@ export interface operations {
|
|
|
4829
4922
|
oabState?: string | null;
|
|
4830
4923
|
term?: string | null;
|
|
4831
4924
|
partyName?: string | null;
|
|
4925
|
+
partyDocument?: string | null;
|
|
4832
4926
|
/** Format: date-time */
|
|
4833
4927
|
lastCheckedAt?: string | null;
|
|
4834
4928
|
/** Format: date-time */
|
|
@@ -7091,6 +7185,10 @@ export interface operations {
|
|
|
7091
7185
|
text?: string;
|
|
7092
7186
|
partyName?: string;
|
|
7093
7187
|
lawyerName?: string;
|
|
7188
|
+
/** @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. */
|
|
7189
|
+
partyDocument?: string;
|
|
7190
|
+
/** @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. */
|
|
7191
|
+
includeBranches?: boolean;
|
|
7094
7192
|
availableFrom?: string;
|
|
7095
7193
|
availableTo?: string;
|
|
7096
7194
|
page?: number;
|
|
@@ -7162,6 +7260,11 @@ export interface operations {
|
|
|
7162
7260
|
/** @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
7261
|
courtBody?: string | null;
|
|
7164
7262
|
shareable?: boolean;
|
|
7263
|
+
/**
|
|
7264
|
+
* @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.
|
|
7265
|
+
* @enum {string}
|
|
7266
|
+
*/
|
|
7267
|
+
matchedBy?: "document";
|
|
7165
7268
|
rawPayload?: unknown;
|
|
7166
7269
|
}[];
|
|
7167
7270
|
sourceItemCount?: number;
|
|
@@ -7729,6 +7832,11 @@ export interface operations {
|
|
|
7729
7832
|
/** @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
7833
|
courtBody?: string | null;
|
|
7731
7834
|
shareable?: boolean;
|
|
7835
|
+
/**
|
|
7836
|
+
* @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.
|
|
7837
|
+
* @enum {string}
|
|
7838
|
+
*/
|
|
7839
|
+
matchedBy?: "document";
|
|
7732
7840
|
} & {
|
|
7733
7841
|
[key: string]: unknown;
|
|
7734
7842
|
}) | null;
|
|
@@ -8086,6 +8194,11 @@ export interface operations {
|
|
|
8086
8194
|
/** @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
8195
|
courtBody?: string | null;
|
|
8088
8196
|
shareable?: boolean;
|
|
8197
|
+
/**
|
|
8198
|
+
* @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.
|
|
8199
|
+
* @enum {string}
|
|
8200
|
+
*/
|
|
8201
|
+
matchedBy?: "document";
|
|
8089
8202
|
} & {
|
|
8090
8203
|
[key: string]: unknown;
|
|
8091
8204
|
}) | null;
|
|
@@ -9888,6 +10001,11 @@ export interface operations {
|
|
|
9888
10001
|
/** @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
10002
|
courtBody?: string | null;
|
|
9890
10003
|
shareable?: boolean;
|
|
10004
|
+
/**
|
|
10005
|
+
* @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.
|
|
10006
|
+
* @enum {string}
|
|
10007
|
+
*/
|
|
10008
|
+
matchedBy?: "document";
|
|
9891
10009
|
} & {
|
|
9892
10010
|
[key: string]: unknown;
|
|
9893
10011
|
};
|
|
@@ -11003,6 +11121,8 @@ export interface operations {
|
|
|
11003
11121
|
backgroundWork: number;
|
|
11004
11122
|
credits: number;
|
|
11005
11123
|
}[];
|
|
11124
|
+
subTenantLimit: number | null;
|
|
11125
|
+
subTenantsUsed: number;
|
|
11006
11126
|
recentEvents: {
|
|
11007
11127
|
requestId: string;
|
|
11008
11128
|
kind: string;
|
|
@@ -11012,6 +11132,10 @@ export interface operations {
|
|
|
11012
11132
|
credits: number;
|
|
11013
11133
|
/** Format: date-time */
|
|
11014
11134
|
createdAt: string;
|
|
11135
|
+
/** @description O código do erro que recusou a requisição ou o trabalho de fundo. Ausente quando foi servido. */
|
|
11136
|
+
errorCode?: string;
|
|
11137
|
+
/** @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. */
|
|
11138
|
+
fieldPaths?: string[];
|
|
11015
11139
|
}[];
|
|
11016
11140
|
};
|
|
11017
11141
|
meta: {
|
|
@@ -11247,6 +11371,10 @@ export interface operations {
|
|
|
11247
11371
|
suspendedAt: string | null;
|
|
11248
11372
|
/** Format: date-time */
|
|
11249
11373
|
oldestPendingAt: string | null;
|
|
11374
|
+
/** Format: date-time */
|
|
11375
|
+
lastTestAt: string | null;
|
|
11376
|
+
lastTestStatus: number | null;
|
|
11377
|
+
lastTestError: string | null;
|
|
11250
11378
|
} & {
|
|
11251
11379
|
[key: string]: unknown;
|
|
11252
11380
|
})[];
|
|
@@ -11685,6 +11813,242 @@ export interface operations {
|
|
|
11685
11813
|
};
|
|
11686
11814
|
};
|
|
11687
11815
|
};
|
|
11816
|
+
listUnsubscribedEventTypes: {
|
|
11817
|
+
parameters: {
|
|
11818
|
+
query?: never;
|
|
11819
|
+
header?: {
|
|
11820
|
+
/** @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. */
|
|
11821
|
+
"x-request-id"?: string;
|
|
11822
|
+
/** @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. */
|
|
11823
|
+
"x-office-id"?: string;
|
|
11824
|
+
};
|
|
11825
|
+
path?: never;
|
|
11826
|
+
cookie?: never;
|
|
11827
|
+
};
|
|
11828
|
+
requestBody?: never;
|
|
11829
|
+
responses: {
|
|
11830
|
+
/** @description Resposta padrão */
|
|
11831
|
+
200: {
|
|
11832
|
+
headers: {
|
|
11833
|
+
[name: string]: unknown;
|
|
11834
|
+
};
|
|
11835
|
+
content: {
|
|
11836
|
+
"application/json": {
|
|
11837
|
+
data: {
|
|
11838
|
+
windowDays: number;
|
|
11839
|
+
items: ({
|
|
11840
|
+
/** @enum {string} */
|
|
11841
|
+
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";
|
|
11842
|
+
/** @enum {string} */
|
|
11843
|
+
class: "DATA" | "OPERATIONAL";
|
|
11844
|
+
count: number;
|
|
11845
|
+
/** Format: date-time */
|
|
11846
|
+
lastOccurredAt: string;
|
|
11847
|
+
} & {
|
|
11848
|
+
[key: string]: unknown;
|
|
11849
|
+
})[];
|
|
11850
|
+
dismissed: ({
|
|
11851
|
+
/** @enum {string} */
|
|
11852
|
+
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";
|
|
11853
|
+
/** Format: date-time */
|
|
11854
|
+
dismissedAt: string;
|
|
11855
|
+
} & {
|
|
11856
|
+
[key: string]: unknown;
|
|
11857
|
+
})[];
|
|
11858
|
+
};
|
|
11859
|
+
meta: {
|
|
11860
|
+
/** @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. */
|
|
11861
|
+
requestId: string;
|
|
11862
|
+
credits?: number;
|
|
11863
|
+
cacheHit?: boolean;
|
|
11864
|
+
} & {
|
|
11865
|
+
[key: string]: unknown;
|
|
11866
|
+
};
|
|
11867
|
+
};
|
|
11868
|
+
};
|
|
11869
|
+
};
|
|
11870
|
+
/** @description Resposta padrão */
|
|
11871
|
+
400: {
|
|
11872
|
+
headers: {
|
|
11873
|
+
[name: string]: unknown;
|
|
11874
|
+
};
|
|
11875
|
+
content: {
|
|
11876
|
+
"application/json": {
|
|
11877
|
+
error: {
|
|
11878
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11879
|
+
code: string;
|
|
11880
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11881
|
+
message: string;
|
|
11882
|
+
/** @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. */
|
|
11883
|
+
requestId: string;
|
|
11884
|
+
/**
|
|
11885
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11886
|
+
* @enum {string}
|
|
11887
|
+
*/
|
|
11888
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11889
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11890
|
+
retryable: boolean;
|
|
11891
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11892
|
+
upstreamStatus?: number;
|
|
11893
|
+
details: {
|
|
11894
|
+
[key: string]: unknown;
|
|
11895
|
+
};
|
|
11896
|
+
};
|
|
11897
|
+
};
|
|
11898
|
+
};
|
|
11899
|
+
};
|
|
11900
|
+
/** @description Resposta padrão */
|
|
11901
|
+
401: {
|
|
11902
|
+
headers: {
|
|
11903
|
+
[name: string]: unknown;
|
|
11904
|
+
};
|
|
11905
|
+
content: {
|
|
11906
|
+
"application/json": {
|
|
11907
|
+
error: {
|
|
11908
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11909
|
+
code: string;
|
|
11910
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11911
|
+
message: string;
|
|
11912
|
+
/** @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. */
|
|
11913
|
+
requestId: string;
|
|
11914
|
+
/**
|
|
11915
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11916
|
+
* @enum {string}
|
|
11917
|
+
*/
|
|
11918
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11919
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11920
|
+
retryable: boolean;
|
|
11921
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11922
|
+
upstreamStatus?: number;
|
|
11923
|
+
details: {
|
|
11924
|
+
[key: string]: unknown;
|
|
11925
|
+
};
|
|
11926
|
+
};
|
|
11927
|
+
};
|
|
11928
|
+
};
|
|
11929
|
+
};
|
|
11930
|
+
/** @description Resposta padrão */
|
|
11931
|
+
402: {
|
|
11932
|
+
headers: {
|
|
11933
|
+
[name: string]: unknown;
|
|
11934
|
+
};
|
|
11935
|
+
content: {
|
|
11936
|
+
"application/json": {
|
|
11937
|
+
error: {
|
|
11938
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11939
|
+
code: string;
|
|
11940
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11941
|
+
message: string;
|
|
11942
|
+
/** @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. */
|
|
11943
|
+
requestId: string;
|
|
11944
|
+
/**
|
|
11945
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11946
|
+
* @enum {string}
|
|
11947
|
+
*/
|
|
11948
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11949
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11950
|
+
retryable: boolean;
|
|
11951
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11952
|
+
upstreamStatus?: number;
|
|
11953
|
+
details: {
|
|
11954
|
+
[key: string]: unknown;
|
|
11955
|
+
};
|
|
11956
|
+
};
|
|
11957
|
+
};
|
|
11958
|
+
};
|
|
11959
|
+
};
|
|
11960
|
+
/** @description Resposta padrão */
|
|
11961
|
+
403: {
|
|
11962
|
+
headers: {
|
|
11963
|
+
[name: string]: unknown;
|
|
11964
|
+
};
|
|
11965
|
+
content: {
|
|
11966
|
+
"application/json": {
|
|
11967
|
+
error: {
|
|
11968
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11969
|
+
code: string;
|
|
11970
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
11971
|
+
message: string;
|
|
11972
|
+
/** @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. */
|
|
11973
|
+
requestId: string;
|
|
11974
|
+
/**
|
|
11975
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
11976
|
+
* @enum {string}
|
|
11977
|
+
*/
|
|
11978
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
11979
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
11980
|
+
retryable: boolean;
|
|
11981
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
11982
|
+
upstreamStatus?: number;
|
|
11983
|
+
details: {
|
|
11984
|
+
[key: string]: unknown;
|
|
11985
|
+
};
|
|
11986
|
+
};
|
|
11987
|
+
};
|
|
11988
|
+
};
|
|
11989
|
+
};
|
|
11990
|
+
/** @description Resposta padrão */
|
|
11991
|
+
429: {
|
|
11992
|
+
headers: {
|
|
11993
|
+
[name: string]: unknown;
|
|
11994
|
+
};
|
|
11995
|
+
content: {
|
|
11996
|
+
"application/json": {
|
|
11997
|
+
error: {
|
|
11998
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
11999
|
+
code: string;
|
|
12000
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
12001
|
+
message: string;
|
|
12002
|
+
/** @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. */
|
|
12003
|
+
requestId: string;
|
|
12004
|
+
/**
|
|
12005
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
12006
|
+
* @enum {string}
|
|
12007
|
+
*/
|
|
12008
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
12009
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
12010
|
+
retryable: boolean;
|
|
12011
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
12012
|
+
upstreamStatus?: number;
|
|
12013
|
+
details: {
|
|
12014
|
+
[key: string]: unknown;
|
|
12015
|
+
};
|
|
12016
|
+
};
|
|
12017
|
+
};
|
|
12018
|
+
};
|
|
12019
|
+
};
|
|
12020
|
+
/** @description Resposta padrão */
|
|
12021
|
+
500: {
|
|
12022
|
+
headers: {
|
|
12023
|
+
[name: string]: unknown;
|
|
12024
|
+
};
|
|
12025
|
+
content: {
|
|
12026
|
+
"application/json": {
|
|
12027
|
+
error: {
|
|
12028
|
+
/** @description Código estável da taxonomia (VALIDATION_ERROR, QUOTA_EXCEEDED, UPSTREAM_TIMEOUT…). É por ele que se programa, não pela mensagem. */
|
|
12029
|
+
code: string;
|
|
12030
|
+
/** @description Descrição legível, sujeita a mudança. */
|
|
12031
|
+
message: string;
|
|
12032
|
+
/** @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. */
|
|
12033
|
+
requestId: string;
|
|
12034
|
+
/**
|
|
12035
|
+
* @description Classificação da falha. TERMINAL não melhora com nova tentativa; RETRYABLE sim.
|
|
12036
|
+
* @enum {string}
|
|
12037
|
+
*/
|
|
12038
|
+
class: "RETRYABLE" | "TERMINAL";
|
|
12039
|
+
/** @description Atalho booleano de `class`, para quem só precisa decidir se repete. */
|
|
12040
|
+
retryable: boolean;
|
|
12041
|
+
/** @description Status HTTP real devolvido pela fonte externa, quando a falha veio dela. Preservado sem tradução. */
|
|
12042
|
+
upstreamStatus?: number;
|
|
12043
|
+
details: {
|
|
12044
|
+
[key: string]: unknown;
|
|
12045
|
+
};
|
|
12046
|
+
};
|
|
12047
|
+
};
|
|
12048
|
+
};
|
|
12049
|
+
};
|
|
12050
|
+
};
|
|
12051
|
+
};
|
|
11688
12052
|
listEvents: {
|
|
11689
12053
|
parameters: {
|
|
11690
12054
|
query?: {
|
|
@@ -11725,6 +12089,8 @@ export interface operations {
|
|
|
11725
12089
|
deliveries: {
|
|
11726
12090
|
total: number;
|
|
11727
12091
|
delivered: number;
|
|
12092
|
+
failed: number;
|
|
12093
|
+
pending: number;
|
|
11728
12094
|
};
|
|
11729
12095
|
} & {
|
|
11730
12096
|
[key: string]: unknown;
|
|
@@ -11956,6 +12322,8 @@ export interface operations {
|
|
|
11956
12322
|
deliveries: {
|
|
11957
12323
|
total: number;
|
|
11958
12324
|
delivered: number;
|
|
12325
|
+
failed: number;
|
|
12326
|
+
pending: number;
|
|
11959
12327
|
};
|
|
11960
12328
|
} & {
|
|
11961
12329
|
[key: string]: unknown;
|
|
@@ -12212,10 +12580,20 @@ export interface operations {
|
|
|
12212
12580
|
isActive: boolean;
|
|
12213
12581
|
/** Format: date-time */
|
|
12214
12582
|
suspendedAt: string | null;
|
|
12583
|
+
/** Format: date-time */
|
|
12584
|
+
lastTestAt: string | null;
|
|
12585
|
+
lastTestStatus: number | null;
|
|
12586
|
+
lastTestError: string | null;
|
|
12215
12587
|
project: {
|
|
12216
12588
|
id: string;
|
|
12217
12589
|
name: string;
|
|
12218
12590
|
} | null;
|
|
12591
|
+
reach: {
|
|
12592
|
+
/** @enum {string} */
|
|
12593
|
+
scope: "ACCOUNT" | "PROJECT";
|
|
12594
|
+
projects: number;
|
|
12595
|
+
includesFutureProjects: boolean;
|
|
12596
|
+
};
|
|
12219
12597
|
}[];
|
|
12220
12598
|
meta: {
|
|
12221
12599
|
/** @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 +12830,20 @@ export interface operations {
|
|
|
12452
12830
|
isActive: boolean;
|
|
12453
12831
|
/** Format: date-time */
|
|
12454
12832
|
suspendedAt: string | null;
|
|
12833
|
+
/** Format: date-time */
|
|
12834
|
+
lastTestAt: string | null;
|
|
12835
|
+
lastTestStatus: number | null;
|
|
12836
|
+
lastTestError: string | null;
|
|
12455
12837
|
project: {
|
|
12456
12838
|
id: string;
|
|
12457
12839
|
name: string;
|
|
12458
12840
|
} | null;
|
|
12841
|
+
reach: {
|
|
12842
|
+
/** @enum {string} */
|
|
12843
|
+
scope: "ACCOUNT" | "PROJECT";
|
|
12844
|
+
projects: number;
|
|
12845
|
+
includesFutureProjects: boolean;
|
|
12846
|
+
};
|
|
12459
12847
|
};
|
|
12460
12848
|
signingSecret: string;
|
|
12461
12849
|
};
|
|
@@ -12915,10 +13303,20 @@ export interface operations {
|
|
|
12915
13303
|
isActive: boolean;
|
|
12916
13304
|
/** Format: date-time */
|
|
12917
13305
|
suspendedAt: string | null;
|
|
13306
|
+
/** Format: date-time */
|
|
13307
|
+
lastTestAt: string | null;
|
|
13308
|
+
lastTestStatus: number | null;
|
|
13309
|
+
lastTestError: string | null;
|
|
12918
13310
|
project: {
|
|
12919
13311
|
id: string;
|
|
12920
13312
|
name: string;
|
|
12921
13313
|
} | null;
|
|
13314
|
+
reach: {
|
|
13315
|
+
/** @enum {string} */
|
|
13316
|
+
scope: "ACCOUNT" | "PROJECT";
|
|
13317
|
+
projects: number;
|
|
13318
|
+
includesFutureProjects: boolean;
|
|
13319
|
+
};
|
|
12922
13320
|
};
|
|
12923
13321
|
meta: {
|
|
12924
13322
|
/** @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. */
|