@stackfactor/client-api 1.20.1 → 1.20.2

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.
@@ -66,6 +66,16 @@ export interface SyncOutcome {
66
66
  /** How many documents the source holds, when the run counted them. */
67
67
  count?: number;
68
68
  lastError?: string | null;
69
+ /**
70
+ * True when the run listed the whole source, so the backend may remove what
71
+ * the source no longer holds. A run that registered can say so even if it was
72
+ * cancelled or failed while processing.
73
+ */
74
+ exhaustive?: boolean;
75
+ /** Listed ids the run did not ingest; ignored by the backend for a run that registered. */
76
+ notIngested?: string[];
77
+ /** True when the run registered its listing (the two-phase flow). */
78
+ registered?: boolean;
69
79
  }
70
80
  /** Which page of the source to list. */
71
81
  export interface DocumentPage {
@@ -89,10 +99,33 @@ export interface ListedDocument {
89
99
  mimeType?: string;
90
100
  [field: string]: unknown;
91
101
  }
102
+ /** What registering one page of the listing came to: counts of the entries it held. */
103
+ export interface RegisteredDocuments {
104
+ /** Every entry accepted: `toProcess + unchanged + blocked + inProgress + repeated`. */
105
+ registered: number;
106
+ /** New, changed since its last ingest, not settled, or listed without a version: to be ingested in full. */
107
+ toProcess: number;
108
+ /** Settled and unchanged: only their ACL is read. */
109
+ unchanged: number;
110
+ /** Left as they are: held by a reviewer. */
111
+ blocked: number;
112
+ /** Left as they are: being ingested by another request. */
113
+ inProgress: number;
114
+ /** An id this run had already registered, so counted once. */
115
+ repeated: number;
116
+ }
117
+ /** A registered document handed out for ingestion. */
118
+ export interface QueuedDocument {
119
+ /** The document's id in the knowledge base, to ingest by. */
120
+ documentId: string;
121
+ /** The source's own id for it. */
122
+ externalId: string;
123
+ name: string | null;
124
+ }
92
125
  /** What ingesting one document came to. */
93
126
  export interface IngestOutcome {
94
127
  documentId: string | null;
95
- /** created · updated · unchanged_bytes · unchanged_content · failed · in_progress */
128
+ /** created · updated · unchanged_bytes · unchanged_content · unchanged_version · failed · quarantined · blocked · in_progress */
96
129
  outcome: string;
97
130
  /** Why it failed, for a failed outcome. */
98
131
  error?: string;
@@ -137,7 +170,7 @@ export declare const startSync: (knowledgeBaseId: string, sourceId: string, corr
137
170
  * POST /api/v1/knowledge-base/:id/sources/:sourceId/sync/finish
138
171
  * @param {String} knowledgeBaseId The knowledge base
139
172
  * @param {String} sourceId The source subdocument
140
- * @param {SyncOutcome} outcome `completed`, and `count`, `lastError`, `correlationId` when there are any
173
+ * @param {SyncOutcome} outcome `completed`, and `count`, `lastError`, `correlationId`, `exhaustive`, `notIngested`, `registered` when there are any
141
174
  * @param {String} token The run's AGENT token
142
175
  * @returns {Promise<{ok: true}>}
143
176
  */
@@ -198,4 +231,46 @@ export declare const listSourceDocuments: (knowledgeBaseId: string, sourceId: st
198
231
  * @returns {Promise<IngestOutcome>}
199
232
  */
200
233
  export declare const ingestDocument: (knowledgeBaseId: string, sourceId: string, document: ListedDocument, correlationId: string | null, token: string) => Promise<IngestOutcome>;
234
+ /**
235
+ * Registers one listed page: the backend stores each entry, tells which
236
+ * documents changed since their last ingest, and marks them for this run. The
237
+ * run calls it once per page and ingests nothing until the listing has ended.
238
+ * An id listed twice in the run is counted once (`repeated`).
239
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents/register
240
+ * @param {String} knowledgeBaseId The knowledge base
241
+ * @param {String} sourceId The source subdocument
242
+ * @param {String} correlationId The run's own correlation id; the backend refuses any other
243
+ * @param {ListedDocument[]} documents One page of entries, as the connector listed them
244
+ * @param {String} token The run's AGENT token
245
+ * @returns {Promise<RegisteredDocuments>}
246
+ */
247
+ export declare const registerSourceDocuments: (knowledgeBaseId: string, sourceId: string, correlationId: string, documents: ListedDocument[], token: string) => Promise<RegisteredDocuments>;
248
+ /**
249
+ * Pulls the next documents this run is to process. Each document is handed out
250
+ * once, so concurrent pullers never get the same one; an empty list means
251
+ * nothing is left.
252
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents/next
253
+ * @param {String} knowledgeBaseId The knowledge base
254
+ * @param {String} sourceId The source subdocument
255
+ * @param {String} correlationId The run's correlation id; the backend refuses any other
256
+ * @param {Number} limit How many at most, 1–50; the backend refuses any other
257
+ * @param {String} token The run's AGENT token
258
+ * @returns {Promise<{documents: QueuedDocument[]}>}
259
+ */
260
+ export declare const nextSourceDocuments: (knowledgeBaseId: string, sourceId: string, correlationId: string, limit: number, token: string) => Promise<{
261
+ documents: QueuedDocument[];
262
+ }>;
263
+ /**
264
+ * Ingests a document the run registered, by its id: the backend already holds
265
+ * the listed entry. Answers as `ingestDocument` does; a document that could not
266
+ * be ingested is an outcome, not a rejection.
267
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents
268
+ * @param {String} knowledgeBaseId The knowledge base
269
+ * @param {String} sourceId The source subdocument
270
+ * @param {String} documentId The `documentId` of a `QueuedDocument`
271
+ * @param {String} correlationId The run's correlation id
272
+ * @param {String} token The run's AGENT token
273
+ * @returns {Promise<IngestOutcome>}
274
+ */
275
+ export declare const ingestRegisteredDocument: (knowledgeBaseId: string, sourceId: string, documentId: string, correlationId: string, token: string) => Promise<IngestOutcome>;
201
276
  //# sourceMappingURL=knowledgeBaseAgent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledgeBaseAgent.d.ts","sourceRoot":"","sources":["../../../src/lib/knowledgeBaseAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledgeBaseAgent.d.ts","sourceRoot":"","sources":["../../../src/lib/knowledgeBaseAgent.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ingestDocument = exports.listSourceDocuments = exports.reportAccounts = exports.finishSync = exports.startSync = exports.search = void 0;
3
+ exports.ingestRegisteredDocument = exports.nextSourceDocuments = exports.registerSourceDocuments = exports.ingestDocument = exports.listSourceDocuments = exports.reportAccounts = exports.finishSync = exports.startSync = exports.search = void 0;
4
4
  const axiosClient_js_1 = require("./axiosClient.js");
5
5
  //
6
6
  // The knowledge-base calls an agent run makes.
@@ -13,10 +13,15 @@ const axiosClient_js_1 = require("./axiosClient.js");
13
13
  // to synchronise (and to report a source's accounts). There is no user-facing
14
14
  // search: retrieval is internal to the agents by design.
15
15
  //
16
- // The sync agent is data-blind. It orchestrates — one page of documents at a
17
- // time, one document at a time — and the backend does the work: fetching,
18
- // parsing, chunking and embedding happen there, and the answers carry outcomes
19
- // and counts, never the content.
16
+ // The sync agent is data-blind. It orchestrates and the backend does the work:
17
+ // fetching, parsing, chunking and embedding happen there, and the answers carry
18
+ // outcomes and counts, never the content. A run lists, registers, then pulls:
19
+ // it lists the source page by page and registers each page
20
+ // (`registerSourceDocuments`), so the whole source is known before any
21
+ // document is ingested; it then asks for the documents to process in batches
22
+ // (`nextSourceDocuments`) and ingests each by id
23
+ // (`ingestRegisteredDocument`). `ingestDocument`, which takes the listed entry
24
+ // itself, stays for agents still running the page-by-page flow.
20
25
  //
21
26
  const BASE = "/api/v1/knowledge-base";
22
27
  const sourceOf = (knowledgeBaseId, sourceId) => `${BASE}/${encodeURIComponent(knowledgeBaseId)}/sources/${encodeURIComponent(sourceId)}`;
@@ -60,7 +65,7 @@ exports.startSync = startSync;
60
65
  * POST /api/v1/knowledge-base/:id/sources/:sourceId/sync/finish
61
66
  * @param {String} knowledgeBaseId The knowledge base
62
67
  * @param {String} sourceId The source subdocument
63
- * @param {SyncOutcome} outcome `completed`, and `count`, `lastError`, `correlationId` when there are any
68
+ * @param {SyncOutcome} outcome `completed`, and `count`, `lastError`, `correlationId`, `exhaustive`, `notIngested`, `registered` when there are any
64
69
  * @param {String} token The run's AGENT token
65
70
  * @returns {Promise<{ok: true}>}
66
71
  */
@@ -110,4 +115,47 @@ exports.listSourceDocuments = listSourceDocuments;
110
115
  */
111
116
  const ingestDocument = (knowledgeBaseId, sourceId, document, correlationId, token) => answer(axiosClient_js_1.client.post(`${sourceOf(knowledgeBaseId, sourceId)}/documents`, { document, ...(correlationId ? { correlationId } : {}) }, headers(token)));
112
117
  exports.ingestDocument = ingestDocument;
118
+ /**
119
+ * Registers one listed page: the backend stores each entry, tells which
120
+ * documents changed since their last ingest, and marks them for this run. The
121
+ * run calls it once per page and ingests nothing until the listing has ended.
122
+ * An id listed twice in the run is counted once (`repeated`).
123
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents/register
124
+ * @param {String} knowledgeBaseId The knowledge base
125
+ * @param {String} sourceId The source subdocument
126
+ * @param {String} correlationId The run's own correlation id; the backend refuses any other
127
+ * @param {ListedDocument[]} documents One page of entries, as the connector listed them
128
+ * @param {String} token The run's AGENT token
129
+ * @returns {Promise<RegisteredDocuments>}
130
+ */
131
+ const registerSourceDocuments = (knowledgeBaseId, sourceId, correlationId, documents, token) => answer(axiosClient_js_1.client.post(`${sourceOf(knowledgeBaseId, sourceId)}/documents/register`, { correlationId, documents }, headers(token)));
132
+ exports.registerSourceDocuments = registerSourceDocuments;
133
+ /**
134
+ * Pulls the next documents this run is to process. Each document is handed out
135
+ * once, so concurrent pullers never get the same one; an empty list means
136
+ * nothing is left.
137
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents/next
138
+ * @param {String} knowledgeBaseId The knowledge base
139
+ * @param {String} sourceId The source subdocument
140
+ * @param {String} correlationId The run's correlation id; the backend refuses any other
141
+ * @param {Number} limit How many at most, 1–50; the backend refuses any other
142
+ * @param {String} token The run's AGENT token
143
+ * @returns {Promise<{documents: QueuedDocument[]}>}
144
+ */
145
+ const nextSourceDocuments = (knowledgeBaseId, sourceId, correlationId, limit, token) => answer(axiosClient_js_1.client.post(`${sourceOf(knowledgeBaseId, sourceId)}/documents/next`, { correlationId, limit }, headers(token)));
146
+ exports.nextSourceDocuments = nextSourceDocuments;
147
+ /**
148
+ * Ingests a document the run registered, by its id: the backend already holds
149
+ * the listed entry. Answers as `ingestDocument` does; a document that could not
150
+ * be ingested is an outcome, not a rejection.
151
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents
152
+ * @param {String} knowledgeBaseId The knowledge base
153
+ * @param {String} sourceId The source subdocument
154
+ * @param {String} documentId The `documentId` of a `QueuedDocument`
155
+ * @param {String} correlationId The run's correlation id
156
+ * @param {String} token The run's AGENT token
157
+ * @returns {Promise<IngestOutcome>}
158
+ */
159
+ const ingestRegisteredDocument = (knowledgeBaseId, sourceId, documentId, correlationId, token) => answer(axiosClient_js_1.client.post(`${sourceOf(knowledgeBaseId, sourceId)}/documents`, { documentId, correlationId }, headers(token)));
160
+ exports.ingestRegisteredDocument = ingestRegisteredDocument;
113
161
  //# sourceMappingURL=knowledgeBaseAgent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledgeBaseAgent.js","sourceRoot":"","sources":["../../../src/lib/knowledgeBaseAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledgeBaseAgent.js","sourceRoot":"","sources":["../../../src/lib/knowledgeBaseAgent.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,16 @@ export interface SyncOutcome {
66
66
  /** How many documents the source holds, when the run counted them. */
67
67
  count?: number;
68
68
  lastError?: string | null;
69
+ /**
70
+ * True when the run listed the whole source, so the backend may remove what
71
+ * the source no longer holds. A run that registered can say so even if it was
72
+ * cancelled or failed while processing.
73
+ */
74
+ exhaustive?: boolean;
75
+ /** Listed ids the run did not ingest; ignored by the backend for a run that registered. */
76
+ notIngested?: string[];
77
+ /** True when the run registered its listing (the two-phase flow). */
78
+ registered?: boolean;
69
79
  }
70
80
  /** Which page of the source to list. */
71
81
  export interface DocumentPage {
@@ -89,10 +99,33 @@ export interface ListedDocument {
89
99
  mimeType?: string;
90
100
  [field: string]: unknown;
91
101
  }
102
+ /** What registering one page of the listing came to: counts of the entries it held. */
103
+ export interface RegisteredDocuments {
104
+ /** Every entry accepted: `toProcess + unchanged + blocked + inProgress + repeated`. */
105
+ registered: number;
106
+ /** New, changed since its last ingest, not settled, or listed without a version: to be ingested in full. */
107
+ toProcess: number;
108
+ /** Settled and unchanged: only their ACL is read. */
109
+ unchanged: number;
110
+ /** Left as they are: held by a reviewer. */
111
+ blocked: number;
112
+ /** Left as they are: being ingested by another request. */
113
+ inProgress: number;
114
+ /** An id this run had already registered, so counted once. */
115
+ repeated: number;
116
+ }
117
+ /** A registered document handed out for ingestion. */
118
+ export interface QueuedDocument {
119
+ /** The document's id in the knowledge base, to ingest by. */
120
+ documentId: string;
121
+ /** The source's own id for it. */
122
+ externalId: string;
123
+ name: string | null;
124
+ }
92
125
  /** What ingesting one document came to. */
93
126
  export interface IngestOutcome {
94
127
  documentId: string | null;
95
- /** created · updated · unchanged_bytes · unchanged_content · failed · in_progress */
128
+ /** created · updated · unchanged_bytes · unchanged_content · unchanged_version · failed · quarantined · blocked · in_progress */
96
129
  outcome: string;
97
130
  /** Why it failed, for a failed outcome. */
98
131
  error?: string;
@@ -137,7 +170,7 @@ export declare const startSync: (knowledgeBaseId: string, sourceId: string, corr
137
170
  * POST /api/v1/knowledge-base/:id/sources/:sourceId/sync/finish
138
171
  * @param {String} knowledgeBaseId The knowledge base
139
172
  * @param {String} sourceId The source subdocument
140
- * @param {SyncOutcome} outcome `completed`, and `count`, `lastError`, `correlationId` when there are any
173
+ * @param {SyncOutcome} outcome `completed`, and `count`, `lastError`, `correlationId`, `exhaustive`, `notIngested`, `registered` when there are any
141
174
  * @param {String} token The run's AGENT token
142
175
  * @returns {Promise<{ok: true}>}
143
176
  */
@@ -198,4 +231,46 @@ export declare const listSourceDocuments: (knowledgeBaseId: string, sourceId: st
198
231
  * @returns {Promise<IngestOutcome>}
199
232
  */
200
233
  export declare const ingestDocument: (knowledgeBaseId: string, sourceId: string, document: ListedDocument, correlationId: string | null, token: string) => Promise<IngestOutcome>;
234
+ /**
235
+ * Registers one listed page: the backend stores each entry, tells which
236
+ * documents changed since their last ingest, and marks them for this run. The
237
+ * run calls it once per page and ingests nothing until the listing has ended.
238
+ * An id listed twice in the run is counted once (`repeated`).
239
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents/register
240
+ * @param {String} knowledgeBaseId The knowledge base
241
+ * @param {String} sourceId The source subdocument
242
+ * @param {String} correlationId The run's own correlation id; the backend refuses any other
243
+ * @param {ListedDocument[]} documents One page of entries, as the connector listed them
244
+ * @param {String} token The run's AGENT token
245
+ * @returns {Promise<RegisteredDocuments>}
246
+ */
247
+ export declare const registerSourceDocuments: (knowledgeBaseId: string, sourceId: string, correlationId: string, documents: ListedDocument[], token: string) => Promise<RegisteredDocuments>;
248
+ /**
249
+ * Pulls the next documents this run is to process. Each document is handed out
250
+ * once, so concurrent pullers never get the same one; an empty list means
251
+ * nothing is left.
252
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents/next
253
+ * @param {String} knowledgeBaseId The knowledge base
254
+ * @param {String} sourceId The source subdocument
255
+ * @param {String} correlationId The run's correlation id; the backend refuses any other
256
+ * @param {Number} limit How many at most, 1–50; the backend refuses any other
257
+ * @param {String} token The run's AGENT token
258
+ * @returns {Promise<{documents: QueuedDocument[]}>}
259
+ */
260
+ export declare const nextSourceDocuments: (knowledgeBaseId: string, sourceId: string, correlationId: string, limit: number, token: string) => Promise<{
261
+ documents: QueuedDocument[];
262
+ }>;
263
+ /**
264
+ * Ingests a document the run registered, by its id: the backend already holds
265
+ * the listed entry. Answers as `ingestDocument` does; a document that could not
266
+ * be ingested is an outcome, not a rejection.
267
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents
268
+ * @param {String} knowledgeBaseId The knowledge base
269
+ * @param {String} sourceId The source subdocument
270
+ * @param {String} documentId The `documentId` of a `QueuedDocument`
271
+ * @param {String} correlationId The run's correlation id
272
+ * @param {String} token The run's AGENT token
273
+ * @returns {Promise<IngestOutcome>}
274
+ */
275
+ export declare const ingestRegisteredDocument: (knowledgeBaseId: string, sourceId: string, documentId: string, correlationId: string, token: string) => Promise<IngestOutcome>;
201
276
  //# sourceMappingURL=knowledgeBaseAgent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledgeBaseAgent.d.ts","sourceRoot":"","sources":["../../../src/lib/knowledgeBaseAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledgeBaseAgent.d.ts","sourceRoot":"","sources":["../../../src/lib/knowledgeBaseAgent.ts"],"names":[],"mappings":"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"}
@@ -10,10 +10,15 @@ import { client } from "./axiosClient.js";
10
10
  // to synchronise (and to report a source's accounts). There is no user-facing
11
11
  // search: retrieval is internal to the agents by design.
12
12
  //
13
- // The sync agent is data-blind. It orchestrates — one page of documents at a
14
- // time, one document at a time — and the backend does the work: fetching,
15
- // parsing, chunking and embedding happen there, and the answers carry outcomes
16
- // and counts, never the content.
13
+ // The sync agent is data-blind. It orchestrates and the backend does the work:
14
+ // fetching, parsing, chunking and embedding happen there, and the answers carry
15
+ // outcomes and counts, never the content. A run lists, registers, then pulls:
16
+ // it lists the source page by page and registers each page
17
+ // (`registerSourceDocuments`), so the whole source is known before any
18
+ // document is ingested; it then asks for the documents to process in batches
19
+ // (`nextSourceDocuments`) and ingests each by id
20
+ // (`ingestRegisteredDocument`). `ingestDocument`, which takes the listed entry
21
+ // itself, stays for agents still running the page-by-page flow.
17
22
  //
18
23
  const BASE = "/api/v1/knowledge-base";
19
24
  const sourceOf = (knowledgeBaseId, sourceId) => `${BASE}/${encodeURIComponent(knowledgeBaseId)}/sources/${encodeURIComponent(sourceId)}`;
@@ -55,7 +60,7 @@ export const startSync = (knowledgeBaseId, sourceId, correlationId, token) => an
55
60
  * POST /api/v1/knowledge-base/:id/sources/:sourceId/sync/finish
56
61
  * @param {String} knowledgeBaseId The knowledge base
57
62
  * @param {String} sourceId The source subdocument
58
- * @param {SyncOutcome} outcome `completed`, and `count`, `lastError`, `correlationId` when there are any
63
+ * @param {SyncOutcome} outcome `completed`, and `count`, `lastError`, `correlationId`, `exhaustive`, `notIngested`, `registered` when there are any
59
64
  * @param {String} token The run's AGENT token
60
65
  * @returns {Promise<{ok: true}>}
61
66
  */
@@ -101,4 +106,44 @@ export const listSourceDocuments = (knowledgeBaseId, sourceId, page, token) => a
101
106
  * @returns {Promise<IngestOutcome>}
102
107
  */
103
108
  export const ingestDocument = (knowledgeBaseId, sourceId, document, correlationId, token) => answer(client.post(`${sourceOf(knowledgeBaseId, sourceId)}/documents`, { document, ...(correlationId ? { correlationId } : {}) }, headers(token)));
109
+ /**
110
+ * Registers one listed page: the backend stores each entry, tells which
111
+ * documents changed since their last ingest, and marks them for this run. The
112
+ * run calls it once per page and ingests nothing until the listing has ended.
113
+ * An id listed twice in the run is counted once (`repeated`).
114
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents/register
115
+ * @param {String} knowledgeBaseId The knowledge base
116
+ * @param {String} sourceId The source subdocument
117
+ * @param {String} correlationId The run's own correlation id; the backend refuses any other
118
+ * @param {ListedDocument[]} documents One page of entries, as the connector listed them
119
+ * @param {String} token The run's AGENT token
120
+ * @returns {Promise<RegisteredDocuments>}
121
+ */
122
+ export const registerSourceDocuments = (knowledgeBaseId, sourceId, correlationId, documents, token) => answer(client.post(`${sourceOf(knowledgeBaseId, sourceId)}/documents/register`, { correlationId, documents }, headers(token)));
123
+ /**
124
+ * Pulls the next documents this run is to process. Each document is handed out
125
+ * once, so concurrent pullers never get the same one; an empty list means
126
+ * nothing is left.
127
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents/next
128
+ * @param {String} knowledgeBaseId The knowledge base
129
+ * @param {String} sourceId The source subdocument
130
+ * @param {String} correlationId The run's correlation id; the backend refuses any other
131
+ * @param {Number} limit How many at most, 1–50; the backend refuses any other
132
+ * @param {String} token The run's AGENT token
133
+ * @returns {Promise<{documents: QueuedDocument[]}>}
134
+ */
135
+ export const nextSourceDocuments = (knowledgeBaseId, sourceId, correlationId, limit, token) => answer(client.post(`${sourceOf(knowledgeBaseId, sourceId)}/documents/next`, { correlationId, limit }, headers(token)));
136
+ /**
137
+ * Ingests a document the run registered, by its id: the backend already holds
138
+ * the listed entry. Answers as `ingestDocument` does; a document that could not
139
+ * be ingested is an outcome, not a rejection.
140
+ * POST /api/v1/knowledge-base/:id/sources/:sourceId/documents
141
+ * @param {String} knowledgeBaseId The knowledge base
142
+ * @param {String} sourceId The source subdocument
143
+ * @param {String} documentId The `documentId` of a `QueuedDocument`
144
+ * @param {String} correlationId The run's correlation id
145
+ * @param {String} token The run's AGENT token
146
+ * @returns {Promise<IngestOutcome>}
147
+ */
148
+ export const ingestRegisteredDocument = (knowledgeBaseId, sourceId, documentId, correlationId, token) => answer(client.post(`${sourceOf(knowledgeBaseId, sourceId)}/documents`, { documentId, correlationId }, headers(token)));
104
149
  //# sourceMappingURL=knowledgeBaseAgent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledgeBaseAgent.js","sourceRoot":"","sources":["../../../src/lib/knowledgeBaseAgent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledgeBaseAgent.js","sourceRoot":"","sources":["../../../src/lib/knowledgeBaseAgent.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stackfactor/client-api",
3
- "version": "1.20.1",
3
+ "version": "1.20.2",
4
4
  "description": "Node.js library for the StackFactor API",
5
5
  "publishConfig": {
6
6
  "access": "public"