Skip to content

Commit 7f3a5a5

Browse files
committed
feat(specs): add global push endpoint
1 parent 35e96d0 commit 7f3a5a5

File tree

5 files changed

+65
-25
lines changed

5 files changed

+65
-25
lines changed

specs/ingestion/common/parameters.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,3 +83,11 @@ orderKeys:
8383
description: Ascending or descending sort order.
8484
default: desc
8585
enum: [asc, desc]
86+
87+
watch:
88+
name: watch
89+
in: query
90+
description: When provided, the push operation will be synchronous and the API will wait for the ingestion to be finished before responding.
91+
required: false
92+
schema:
93+
type: boolean

specs/ingestion/common/schemas/task.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -606,3 +606,24 @@ Policies:
606606
type: integer
607607
minimum: 1
608608
maximum: 10
609+
610+
PushTaskPayload:
611+
title: pushTaskPayload
612+
type: object
613+
properties:
614+
action:
615+
$ref: '../../../../common/schemas/Batch.yml#/action'
616+
records:
617+
type: array
618+
items:
619+
title: pushTaskRecords
620+
type: object
621+
additionalProperties: true
622+
required:
623+
- objectID
624+
properties:
625+
objectID:
626+
$ref: '../../../../common/parameters.yml#/objectID'
627+
required:
628+
- action
629+
- records

specs/ingestion/paths/push.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
post:
2+
summary: Push a `batch` request payload through the Pipeline
3+
description: Push a `batch` request payload through the Pipeline. You can check the status of your request with the observability endpoints.
4+
operationId: push
5+
x-acl:
6+
- addObject
7+
- deleteIndex
8+
- editSettings
9+
x-timeouts:
10+
connect: 180000
11+
read: 180000
12+
write: 180000
13+
parameters:
14+
- $ref: '../../common/parameters.yml#/IndexName'
15+
- $ref: '../common/parameters.yml#/watch'
16+
requestBody:
17+
description: Request body of a Search API `batch` request that will be pushed in the Connectors pipeline.
18+
content:
19+
application/json:
20+
schema:
21+
$ref: '../common/schemas/task.yml#/PushTaskPayload'
22+
required: true
23+
responses:
24+
'200':
25+
description: OK
26+
content:
27+
application/json:
28+
schema:
29+
$ref: '../../../common/schemas/common.yml#/WatchResponse'
30+
'400':
31+
$ref: '../../../../common/responses/BadRequest.yml'

specs/ingestion/paths/tasks/v2/pushTask.yml

Lines changed: 2 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -14,36 +14,13 @@ post:
1414
write: 180000
1515
parameters:
1616
- $ref: '../../../common/parameters.yml#/pathTaskID'
17-
- name: watch
18-
in: query
19-
description: When provided, the push operation will be synchronous and the API will wait for the ingestion to be finished before responding.
20-
required: false
21-
schema:
22-
type: boolean
17+
- $ref: '../../../common/parameters.yml#/watch'
2318
requestBody:
2419
description: Request body of a Search API `batch` request that will be pushed in the Connectors pipeline.
2520
content:
2621
application/json:
2722
schema:
28-
title: pushTaskPayload
29-
type: object
30-
properties:
31-
action:
32-
$ref: '../../../../common/schemas/Batch.yml#/action'
33-
records:
34-
type: array
35-
items:
36-
title: pushTaskRecords
37-
type: object
38-
additionalProperties: true
39-
required:
40-
- objectID
41-
properties:
42-
objectID:
43-
$ref: '../../../../common/parameters.yml#/objectID'
44-
required:
45-
- action
46-
- records
23+
$ref: '../../../common/schemas/task.yml#/PushTaskPayload'
4724
required: true
4825
responses:
4926
'200':

specs/ingestion/spec.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,9 @@ paths:
112112
/{path}:
113113
$ref: '../common/paths/customRequest.yml'
114114

115+
/1/push/{indexName}:
116+
$ref: 'paths/push.yml'
117+
115118
# authentications API.
116119
/1/authentications:
117120
$ref: 'paths/authentications/authentications.yml'

0 commit comments

Comments
 (0)