-
Notifications
You must be signed in to change notification settings - Fork 3.8k
/
spec.json
157 lines (157 loc) · 5.34 KB
/
spec.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
{
"documentationUrl": "https://docs.airbyte.com/integrations/sources/shopify",
"connectionSpecification": {
"$schema": "https://json-schema.org/draft-07/schema#",
"title": "Shopify Source CDK Specifications",
"type": "object",
"required": ["shop"],
"additionalProperties": true,
"properties": {
"shop": {
"type": "string",
"title": "Shopify Store",
"description": "The name of your Shopify store found in the URL. For example, if your URL was https://NAME.myshopify.com, then the name would be 'NAME' or 'NAME.myshopify.com'.",
"pattern": "^(?!https://)(?!https://).*",
"examples": ["my-store", "my-store.myshopify.com"],
"order": 1
},
"credentials": {
"title": "Shopify Authorization Method",
"description": "The authorization method to use to retrieve data from Shopify",
"type": "object",
"order": 2,
"oneOf": [
{
"type": "object",
"title": "OAuth2.0",
"description": "OAuth2.0",
"required": ["auth_method"],
"properties": {
"auth_method": {
"type": "string",
"const": "oauth2.0",
"order": 0
},
"client_id": {
"type": "string",
"title": "Client ID",
"description": "The Client ID of the Shopify developer application.",
"airbyte_secret": true,
"order": 1
},
"client_secret": {
"type": "string",
"title": "Client Secret",
"description": "The Client Secret of the Shopify developer application.",
"airbyte_secret": true,
"order": 2
},
"access_token": {
"type": "string",
"title": "Access Token",
"description": "The Access Token for making authenticated requests.",
"airbyte_secret": true,
"order": 3
}
}
},
{
"title": "API Password",
"description": "API Password Auth",
"type": "object",
"required": ["auth_method", "api_password"],
"properties": {
"auth_method": {
"type": "string",
"const": "api_password",
"order": 0
},
"api_password": {
"type": "string",
"title": "API Password",
"description": "The API Password for your private application in the `Shopify` store.",
"airbyte_secret": true,
"order": 1
}
}
}
]
},
"start_date": {
"type": "string",
"title": "Replication Start Date",
"description": "The date you would like to replicate data from. Format: YYYY-MM-DD. Any data before this date will not be replicated.",
"default": "2020-01-01",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
"format": "date",
"order": 3
},
"bulk_window_in_days": {
"type": "integer",
"title": "GraphQL BULK Date Range in Days",
"description": "Defines what would be a date range per single BULK Job",
"default": 30
},
"fetch_transactions_user_id": {
"type": "boolean",
"title": "Add `user_id` to Transactions (slower)",
"description": "Defines which API type (REST/BULK) to use to fetch `Transactions` data. If you are a `Shopify Plus` user, leave the default value to speed up the fetch.",
"default": false
},
"job_termination_threshold": {
"type": "integer",
"title": "BULK Job termination threshold",
"description": "The max time in seconds, after which the single BULK Job should be `CANCELED` and retried. The bigger the value the longer the BULK Job is allowed to run.",
"default": 3600,
"minimum": 1
}
}
},
"advanced_auth": {
"auth_flow_type": "oauth2.0",
"predicate_key": ["credentials", "auth_method"],
"predicate_value": "oauth2.0",
"oauth_config_specification": {
"complete_oauth_output_specification": {
"type": "object",
"additionalProperties": false,
"properties": {
"shop": {
"type": "string",
"path_in_connector_config": ["shop"]
},
"access_token": {
"type": "string",
"path_in_connector_config": ["credentials", "access_token"]
}
}
},
"complete_oauth_server_input_specification": {
"type": "object",
"additionalProperties": false,
"properties": {
"client_id": {
"type": "string"
},
"client_secret": {
"type": "string"
}
}
},
"complete_oauth_server_output_specification": {
"type": "object",
"additionalProperties": false,
"properties": {
"client_id": {
"type": "string",
"path_in_connector_config": ["credentials", "client_id"]
},
"client_secret": {
"type": "string",
"path_in_connector_config": ["credentials", "client_secret"]
}
}
}
}
}
}