Hilos Flow Execution Contact API
The Flow Execution Contact API from Hilos — 2 operation(s) for flow execution contact.
The Flow Execution Contact API from Hilos — 2 operation(s) for flow execution contact.
openapi: 3.0.3
info:
title: Hilos Contact Flow Execution Contact API
version: 1.0.0
description: 'All of the below API endpoints require API key authentication, get your token at https://app.hilos.io/dev/api-keys.
To use this token, send with every request an `Authorization: Token <your token>` header.
Production API server is located at api.hilos.io using HTTPS.
No versioning info is required for now.'
servers:
- url: https://api.hilos.io
description: Production Server
security:
- tokenAuth: []
tags:
- name: Flow Execution Contact
paths:
/api/flow-execution-contact:
get:
tags:
- Flow Execution Contact
summary: List Flow Execution Contacts
description: Lists Flow Execution Contacts.
operationId: List Flow Execution Contact
parameters:
- in: query
name: contact
schema:
type: string
format: uuid
description: A Contact Id to filter the Flow Execution Contacts and only get those from that Contact.
examples:
OnlyReturnTheFlowExecutionsContactOfThisContact:
value: a3ff7ee5-0c11-49e2-a0d6-7e316626f7b1
summary: Only return the Flow Executions Contact of this Contact
- in: query
name: execution_steps__step_id
schema:
type: string
format: uuid
- in: query
name: flow_execution
schema:
type: string
format: uuid
description: A Flow Execution Id to filter the Flow Execution Contacts and only get those from that Flow Execution.
examples:
OnlyReturnTheFlowExecutionsContactOfThisFlowExecution:
value: a3ff7ee5-0c11-49e2-a0d6-7e316626f7b1
summary: Only return the Flow Executions Contact of this Flow Execution
- in: query
name: flow_execution__flow
schema:
type: string
format: uuid
description: A Flow Id to filter the Flow Execution Contacts and only get those from that Flow.
examples:
OnlyReturnTheFlowExecutionsContactOfThisFlow:
value: a3ff7ee5-0c11-49e2-a0d6-7e316626f7b1
summary: Only return the Flow Executions Contact of this flow
- in: query
name: flow_execution__flow_version
schema:
type: string
format: uuid
- in: query
name: id
schema:
type: string
format: uuid
- in: query
name: is_active
schema:
type: boolean
description: "A boolean param to filter between active/in progress Flow Execution Contacs.\n\n If the parameter is omitted it will respond with Flow Execution Contacts with any `status`."
examples:
OnlyReturnTheFlowExecutionsContactThatAreWithStatus`READY`,`RUNNING`Or`PAUSED`.:
value:
- 'true'
- any-truthy-value
- 1
summary: Only return the Flow Executions Contact that are with status `READY`, `RUNNING` or `PAUSED`.
OnlyReturnTheFlowExecutionsContactThatAreWithStatus`CANCELED`Or`COMPLETED`.:
value:
- 'false'
- 0
summary: Only return the Flow Executions Contact that are with status `CANCELED` or `COMPLETED`.
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: page_size
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- in: query
name: search
schema:
type: string
description: You can search with the `contact__phone`, `contact__first_name`, `contact__last_name`, `contact__email` fields.
examples:
ByContactEmail:
value: erik@hilos.io
summary: by contact email
ByContactPhone:
value: '+525512345678'
summary: by contact phone
ByContactLastName:
value: Smith
summary: by contact last_name
ByContactFirstName:
value: Jonh
summary: by contact first_name
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedFlowExecutionContactListSimpleList'
description: ''
security:
- tokenAuth: []
/api/flow-execution-contact/{id}:
get:
tags:
- Flow Execution Contact
summary: Get Flow Execution Contact by Id
description: Get Flow Execution Contact by Id.
operationId: Get Flow Execution Contact
parameters:
- in: path
name: id
schema:
type: string
format: uuid
description: A Flow Execution Contact Id to Retrive.
required: true
examples:
QueryById:
value: a3ff7ee5-0c11-49e2-a0d6-7e316626f7b1
summary: Query by Id
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/FlowExecutionContactReadDetail'
description: ''
security:
- tokenAuth: []
components:
schemas:
FlowExecutionContactStatusEnum:
enum:
- READY
- RUNNING
- COMPLETED
- CANCELED
- PAUSED
- EXPIRED
- FAILED
type: string
BodyFileTypeEnum:
enum:
- URL
- UPLOAD
type: string
FlowStepEdit:
type: object
description: This class is not useful other than for the OpenAPI Schema.
properties:
flow_version:
type: string
format: uuid
name:
type: string
maxLength: 100
step_type:
type: string
maxLength: 100
next_step_default_idx:
type: integer
maximum: 32767
minimum: 0
nullable: true
id:
type: string
format: uuid
next_step_default:
type: string
format: uuid
next_step_alternate:
type: string
format: uuid
answer_failed_next_step:
type: string
format: uuid
nullable: true
next_steps_for_options:
type: array
items:
type: string
format: uuid
answer_type:
nullable: true
oneOf:
- $ref: '#/components/schemas/AnswerTypeEnum'
- $ref: '#/components/schemas/BlankEnum'
- $ref: '#/components/schemas/NullEnum'
body:
type: string
nullable: true
body_type:
nullable: true
oneOf:
- $ref: '#/components/schemas/MessageTypeEnum'
- $ref: '#/components/schemas/BlankEnum'
- $ref: '#/components/schemas/NullEnum'
body_file_url:
type: string
format: uri
nullable: true
maxLength: 200
body_file_type:
nullable: true
oneOf:
- $ref: '#/components/schemas/BodyFileTypeEnum'
- $ref: '#/components/schemas/BlankEnum'
- $ref: '#/components/schemas/NullEnum'
body_file:
allOf:
- $ref: '#/components/schemas/UploadedAccountFile'
readOnly: true
answer_validation_message:
type: string
nullable: true
answer_instructions:
type: string
nullable: true
answer_options:
type: array
items:
type: string
maxLength: 255
nullable: true
answer_phone_default_country:
nullable: true
oneOf:
- $ref: '#/components/schemas/AnswerPhoneDefaultCountryEnum'
- $ref: '#/components/schemas/BlankEnum'
- $ref: '#/components/schemas/NullEnum'
next_step_alternate_idx:
type: integer
maximum: 32767
minimum: 0
nullable: true
conditions:
type: array
items:
$ref: '#/components/schemas/StepConditionalCondition'
delay_type:
type: string
nullable: true
maxLength: 20
delay_until:
type: string
format: date-time
nullable: true
action_request_method:
nullable: true
oneOf:
- $ref: '#/components/schemas/ActionRequestMethodEnum'
- $ref: '#/components/schemas/BlankEnum'
- $ref: '#/components/schemas/NullEnum'
action_request_url:
type: string
format: uri
nullable: true
maxLength: 2000
action_request_headers:
type: object
additionalProperties:
type: string
nullable: true
nullable: true
action_request_params:
type: object
additionalProperties:
type: string
nullable: true
nullable: true
action_request_body:
type: string
nullable: true
action_test_response_data:
type: string
format: uuid
nullable: true
answer_allow_decimals:
type: boolean
answer_range_min:
type: string
nullable: true
maxLength: 50
answer_range_max:
type: string
nullable: true
maxLength: 50
answer_has_range:
type: boolean
assign_to_users:
type: array
items:
type: integer
readOnly: true
ordering_idx:
type: integer
maximum: 32767
minimum: 0
has_options_from_variable:
type: boolean
option_from_variable_value:
type: string
nullable: true
options_from_variable:
type: string
nullable: true
option_from_variable_title:
type: string
nullable: true
missing_options_message:
type: string
nullable: true
answer_options_render:
$ref: '#/components/schemas/AnswerOptionsRenderEnum'
answer_options_render_list_button_title:
type: string
nullable: true
maxLength: 20
answer_options_render_list_section_title:
type: string
nullable: true
maxLength: 24
next_steps_for_options_idx:
type: array
items:
type: integer
maximum: 2147483647
minimum: -2147483648
nullable: true
nullable: true
contact_tags:
type: array
items:
type: string
maxLength: 255
nullable: true
conversation_tags:
type: array
items:
type: string
maxLength: 255
nullable: true
append_tags:
type: boolean
max_wait_time_amount:
type: integer
maximum: 32767
minimum: 0
max_wait_time_unit:
$ref: '#/components/schemas/MaxWaitTimeUnitEnum'
time_windows:
type: array
items:
$ref: '#/components/schemas/FlowStepTimeWindow'
has_max_wait_time:
type: boolean
set_time_window:
type: boolean
assign_to_teams:
type: array
items:
type: integer
readOnly: true
time_window_type:
nullable: true
oneOf:
- $ref: '#/components/schemas/TimeWindowTypeEnum'
- $ref: '#/components/schemas/BlankEnum'
- $ref: '#/components/schemas/NullEnum'
has_max_answer_attempts:
type: boolean
max_answer_attempts:
type: integer
maximum: 32767
minimum: 0
answer_failed_next_step_idx:
type: integer
maximum: 32767
minimum: 0
nullable: true
whatsapp_template:
type: string
format: uuid
readOnly: true
whatsapp_template_variables:
type: object
additionalProperties: {}
readOnly: true
save_contact_answer:
type: boolean
default: false
validate_answer_with_buttons:
type: boolean
default: false
contact_custom_properties:
type: array
items:
$ref: '#/components/schemas/FlowStepContactUpdateCustomProperty'
contact_first_name:
type: string
contact_last_name:
type: string
contact_email:
type: string
contact_external_url:
type: string
next_flow:
type: string
paths:
type: array
items:
$ref: '#/components/schemas/StepConditionalMultilpePath'
required:
- assign_to_teams
- assign_to_users
- body_file
- conditions
- flow_version
- name
- next_steps_for_options
- step_type
- time_windows
- whatsapp_template
- whatsapp_template_variables
FlowExecutionContactReadDetail:
type: object
properties:
id:
type: string
format: uuid
contact:
allOf:
- $ref: '#/components/schemas/ContactReadSimple'
description: The Contact that the Flow Execution Contact is for.
status:
$ref: '#/components/schemas/FlowExecutionContactStatusEnum'
execution_steps:
type: array
items:
$ref: '#/components/schemas/FlowExecutionStepReadDetail'
description: The Flow Execution Steps that the Flow Execution Contact has.
created_on:
type: string
format: date-time
title: Creado el
flow_execution:
allOf:
- $ref: '#/components/schemas/FlowExecutionReadDetail'
description: Details for the Flow Execution
reason:
type: string
nullable: true
required:
- contact
- execution_steps
- flow_execution
InboundTriggerWithEnum:
enum:
- ANY_MESSAGE
- TEXT
- IMAGE
- FILE
type: string
FlowExecutionTypeEnum:
enum:
- INBOUND
- OUTBOUND
type: string
ComparisonEnum:
enum:
- exact
- '!exact'
- gte
- gt
- lte
- lt
- isnull
- '!isnull'
- icontains
- '!icontains'
type: string
FlowExecutionContactListSimple:
type: object
properties:
id:
type: string
format: uuid
contact:
allOf:
- $ref: '#/components/schemas/ContactReadSimple'
description: The Contact that the Flow Execution Contact is for.
status:
$ref: '#/components/schemas/FlowExecutionContactStatusEnum'
created_on:
type: string
format: date-time
title: Creado el
reason:
type: string
nullable: true
flow_name:
type: string
readOnly: true
description: The name of the Flow that the Flow Execution Contact is for.
is_chatbot_execution:
type: boolean
readOnly: true
description: Boolean indicating wether the Flow Execution Contact is for a Chatbot Flow Execution.
required:
- contact
- flow_name
- is_chatbot_execution
FlowVersionSimpleRead:
type: object
properties:
execution_type:
$ref: '#/components/schemas/FlowExecutionTypeEnum'
id:
type: string
format: uuid
flow:
$ref: '#/components/schemas/FlowSimpleRead'
is_current_version:
type: boolean
readOnly: true
version_name:
type: string
maxLength: 255
version_description:
type: string
nullable: true
published_by:
allOf:
- $ref: '#/components/schemas/SimpleUser'
readOnly: true
created_on:
type: string
format: date-time
title: Creado el
last_updated_on:
type: string
format: date-time
readOnly: true
title: Última actualización el
num_contacts:
type: integer
maximum: 2147483647
minimum: 0
completed:
type: integer
maximum: 2147483647
minimum: 0
expired:
type: integer
maximum: 2147483647
minimum: 0
running:
type: integer
maximum: 2147483647
minimum: 0
canceled:
type: integer
maximum: 2147483647
minimum: 0
failed:
type: integer
maximum: 2147483647
minimum: 0
avg_completion_time:
type: string
required:
- execution_type
- flow
- is_current_version
- last_updated_on
- published_by
WhatsAppMessage:
type: object
properties:
id:
type: string
to_number:
type: string
readOnly: true
from_number:
type: string
readOnly: true
body:
type: string
nullable: true
direction:
type: string
timestamp:
type: string
format: date-time
readOnly: true
contact:
type: string
status:
allOf:
- $ref: '#/components/schemas/MessageStatusEnum'
readOnly: true
queued_on:
type: string
format: date-time
readOnly: true
accepted_on:
type: string
format: date-time
readOnly: true
sent_on:
type: string
format: date-time
readOnly: true
delivered_on:
type: string
format: date-time
readOnly: true
read_on:
type: string
format: date-time
readOnly: true
failed_on:
type: string
format: date-time
readOnly: true
provider_id:
type: string
readOnly: true
provider_error_code:
type: string
readOnly: true
provider_error_message:
type: string
readOnly: true
sent_by:
$ref: '#/components/schemas/SimpleUser'
is_deleted:
type: boolean
readOnly: true
content:
type: object
additionalProperties: {}
readOnly: true
whatsapp_template:
$ref: '#/components/schemas/WhatsAppTemplateSimpleRead'
content_type:
type: string
readOnly: true
content_url:
type: string
format: uri
readOnly: true
msg_type:
allOf:
- $ref: '#/components/schemas/MessageTypeEnum'
readOnly: true
location:
$ref: '#/components/schemas/LocationMessage'
failed_attempts:
type: integer
readOnly: true
contacts:
type: array
items:
$ref: '#/components/schemas/ContactMessage'
source:
allOf:
- $ref: '#/components/schemas/MessageSourceEnum'
readOnly: true
context_message:
type: string
readOnly: true
required:
- accepted_on
- contact
- contacts
- content
- content_type
- content_url
- context_message
- delivered_on
- direction
- failed_attempts
- failed_on
- from_number
- id
- is_deleted
- location
- msg_type
- provider_error_code
- provider_error_message
- provider_id
- queued_on
- read_on
- sent_by
- sent_on
- source
- status
- timestamp
- to_number
- whatsapp_template
WhatsAppTemplateStatusEnum:
enum:
- draft
- approved
- in_appeal
- pending
- rejected
- pending_deletion
- deleted
- disabled
- submitted
type: string
MaxWaitTimeUnitEnum:
enum:
- SECOND
- MINUTE
- HOUR
- DAY
type: string
ChannelTypeEnum:
enum:
- WHATSAPP
- EMAIL
- INSTAGRAM
- FB_MESSENGER
- TELEGRAM
- SMS
- VOICE
type: string
FlowExecutionContactFilterEdit:
type: object
properties:
field:
type: string
comparison:
$ref: '#/components/schemas/ComparisonEnum'
value:
type: string
id:
type: string
format: uuid
required:
- comparison
- field
- value
FlowExecutionStepReadDetail:
type: object
properties:
id:
type: string
format: uuid
step:
allOf:
- $ref: '#/components/schemas/FlowStepEdit'
readOnly: true
last_error_detail:
type: string
nullable: true
has_error:
type: boolean
expire_on:
type: string
format: date-time
nullable: true
status:
$ref: '#/components/schemas/FlowExecutionStepReadDetailStatusEnum'
validation_failed_attempts:
type: integer
maximum: 32767
minimum: 0
execution_result:
type: object
additionalProperties: {}
nullable: true
request_data:
type: object
additionalProperties: {}
nullable: true
messages:
type: array
items:
$ref: '#/components/schemas/FlowExecutionStepWhatsAppMessage'
created_on:
type: string
format: date-time
title: Creado el
required:
- messages
- step
MessageTypeEnum:
enum:
- audio
- voice
- button
- document
- text
- image
- interactive
- order
- sticker
- system
- unknown
- video
- unsupported
- location
- contacts
- template
- reaction
- ephemeral
type: string
WeekdayEnum:
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
type: integer
UploadedAccountFile:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
url:
type: string
format: uri
readOnly: true
uploaded_file:
type: string
format: uri
content_type:
type: string
original_name:
type: string
nullable: true
maxLength: 255
required:
- id
- uploaded_file
- url
MessageStatusEnum:
enum:
- new
- retry
- accepted
- sending
- sent
- receiving
- received
- delivered
- undelivered
- failed
- read
- deleted
type: string
ChannelStatusEnum:
enum:
- NEW
- ACTIVE
- INACTIVE
type: string
FlowStepTimeWindow:
type: object
properties:
weekday:
allOf:
- $ref: '#/components/schemas/WeekdayEnum'
minimum: 0
maximum: 32767
is_available:
type: boolean
start_at:
type: string
format: time
nullable: true
end_at:
type: string
format: time
nullable: true
required:
- weekday
ChannelProviderEnum:
enum:
- META_CLOUD_API
- TECH_PROVIDER_CLOUD_API
- D360_CLOUD_API
- 360DIALOG
type: string
AnswerTypeEnum:
enum:
- ANY
- FREE_TEXT
- SINGLE_OPTION
- NUMBER
- URL
- EMAIL
- FILE
- DOCUMENT
- VIDEO
- IMAGE
- PHONE
- DATE
- TIME
- DATETIME
- BOOL
- LOCATION
type: string
PaginatedFlowExecutionContactListSimpleList:
type: object
properties:
count:
type: integer
example: 123
next:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type: string
nullable: true
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/FlowExecutionContactListSimple'
StepConditionalCondition:
type: object
properties:
field:
type: string
maxLength: 255
comparison:
$ref: '#/components/schemas/ComparisonEnum'
value:
type: string
maxLength: 255
id:
type: integer
readOnly: true
required:
- comparison
- field
- id
- value
ContactMessage:
type: object
properties:
addresses:
type: array
items:
type: object
additionalProperties:
type: string
nullable: true
emails:
type: array
items:
type: object
additionalProperties:
type: string
nullable: true
ims:
type: array
items:
type: object
additionalProperties:
type: string
nullable: true
urls:
type: array
items:
type: string
format: uri
maxLength: 200
name:
type: object
additionalProperties:
type: string
nullable: true
phones:
type: array
items:
type: object
additionalProperties:
type: string
nullable: true
org:
type: object
additionalProperties:
type: string
nullable: true
FlowExecutionStatusEnum:
enum:
- PROCESSING
- READY
- AWAITING_CONFIRMATION
- CONFIRMED
- STARTING
- RUNNING
- COMPLETED
- CANCELED
- PAUSED
type: string
FlowExecutionExecuteForEnum:
enum:
- FILTERS
- LIST
- ALL
type: string
StepConditionalMultilpePath:
type: object
properties:
conditions:
type: array
items:
$ref: '#/components/schemas/StepConditionalCondition'
required:
- conditions
TimeWindowTypeEnum:
enum:
- IN_WORKING_HOURS
- CUSTOM
type: string
LanguageEnum:
enum:
- af
- sq
- ar
- az
- bn
- bg
- ca
- zh_CN
- zh_HK
- zh_TW
- hr
- cs
- da
- nl
- en
- en_GB
- en_US
- et
- fil
- fi
- fr
- ka
- de
- el
- gu
- ha
- he
- hi
- hu
- id
- ga
- it
- ja
- kn
- kk
- rw_RW
- ko
- ky_KG
- lo
- lv
- lt
- mk
- ms
- ml
- mr
- nb
- fa
- pl
- pt_BR
- pt_PT
- pa
- ro
- ru
- sr
- sk
- sl
- es
- es_AR
- es_ES
- es_MX
- sw
- sv
- ta
- te
- th
- tr
- uk
- ur
- uz
- vi
- zu
type: string
FlowStatusEnum:
enum:
- DRAFT
- PUBLISHED
type: string
UserRoleEnum:
enum:
- AGENT
- MANAGER
- ADMIN
- FINANCE
type: string
BlankEnum:
enum:
- ''
ActionRequestMethodEnum:
enum:
- GET
- POST
- PUT
- PATCH
- DELETE
type: string
FlowSimpleRead:
type: object
properties:
id:
type: string
readOnly: true
name:
type: string
maxLength: 100
created_by:
allOf:
- $ref: '#/components/schemas/SimpleUser'
readOnly: true
created_on:
type: string
format: date-time
title: Creado el
is_active:
type: boolean
status:
$ref: '#/components/schemas/FlowStatusEnum'
is_legacy:
type: boolean
channel:
allOf:
- $ref: '#/components/schemas/SimpleChannel'
readOnly: true
flow_execution_variables:
type: array
items:
type: string
maxLength: 255
nullable: true
required:
- channel
- created_by
- id
- name
FlowStepContactUpdateCustomProperty:
type: object
properties:
key:
type: string
value:
type: string
required:
- key
- value
SimpleUser:
type: object
properties:
first_name:
type: string
maxLength: 150
last_name:
type: string
maxLength: 150
email:
type: string
format: email
title: Email address
maxLength: 254
id:
type: integer
readOnly: true
profile_image:
type: string
format: uri
nullable: true
role:
$ref: '#/components/schemas/UserRoleEnum'
required:
- id
AnswerPhoneDefaultCountryEnum:
enum:
- AF
- AX
- AL
- DZ
- AS
- AD
- AO
- AI
- AQ
- AG
- AR
- AM
- AW
- AU
- AT
- AZ
- BS
- BH
- BD
- BB
- BY
- BE
- BZ
- BJ
- BM
- BT
- BO
- BQ
- BA
- BW
- BV
- BR
- IO
- BN
- BG
- BF
- BI
- CV
- KH
- CM
- CA
- KY
- CF
- TD
- CL
- CN
- CX
- CC
- CO
- KM
- CG
- CD
- CK
- CR
- CI
- HR
- CU
- CW
- CY
- CZ
- DK
- DJ
- DM
- DO
- EC
- EG
- SV
- GQ
- ER
- EE
- SZ
- ET
- FK
- FO
- FJ
- FI
- FR
- GF
- PF
- TF
- GA
- GM
- GE
- DE
- GH
- GI
- GR
- GL
- GD
- GP
- GU
- GT
- GG
- GN
- GW
- GY
- HT
- HM
- VA
- HN
- HK
- HU
- IS
- IN
- ID
- IR
- IQ
- IE
- IM
- IL
- IT
- JM
- JP
- JE
- JO
- KZ
- KE
- KI
- KW
- KG
- LA
- LV
- LB
- LS
- LR
- LY
- LI
- LT
- LU
- MO
- MG
- MW
- MY
- MV
- ML
- MT
- MH
- MQ
- MR
- MU
- YT
- MX
- FM
- MD
- MC
- MN
- ME
- MS
- MA
- MZ
- MM
- NA
- NR
- NP
- NL
- NC
- NZ
- NI
- NE
- NG
- NU
- NF
- KP
- MK
- MP
- 'NO'
- OM
- PK
- PW
- PS
- PA
- PG
- PY
- PE
- PH
- PN
- PL
- PT
- PR
- QA
- RE
- RO
- RU
- RW
- BL
- SH
- KN
- LC
- MF
- PM
- VC
- WS
- SM
- ST
- SA
- SN
- RS
- SC
- SL
- SG
- SX
- SK
- SI
- SB
- SO
- ZA
- GS
- KR
- SS
- ES
- LK
- SD
- SR
- SJ
- SE
- CH
- SY
- TW
- TJ
- TZ
- TH
- TL
- TG
- TK
- TO
- TT
- TN
- TR
- TM
- TC
- TV
- UG
- UA
- AE
- GB
- UM
- US
- UY
- UZ
- VU
- VE
- VN
- VG
- VI
- WF
- EH
- Y
# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/hilos/refs/heads/main/openapi/hilos-flow-execution-contact-api-openapi.yml