Skip to contentSkip to navigationSkip to topbar

Studio Flow and Widget JSON Schemas


Official JSON Schemas(link takes you to an external page) for Studio Flow definitions and widgets are available in the list below. Flow definitions must adhere to these schemas when creating or updating via the Flows REST API.

These schemas can be used for reference or for client-side validation in your local development environment. For sample Flow definitions to use in your applications, use the JSON snippets from Studio Flow Definition.

Flow Definition Schema

flow-definition-schema page anchor
1
{
2
"$schema": "http://json-schema.org/draft-07/schema#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/flow-definition",
4
"title": "Definition schema for twilio studio flow ",
5
"type": "object",
6
"definitions": {
7
"Flags": {
8
"type": "object",
9
"properties": {
10
"allow_concurrent_calls": {
11
"type": "boolean"
12
}
13
},
14
"required": [
15
"allow_concurrent_calls"
16
]
17
}
18
},
19
"properties": {
20
"description": {
21
"type": "string"
22
},
23
"$schema": {
24
"type": "string",
25
"enum": [
26
"https://schemas.twilio.com/studio/draft/2019-09/flow-definition"
27
],
28
"default": "https://schemas.twilio.com/studio/draft/2019-09/flow-definition"
29
},
30
"flags": {
31
"$ref": "#/definitions/Flags"
32
},
33
"initial_state": {
34
"type": "string",
35
"minLength": 1
36
},
37
"states": {
38
"type": "array",
39
"additionalItems": false,
40
"minItems": 1,
41
"maxItems": 1000,
42
"items": {
43
"properties": {
44
"type": {
45
"type": "string",
46
"enum": [
47
"add-member-to-chat-channel",
48
"add-twiml-redirect",
49
"capture-payments",
50
"connect-call-to",
51
"create-chat-channel",
52
"create-task",
53
"enqueue-call",
54
"fork-stream",
55
"gather-input-on-call",
56
"make-http-request",
57
"make-outgoing-call-v1",
58
"make-outgoing-call-v2",
59
"record-call",
60
"record-voicemail",
61
"run-function",
62
"say-play",
63
"send-and-wait-for-reply",
64
"send-message",
65
"send-to-auto-pilot",
66
"send-to-flex",
67
"set-variables",
68
"split-based-on",
69
"trigger",
70
"understand",
71
"update-sync-object"
72
]
73
}
74
},
75
"required": [
76
"type"
77
],
78
"allOf": [
79
{
80
"if": {
81
"properties": {
82
"type": {
83
"const": "add-member-to-chat-channel"
84
}
85
}
86
},
87
"then": {
88
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/add-member-to-chat-channel"
89
}
90
},
91
{
92
"if": {
93
"properties": {
94
"type": {
95
"const": "send-to-auto-pilot"
96
}
97
}
98
},
99
"then": {
100
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/send-to-auto-pilot"
101
}
102
},
103
{
104
"if": {
105
"properties": {
106
"type": {
107
"const": "connect-call-to"
108
}
109
}
110
},
111
"then": {
112
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/connect-call-to"
113
}
114
},
115
{
116
"if": {
117
"properties": {
118
"type": {
119
"const": "create-chat-channel"
120
}
121
}
122
},
123
"then": {
124
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/create-chat-channel"
125
}
126
},
127
{
128
"if": {
129
"properties": {
130
"type": {
131
"const": "create-task"
132
}
133
}
134
},
135
"then": {
136
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/create-task"
137
}
138
},
139
{
140
"if": {
141
"properties": {
142
"type": {
143
"const": "make-outgoing-call-v1"
144
}
145
}
146
},
147
"then": {
148
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/2/make-outgoing-call-v1"
149
}
150
},
151
{
152
"if": {
153
"properties": {
154
"type": {
155
"const": "make-outgoing-call-v2"
156
}
157
}
158
},
159
"then": {
160
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/2/make-outgoing-call-v2"
161
}
162
},
163
{
164
"if": {
165
"properties": {
166
"type": {
167
"const": "enqueue-call"
168
}
169
}
170
},
171
"then": {
172
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/enqueue-call"
173
}
174
},
175
{
176
"if": {
177
"properties": {
178
"type": {
179
"const": "fork-stream"
180
}
181
}
182
},
183
"then": {
184
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/fork-stream"
185
}
186
},
187
{
188
"if": {
189
"properties": {
190
"type": {
191
"const": "gather-input-on-call"
192
}
193
}
194
},
195
"then": {
196
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/gather-input-on-call"
197
}
198
},
199
{
200
"if": {
201
"properties": {
202
"type": {
203
"const": "make-http-request"
204
}
205
}
206
},
207
"then": {
208
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/make-http-request"
209
}
210
},
211
{
212
"if": {
213
"properties": {
214
"type": {
215
"const": "capture-payments"
216
}
217
}
218
},
219
"then": {
220
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/capture-payments"
221
}
222
},
223
{
224
"if": {
225
"properties": {
226
"type": {
227
"const": "record-call"
228
}
229
}
230
},
231
"then": {
232
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/record-call"
233
}
234
},
235
{
236
"if": {
237
"properties": {
238
"type": {
239
"const": "record-voicemail"
240
}
241
}
242
},
243
"then": {
244
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/record-voicemail"
245
}
246
},
247
{
248
"if": {
249
"properties": {
250
"type": {
251
"const": "add-twiml-redirect"
252
}
253
}
254
},
255
"then": {
256
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/add-twiml-redirect"
257
}
258
},
259
{
260
"if": {
261
"properties": {
262
"type": {
263
"const": "run-function"
264
}
265
}
266
},
267
"then": {
268
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/run-function"
269
}
270
},
271
{
272
"if": {
273
"properties": {
274
"type": {
275
"const": "say-play"
276
}
277
}
278
},
279
"then": {
280
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/say-play"
281
}
282
},
283
{
284
"if": {
285
"properties": {
286
"type": {
287
"const": "send-and-wait-for-reply"
288
}
289
}
290
},
291
"then": {
292
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/send-and-wait-for-reply"
293
}
294
},
295
{
296
"if": {
297
"properties": {
298
"type": {
299
"const": "send-message"
300
}
301
}
302
},
303
"then": {
304
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/send-message"
305
}
306
},
307
{
308
"if": {
309
"properties": {
310
"type": {
311
"const": "send-to-flex"
312
}
313
}
314
},
315
"then": {
316
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/send-to-flex"
317
}
318
},
319
{
320
"if": {
321
"properties": {
322
"type": {
323
"const": "set-variables"
324
}
325
}
326
},
327
"then": {
328
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/set-variables"
329
}
330
},
331
{
332
"if": {
333
"properties": {
334
"type": {
335
"const": "split-based-on"
336
}
337
}
338
},
339
"then": {
340
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/split-based-on"
341
}
342
},
343
{
344
"if": {
345
"properties": {
346
"type": {
347
"const": "trigger"
348
}
349
}
350
},
351
"then": {
352
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/trigger"
353
}
354
},
355
{
356
"if": {
357
"properties": {
358
"type": {
359
"const": "understand"
360
}
361
}
362
},
363
"then": {
364
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/understand"
365
}
366
},
367
{
368
"if": {
369
"properties": {
370
"type": {
371
"const": "update-sync-object"
372
}
373
}
374
},
375
"then": {
376
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/update-sync-object"
377
}
378
}
379
]
380
}
381
}
382
},
383
"required": [
384
"description",
385
"initial_state",
386
"states"
387
],
388
"schema_revision": 1
389
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/trigger",
4
"title": "Trigger",
5
"description": "The trigger widget",
6
"definitions": {
7
"IncomingCall": {
8
"type": "object",
9
"title": "Incoming Call",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "incomingCall"
19
}
20
},
21
"required": [
22
"event"
23
]
24
}
25
]
26
},
27
"IncomingMessage": {
28
"type": "object",
29
"title": "Incoming Message (SMS or Chat)",
30
"allOf": [
31
{
32
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
33
},
34
{
35
"properties": {
36
"event": {
37
"type": "string",
38
"const": "incomingMessage"
39
}
40
},
41
"required": [
42
"event"
43
]
44
}
45
]
46
},
47
"IncomingRequest": {
48
"type": "object",
49
"title": "REST API",
50
"allOf": [
51
{
52
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
53
},
54
{
55
"properties": {
56
"event": {
57
"type": "string",
58
"const": "incomingRequest"
59
}
60
},
61
"required": [
62
"event"
63
]
64
}
65
]
66
}
67
},
68
"type": "object",
69
"properties": {
70
"type": {
71
"type": "string",
72
"const": "trigger"
73
},
74
"name": {
75
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
76
},
77
"transitions": {
78
"type": "array",
79
"additionalItems": false,
80
"minLength": 1,
81
"items": {
82
"anyOf": [
83
{
84
"$ref": "#/definitions/IncomingCall"
85
},
86
{
87
"$ref": "#/definitions/IncomingMessage"
88
},
89
{
90
"$ref": "#/definitions/IncomingRequest"
91
}
92
]
93
}
94
},
95
"properties": {
96
"type": "object"
97
}
98
},
99
"required": [
100
"type",
101
"transitions"
102
],
103
"maturity": "ga",
104
"schema_revision": 1
105
}

Add TwiML Redirect Schema

add-twiml-redirect-schema page anchor
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/add-twiml-redirect",
4
"type": "object",
5
"title": "Add Twiml Redirect",
6
"definitions": {
7
"Return": {
8
"type": "object",
9
"title": "Fail",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "return"
19
}
20
}
21
}
22
]
23
},
24
"Fail": {
25
"type": "object",
26
"title": "Fail",
27
"allOf": [
28
{
29
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
30
},
31
{
32
"properties": {
33
"event": {
34
"type": "string",
35
"const": "fail"
36
}
37
}
38
}
39
]
40
}
41
},
42
"properties": {
43
"type": {
44
"type": "string",
45
"const": "add-twiml-redirect"
46
},
47
"name": {
48
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
49
},
50
"properties": {
51
"type": "object",
52
"properties": {
53
"url": {
54
"type": "string",
55
"minLength": 1
56
},
57
"method": {
58
"type": "string",
59
"default": "POST"
60
},
61
"timeout": {
62
"type": "string",
63
"default": 14400
64
}
65
},
66
"required": [
67
"url"
68
]
69
},
70
"transitions": {
71
"type": "array",
72
"additionalItems": false,
73
"items": {
74
"anyOf": [
75
{
76
"$ref": "#/definitions/Return"
77
},
78
{
79
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Timeout"
80
},
81
{
82
"$ref": "#/definitions/Fail"
83
}
84
]
85
}
86
}
87
},
88
"required": [
89
"properties",
90
"transitions"
91
],
92
"maturity": "ga",
93
"schema_revision": 1
94
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/capture-payments",
4
"type": "object",
5
"title": "Capture Payments",
6
"definitions": {
7
"MaxFailedAttempts": {
8
"type": "object",
9
"allOf": [
10
{
11
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
12
},
13
{
14
"properties": {
15
"event": {
16
"type": "string",
17
"const": "maxFailedAttempts"
18
}
19
}
20
}
21
]
22
},
23
"ProviderError": {
24
"type": "object",
25
"allOf": [
26
{
27
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
28
},
29
{
30
"properties": {
31
"event": {
32
"type": "string",
33
"const": "providerError"
34
}
35
}
36
}
37
]
38
},
39
"ValidationError": {
40
"type": "object",
41
"allOf": [
42
{
43
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
44
},
45
{
46
"properties": {
47
"event": {
48
"type": "string",
49
"const": "validationError"
50
}
51
}
52
}
53
]
54
},
55
"PayInterrupted": {
56
"type": "object",
57
"allOf": [
58
{
59
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
60
},
61
{
62
"properties": {
63
"event": {
64
"type": "string",
65
"const": "payInterrupted"
66
}
67
}
68
}
69
]
70
}
71
},
72
"properties": {
73
"type": {
74
"type": "string",
75
"const": "capture-payments"
76
},
77
"name": {
78
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
79
},
80
"properties": {
81
"type": "object",
82
"properties": {
83
"timeout": {
84
"type": "integer",
85
"minimum": 1,
86
"maximum": 30,
87
"default": 5
88
},
89
"max_attempts": {
90
"type": "integer",
91
"minimum": 1,
92
"maximum": 3,
93
"default": 2
94
},
95
"security_code": {
96
"type": "boolean"
97
},
98
"postal_code": {
99
"type": "string"
100
},
101
"payment_connector": {
102
"type": "string"
103
},
104
"payment_token_type": {
105
"type": "string",
106
"enum": [
107
"one-time",
108
"reusable"
109
],
110
"default": "reusable"
111
},
112
"payment_amount": {
113
"type": "string"
114
},
115
"currency": {
116
"type": "string",
117
"enum": [
118
"eur",
119
"gbp",
120
"usd"
121
],
122
"default": "usd"
123
},
124
"description": {
125
"type": "string"
126
},
127
"valid_card_types": {
128
"type": "array",
129
"additionalItems": false,
130
"items": {
131
"anyOf": [
132
{
133
"type": "string",
134
"enum": [
135
"amex",
136
"diners-club",
137
"discover",
138
"enroute",
139
"jcb",
140
"maestro",
141
"master-card",
142
"mastercard",
143
"optima",
144
"visa"
145
]
146
}
147
]
148
}
149
},
150
"language": {
151
"type": "string"
152
},
153
"min_postal_code_length": {
154
"type": "integer"
155
},
156
"payment_method": {
157
"type": "string",
158
"enum": [
159
"ACH_DEBIT",
160
"CREDIT_CARD"
161
]
162
},
163
"bank_account_type": {
164
"type": "string",
165
"enum": [
166
"COMMERCIAL_CHECKING",
167
"COMMERCIAL_SAVINGS",
168
"CONSUMER_CHECKING",
169
"CONSUMER_SAVINGS"
170
]
171
},
172
"parameters": {
173
"type": "array",
174
"additionalItems": false,
175
"items": {
176
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Parameter"
177
}
178
}
179
}
180
},
181
"transitions": {
182
"type": "array",
183
"additionalItems": false,
184
"items": {
185
"anyOf": [
186
{
187
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Hangup"
188
},
189
{
190
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Success"
191
},
192
{
193
"$ref": "#/definitions/MaxFailedAttempts"
194
},
195
{
196
"$ref": "#/definitions/ProviderError"
197
},
198
{
199
"$ref": "#/definitions/ValidationError"
200
},
201
{
202
"$ref": "#/definitions/PayInterrupted"
203
}
204
]
205
}
206
}
207
},
208
"required": [
209
"type",
210
"name",
211
"properties",
212
"transitions"
213
],
214
"maturity": "ga",
215
"schema_revision": 1
216
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/connect-call-to",
4
"type": "object",
5
"title": "Connect Call To",
6
"definitions": {
7
"CallEnded": {
8
"type": "object",
9
"title": "Connected Call Ended",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "callCompleted"
19
}
20
}
21
}
22
]
23
},
24
"Hangup": {
25
"type": "object",
26
"title": "Caller Hung up",
27
"allOf": [
28
{
29
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
30
},
31
{
32
"properties": {
33
"event": {
34
"type": "string",
35
"const": "hangup"
36
}
37
}
38
}
39
]
40
}
41
},
42
"properties": {
43
"type": {
44
"type": "string",
45
"const": "connect-call-to"
46
},
47
"name": {
48
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
49
},
50
"properties": {
51
"type": "object",
52
"properties": {
53
"to": {
54
"type": "string"
55
},
56
"caller_id": {
57
"type": "string"
58
},
59
"record": {
60
"type": "boolean"
61
},
62
"noun": {
63
"type": "string",
64
"enum": [
65
"client",
66
"conference",
67
"number",
68
"number-multi",
69
"sim",
70
"sip"
71
]
72
},
73
"sip_endpoint": {
74
"type": "string"
75
},
76
"sip_username": {
77
"type": "string"
78
},
79
"sip_password": {
80
"type": "string"
81
},
82
"timeout": {
83
"type": "integer"
84
}
85
},
86
"required": [
87
"noun"
88
]
89
},
90
"transitions": {
91
"type": "array",
92
"additionalItems": false,
93
"items": {
94
"anyOf": [
95
{
96
"$ref": "#/definitions/CallEnded"
97
},
98
{
99
"$ref": "#/definitions/Hangup"
100
}
101
]
102
}
103
}
104
},
105
"required": [
106
"type",
107
"name",
108
"properties",
109
"transitions"
110
],
111
"maturity": "ga",
112
"schema_revision": 1
113
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/enqueue-call",
4
"title": "Enqueue Call",
5
"type": "object",
6
"definitions": {
7
"FailedToEnqueue": {
8
"type": "object",
9
"title": "Failed to Enqueue",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "failedToEnqueue"
19
}
20
}
21
}
22
]
23
},
24
"CallFailure": {
25
"type": "object",
26
"title": "Call Failed",
27
"allOf": [
28
{
29
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
30
},
31
{
32
"properties": {
33
"event": {
34
"type": "string",
35
"const": "callFailure"
36
}
37
}
38
}
39
]
40
}
41
},
42
"properties": {
43
"type": {
44
"type": "string",
45
"const": "enqueue-call"
46
},
47
"name": {
48
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
49
},
50
"properties": {
51
"type": "object",
52
"properties": {
53
"workflow_sid": {
54
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WorkflowSid"
55
},
56
"queue_name": {
57
"type": "string"
58
},
59
"priority": {
60
"type": "integer"
61
},
62
"timeout": {
63
"type": "integer"
64
},
65
"task_attributes": {
66
"type": "string"
67
},
68
"wait_url": {
69
"type": "string"
70
},
71
"wait_url_method": {
72
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/HttpMethod"
73
}
74
}
75
},
76
"transitions": {
77
"type": "array",
78
"additionalItems": false,
79
"items": {
80
"anyOf": [
81
{
82
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/CallComplete"
83
},
84
{
85
"$ref": "#/definitions/FailedToEnqueue"
86
},
87
{
88
"$ref": "#/definitions/CallFailure"
89
}
90
]
91
}
92
}
93
},
94
"required": [
95
"type",
96
"name",
97
"properties",
98
"transitions"
99
],
100
"maturity": "ga",
101
"schema_revision": 1
102
}

Connect Virtual Agent (CX)

connect-virtual-agent-cx page anchor
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/connect-virtual-agent-v2",
4
"type": "object",
5
"title": "Connect Virtual Agent",
6
"definitions": {
7
"LiveAgentHandoff": {
8
"type": "object",
9
"title": "LiveAgentHandoff",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "live-agent-handoff"
19
}
20
}
21
}
22
]
23
},
24
"Completed": {
25
"type": "object",
26
"title": "Completed",
27
"allOf": [
28
{
29
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
30
},
31
{
32
"properties": {
33
"event": {
34
"type": "string",
35
"const": "completed"
36
}
37
}
38
}
39
]
40
}
41
},
42
"properties": {
43
"type": {
44
"type": "string",
45
"const": "connect-virtual-agent-v2"
46
},
47
"name": {
48
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
49
},
50
"properties": {
51
"type": "object",
52
"properties": {
53
"configurations": {
54
"type": "array",
55
"additionalItems": false,
56
"items": {
57
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Parameter"
58
}
59
},
60
"connector_name": {
61
"type": "string"
62
},
63
"connector_details": {
64
"type": "object",
65
"properties": {
66
"addon_sid": {
67
"type": "string"
68
},
69
"installed_addon_sid": {
70
"type": "string"
71
},
72
"name": {
73
"type": "string"
74
}
75
},
76
"required": [
77
"addon_sid",
78
"installed_addon_sid",
79
"name"
80
]
81
},
82
"channel": {
83
"type": "string",
84
"default": "voice",
85
"enum": [
86
"voice",
87
"conversations"
88
]
89
},
90
"parameters": {
91
"type": "array",
92
"additionalItems": false,
93
"items": {
94
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Parameter"
95
}
96
},
97
"status_callback": {
98
"type": "string"
99
},
100
"status_callback_method": {
101
"type": "string",
102
"default": "POST"
103
},
104
"timeout": {
105
"type": "integer",
106
"default": 172800
107
}
108
},
109
"required": []
110
},
111
"transitions": {
112
"type": "array",
113
"additionalItems": false,
114
"items": {
115
"type": "object",
116
"anyOf": [
117
{
118
"$ref": "#/definitions/Completed"
119
},
120
{
121
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Hangup"
122
},
123
{
124
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Timeout"
125
},
126
{
127
"$ref": "#/definitions/LiveAgentHandoff"
128
},
129
{
130
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Failed"
131
}
132
]
133
}
134
}
135
},
136
"required": [
137
"type",
138
"name",
139
"properties",
140
"transitions"
141
],
142
"maturity": "ga",
143
"schema_revision": 2
144
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/fork-stream",
4
"type": "object",
5
"title": "Fork Stream",
6
"properties": {
7
"type": {
8
"type": "string",
9
"const": "fork-stream"
10
},
11
"name": {
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
13
},
14
"properties": {
15
"type": "object",
16
"properties": {
17
"stream_action": {
18
"type": "string",
19
"enum": [
20
"start",
21
"stop"
22
],
23
"default": "start"
24
},
25
"stream_name": {
26
"type": "string"
27
},
28
"stream_transport_type": {
29
"type": "string",
30
"enum": [
31
"spirec",
32
"websocket"
33
],
34
"default": "webSocket"
35
},
36
"stream_connector": {
37
"type": "string"
38
},
39
"stream_url": {
40
"type": "string"
41
},
42
"stream_track": {
43
"type": "string",
44
"enum": [
45
"both_track",
46
"inbound_track",
47
"outbound_track"
48
],
49
"default": "inbound_track"
50
},
51
"stream_parameters": {
52
"type": "array",
53
"additionalItems": false,
54
"items": {
55
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Parameter"
56
}
57
}
58
},
59
"transitions": {
60
"type": "array",
61
"additionalItems": false,
62
"items": {
63
"type": "object",
64
"allOf": [
65
{
66
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
67
},
68
{
69
"properties": {
70
"event": {
71
"type": "string",
72
"const": "next"
73
}
74
}
75
}
76
]
77
}
78
}
79
},
80
"transitions": {
81
"type": "array",
82
"additionalItems": false,
83
"items": {
84
"type": "object",
85
"allOf": [
86
{
87
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
88
},
89
{
90
"properties": {
91
"event": {
92
"type": "string",
93
"const": "next"
94
}
95
}
96
}
97
]
98
}
99
}
100
},
101
"required": [
102
"type",
103
"name",
104
"properties",
105
"transitions"
106
],
107
"maturity": "ga",
108
"schema_revision": 1
109
}

Gather Input On Call Schema

gather-input-on-call-schema page anchor
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/gather-input-on-call",
4
"type": "object",
5
"title": "Gather Input On Call",
6
"definitions": {
7
"KeyPress": {
8
"type": "object",
9
"title": "User Pressed Keys",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "keypress"
19
}
20
}
21
}
22
]
23
},
24
"Speech": {
25
"type": "object",
26
"title": "User Said Something",
27
"allOf": [
28
{
29
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
30
},
31
{
32
"properties": {
33
"event": {
34
"type": "string",
35
"const": "speech"
36
}
37
}
38
}
39
]
40
}
41
},
42
"properties": {
43
"type": {
44
"type": "string",
45
"const": "gather-input-on-call"
46
},
47
"name": {
48
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
49
},
50
"properties": {
51
"type": "object",
52
"properties": {
53
"timeout": {
54
"type": "integer"
55
},
56
"finish_on_key": {
57
"type": "string"
58
},
59
"stop_gather": {
60
"type": "boolean"
61
},
62
"number_of_digits": {
63
"type": "integer"
64
},
65
"save_response_as": {
66
"type": "string"
67
},
68
"say": {
69
"type": "string"
70
},
71
"play": {
72
"type": "string"
73
},
74
"voice": {
75
"type": "string"
76
},
77
"language": {
78
"type": "string"
79
},
80
"loop": {
81
"type": "integer"
82
},
83
"hints": {
84
"type": "string"
85
},
86
"gather_language": {
87
"type": "string"
88
},
89
"speech_timeout": {
90
"type": "string"
91
},
92
"speech_model": {
93
"type": "string"
94
},
95
"profanity_filter": {
96
"type": "string"
97
}
98
},
99
"oneOf": [
100
{
101
"required": [
102
"say"
103
]
104
},
105
{
106
"required": [
107
"play"
108
]
109
}
110
]
111
},
112
"transitions": {
113
"type": "array",
114
"additionalItems": false,
115
"items": {
116
"anyOf": [
117
{
118
"$ref": "#/definitions/KeyPress"
119
},
120
{
121
"$ref": "#/definitions/Speech"
122
},
123
{
124
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Timeout"
125
},
126
{
127
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Hangup"
128
}
129
]
130
}
131
}
132
},
133
"required": [
134
"type",
135
"name",
136
"properties",
137
"transitions"
138
],
139
"maturity": "ga",
140
"schema_revision": 1
141
}

Make HTTP Request Schema

make-http-request-schema page anchor
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/make-http-request",
4
"title": "Make HTTP Request",
5
"type": "object",
6
"properties": {
7
"type": {
8
"type": "string",
9
"const": "make-http-request"
10
},
11
"name": {
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
13
},
14
"properties": {
15
"type": "object",
16
"properties": {
17
"method": {
18
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/HttpMethod",
19
"default": "GET"
20
},
21
"url": {
22
"type": "string",
23
"minLength": 1
24
},
25
"body": {
26
"type": "string"
27
},
28
"parameters": {
29
"type": "array",
30
"additionalItems": false,
31
"items": {
32
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Parameter"
33
}
34
},
35
"content_type": {
36
"type": "string",
37
"default": "application/x-www-form-urlencoded"
38
}
39
},
40
"required": [
41
"url"
42
]
43
},
44
"transitions": {
45
"type": "array",
46
"additionalItems": false,
47
"items": {
48
"anyOf": [
49
{
50
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Success"
51
},
52
{
53
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Failed"
54
}
55
]
56
}
57
}
58
},
59
"required": [
60
"type",
61
"name",
62
"properties",
63
"transitions"
64
],
65
"maturity": "ga"
66
}

Make Outgoing Call v1 Schema (Deprecated)

make-outgoing-call-v1-schema-deprecated page anchor
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/2/make-outgoing-call-v1",
4
"title": "Make Outgoing Call",
5
"type": "object",
6
"definitions": {
7
"AnsweredByMachine": {
8
"type": "object",
9
"allOf": [
10
{
11
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
12
},
13
{
14
"properties": {
15
"event": {
16
"type": "string",
17
"const": "answeredByMachine"
18
}
19
}
20
}
21
]
22
},
23
"Answered": {
24
"type": "object",
25
"allOf": [
26
{
27
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
28
},
29
{
30
"properties": {
31
"event": {
32
"type": "string",
33
"const": "answered"
34
}
35
}
36
}
37
]
38
},
39
"Busy": {
40
"type": "object",
41
"allOf": [
42
{
43
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
44
},
45
{
46
"properties": {
47
"event": {
48
"type": "string",
49
"const": "busy"
50
}
51
}
52
}
53
]
54
},
55
"NoAnswer": {
56
"type": "object",
57
"allOf": [
58
{
59
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
60
},
61
{
62
"properties": {
63
"event": {
64
"type": "string",
65
"const": "noAnswer"
66
}
67
}
68
}
69
]
70
},
71
"Hangup": {
72
"type": "object",
73
"allOf": [
74
{
75
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
76
},
77
{
78
"properties": {
79
"event": {
80
"type": "string",
81
"const": "hangup"
82
}
83
}
84
}
85
]
86
}
87
},
88
"properties": {
89
"type": {
90
"type": "string",
91
"const": "make-outgoing-call-v1"
92
},
93
"name": {
94
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
95
},
96
"properties": {
97
"type": "object",
98
"properties": {
99
"from": {
100
"type": "string",
101
"title": "Number to make call from",
102
"default": "{{contact.channel.address}}"
103
},
104
"to": {
105
"type": "string",
106
"title": "Number to call",
107
"default": "{{flow.channel.address}}"
108
},
109
"record": {
110
"type": "boolean"
111
},
112
"timeout": {
113
"type": "integer"
114
}
115
},
116
"required": [
117
"from",
118
"to"
119
]
120
},
121
"transitions": {
122
"type": "array",
123
"additionalItems": false,
124
"items": {
125
"anyOf": [
126
{
127
"$ref": "#/definitions/Answered"
128
},
129
{
130
"$ref": "#/definitions/Busy"
131
},
132
{
133
"$ref": "#/definitions/NoAnswer"
134
},
135
{
136
"$ref": "#/definitions/AnsweredByMachine"
137
},
138
{
139
"$ref": "#/definitions/Hangup"
140
},
141
{
142
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Failed"
143
}
144
]
145
}
146
}
147
},
148
"required": [
149
"properties",
150
"transitions"
151
],
152
"maturity": "ga",
153
"schema_revision": 1
154
}

Make Outgoing Call v2 Schema

make-outgoing-call-v2-schema page anchor
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/2/make-outgoing-call-v2",
4
"title": "Make Outgoing Call",
5
"type": "object",
6
"definitions": {
7
"Answered": {
8
"type": "object",
9
"allOf": [
10
{
11
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
12
},
13
{
14
"properties": {
15
"event": {
16
"type": "string",
17
"const": "answered"
18
}
19
}
20
}
21
]
22
},
23
"Busy": {
24
"type": "object",
25
"allOf": [
26
{
27
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
28
},
29
{
30
"properties": {
31
"event": {
32
"type": "string",
33
"const": "busy"
34
}
35
}
36
}
37
]
38
},
39
"NoAnswer": {
40
"type": "object",
41
"allOf": [
42
{
43
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
44
},
45
{
46
"properties": {
47
"event": {
48
"type": "string",
49
"const": "noAnswer"
50
}
51
}
52
}
53
]
54
}
55
},
56
"properties": {
57
"type": {
58
"type": "string",
59
"const": "make-outgoing-call-v2"
60
},
61
"name": {
62
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
63
},
64
"properties": {
65
"type": "object",
66
"properties": {
67
"from": {
68
"type": "string",
69
"title": "Number to make call from",
70
"default": "{{contact.channel.address}}"
71
},
72
"to": {
73
"type": "string",
74
"title": "Number to call",
75
"default": "{{flow.channel.address}}"
76
},
77
"record": {
78
"type": "boolean"
79
},
80
"recording_channels": {
81
"type": "string"
82
},
83
"recording_status_callback": {
84
"type": "string"
85
},
86
"trim": {
87
"type": "string"
88
},
89
"detect_answering_machine": {
90
"type": "boolean"
91
},
92
"machine_detection": {
93
"type": "string"
94
},
95
"machine_detection_timeout": {
96
"type": "string"
97
},
98
"machine_detection_speech_threshold": {
99
"type": "string"
100
},
101
"machine_detection_speech_end_threshold": {
102
"type": "string"
103
},
104
"machine_detection_silence_timeout": {
105
"type": "string"
106
},
107
"send_digits": {
108
"type": "string"
109
},
110
"timeout": {
111
"type": "integer",
112
"minimum": 0,
113
"maximum": 60
114
},
115
"sip_auth_username": {
116
"type": "string"
117
},
118
"sip_auth_password": {
119
"type": "string"
120
}
121
},
122
"required": [
123
"from",
124
"to"
125
]
126
},
127
"transitions": {
128
"type": "array",
129
"additionalItems": false,
130
"items": {
131
"anyOf": [
132
{
133
"$ref": "#/definitions/Answered"
134
},
135
{
136
"$ref": "#/definitions/Busy"
137
},
138
{
139
"$ref": "#/definitions/NoAnswer"
140
},
141
{
142
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Failed"
143
}
144
]
145
}
146
}
147
},
148
"required": [
149
"properties",
150
"transitions"
151
],
152
"maturity": "ga",
153
"schema_revision": 1
154
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/record-call",
4
"type": "object",
5
"title": "Record Call",
6
"properties": {
7
"type": {
8
"type": "string",
9
"const": "record-call"
10
},
11
"name": {
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
13
},
14
"properties": {
15
"type": "object",
16
"properties": {
17
"record_call": {
18
"type": "boolean"
19
},
20
"recording_status_callback": {
21
"type": "string"
22
},
23
"recording_status_callback_method": {
24
"type": "string"
25
},
26
"recording_status_callback_events": {
27
"type": "string"
28
},
29
"recording_channels": {
30
"type": "string"
31
},
32
"trim": {
33
"type": "string"
34
}
35
}
36
},
37
"transitions": {
38
"type": "array",
39
"additionalItems": false,
40
"items": {
41
"anyOf": [
42
{
43
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Success"
44
},
45
{
46
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Failed"
47
}
48
]
49
}
50
}
51
},
52
"required": [
53
"properties",
54
"transitions"
55
],
56
"maturity": "ga",
57
"schema_revision": 1
58
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/record-voicemail",
4
"type": "object",
5
"title": "Record Voicemail",
6
"definitions": {
7
"RecordingComplete": {
8
"type": "object",
9
"title": "On Reply",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "recordingComplete"
19
}
20
}
21
}
22
]
23
},
24
"NoAudio": {
25
"type": "object",
26
"title": "On Reply",
27
"allOf": [
28
{
29
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
30
},
31
{
32
"properties": {
33
"event": {
34
"type": "string",
35
"const": "noAudio"
36
}
37
}
38
}
39
]
40
}
41
},
42
"properties": {
43
"type": {
44
"type": "string",
45
"const": "record-voicemail"
46
},
47
"name": {
48
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
49
},
50
"properties": {
51
"type": "object",
52
"properties": {
53
"timeout": {
54
"title": "Stop recording after (in seconds)",
55
"type": "integer"
56
},
57
"finish_on_key": {
58
"type": "string"
59
},
60
"max_length": {
61
"type": "integer",
62
"default": 3600
63
},
64
"transcribe": {
65
"type": "boolean"
66
},
67
"transcription_callback_url": {
68
"type": "string"
69
},
70
"trim": {
71
"type": "string"
72
},
73
"play_beep": {
74
"type": "string"
75
},
76
"recording_status_callback_url": {
77
"type": "string"
78
}
79
}
80
},
81
"transitions": {
82
"type": "array",
83
"additionalItems": false,
84
"items": {
85
"anyOf": [
86
{
87
"$ref": "#/definitions/RecordingComplete"
88
},
89
{
90
"$ref": "#/definitions/NoAudio"
91
},
92
{
93
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Hangup"
94
}
95
]
96
}
97
}
98
},
99
"required": [
100
"type",
101
"name",
102
"properties",
103
"transitions"
104
],
105
"maturity": "ga",
106
"schema_revision": 1
107
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/run-function",
4
"type": "object",
5
"title": "Run Function",
6
"definitions": {
7
"Fail": {
8
"type": "object",
9
"title": "Fail",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "fail"
19
}
20
}
21
}
22
]
23
}
24
},
25
"properties": {
26
"type": {
27
"type": "string",
28
"const": "run-function"
29
},
30
"name": {
31
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
32
},
33
"properties": {
34
"type": "object",
35
"properties": {
36
"url": {
37
"type": "string"
38
},
39
"parameters": {
40
"type": "array",
41
"minLength": 1,
42
"items": {
43
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Parameter"
44
}
45
}
46
},
47
"required": [
48
"url"
49
]
50
},
51
"transitions": {
52
"type": "array",
53
"items": {
54
"anyOf": [
55
{
56
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Success"
57
},
58
{
59
"$ref": "#/definitions/Fail"
60
}
61
]
62
}
63
}
64
},
65
"required": [
66
"type",
67
"name",
68
"properties",
69
"transitions"
70
],
71
"maturity": "ga",
72
"schema_revision": 1
73
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/say-play",
4
"type": "object",
5
"title": "Say Play",
6
"definitions": {
7
"AudioComplete": {
8
"type": "object",
9
"title": "Audio Complete",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "audioComplete"
19
}
20
}
21
}
22
]
23
}
24
},
25
"properties": {
26
"type": {
27
"type": "string",
28
"const": "say-play"
29
},
30
"name": {
31
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
32
},
33
"properties": {
34
"type": "object",
35
"properties": {
36
"say": {
37
"type": "string"
38
},
39
"play": {
40
"type": "string"
41
},
42
"voice": {
43
"type": "string"
44
},
45
"language": {
46
"type": "string"
47
},
48
"loop": {
49
"type": "integer"
50
},
51
"digits": {
52
"type": "string"
53
}
54
},
55
"oneOf": [
56
{
57
"required": [
58
"say"
59
]
60
},
61
{
62
"required": [
63
"play"
64
]
65
}
66
]
67
},
68
"transitions": {
69
"type": "array",
70
"additionalItems": false,
71
"items": {
72
"anyOf": [
73
{
74
"$ref": "#/definitions/AudioComplete"
75
},
76
{
77
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Hangup"
78
}
79
]
80
}
81
}
82
},
83
"required": [
84
"type",
85
"name",
86
"properties",
87
"transitions"
88
],
89
"maturity": "ga",
90
"schema_revision": 1
91
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/look-up-profile",
4
"type": "object",
5
"title": "Look Up Profile",
6
"description": "Look up a profile from a connected CDP based on identifier",
7
"definitions": {
8
"ProfileFound": {
9
"$id": "profileFound",
10
"type": "object",
11
"title": "Profile Found",
12
"allOf": [
13
{
14
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
15
},
16
{
17
"properties": {
18
"event": {
19
"type": "string",
20
"const": "profileFound"
21
}
22
}
23
}
24
]
25
},
26
"NoProfileFound": {
27
"$id": "noProfileFound",
28
"type": "object",
29
"title": "No Profile Found",
30
"allOf": [
31
{
32
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
33
},
34
{
35
"properties": {
36
"event": {
37
"type": "string",
38
"const": "noProfileFound"
39
}
40
}
41
}
42
]
43
}
44
},
45
"properties": {
46
"type": {
47
"type": "string",
48
"const": "look-up-profile"
49
},
50
"name": {
51
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
52
},
53
"properties": {
54
"type": "object",
55
"properties": {
56
"connector_instance_name": {
57
"type": "string"
58
},
59
"profile_connector_instance": {
60
"type": "object",
61
"properties": {
62
"sid": {
63
"type": "string"
64
},
65
"friendly_name": {
66
"type": "string"
67
}
68
},
69
"required": [
70
"sid",
71
"friendly_name"
72
]
73
},
74
"identifiers": {
75
"type": "array",
76
"minLength": 1,
77
"items": {
78
"type": "string"
79
}
80
},
81
"identifier": {
82
"type": "string"
83
},
84
"contact_identifier_value": {
85
"type": "string"
86
},
87
"context": {
88
"type": "string"
89
}
90
},
91
"required": [
92
"contact_identifier_value"
93
]
94
},
95
"transitions": {
96
"type": "array",
97
"additionalItems": false,
98
"minItems": 0,
99
"items": {
100
"anyOf": [
101
{
102
"$ref": "#/definitions/ProfileFound"
103
},
104
{
105
"$ref": "#/definitions/NoProfileFound"
106
},
107
{
108
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Failed"
109
}
110
]
111
}
112
}
113
},
114
"required": [
115
"type",
116
"name",
117
"properties",
118
"transitions"
119
],
120
"maturity": "ga",
121
"schema_revision": 1
122
}

Send & Wait For Reply Schema

send--wait-for-reply-schema page anchor
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/send-and-wait-for-reply",
4
"title": "Send and wait for reply",
5
"type": "object",
6
"definitions": {
7
"Reply": {
8
"type": "object",
9
"title": "On Reply",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "incomingMessage"
19
}
20
}
21
}
22
]
23
},
24
"NoReply": {
25
"type": "object",
26
"title": "Failed to Send",
27
"allOf": [
28
{
29
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
30
},
31
{
32
"properties": {
33
"event": {
34
"type": "string",
35
"const": "timeout"
36
}
37
}
38
}
39
]
40
},
41
"DeliveryFails": {
42
"type": "object",
43
"title": "Failed to Send",
44
"allOf": [
45
{
46
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
47
},
48
{
49
"properties": {
50
"event": {
51
"type": "string",
52
"const": "deliveryFailure"
53
}
54
}
55
}
56
]
57
}
58
},
59
"properties": {
60
"type": {
61
"type": "string",
62
"const": "send-and-wait-for-reply"
63
},
64
"name": {
65
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
66
},
67
"properties": {
68
"type": "object",
69
"properties": {
70
"body": {
71
"type": "string"
72
},
73
"from": {
74
"type": "string",
75
"default": "{{flow.channel.address}}"
76
},
77
"timeout": {
78
"type": "integer",
79
"default": 3600
80
},
81
"save_response_as": {
82
"type": "string"
83
},
84
"media_url": {
85
"type": "string"
86
},
87
"service": {
88
"title": "Programmable Chat Service",
89
"type": "string",
90
"default": "{{trigger.message.InstanceSid}}"
91
},
92
"channel": {
93
"type": "string",
94
"title": "Programmable Chat Channel",
95
"default": "{{trigger.message.ChannelSid}}"
96
},
97
"attributes": {
98
"type": "string",
99
"title": "Message Attributes"
100
}
101
},
102
"required": [
103
"body",
104
"from"
105
]
106
},
107
"transitions": {
108
"type": "array",
109
"additionalItems": false,
110
"minItems": 1,
111
"items": {
112
"oneOf": [
113
{
114
"$ref": "#/definitions/Reply"
115
},
116
{
117
"$ref": "#/definitions/NoReply"
118
},
119
{
120
"$ref": "#/definitions/DeliveryFails"
121
}
122
]
123
}
124
}
125
},
126
"required": [
127
"type",
128
"name",
129
"properties",
130
"transitions"
131
],
132
"maturity": "ga",
133
"schema_revision": 1
134
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/send-message",
4
"type": "object",
5
"title": "Send Message",
6
"definitions": {
7
"Sent": {
8
"type": "object",
9
"title": "Message Sent",
10
"allOf": [
11
{
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
13
},
14
{
15
"properties": {
16
"event": {
17
"type": "string",
18
"const": "sent"
19
}
20
}
21
}
22
]
23
},
24
"Failed": {
25
"type": "object",
26
"title": "Failed to Send",
27
"allOf": [
28
{
29
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
30
},
31
{
32
"properties": {
33
"event": {
34
"type": "string",
35
"const": "failed"
36
}
37
}
38
}
39
]
40
}
41
},
42
"properties": {
43
"type": {
44
"type": "string",
45
"const": "send-message"
46
},
47
"name": {
48
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
49
},
50
"properties": {
51
"type": "object",
52
"properties": {
53
"body": {
54
"type": "string"
55
},
56
"from": {
57
"type": "string",
58
"default": "{{flow.channel.address}}"
59
},
60
"to": {
61
"type": "string",
62
"default": "{{contact.channel.address}}"
63
},
64
"media_url": {
65
"type": "string"
66
},
67
"service": {
68
"title": "Programmable Chat Service",
69
"type": "string",
70
"default": "{{trigger.message.InstanceSid}}"
71
},
72
"channel": {
73
"type": "string",
74
"title": "Programmable Chat Channel",
75
"default": "{{trigger.message.ChannelSid}}"
76
},
77
"attributes": {
78
"type": "string",
79
"title": "Message Attributes"
80
}
81
},
82
"required": [
83
"body",
84
"from"
85
]
86
},
87
"transitions": {
88
"type": "array",
89
"additionalItems": false,
90
"items": {
91
"anyOf": [
92
{
93
"$ref": "#/definitions/Sent"
94
},
95
{
96
"$ref": "#/definitions/Failed"
97
}
98
]
99
}
100
}
101
},
102
"required": [
103
"type",
104
"name",
105
"properties",
106
"transitions"
107
],
108
"maturity": "ga",
109
"schema_revision": 1
110
}

Send to Autopilot Schema

send-to-autopilot-schema page anchor
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/send-to-auto-pilot",
4
"type": "object",
5
"title": "Send To Autopilot",
6
"description": "Sends the interaction to auto pilot widget",
7
"definitions": {
8
"SessionEnded": {
9
"type": "object",
10
"title": "Session Ended",
11
"allOf": [
12
{
13
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
14
},
15
{
16
"properties": {
17
"event": {
18
"type": "string",
19
"const": "sessionEnded"
20
}
21
}
22
}
23
]
24
},
25
"Failure": {
26
"type": "object",
27
"title": "Session Failed",
28
"allOf": [
29
{
30
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
31
},
32
{
33
"properties": {
34
"event": {
35
"type": "string",
36
"const": "failure"
37
}
38
}
39
}
40
]
41
},
42
"Timeout": {
43
"type": "object",
44
"title": "Timeout",
45
"allOf": [
46
{
47
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
48
},
49
{
50
"properties": {
51
"event": {
52
"type": "string",
53
"const": "timeout"
54
}
55
}
56
}
57
]
58
}
59
},
60
"properties": {
61
"type": {
62
"type": "string",
63
"const": "send-to-auto-pilot"
64
},
65
"name": {
66
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
67
},
68
"properties": {
69
"type": "object",
70
"properties": {
71
"autopilot_assistant_sid": {
72
"type": "string",
73
"pattern": "^.*\\S+.*$",
74
"minLength": 1
75
},
76
"model_sid": {
77
"type": "string"
78
},
79
"from": {
80
"type": "string"
81
},
82
"body": {
83
"type": "string"
84
},
85
"chat_service": {
86
"type": "string"
87
},
88
"chat_channel": {
89
"type": "string"
90
},
91
"chat_attributes": {
92
"type": "string"
93
},
94
"timeout": {
95
"type": "integer"
96
},
97
"target_task": {
98
"type": "string"
99
},
100
"memory_parameters": {
101
"type": "array",
102
"minLength": 1,
103
"items": {
104
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/Parameter"
105
}
106
}
107
},
108
"required": [
109
"autopilot_assistant_sid",
110
"from",
111
"body",
112
"timeout"
113
]
114
},
115
"transitions": {
116
"type": "array",
117
"additionalItems": false,
118
"items": {
119
"anyOf": [
120
{
121
"$ref": "#/definitions/SessionEnded"
122
},
123
{
124
"$ref": "#/definitions/Failure"
125
},
126
{
127
"$ref": "#/definitions/Timeout"
128
}
129
]
130
}
131
}
132
},
133
"required": [
134
"type",
135
"name",
136
"properties",
137
"transitions"
138
],
139
"maturity": "ga",
140
"schema_revision": 1
141
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/send-to-flex",
4
"type": "object",
5
"title": "Send To Flex",
6
"description": "Sends the call or chat message to flex",
7
"definitions": {
8
"FailedToEnqueue": {
9
"$id": "failedToEnqueue",
10
"type": "object",
11
"title": "Task Creation Failed",
12
"allOf": [
13
{
14
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
15
},
16
{
17
"properties": {
18
"event": {
19
"type": "string",
20
"const": "failedToEnqueue"
21
}
22
}
23
}
24
]
25
},
26
"CallFailure": {
27
"$id": "CallFailure",
28
"type": "object",
29
"title": "Call Failed",
30
"description": "Call failed to enqueue",
31
"allOf": [
32
{
33
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
34
},
35
{
36
"properties": {
37
"event": {
38
"type": "string",
39
"const": "callFailure"
40
}
41
}
42
}
43
]
44
}
45
},
46
"properties": {
47
"type": {
48
"type": "string",
49
"const": "send-to-flex"
50
},
51
"name": {
52
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
53
},
54
"properties": {
55
"type": "object",
56
"properties": {
57
"workflow": {
58
"type": "string",
59
"pattern": "^.*\\S+.*$",
60
"minLength": 1
61
},
62
"channel": {
63
"type": "string",
64
"pattern": "^.*\\S+.*$",
65
"minLength": 1
66
},
67
"attributes": {
68
"type": "string"
69
},
70
"timeout": {
71
"type": "integer"
72
},
73
"priority": {
74
"type": "string"
75
},
76
"waitUrl": {
77
"type": "string"
78
},
79
"waitUrlMethod": {
80
"type": "string"
81
}
82
},
83
"required": [
84
"workflow",
85
"channel"
86
]
87
},
88
"transitions": {
89
"type": "array",
90
"additionalItems": false,
91
"minItems": 0,
92
"items": {
93
"anyOf": [
94
{
95
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/CallComplete"
96
},
97
{
98
"$ref": "#/definitions/FailedToEnqueue"
99
},
100
{
101
"$ref": "#/definitions/CallFailure"
102
}
103
]
104
}
105
}
106
},
107
"required": [
108
"type",
109
"name",
110
"properties",
111
"transitions"
112
],
113
"maturity": "ga",
114
"schema_revision": 1
115
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/set-variables",
4
"type": "object",
5
"title": "Set Variables",
6
"properties": {
7
"type": {
8
"type": "string",
9
"const": "set-variables"
10
},
11
"name": {
12
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
13
},
14
"properties": {
15
"variables": {
16
"type": "array",
17
"additionalItems": false,
18
"items": {
19
"type": "object",
20
"additionalProperties": {
21
"type": "string"
22
}
23
}
24
}
25
},
26
"transitions": {
27
"type": "array",
28
"additionalItems": false,
29
"items": {
30
"type": "object",
31
"allOf": [
32
{
33
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/NextLink"
34
},
35
{
36
"properties": {
37
"event": {
38
"type": "string",
39
"const": "next"
40
}
41
}
42
}
43
]
44
}
45
}
46
},
47
"required": [
48
"type",
49
"name",
50
"properties",
51
"transitions"
52
],
53
"maturity": "ga",
54
"schema_revision": 1
55
}
1
{
2
"$schema": "https://schemas.twilio.com/studio/draft/2019-09/core#",
3
"$id": "https://schemas.twilio.com/studio/draft/2019-09/split-based-on",
4
"type": "object",
5
"definitions": {
6
"Condition": {
7
"type": "object",
8
"properties": {
9
"friendly_name": {
10
"type": "string",
11
"minLength": 1
12
},
13
"type": {
14
"type": "string",
15
"enum": [
16
"contains",
17
"does_not_contain",
18
"does_not_match_any_of",
19
"does_not_start_with",
20
"equal_to",
21
"greater_than",
22
"is_after_date",
23
"is_after_time",
24
"is_before_date",
25
"is_before_time",
26
"is_blank",
27
"is_not_blank",
28
"less_than",
29
"matches_any_of",
30
"not_equal_to",
31
"regex",
32
"starts_with"
33
]
34
},
35
"arguments": {
36
"type": "array",
37
"additionalItems": false,
38
"minItems": 1,
39
"maxItems": 100,
40
"items": {
41
"type": "string"
42
}
43
},
44
"value": {
45
"type": "string",
46
"minLength": 1
47
}
48
},
49
"required": [
50
"friendly_name",
51
"type",
52
"arguments",
53
"value"
54
]
55
}
56
},
57
"properties": {
58
"type": {
59
"type": "string",
60
"const": "split-based-on"
61
},
62
"name": {
63
"$ref": "https://schemas.twilio.com/studio/draft/2019-09/commons#/definitions/WidgetName"
64
},
65
"properties": {
66
"type": "object",
67
"properties": {
68
"input": {
69
"title": "Variable to test",
70
"type": "string",
71
"minLength": 1
72
}
73
},
74
"required": [
75
"input"
76
]
77
},
78
"transitions": {
79
"type": "array",
80
"additionalItems": false,
81
"items": {
82
"type": "object",
83
"properties": {
84
"event": {
85
"type": "string",
86
"enum": [
87
"match",
88
"noMatch"
89
]
90
},
91
"next": {
92
"type": "string"
93
},
94
"condition": {
95
"type": "array",
96
"additionalItems": false,
97
"items": {
98
"$ref": "#/definitions/Condition"
99
}
100
}
101
}
102
}
103
}
104
},
105
"required": [
106
"type",
107
"name",
108
"properties",
109
"transitions"
110
],
111
"maturity": "ga",
112
"schema_revision": 1
113
}