Skip to content

Commit b90bef2

Browse files
authored
feat(specs): add runSource endpoint (#3453)
1 parent 27679b7 commit b90bef2

File tree

4 files changed

+103
-0
lines changed

4 files changed

+103
-0
lines changed

specs/ingestion/common/schemas/source.yml

+29
Original file line numberDiff line numberDiff line change
@@ -492,3 +492,32 @@ SourceWatchResponse:
492492
type: string
493493
required:
494494
- message
495+
496+
RunSourcePayload:
497+
type: object
498+
additionalProperties: false
499+
properties:
500+
indexToInclude:
501+
type: array
502+
description: List of index names to include in reidexing/update.
503+
items:
504+
type: string
505+
indexToExclude:
506+
type: array
507+
description: List of index names to exclude in reidexing/update.
508+
items:
509+
type: string
510+
entityIDs:
511+
type: array
512+
items:
513+
type: string
514+
description: List of entityID to update.
515+
entityType:
516+
$ref: '#/EntityType'
517+
518+
EntityType:
519+
type: string
520+
description: Type of entity to update.
521+
enum:
522+
- product
523+
- collection
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
post:
2+
tags:
3+
- sources
4+
summary: Run all tasks linked to a source
5+
description: Runs all tasks linked to a source, only available for Shopify sources. It will create 1 run per task.
6+
operationId: runSource
7+
x-acl:
8+
- addObject
9+
- deleteIndex
10+
- editSettings
11+
parameters:
12+
- $ref: '../../common/parameters.yml#/pathSourceID'
13+
requestBody:
14+
description: ''
15+
content:
16+
application/json:
17+
schema:
18+
$ref: '../../common/schemas/source.yml#/RunSourcePayload'
19+
responses:
20+
'200':
21+
description: OK
22+
content:
23+
application/json:
24+
schema:
25+
title: runSourceResponse
26+
type: object
27+
properties:
28+
taskWithRunID:
29+
type: object
30+
description: Map of taskID sent for reindex with the corresponding runID.
31+
additionalProperties:
32+
type: string
33+
createdAt:
34+
$ref: '../../common/schemas/common.yml#/createdAt'
35+
required:
36+
- taskWithRunID
37+
- createdAt
38+
'400':
39+
$ref: '../../../common/responses/BadRequest.yml'

specs/ingestion/spec.yml

+2
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,8 @@ paths:
137137
$ref: 'paths/sources/validateID.yml'
138138
/1/sources/{sourceID}/discover:
139139
$ref: 'paths/sources/discover.yml'
140+
/1/sources/{sourceID}/run:
141+
$ref: 'paths/sources/runSource.yml'
140142

141143
# tasks API.
142144
/1/tasks:
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
[
2+
{
3+
"parameters": {
4+
"sourceID": "6c02aeb1-775e-418e-870b-1faccd4b2c0f",
5+
"runSourcePayload": {
6+
"indexToInclude": [
7+
"products_us",
8+
"products eu"
9+
],
10+
"entityIDs": [
11+
"1234",
12+
"5678"
13+
],
14+
"entityType": "product"
15+
}
16+
},
17+
"request": {
18+
"path": "/1/sources/6c02aeb1-775e-418e-870b-1faccd4b2c0f/run",
19+
"method": "POST",
20+
"body": {
21+
"indexToInclude": [
22+
"products_us",
23+
"products eu"
24+
],
25+
"entityIDs": [
26+
"1234",
27+
"5678"
28+
],
29+
"entityType": "product"
30+
}
31+
}
32+
}
33+
]

0 commit comments

Comments
 (0)