@epilot/sdk 2.15.14 → 2.15.15
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/definitions/integration-toolkit-runtime.json +1 -1
- package/definitions/integration-toolkit.json +492 -2
- package/dist/apis/access-token.cjs +6 -6
- package/dist/apis/access-token.js +1 -1
- package/dist/apis/address-suggestions.cjs +6 -6
- package/dist/apis/address-suggestions.js +1 -1
- package/dist/apis/address.cjs +6 -6
- package/dist/apis/address.js +1 -1
- package/dist/apis/ai-agents.cjs +6 -6
- package/dist/apis/ai-agents.js +1 -1
- package/dist/apis/app.cjs +6 -6
- package/dist/apis/app.js +1 -1
- package/dist/apis/audit-logs.cjs +6 -6
- package/dist/apis/audit-logs.js +1 -1
- package/dist/apis/automation.cjs +6 -6
- package/dist/apis/automation.js +1 -1
- package/dist/apis/billing.cjs +6 -6
- package/dist/apis/billing.js +1 -1
- package/dist/apis/blueprint-manifest.cjs +6 -6
- package/dist/apis/blueprint-manifest.js +1 -1
- package/dist/apis/calendar.cjs +6 -6
- package/dist/apis/calendar.js +1 -1
- package/dist/apis/configuration-hub.cjs +6 -6
- package/dist/apis/configuration-hub.js +1 -1
- package/dist/apis/consent.cjs +6 -6
- package/dist/apis/consent.js +1 -1
- package/dist/apis/customer-portal.cjs +6 -6
- package/dist/apis/customer-portal.js +1 -1
- package/dist/apis/dashboard.cjs +6 -6
- package/dist/apis/dashboard.js +1 -1
- package/dist/apis/data-governance.cjs +6 -6
- package/dist/apis/data-governance.js +1 -1
- package/dist/apis/deduplication.cjs +6 -6
- package/dist/apis/deduplication.js +1 -1
- package/dist/apis/design.cjs +6 -6
- package/dist/apis/design.js +1 -1
- package/dist/apis/document.cjs +6 -6
- package/dist/apis/document.js +1 -1
- package/dist/apis/email-settings.cjs +6 -6
- package/dist/apis/email-settings.js +1 -1
- package/dist/apis/email-template.cjs +6 -6
- package/dist/apis/email-template.js +1 -1
- package/dist/apis/entity-mapping.cjs +6 -6
- package/dist/apis/entity-mapping.js +1 -1
- package/dist/apis/entity.cjs +6 -6
- package/dist/apis/entity.js +1 -1
- package/dist/apis/environments.cjs +6 -6
- package/dist/apis/environments.js +1 -1
- package/dist/apis/event-catalog.cjs +6 -6
- package/dist/apis/event-catalog.js +1 -1
- package/dist/apis/file.cjs +6 -6
- package/dist/apis/file.js +1 -1
- package/dist/apis/iban.cjs +6 -6
- package/dist/apis/iban.js +1 -1
- package/dist/apis/integration-toolkit.cjs +8 -8
- package/dist/apis/integration-toolkit.d.cts +2 -2
- package/dist/apis/integration-toolkit.d.ts +2 -2
- package/dist/apis/integration-toolkit.js +2 -2
- package/dist/apis/journey.cjs +6 -6
- package/dist/apis/journey.js +1 -1
- package/dist/apis/kanban.cjs +6 -6
- package/dist/apis/kanban.js +1 -1
- package/dist/apis/message.cjs +6 -6
- package/dist/apis/message.js +1 -1
- package/dist/apis/metering.cjs +6 -6
- package/dist/apis/metering.js +1 -1
- package/dist/apis/notes.cjs +6 -6
- package/dist/apis/notes.js +1 -1
- package/dist/apis/notification.cjs +6 -6
- package/dist/apis/notification.js +1 -1
- package/dist/apis/organization.cjs +6 -6
- package/dist/apis/organization.js +1 -1
- package/dist/apis/partner-directory.cjs +6 -6
- package/dist/apis/partner-directory.js +1 -1
- package/dist/apis/permissions.cjs +6 -6
- package/dist/apis/permissions.js +1 -1
- package/dist/apis/pricing-tier.cjs +6 -6
- package/dist/apis/pricing-tier.js +1 -1
- package/dist/apis/pricing.cjs +6 -6
- package/dist/apis/pricing.js +1 -1
- package/dist/apis/purpose.cjs +6 -6
- package/dist/apis/purpose.js +1 -1
- package/dist/apis/query.cjs +6 -6
- package/dist/apis/query.js +1 -1
- package/dist/apis/sandbox.cjs +6 -6
- package/dist/apis/sandbox.js +1 -1
- package/dist/apis/sharing.cjs +6 -6
- package/dist/apis/sharing.js +1 -1
- package/dist/apis/snapshot.cjs +6 -6
- package/dist/apis/snapshot.js +1 -1
- package/dist/apis/submission.cjs +6 -6
- package/dist/apis/submission.js +1 -1
- package/dist/apis/target.cjs +6 -6
- package/dist/apis/target.js +1 -1
- package/dist/apis/targeting.cjs +6 -6
- package/dist/apis/targeting.js +1 -1
- package/dist/apis/template-variables.cjs +6 -6
- package/dist/apis/template-variables.js +1 -1
- package/dist/apis/user.cjs +6 -6
- package/dist/apis/user.js +1 -1
- package/dist/apis/validation-rules.cjs +6 -6
- package/dist/apis/validation-rules.js +1 -1
- package/dist/apis/webhooks.cjs +6 -6
- package/dist/apis/webhooks.js +1 -1
- package/dist/apis/workflow-definition.cjs +6 -6
- package/dist/apis/workflow-definition.js +1 -1
- package/dist/apis/workflow.cjs +6 -6
- package/dist/apis/workflow.js +1 -1
- package/dist/{chunk-7YXY2AFM.cjs → chunk-QXKCYTF3.cjs} +1 -1
- package/dist/{chunk-U6KIZOOU.js → chunk-RJHXXGJ3.js} +1 -1
- package/dist/{chunk-SVVKPKJX.js → chunk-UCCKYJMU.js} +2 -2
- package/dist/{chunk-WQ4S6ZH3.cjs → chunk-X3MPAK4C.cjs} +2 -2
- package/dist/index.cjs +10 -10
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/integration-toolkit-DEKRQV2C.js +7 -0
- package/dist/integration-toolkit-GPRIODXO.cjs +7 -0
- package/dist/{integration-toolkit-runtime-SX6HZTRB.cjs → integration-toolkit-runtime-PI5G3OXL.cjs} +2 -2
- package/dist/{integration-toolkit-runtime-O4742UZV.js → integration-toolkit-runtime-VUOXZ6HU.js} +1 -1
- package/dist/{integration-toolkit.d-BUCHo8ZQ.d.cts → integration-toolkit.d-DUJR0HBY.d.cts} +332 -1
- package/dist/{integration-toolkit.d-BUCHo8ZQ.d.ts → integration-toolkit.d-DUJR0HBY.d.ts} +332 -1
- package/docs/integration-toolkit.md +367 -0
- package/package.json +1 -1
- package/dist/integration-toolkit-MQ6PTYCJ.cjs +0 -7
- package/dist/integration-toolkit-Y43WV22G.js +0 -7
|
@@ -88,7 +88,22 @@ const { data } = await integrationToolkitClient.acknowledgeTracking(...)
|
|
|
88
88
|
**managed-call**
|
|
89
89
|
- [`managedCallExecute`](#managedcallexecute)
|
|
90
90
|
|
|
91
|
+
**erp-imports**
|
|
92
|
+
- [`createErpImport`](#createerpimport)
|
|
93
|
+
- [`listErpImports`](#listerpimports)
|
|
94
|
+
- [`getErpImport`](#geterpimport)
|
|
95
|
+
- [`executeErpImport`](#executeerpimport)
|
|
96
|
+
- [`abortErpImport`](#aborterpimport)
|
|
97
|
+
|
|
91
98
|
**Schemas**
|
|
99
|
+
- [`S3Reference`](#s3reference)
|
|
100
|
+
- [`CreateErpImportRequest`](#createerpimportrequest)
|
|
101
|
+
- [`ErpImportValidation`](#erpimportvalidation)
|
|
102
|
+
- [`ErpImportProgress`](#erpimportprogress)
|
|
103
|
+
- [`ErpImportError`](#erpimporterror)
|
|
104
|
+
- [`CreateErpImportResponse`](#createerpimportresponse)
|
|
105
|
+
- [`ErpImportJob`](#erpimportjob)
|
|
106
|
+
- [`ErpImportList`](#erpimportlist)
|
|
92
107
|
- [`NotificationHistoryItem`](#notificationhistoryitem)
|
|
93
108
|
- [`NotificationHistoryResponse`](#notificationhistoryresponse)
|
|
94
109
|
- [`TestNotificationRequest`](#testnotificationrequest)
|
|
@@ -953,6 +968,15 @@ const { data } = await client.replayEvents(
|
|
|
953
968
|
|
|
954
969
|
```json
|
|
955
970
|
{
|
|
971
|
+
"replayed": 2,
|
|
972
|
+
"results": [
|
|
973
|
+
{
|
|
974
|
+
"event_id": "string",
|
|
975
|
+
"status": "success",
|
|
976
|
+
"replay_event_id": "string",
|
|
977
|
+
"message": "string"
|
|
978
|
+
}
|
|
979
|
+
],
|
|
956
980
|
"event_ids": ["string"]
|
|
957
981
|
}
|
|
958
982
|
```
|
|
@@ -3075,8 +3099,351 @@ const { data } = await client.commitTypes(
|
|
|
3075
3099
|
|
|
3076
3100
|
---
|
|
3077
3101
|
|
|
3102
|
+
### `createErpImport`
|
|
3103
|
+
|
|
3104
|
+
Create a pricing-file import job from an already-uploaded file (S3 ref). Returns a job id and starts the validate phase asynchronously — poll GET /v2/erp/imports/{importId}.
|
|
3105
|
+
|
|
3106
|
+
`POST /v2/erp/imports`
|
|
3107
|
+
|
|
3108
|
+
```ts
|
|
3109
|
+
const { data } = await client.createErpImport(
|
|
3110
|
+
null,
|
|
3111
|
+
{
|
|
3112
|
+
s3_reference: {
|
|
3113
|
+
bucket: 'string',
|
|
3114
|
+
key: 'string'
|
|
3115
|
+
},
|
|
3116
|
+
integration_id: 'string',
|
|
3117
|
+
use_case_slug: 'string'
|
|
3118
|
+
},
|
|
3119
|
+
)
|
|
3120
|
+
```
|
|
3121
|
+
|
|
3122
|
+
---
|
|
3123
|
+
|
|
3124
|
+
### `listErpImports`
|
|
3125
|
+
|
|
3126
|
+
List recent pricing-file import jobs for the org, newest first.
|
|
3127
|
+
|
|
3128
|
+
`GET /v2/erp/imports`
|
|
3129
|
+
|
|
3130
|
+
```ts
|
|
3131
|
+
const { data } = await client.listErpImports({
|
|
3132
|
+
limit: 1,
|
|
3133
|
+
cursor: 'example',
|
|
3134
|
+
})
|
|
3135
|
+
```
|
|
3136
|
+
|
|
3137
|
+
<details>
|
|
3138
|
+
<summary>Response</summary>
|
|
3139
|
+
|
|
3140
|
+
```json
|
|
3141
|
+
{
|
|
3142
|
+
"results": [
|
|
3143
|
+
{
|
|
3144
|
+
"import_id": "string",
|
|
3145
|
+
"org_id": "string",
|
|
3146
|
+
"created_by": "string",
|
|
3147
|
+
"integration_id": "string",
|
|
3148
|
+
"use_case_slug": "string",
|
|
3149
|
+
"format": "csv",
|
|
3150
|
+
"status": "PENDING",
|
|
3151
|
+
"s3_input_ref": {
|
|
3152
|
+
"bucket": "string",
|
|
3153
|
+
"key": "string"
|
|
3154
|
+
},
|
|
3155
|
+
"validation": {
|
|
3156
|
+
"total_rows": 0,
|
|
3157
|
+
"blocking": 0,
|
|
3158
|
+
"warnings": 0,
|
|
3159
|
+
"entities": {}
|
|
3160
|
+
},
|
|
3161
|
+
"progress": {
|
|
3162
|
+
"processed_rows": 0,
|
|
3163
|
+
"total_rows": 0
|
|
3164
|
+
},
|
|
3165
|
+
"error": {
|
|
3166
|
+
"type": "VALIDATION_BLOCKED",
|
|
3167
|
+
"message": "string"
|
|
3168
|
+
},
|
|
3169
|
+
"correlation_id": "string",
|
|
3170
|
+
"activity_id": "string",
|
|
3171
|
+
"created_at": "1970-01-01T00:00:00.000Z",
|
|
3172
|
+
"updated_at": "1970-01-01T00:00:00.000Z"
|
|
3173
|
+
}
|
|
3174
|
+
],
|
|
3175
|
+
"next_cursor": "string"
|
|
3176
|
+
}
|
|
3177
|
+
```
|
|
3178
|
+
|
|
3179
|
+
</details>
|
|
3180
|
+
|
|
3181
|
+
---
|
|
3182
|
+
|
|
3183
|
+
### `getErpImport`
|
|
3184
|
+
|
|
3185
|
+
Get a pricing-file import job (status, counts, result links).
|
|
3186
|
+
|
|
3187
|
+
`GET /v2/erp/imports/{importId}`
|
|
3188
|
+
|
|
3189
|
+
```ts
|
|
3190
|
+
const { data } = await client.getErpImport({
|
|
3191
|
+
importId: 'example',
|
|
3192
|
+
})
|
|
3193
|
+
```
|
|
3194
|
+
|
|
3195
|
+
<details>
|
|
3196
|
+
<summary>Response</summary>
|
|
3197
|
+
|
|
3198
|
+
```json
|
|
3199
|
+
{
|
|
3200
|
+
"import_id": "string",
|
|
3201
|
+
"org_id": "string",
|
|
3202
|
+
"created_by": "string",
|
|
3203
|
+
"integration_id": "string",
|
|
3204
|
+
"use_case_slug": "string",
|
|
3205
|
+
"format": "csv",
|
|
3206
|
+
"status": "PENDING",
|
|
3207
|
+
"s3_input_ref": {
|
|
3208
|
+
"bucket": "string",
|
|
3209
|
+
"key": "string"
|
|
3210
|
+
},
|
|
3211
|
+
"validation": {
|
|
3212
|
+
"total_rows": 0,
|
|
3213
|
+
"blocking": 0,
|
|
3214
|
+
"warnings": 0,
|
|
3215
|
+
"entities": {}
|
|
3216
|
+
},
|
|
3217
|
+
"progress": {
|
|
3218
|
+
"processed_rows": 0,
|
|
3219
|
+
"total_rows": 0
|
|
3220
|
+
},
|
|
3221
|
+
"error": {
|
|
3222
|
+
"type": "VALIDATION_BLOCKED",
|
|
3223
|
+
"message": "string"
|
|
3224
|
+
},
|
|
3225
|
+
"correlation_id": "string",
|
|
3226
|
+
"activity_id": "string",
|
|
3227
|
+
"created_at": "1970-01-01T00:00:00.000Z",
|
|
3228
|
+
"updated_at": "1970-01-01T00:00:00.000Z"
|
|
3229
|
+
}
|
|
3230
|
+
```
|
|
3231
|
+
|
|
3232
|
+
</details>
|
|
3233
|
+
|
|
3234
|
+
---
|
|
3235
|
+
|
|
3236
|
+
### `executeErpImport`
|
|
3237
|
+
|
|
3238
|
+
Confirm and run the write phase of a validated import. Only a READY job may be executed; any other status returns 409.
|
|
3239
|
+
|
|
3240
|
+
`POST /v2/erp/imports/{importId}:execute`
|
|
3241
|
+
|
|
3242
|
+
```ts
|
|
3243
|
+
const { data } = await client.executeErpImport({
|
|
3244
|
+
importId: 'example',
|
|
3245
|
+
})
|
|
3246
|
+
```
|
|
3247
|
+
|
|
3248
|
+
<details>
|
|
3249
|
+
<summary>Response</summary>
|
|
3250
|
+
|
|
3251
|
+
```json
|
|
3252
|
+
{
|
|
3253
|
+
"import_id": "string",
|
|
3254
|
+
"org_id": "string",
|
|
3255
|
+
"created_by": "string",
|
|
3256
|
+
"integration_id": "string",
|
|
3257
|
+
"use_case_slug": "string",
|
|
3258
|
+
"format": "csv",
|
|
3259
|
+
"status": "PENDING",
|
|
3260
|
+
"s3_input_ref": {
|
|
3261
|
+
"bucket": "string",
|
|
3262
|
+
"key": "string"
|
|
3263
|
+
},
|
|
3264
|
+
"validation": {
|
|
3265
|
+
"total_rows": 0,
|
|
3266
|
+
"blocking": 0,
|
|
3267
|
+
"warnings": 0,
|
|
3268
|
+
"entities": {}
|
|
3269
|
+
},
|
|
3270
|
+
"progress": {
|
|
3271
|
+
"processed_rows": 0,
|
|
3272
|
+
"total_rows": 0
|
|
3273
|
+
},
|
|
3274
|
+
"error": {
|
|
3275
|
+
"type": "VALIDATION_BLOCKED",
|
|
3276
|
+
"message": "string"
|
|
3277
|
+
},
|
|
3278
|
+
"correlation_id": "string",
|
|
3279
|
+
"activity_id": "string",
|
|
3280
|
+
"created_at": "1970-01-01T00:00:00.000Z",
|
|
3281
|
+
"updated_at": "1970-01-01T00:00:00.000Z"
|
|
3282
|
+
}
|
|
3283
|
+
```
|
|
3284
|
+
|
|
3285
|
+
</details>
|
|
3286
|
+
|
|
3287
|
+
---
|
|
3288
|
+
|
|
3289
|
+
### `abortErpImport`
|
|
3290
|
+
|
|
3291
|
+
Ask a running import to stop. Valid while the job is VALIDATING or PROCESSING; any other status returns 409.
|
|
3292
|
+
The stop is cooperative: the job passes through CANCELLING and typically reaches CANCELLED
|
|
3293
|
+
|
|
3294
|
+
`POST /v2/erp/imports/{importId}:abort`
|
|
3295
|
+
|
|
3296
|
+
```ts
|
|
3297
|
+
const { data } = await client.abortErpImport({
|
|
3298
|
+
importId: 'example',
|
|
3299
|
+
})
|
|
3300
|
+
```
|
|
3301
|
+
|
|
3302
|
+
---
|
|
3303
|
+
|
|
3078
3304
|
## Schemas
|
|
3079
3305
|
|
|
3306
|
+
### `S3Reference`
|
|
3307
|
+
|
|
3308
|
+
```ts
|
|
3309
|
+
type S3Reference = {
|
|
3310
|
+
bucket: string
|
|
3311
|
+
key: string
|
|
3312
|
+
}
|
|
3313
|
+
```
|
|
3314
|
+
|
|
3315
|
+
### `CreateErpImportRequest`
|
|
3316
|
+
|
|
3317
|
+
```ts
|
|
3318
|
+
type CreateErpImportRequest = {
|
|
3319
|
+
s3_reference: {
|
|
3320
|
+
bucket: string
|
|
3321
|
+
key: string
|
|
3322
|
+
}
|
|
3323
|
+
integration_id: string
|
|
3324
|
+
use_case_slug?: string
|
|
3325
|
+
}
|
|
3326
|
+
```
|
|
3327
|
+
|
|
3328
|
+
### `ErpImportValidation`
|
|
3329
|
+
|
|
3330
|
+
Validate-phase summary: what the file will create, and whether it may be confirmed. Absent until the validate phase completes. No per-row detail is kept — a rejected file is corrected and imported again.
|
|
3331
|
+
|
|
3332
|
+
```ts
|
|
3333
|
+
type ErpImportValidation = {
|
|
3334
|
+
total_rows: number
|
|
3335
|
+
blocking: number
|
|
3336
|
+
warnings: number
|
|
3337
|
+
entities: Record<string, number>
|
|
3338
|
+
}
|
|
3339
|
+
```
|
|
3340
|
+
|
|
3341
|
+
### `ErpImportProgress`
|
|
3342
|
+
|
|
3343
|
+
How far the currently running phase has got. Written at every batch boundary, so it advances during long runs rather than only at the end.
|
|
3344
|
+
`total_rows` is ABSENT during the validate phase until the file has been read to the end — there is deliberately no counting pass, since that would be a second u
|
|
3345
|
+
|
|
3346
|
+
```ts
|
|
3347
|
+
type ErpImportProgress = {
|
|
3348
|
+
processed_rows: number
|
|
3349
|
+
total_rows?: number
|
|
3350
|
+
}
|
|
3351
|
+
```
|
|
3352
|
+
|
|
3353
|
+
### `ErpImportError`
|
|
3354
|
+
|
|
3355
|
+
Why the import failed — present if and only if status = FAILED.
|
|
3356
|
+
|
|
3357
|
+
```ts
|
|
3358
|
+
type ErpImportError = {
|
|
3359
|
+
type: "VALIDATION_BLOCKED" | "PROCESSING_ERROR" | "INTERNAL_ERROR"
|
|
3360
|
+
message: string
|
|
3361
|
+
}
|
|
3362
|
+
```
|
|
3363
|
+
|
|
3364
|
+
### `CreateErpImportResponse`
|
|
3365
|
+
|
|
3366
|
+
```ts
|
|
3367
|
+
type CreateErpImportResponse = {
|
|
3368
|
+
import_id: string
|
|
3369
|
+
}
|
|
3370
|
+
```
|
|
3371
|
+
|
|
3372
|
+
### `ErpImportJob`
|
|
3373
|
+
|
|
3374
|
+
```ts
|
|
3375
|
+
type ErpImportJob = {
|
|
3376
|
+
import_id: string
|
|
3377
|
+
org_id: string
|
|
3378
|
+
created_by?: string
|
|
3379
|
+
integration_id: string
|
|
3380
|
+
use_case_slug?: string
|
|
3381
|
+
format: "csv" | "xlsx"
|
|
3382
|
+
status: "PENDING" | "VALIDATING" | "READY" | "PROCESSING" | "IMPORTED" | "FAILED" | "CANCELLING" | "CANCELLED"
|
|
3383
|
+
s3_input_ref: {
|
|
3384
|
+
bucket: string
|
|
3385
|
+
key: string
|
|
3386
|
+
}
|
|
3387
|
+
validation?: {
|
|
3388
|
+
total_rows: number
|
|
3389
|
+
blocking: number
|
|
3390
|
+
warnings: number
|
|
3391
|
+
entities: Record<string, number>
|
|
3392
|
+
}
|
|
3393
|
+
progress?: {
|
|
3394
|
+
processed_rows: number
|
|
3395
|
+
total_rows?: number
|
|
3396
|
+
}
|
|
3397
|
+
error?: {
|
|
3398
|
+
type: "VALIDATION_BLOCKED" | "PROCESSING_ERROR" | "INTERNAL_ERROR"
|
|
3399
|
+
message: string
|
|
3400
|
+
}
|
|
3401
|
+
correlation_id?: string
|
|
3402
|
+
activity_id?: string
|
|
3403
|
+
created_at: string // date-time
|
|
3404
|
+
updated_at: string // date-time
|
|
3405
|
+
}
|
|
3406
|
+
```
|
|
3407
|
+
|
|
3408
|
+
### `ErpImportList`
|
|
3409
|
+
|
|
3410
|
+
```ts
|
|
3411
|
+
type ErpImportList = {
|
|
3412
|
+
results: Array<{
|
|
3413
|
+
import_id: string
|
|
3414
|
+
org_id: string
|
|
3415
|
+
created_by?: string
|
|
3416
|
+
integration_id: string
|
|
3417
|
+
use_case_slug?: string
|
|
3418
|
+
format: "csv" | "xlsx"
|
|
3419
|
+
status: "PENDING" | "VALIDATING" | "READY" | "PROCESSING" | "IMPORTED" | "FAILED" | "CANCELLING" | "CANCELLED"
|
|
3420
|
+
s3_input_ref: {
|
|
3421
|
+
bucket: { ... }
|
|
3422
|
+
key: { ... }
|
|
3423
|
+
}
|
|
3424
|
+
validation?: {
|
|
3425
|
+
total_rows: { ... }
|
|
3426
|
+
blocking: { ... }
|
|
3427
|
+
warnings: { ... }
|
|
3428
|
+
entities: { ... }
|
|
3429
|
+
}
|
|
3430
|
+
progress?: {
|
|
3431
|
+
processed_rows: { ... }
|
|
3432
|
+
total_rows?: { ... }
|
|
3433
|
+
}
|
|
3434
|
+
error?: {
|
|
3435
|
+
type: { ... }
|
|
3436
|
+
message: { ... }
|
|
3437
|
+
}
|
|
3438
|
+
correlation_id?: string
|
|
3439
|
+
activity_id?: string
|
|
3440
|
+
created_at: string // date-time
|
|
3441
|
+
updated_at: string // date-time
|
|
3442
|
+
}>
|
|
3443
|
+
next_cursor?: string
|
|
3444
|
+
}
|
|
3445
|
+
```
|
|
3446
|
+
|
|
3080
3447
|
### `NotificationHistoryItem`
|
|
3081
3448
|
|
|
3082
3449
|
A single notification-history row (one real notification decision).
|