openapi: 3.0.0
info:
title: Bonjoro API V2
description: Bonjoro API definitions
version: 1.0.0
servers:
- url: https://www.bonjoro.com/
paths:
/api/v2/oauth/2/token:
post:
tags:
- Authentications
summary: Authenticate
operationId: authenticate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/authenticationPayload'
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/accessToken'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
/api/v2/attributes:
get:
tags:
- Profile Attributes
summary: Get the profile information related to the specified greet_id and profile_id
operationId: getAttributes
parameters:
- name: profile_id
in: query
required: true
schema:
type: string
format: uuid
- name: greet_id
in: query
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/profileAttributes'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/attribute-types:
get:
tags:
- Profile Attributes
summary: Get all profile attribute types
operationId: getAttributeTypes
responses:
'200':
description: ok
content:
application/json:
schema:
type: array
items:
anyOf:
- $ref: '#/components/schemas/profileAttributeType1'
- $ref: '#/components/schemas/profileAttributeType2'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automations:
get:
tags:
- Automations
summary: Get paginated automations
operationId: getAutomations
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/automations'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automations/{automation_id}:
get:
tags:
- Automations
summary: Update an automation
operationId: getAutomation
parameters:
- name: automation_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/automation'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
put:
tags:
- Automations
summary: Update the name or enabled status of an automation
operationId: putAutomation
parameters:
- name: automation_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
properties:
name:
type: string
example: New name
enabled:
type: boolean
example: true
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/automation'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
delete:
tags:
- Automations
summary: Delete an automation
operationId: deleteAutomation
parameters:
- name: automation_id
in: path
required: true
responses:
'203':
description: ok
content:
application/json:
schema:
allOf:
- properties:
message:
type: string
example: Deleted
type: object
- properties:
data:
$ref: '#/components/schemas/automationNoAction'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/campaigns:
get:
tags:
- Campaigns
summary: Get paginated campaigns
operationId: getCampaigns
parameters:
- name: limit
in: query
required: false
schema:
type: number
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/campaigns'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/campaigns/segmented:
get:
tags:
- Campaigns
summary: Get segmented campaigns
operationId: getSegmentedCampaigns
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/campaignsSegmented'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/campaigns/{campaign_id}:
get:
tags:
- Campaigns
summary: Get a campaign
operationId: getCampaign
parameters:
- name: campaign_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/campaign'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
put:
tags:
- Campaigns
summary: Update a campaign
operationId: putCampaign
parameters:
- name: campaign_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/campaignUpdatePayload'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/campaignWithUsers'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
delete:
tags:
- Campaigns
summary: Delete a campaign
operationId: deleteCampaign
parameters:
- name: campaign_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/campaignWithUsers'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/checklist:
get:
tags:
- Checklist
summary: Get paginated checklists
operationId: getChecklist
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/checklists'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/users/me/devices:
post:
tags:
- Devices
summary: Add user devices
operationId: postUserDevices
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/devices'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
data:
$ref: '#/components/schemas/devices'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/domain-availabilities/{domain_name}:
get:
tags:
- Domains
summary: Returns the availability of the specified domain
operationId: getDomain
parameters:
- name: domain_name
in: path
required: true
example: bonjoro.com
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
status:
type: string
enum:
- domain_available
- domain_not_available
example: domain_available
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/domains:
get:
tags:
- Domains
summary: Returns paginated domains
operationId: getDomains
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/domains'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
post:
tags:
- Domains
summary: Add a domain
operationId: postDomain
requestBody:
content:
application/json:
schema:
properties:
domain:
type: string
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
data:
$ref: '#/components/schemas/domain'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/domains/{domain_id}:
delete:
tags:
- Domains
summary: Delete a domain
operationId: deleteDomain
parameters:
- name: domain_id
in: path
required: true
example: '10'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Domain deleted
data:
$ref: '#/components/schemas/domain'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/domains/{domain_id}/verify:
put:
tags:
- Domains
summary: Verify a domain
operationId: putVerifyDomain
parameters:
- name: domain_id
in: path
required: true
example: '10'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Congrats, your domain is now verified
data:
properties:
is_verified:
type: boolean
example: true
type: object
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/events:
get:
tags:
- Events
summary: Get paginated events
operationId: getEvents
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/events'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/feedback:
post:
tags:
- Feedback
summary: Add a feedback
operationId: postFeedback
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/feedbackPayload'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/greets:
get:
tags:
- Greets
summary: Get paginated greets
operationId: getGreets
parameters:
- name: profile_id
in: query
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: assignee_id
in: query
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: status
in: query
schema:
type: string
enum:
- open
- closed
- sent
example: open
- name: simple
in: query
schema:
type: boolean
example: true
- name: search
in: query
description: Search for profiles where email, firstname and lastname matches the search term
schema:
type: string
- name: sort
in: query
schema:
type: string
enum:
- created_at
- updated_at
- uploaded_at
- awaiting_reply
- last_modified
- last_replied_at
example: created_at
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/greets'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
post:
tags:
- Greets
summary: Add a greet
operationId: postGreet
requestBody:
content:
application/json:
schema:
properties:
profiles:
description: An array of profiles
type: array
items:
type: string
format: email | uuid
maxItems: 200
assignee_id:
description: The assignee of the created task
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
nullable: true
note:
description: A note to add to the task
type: string
example: New signup
nullable: true
campaign_id:
description: The workspace in which to create the task
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
nullable: true
template_id:
description: A message template to set for the task
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
nullable: true
custom_attributes:
description: Key/value pairs describing custom attributes for the task
type: object
nullable: true
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
data:
$ref: '#/components/schemas/greetFull'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
delete:
tags:
- Greets
summary: Delete multiple greets
operationId: delete multipleGreets
parameters:
- name: greets[]
in: query
schema:
type: array
items:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/greetFull'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
patch:
tags:
- Greets
summary: Updates assignee_id and/or campaign_id of the specified greets
operationId: updateManyGreets
requestBody:
content:
application/json:
schema:
properties:
assignee_id:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
campaign_id:
type: integer
example: 5
greets:
description: An array of greet uuids
type: array
items:
type: string
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/greets'
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/{greet_id}:
put:
tags:
- Greets
summary: Update the assignee for a greet
operationId: putGreet
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
requestBody:
content:
application/json:
schema:
properties:
assignee_id:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/greetFull'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
delete:
tags:
- Greets
summary: Delete a greet
operationId: deleteGreet
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/greetFull'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/create:
post:
tags:
- Greets
summary: Create greets in bulk
operationId: bulkCreateGreets
requestBody:
content:
application/json:
schema:
properties:
assignee_id:
type: string
format: uuid
example: a9c34499-8573-4ae5-b596-56aaf4d83b29
campaign_id:
type: string
format: uuid
example: a9c34499-8573-4ae5-b596-56aaf4d83b29
nullable: true
sync:
type: integer
enum:
- 1
- 0
example: 0
nullable: true
reason:
type: string
format: string
example: New Sign Up
nullable: true
lines:
type: array
items:
properties:
email:
type: string
format: email
example: mail@gmail.com
first_name:
type: string
format: string
example: Joe
nullable: true
last_name:
type: string
format: string
example: Bloggs
nullable: true
reason:
type: string
format: string
example: New Sign Up
nullable: true
type: object
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/greets/{greet_id}/notifications:
post:
tags:
- Greets
summary: Mark greet as complete
operationId: sendNotification
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
example: e885c1ff-0d2e-4b45-a4bb-ea8b09a30a19
requestBody:
content:
application/json:
schema:
properties:
via:
type: array
items:
type: string
enum:
- email
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Sent
data:
$ref: '#/components/schemas/greetFull'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/rollup:
post:
tags:
- Greets
summary: Rollup and delete greets
operationId: rollupGreets
requestBody:
content:
application/json:
schema:
properties:
type:
type: string
example: no_name
campaign_id:
type: integer
example: 5
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Complete
data:
properties:
count:
type: integer
example: 1
type: object
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/greets/{greet_id}/{profile_id}/update:
post:
tags:
- Greets
summary: Update a greet profile and event message
operationId: updateGreetsProfile
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: profile_id
in: path
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/greetProfileUpdatePayload'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/updateGreetProfileResult'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/{greet_id}/{profile_id}:
delete:
tags:
- Greets
summary: Delete a greet profile
operationId: deleteGreetProfile
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: profile_id
in: path
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/greetFull'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/{greet_id}/events:
get:
tags:
- Greets
summary: Get paginated greet events
operationId: getGreetEvents
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
example: e885c1ff-0d2e-4b45-a4bb-ea8b09a30a19
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/greets'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/{greet_id}/profiles:
get:
tags:
- Greets
summary: Get paginated greet profiles
operationId: getGreetProfiles
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
example: e885c1ff-0d2e-4b45-a4bb-ea8b09a30a19
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/greetProfiles'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/results:
get:
tags:
- Greets
summary: Get paginated greet results
operationId: getGreetResults
parameters:
- name: sort
in: query
schema:
type: string
enum:
- created_at
- updated_at
- uploaded_at
- awaiting_reply
- last_modified
- last_replied_at
example: created_at
- name: assignee_id
in: query
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: profile_id
in: query
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: limit
in: query
schema:
type: integer
example: '10'
- name: simple
in: query
schema:
type: boolean
example: true
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/greetResults'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/results/stats:
get:
tags:
- Greets
summary: Get paginated lightweight greet results stats
operationId: getGreetResultsStats
parameters:
- name: sort
in: query
schema:
type: string
enum:
- created_at
- updated_at
- uploaded_at
- awaiting_reply
- last_modified
- last_replied_at
example: created_at
- name: assignee_id
in: query
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: profile_id
in: query
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: limit
in: query
schema:
type: integer
example: '10'
- name: simple
in: query
schema:
type: boolean
example: true
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/greetResultsStats'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/todo:
get:
tags:
- Greets
summary: Get paginated greet todos
operationId: getGreetTodos
parameters:
- name: profile_id
in: query
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: assignee_id
in: query
schema:
type: string
format: uuid
example: 7b9d182a-a687-472b-8212-2c817a7ae088
- name: search
in: query
description: Search for profiles where email, firstname and lastname matches the search term
schema:
type: string
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/greets'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/{greet_id}/upload-url:
get:
tags:
- Greets
summary: Get S3 upload url for a greet
operationId: getGreetUploadUrl
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
example: e885c1ff-0d2e-4b45-a4bb-ea8b09a30a19
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
method:
type: string
example: PUT
url:
type: string
format: ui
example: http://example-path-to-url
expires:
type: integer
format: unix-timestamp
example: 1610510383
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/greets/{greet_id}/uploads:
post:
tags:
- Greets
summary: Update greet metadata
operationId: postGreetProfiles
parameters:
- name: greet_id
in: path
schema:
type: string
format: uuid
requestBody:
content:
multipart/form-data:
schema:
properties:
thumbnail:
type: string
format: binary
video:
description: DEPRECATED
type: string
format: binary
message_template_id:
type: string
format: uuid
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/greetFull'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/industries:
get:
tags:
- Industries
summary: Get valid industries
operationId: getIndustries
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
industries:
type: object
example:
property: value
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
/api/v2/integrations:
get:
tags:
- Integrations
summary: Get paginated integrations
operationId: getIntegrations
responses:
'200':
description: ok
content:
application/json:
schema:
allOf:
- properties:
data:
type: array
items:
$ref: '#/components/schemas/integration'
type: object
- $ref: '#/components/schemas/pagination'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/integrations/{integration_id}:
get:
tags:
- Integrations
summary: Get an integration
operationId: getIntegration
parameters:
- name: integration_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
allOf:
- properties:
data:
type: array
items:
$ref: '#/components/schemas/integration'
type: object
- $ref: '#/components/schemas/pagination'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/invites:
get:
tags:
- Invites
summary: Get paginated team invites
operationId: getInvites
parameters:
- name: team_id
in: query
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/invites'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
post:
tags:
- Invites
summary: Add an invite
operationId: postInvite
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/inviteAddPayload'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
data:
$ref: '#/components/schemas/invite'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/{invite_id}/resend:
put:
tags:
- Invites
summary: Resend an invite
operationId: resendInvite
parameters:
- name: invite_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/invite'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/{invite_id}:
delete:
tags:
- Invites
summary: Delete an invite
operationId: deleteInvite
parameters:
- name: invite_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/invite'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/links:
get:
tags:
- Links
summary: Get paginated message template links
operationId: getLinks
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/links'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/links/{link_id}:
get:
tags:
- Links
summary: Get a message template link
operationId: getLink
parameters:
- name: link_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/link'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/login/google:
post:
tags:
- Login
summary: Retrieve a token via google sign in
operationId: loginViaGoogle
parameters:
- name: auth_code
in: query
description: Google auth code
required: true
schema:
type: string
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/googleLoginToken'
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
/api/v2/login/branch:
post:
tags:
- Login
summary: Retrieve a token via branch
operationId: loginViaBranch
parameters:
- name: token
in: query
description: A user's id
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/branchLoginToken'
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
/api/v2/media:
get:
tags:
- Media
summary: Get all paginated media
operationId: getAllMedia
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/allMedia'
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
post:
tags:
- Media
summary: Add a media
operationId: postMedia
requestBody:
content:
multipart/form-data:
schema:
properties:
file:
type: string
format: binary
tags:
type: string
example: logo image
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/media'
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/media/{media_id}:
delete:
tags:
- Media
summary: Delete a media
operationId: deleteMedia
parameters:
- name: media_id
in: query
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/media'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/message-templates:
get:
tags:
- Message Templates
summary: Get paginated message templates
operationId: getMessageTemplates
parameters:
- name: limit
in: query
required: false
schema:
type: number
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/messageTemplates'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
post:
tags:
- Message Templates
summary: Add message template
operationId: postMessageTemplates
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
data:
$ref: '#/components/schemas/messageTemplateMinimal'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/message-templates/{message_template_id}:
get:
tags:
- Message Templates
summary: Get message template
operationId: getMessageTemplate
parameters:
- name: message_template_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/messageTemplate'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'403':
description: 403 Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/forbidden'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
put:
tags:
- Message Templates
summary: Update message template
operationId: putMessageTemplate
parameters:
- name: message_template_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/messageTemplateUpdatePayload'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/messageTemplate'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'403':
description: 403 Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/forbidden'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
delete:
tags:
- Message Templates
summary: Delete message template
operationId: deleteMessageTemplate
parameters:
- name: message_template_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/messageTemplateMinimal'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'403':
description: 403 Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/forbidden'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/message-templates/demo/update:
post:
tags:
- Message Templates
summary: Update demo message template
operationId: updateDemoTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/messageTemplateDemoUpdatePayload'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Demo Updated
data:
$ref: '#/components/schemas/messageTemplateMinimal'
type: object
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/notifications:
get:
tags:
- Notifications
summary: Get paginated notifications
operationId: getNotifications
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/notifications'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/notifications/{notification_id}/reads:
post:
tags:
- Notifications
summary: Mark notification as read
operationId: postMarkRead
parameters:
- name: notification_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
Message:
type: string
example: Ok
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/pricing:
get:
tags:
- Pricing
summary: Get all pricing details
operationId: getPricing
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/pricing'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
/api/v2/profiles:
get:
tags:
- Profiles
summary: Get paginated profiles
operationId: getProfiles
responses:
'200':
description: ok
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
- $ref: '#/components/schemas/timestamps'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
post:
tags:
- Profiles
summary: Add profile
operationId: postProfile
requestBody:
content:
application/json:
schema:
required:
- email
properties:
email:
type: string
format: email
first_name:
type: string
example: Frank
last_name:
type: string
example: Castle
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
data:
type: object
allOf:
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
- $ref: '#/components/schemas/timestamps'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
patch:
tags:
- Profiles
summary: Bulk Update profiles
operationId: patchProfile
requestBody:
content:
application/json:
schema:
properties:
profiles:
type: array
items:
$ref: '#/components/schemas/profileBulkUpdatePayload'
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
- $ref: '#/components/schemas/timestamps'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/profiles/{profile_id}:
get:
tags:
- Profiles
summary: Get profile
operationId: getProfile
parameters:
- name: profile_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
- $ref: '#/components/schemas/timestamps'
- $ref: '#/components/schemas/greetProfileStats'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
put:
tags:
- Profiles
summary: Update profile
operationId: putProfile
parameters:
- name: profile_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
required:
- email
properties:
email:
type: string
format: email
first_name:
type: string
example: Frank
last_name:
type: string
example: Castle
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
- $ref: '#/components/schemas/timestamps'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/recordings:
get:
tags:
- Recordings
summary: Get paginated recordings
operationId: getRecordings
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/recordings'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
put:
tags:
- Recordings
summary: Update recording
operationId: updateARecording
requestBody:
content:
multipart/form-data:
schema:
properties:
etags:
type: array
items:
type: string
image:
type: string
format: binary
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: updated
data:
$ref: '#/components/schemas/recording'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/recordings/{recording_id}:
get:
tags:
- Recordings
summary: Get recording
operationId: getRecording
parameters:
- name: recording_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/recording'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
delete:
tags:
- Recordings
summary: Delete recording
operationId: deleteRecordings
parameters:
- name: recording_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/recordings/{recording_id}/upload-url:
get:
tags:
- Recordings
summary: Get recording upload url
operationId: getUploadURL
parameters:
- name: recording_id
in: path
required: true
schema:
type: string
format: uuid
- name: part_number
in: query
required: true
schema:
type: integer
format: number
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: ok
upload_url:
type: string
format: uri
example: http://example-path-to-upload-url
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/replies:
get:
tags:
- Replies
summary: Get paginated replies
operationId: getReplies
parameters:
- name: greet_id
in: query
required: true
schema:
type: string
format: uuid
- name: propfile_id
in: query
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/replies'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
post:
tags:
- Replies
summary: Add reply
description: The greet should have a completed/sent status in order to add a reply
operationId: postReply
requestBody:
content:
application/json:
schema:
properties:
greet_id:
type: string
format: uuid
profile_id:
type: string
format: uuid
content:
type: string
example: This is an example response
author_id:
type: string
example: '1234'
nullable: true
author_type:
type: string
enum:
- profile
- user
example: profile
nullable: true
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/reply'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'403':
description: 403 Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/forbidden'
security:
- OAuth: []
/api/v2/results/{greet_id}/{profile_id}:
get:
tags:
- Results
summary: Get results for the specified greet and profile
operationId: getResults
parameters:
- name: greet_id
in: path
required: true
schema:
type: string
format: uuid
- name: profile_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/result'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
put:
tags:
- Results
summary: Mark result as replied
operationId: putResult
parameters:
- name: greet_id
in: path
required: true
schema:
type: string
format: uuid
- name: profile_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
properties:
mark_as_replied:
type: boolean
enum:
- true
- false
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/result'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/results/{greet_id}/{profile_id}/stats:
get:
tags:
- Results
summary: Get lightweight results stats for the specified greet and profile
operationId: getResultStats
parameters:
- name: greet_id
in: path
required: true
schema:
type: string
format: uuid
- name: profile_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/resultStats'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/signature-availabilities/{email_address}:
get:
tags:
- Signature Avalabilities
summary: Show the status for the given email address
operationId: getSignatureAvalability
parameters:
- name: email_address
in: path
required: true
schema:
type: string
format: email
- name: transport_type
in: query
required: true
schema:
type: string
enum:
- transport_google
- transport_microsoft
- transport_postmark
- transport_sparkpost
- postmark_domain
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
status:
type: string
enum:
- email_available
- email_not_available
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/signatures:
get:
tags:
- Signatures
summary: Get paginated sender signatures
operationId: getSignatures
parameters:
- name: email
in: query
schema:
type: string
format: email
- name: transport_type
in: query
description: Required if email parameter is supplied
schema:
type: string
enum:
- transport_google
- transport_microsoft
- transport_postmark
- transport_sparkpost
- postmark_domain
- name: exclude_default
in: query
schema:
type: integer
enum:
- 1
- 0
- name: includes
in: query
schema:
type: string
enum:
- users.signatures
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/signatures'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
post:
tags:
- Signatures
summary: Add signature
operationId: postSignature
requestBody:
content:
application/json:
schema:
properties:
email:
type: string
format: email
first_name:
type: string
example: Diana
last_name:
type: string
example: Bishop
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
data:
$ref: '#/components/schemas/signature'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/signatures/{signature_id}:
delete:
tags:
- Signatures
summary: Delete signature
operationId: deleteSignature
parameters:
- name: signature_id
in: query
schema:
type: integer
requestBody:
content:
application/json:
schema:
properties:
from:
description: An object containing a userid and a signature id
type: object
example:
03180f5e-382e-4f72-a546-27be5db1683f: '514'
replyto:
description: An object containing a userid and a signature id
type: object
example:
03180f5e-382e-4f72-a546-27be5db1683f: '514'
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Email deleted
data:
$ref: '#/components/schemas/signature'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/signatures/{signature_id}/verify:
post:
tags:
- Signatures
summary: Verify signature
operationId: verifySignature
parameters:
- name: signature_id
in: query
schema:
type: integer
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Please check your inbox for the verification email
data:
$ref: '#/components/schemas/signature'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/stats:
get:
tags:
- Stats
summary: Get paginated stats
operationId: getStats
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/statistics'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/stats/{user_id}:
get:
tags:
- Stats
summary: Get user stats
operationId: getStat
parameters:
- name: user_id
in: path
description: A user id that is in the same team
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/statisticGreetForUser'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/stats/team:
get:
tags:
- Stats
summary: Get team stats
operationId: getTeamStam
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/statisticTeam'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/stock-media:
get:
tags:
- Stock Media
summary: Get paginated stock media
operationId: getStockMedia
parameters:
- name: tags
in: query
schema:
type: string
- name: limit
in: query
required: true
schema:
type: integer
- name: page
in: query
schema:
type: integer
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/stockMedia'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/tasklist:
get:
tags:
- Task List
summary: Get tasklist counts
operationId: getAttributes
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/tasklistResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/teams:
get:
tags:
- Teams
summary: Get paginated teams
operationId: getTeams
parameters:
- name: includes
in: query
schema:
type: string
enum:
- signatures
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/teams'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/teams/{team_id}:
get:
tags:
- Teams
summary: Get a team
operationId: getTeam
parameters:
- name: team_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/team'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
put:
tags:
- Teams
summary: Update a team landing page subdomain
operationId: putTeam
parameters:
- name: team_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
properties:
landing_page_subdomain:
type: string
example: example-subdomain
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/team'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/teams/{team_id}/links/{link_id}:
get:
tags:
- Teams
summary: Get a team
operationId: getTeamLinks
parameters:
- name: team_id
in: path
required: true
schema:
type: string
format: uuid
- name: link_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/link'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/transmisions:
get:
tags:
- Transmissions
summary: Get transmitted greet data
operationId: getTransmissions
parameters:
- name: recipient_id
in: query
description: The profile id of the receipient for the provided context_id
required: true
schema:
type: string
format: uuid
- name: context_id
in: query
description: A valid greet id
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/transmission'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/users:
get:
tags:
- Users
summary: Get paginated users in the same team
operationId: getUsers
parameters:
- name: includes
in: query
required: false
schema:
type: string
enum:
- signatures
- name: limit
in: query
required: false
schema:
type: number
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/users'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
post:
tags:
- Users
summary: Add a user
operationId: addUser
parameters:
- name: user_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
properties:
email:
type: string
format: email
password:
type: string
example: eX@mP13p@$$w0rD
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Created
data:
$ref: '#/components/schemas/user'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
/api/v2/users/{user_id}:
get:
tags:
- Users
summary: Get a user
operationId: getUser
parameters:
- name: user_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/user'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
post:
tags:
- Users
summary: Update a user bio
operationId: updateUserBio
parameters:
- name: user_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
properties:
bio:
type: string
example: Example bio
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/user'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/users/{user_id}/campaigns:
get:
tags:
- Users
summary: Get campaigns for a user
operationId: getUserCampaigns
parameters:
- name: user_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/campaigns'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/users/{user_id}/segmented-campaigns:
get:
tags:
- Users
summary: Get segmented campaigns for a user
operationId: getUserSegmentedCampaigns
parameters:
- name: user_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/userCampaignsSegmented'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/me:
post:
tags:
- Users
summary: Update self bio
operationId: updateSelfBio
requestBody:
content:
application/json:
schema:
properties:
bio:
type: string
example: Example bio
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/user'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/users/{user_id}/onboarding:
post:
tags:
- Users
summary: Update user onboarding info
operationId: updateUserAndTeamOnboarding
parameters:
- name: user_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/userUpdateOnboardingPayload'
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/userWithSignature'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/automation/accounts:
get:
tags:
- Automation Accounts
summary: Get paginated automation accounts
operationId: getAutomationAccounts
parameters:
- name: service
in: query
required: true
schema:
type: string
enum:
- active_campaign
- bonjoro
- convertkit
- drip
- hubspot_crm
- infusionsoft
- intercom
- mailchimp
- mailerlite
- ontraport
- patreon-v2
- shopify
- slack
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/automationAccounts'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/accounts/{account_id}:
get:
tags:
- Automation Accounts
summary: Get an automation account
operationId: getAutomationAccount
parameters:
- name: account_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/automationAccount'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
delete:
tags:
- Automation Accounts
summary: Delete an automation account
operationId: deleteAutomationAccount
parameters:
- name: account_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/automationAccount'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
/api/v2/automation/accounts/{account_id}/test:
get:
tags:
- Automation Accounts
summary: Test an automation account
operationId: testAutomationAccount
parameters:
- name: account_id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Ok
data:
type: object
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/actions:
post:
tags:
- Automation Actions
summary: Add action
operationId: addAutomationAction
requestBody:
content:
application/json:
schema:
properties:
service:
type: string
enum:
- active_campaign
- bonjoro
- convertkit
- drip
- hubspot_crm
- infusionsoft
- intercom
- mailchimp
- mailerlite
- ontraport
- patreon-v2
- shopify
- slack
action:
type: string
example: send_message
trigger_id:
type: string
format: uuid
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Ok
data:
$ref: '#/components/schemas/automationAction'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/actions/{action_id}:
put:
tags:
- Automation Actions
summary: Update automation action
operationId: updateAutomationAction
parameters:
- name: action_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
properties:
account_id:
type: string
format: uuid
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/automationAction'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/services:
get:
tags:
- Automation Services
summary: Get all automation services
operationId: getAutomationServices
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/editorAutomationServices'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/services/{service_id}:
get:
tags:
- Automation Services
summary: Get an automation service
operationId: getAutomationService
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/editorAutomationService'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/services/{service_id}/contacts:
get:
tags:
- Automation Services
summary: Get an automation service's contacts
operationId: getAutomationSericeContacts
parameters:
- name: service_id
in: path
required: true
schema:
type: string
- name: account_id
in: query
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/automationServicesContacts'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/services/{service_id}/contacts/parameters:
post:
tags:
- Automation Services
summary: Create a new automation assigned to the specified account_id
operationId: getAutomationSericeContactParameters
parameters:
- name: service_id
in: path
required: true
schema:
type: string
- name: account_id
in: query
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
parameters:
type: object
example:
list_id:
required: true
placeholder: Select a mailing list...
type: dropdown
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/editor/automations:
get:
tags:
- Editor Automations
summary: Get paginated editor automations
operationId: getEditorAutomation
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/editorAutomations'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/editor/automations/{automation_id}:
get:
tags:
- Editor Automations
summary: Get an editor automation
operationId: getAutomationForEditor
parameters:
- name: automation_id
in: path
required: true
schema:
type: string
format: uuid
- name: id
in: query
required: true
schema:
type: string
format: uuid
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/editorAutomation'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
put:
tags:
- Editor Automations
summary: Update an editor automation
operationId: updateAutomationEditor
parameters:
- name: automation_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/editorAutomationUpdatePayload'
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/editorAutomationUpdateResponseItem'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
delete:
tags:
- Editor Automations
summary: Delete an editor automation
operationId: deleteAutomationEditor
parameters:
- name: automation_id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
content:
application/json:
schema:
properties:
message:
type: string
example: Deleted
data:
$ref: '#/components/schemas/editorAutomation'
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/editorAutomationUpdateResponseItem'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/editor/actions:
get:
tags:
- Editor Automation Actions
summary: Get an editor action for the specified service and trigger
operationId: getEditorActions
parameters:
- name: service
in: query
required: true
schema:
type: string
- name: trigger
in: query
description: Value should be formatted as service_name.trigger_name like 'bonjoro.bonjoro_created'
required: true
schema:
type: string
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/automationEditorAction'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/editor/actions/{action_id}:
get:
tags:
- Editor Actions
summary: Get an editor action for the specified action_id and service
operationId: getEditorAction
parameters:
- name: action_id
in: path
required: true
schema:
type: string
- name: service
in: query
required: true
schema:
type: string
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/automationEditorAction'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/editor/{item_id}/parameter/{parameter_name}:
get:
tags:
- Editor Automation Parameters
summary: Get an editor parameter from the specified item_id and parameter_name
operationId: getEditorParameter
parameters:
- name: item_id
in: query
description: A valid trigger or action id
required: true
schema:
type: string
format: uuid
- name: parameter_name
in: query
required: true
schema:
type: string
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/automationEditorParameters'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/editor/services:
get:
tags:
- Editor Automation Services
summary: Get editor services
operationId: getEditorServices
parameters:
- name: type
in: query
schema:
type: string
enum:
- action
- trigger
nullable: true
- name: show_hidden
in: query
schema:
type: boolean
enum:
- true
- false
nullable: true
- name: trigger
in: query
description: Value should be formatted as service_name.trigger_name like 'bonjoro.bonjoro_created'
schema:
type: string
nullable: true
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/automationService'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/editor/services/{service_id}:
get:
tags:
- Editor Services
summary: Get an editor service
operationId: getEditorService
parameters:
- name: service_id
in: query
required: true
schema:
type: string
- name: type
in: query
schema:
type: string
enum:
- action
- trigger
nullable: true
- name: show_hidden
in: query
schema:
type: boolean
enum:
- true
- false
nullable: true
- name: trigger
in: query
description: Value should be formatted as service_name.trigger_name like 'bonjoro.bonjoro_created'
schema:
type: string
nullable: true
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/automationService'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/editor/triggers:
get:
tags:
- Editor Automation Triggers
summary: Get all available triggers for the specified service
operationId: getEditorServices
parameters:
- name: service
in: query
schema:
type: string
enum:
- active_campaign
- bonjoro
- convertkit
- drip
- hubspot_crm
- infusionsoft
- intercom
- mailchimp
- mailerlite
- ontraport
- patreon-v2
- shopify
- slack
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/editorAutomationTriggerItem'
type: object
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/triggers:
get:
tags:
- Automation Triggers
summary: Get all automation triggers
operationId: getAutomationTriggers
responses:
'200':
description: ok
content:
application/json:
schema:
$ref: '#/components/schemas/automationTriggers'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
post:
tags:
- Automation Triggers
summary: Add a trigger to the specified service
operationId: postAutomationTrigger
requestBody:
content:
application/json:
schema:
properties:
service:
type: string
enum:
- active_campaign
- bonjoro
- convertkit
- drip
- hubspot_crm
- infusionsoft
- intercom
- mailchimp
- mailerlite
- ontraport
- patreon-v2
- shopify
- slack
trigger:
type: string
example: bonjoro_created
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Ok
data:
$ref: '#/components/schemas/automationTrigger'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
security:
- OAuth: []
/api/v2/automation/triggers/{trigger_id}:
put:
tags:
- Automation Triggers
summary: Assign the specified account to the trigger
operationId: putAutomationTrigger
requestBody:
content:
application/json:
schema:
properties:
account_id:
type: string
format: uuid
type: object
responses:
'200':
description: ok
content:
application/json:
schema:
properties:
message:
type: string
example: Updated
data:
$ref: '#/components/schemas/automationTrigger'
type: object
'400':
description: 400 Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/badRequest'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/unauthorized'
'404':
description: 404 Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/notFound'
security:
- OAuth: []
components:
schemas:
accessToken:
properties:
token_type:
type: string
example: Bearer
expires_in:
type: integer
example: 31536000
access_token:
type: string
example: eyJ0eXAiOiJKV1QiLCJh...
refresh_token:
type: string
example: eyJ0eXAiOiJKV1QiLCJh...
type: object
authenticationPayload:
properties:
grant_type:
type: string
enum:
- password
- client_credentials
- authorization_code
username:
type: string
format: email
password:
type: string
client_id:
type: string
client_secret:
type: string
type: object
profileAttributes:
properties:
message:
type: string
example: Ok
data:
type: array
items:
properties:
source:
type: string
example: bonjoro
type:
type: string
example: string
name:
type: string
example: Reputation
value:
type: string
example: Risky (Business role email)
type: object
profile_was_updated:
type: boolean
example: false
type: object
profileAttributeType1:
properties:
key:
type: string
example: number
name:
type: string
example: Number
type: object
profileAttributeType2:
properties:
key:
type: string
example: facebook
name:
type: string
example: Facebook
subtype:
type: string
example: social
type: object
automations:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/automation'
type: object
- $ref: '#/components/schemas/pagination'
automation:
properties:
id:
type: string
example: fa51a57c-fc9a-4732-b08e-9a6839efa045
name:
type: string
example: My Funnel
enabled:
type: boolean
example: false
is_setup:
type: boolean
example: false
trigger:
$ref: '#/components/schemas/trigger'
action:
$ref: '#/components/schemas/action'
type: object
automationNoAction:
properties:
id:
type: string
example: fa51a57c-fc9a-4732-b08e-9a6839efa045
name:
type: string
example: My Funnel
enabled:
type: boolean
example: false
is_setup:
type: boolean
example: false
trigger:
$ref: '#/components/schemas/trigger'
type: object
trigger:
properties:
id:
type: string
example: 44a68dc7-ca53-431b-a559-3332655d273a
name:
type: string
example: Subscribe
short_name:
type: boolean
example: subscribe
service_id:
type: boolean
example: mailchimp
logo_url:
type: boolean
example: /assets/images/integrations/logo_mailchimp.svg
type: object
nullable: true
action:
properties:
id:
type: string
example: 44a68dc7-ca53-431b-a559-3332655d273a
name:
type: string
example: Subscribe
short_name:
type: boolean
example: subscribe
service_id:
type: boolean
example: mailchimp
logo_url:
type: boolean
example: /assets/images/integrations/logo_mailchimp.svg
type: object
nullable: true
campaigns:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/campaignWithUsers'
type: object
- $ref: '#/components/schemas/pagination'
campaignsSegmented:
properties:
data:
properties:
accessible:
type: array
items:
allOf:
- $ref: '#/components/schemas/campaignWithUsers'
inaccessible:
type: array
items:
allOf:
- $ref: '#/components/schemas/campaignWithUsers'
templates:
type: array
items: {}
type: object
type: object
userCampaignsSegmented:
properties:
data:
properties:
public:
type: array
items:
allOf:
- $ref: '#/components/schemas/campaignWithUsers'
private:
type: array
items:
allOf:
- $ref: '#/components/schemas/campaignWithUsers'
type: object
type: object
campaign:
properties:
id:
type: integer
example: 5
uuid:
type: string
format: uuid
slug:
type: string
example: task-list
name:
type: string
example: Task List
goal:
type: string
nullable: true
type:
type: string
example: Default
is_default:
type: boolean
example: true
is_private:
type: boolean
example: false
archived_at:
type: string
nullable: true
creator:
$ref: '#/components/schemas/user'
type: object
campaignWithUsers:
type: object
allOf:
- properties:
users:
type: array
items:
allOf:
- $ref: '#/components/schemas/user'
- $ref: '#/components/schemas/campaign'
campaignUpdatePayload:
required:
- name
properties:
type:
type: string
enum:
- Default
- Onboarding
- Activation
- Retention
- Team updates
- Prospecting
- Lead Conversion
- Thanking
- Upselling
- Seasonal
- Other
nullable: true
name:
type: string
example: My Campaign
goal:
type: string
example: Reach out to all
nullable: true
is_private:
type: boolean
example: false
nullable: true
users:
type: array
items:
type: string
format: uuid
type: object
checklists:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/checklist'
type: object
- $ref: '#/components/schemas/pagination'
checklist:
properties:
title:
type: string
example: Create a message template
hoverText:
type: string
example: Customise your video emails and landing pages with your own subject line, messaging, branding, and call-to-actions.
isChecked:
type: string
example: false
url:
type: string
example: http://domain.com/path-to-url
type: object
devices:
required:
- token
- type
properties:
token:
type: string
type:
type: string
enum:
- ios
- android
example: android
model:
type: string
nullable: true
manufacturer:
type: string
nullable: true
type: object
domains:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/domainWithCanonical'
type: object
- $ref: '#/components/schemas/pagination'
domain:
properties:
is_verified_as_sender:
type: boolean
example: true
name:
type: string
example: bonjoro.com
type:
type: string
example: byo
status:
type: string
example: created
id:
type: integer
example: 1
provider:
type: string
example: postmark
provider_id:
type: string
example: 40f02857-fcb5-4320-bade-491e61a7e4aa
is_compliant:
type: boolean
example: false
requires_manual_verification:
type: boolean
example: true
verify_domain_url:
type: string
example: http://domain.com/settings/mailer/domains/2/verify
delete_domain_url:
type: string
example: http://domain.com/settings/mailer/domains/2
record_sets:
type: array
items:
$ref: '#/components/schemas/domain_record_set'
type: object
domainWithCanonical:
allOf:
- properties:
canonical:
type: array
items:
$ref: '#/components/schemas/domain'
type: object
- $ref: '#/components/schemas/domain'
domain_record_set:
properties:
cname:
type: string
example: cname
purpose:
type: string
example: dkim
host:
type: string
example: host.com
key:
type: string
example: 20210111035208pm._domainkey
value:
type: string
example: 9c2790de-7a48-47ea-8e4b-6ae8fbd16218.dkim.test.bonjoro.com
is_verified:
type: boolean
example: true
type: object
events:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/event'
type: object
- $ref: '#/components/schemas/pagination'
event:
properties:
message:
type: string
example: Send a practice message to yourself
occured_at:
type: string
example: '2021-01-11 01:21:28'
id:
type: string
example: 89ca52c2-a846-49e1-8019-6783802e363d
type:
type: string
example: DemoEvent
source:
type: string
example: User
type: object
feedbackPayload:
required:
- topic
- url
- data
properties:
topic:
type: string
example: string
url:
type: string
example: string
data:
type: array
items: {}
type: object
unauthorized:
properties:
message:
type: string
example: Unauthorized.
type: object
timestamps:
properties:
created_at:
type: string
format: datetime
example: '2021-01-11 01:51:26'
updated_at:
type: string
format: datetime
example: '2021-01-11 01:51:26'
nullable: true
type: object
notFound:
properties:
error:
properties:
message:
type: string
example: Not Found
status_code:
type: integer
example: 404
type: object
type: object
badRequest:
properties:
error:
properties:
message:
type: string
example: Error message
status_code:
type: integer
example: 400
type: object
type: object
forbidden:
properties:
error:
properties:
message:
type: string
example: No access
status_code:
type: integer
example: 403
type: object
type: object
pagination:
properties:
current_page:
type: integer
example: 1
first_page_url:
type: string
last_page_url:
type: string
path:
type: string
from:
type: integer
example: 1
last_page:
type: integer
example: 2
next_page_url:
type: string
per_page:
type: integer
example: 15
prev_page_url:
type: integer
type: object
idUUID:
properties:
id:
type: string
format: uuid
example: a5e7c858-1f85-4fe2-8c1d-4c77cfc3204f
type: object
idUUIDNullable:
properties:
id:
type: string
format: uuid
example: 384a34e1-4aea-4aa5-8eaa-475c038aa39cf
nullable: true
type: object
greets:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/greetFull'
type: object
- $ref: '#/components/schemas/pagination'
greetEvents:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/event'
type: object
- $ref: '#/components/schemas/pagination'
greetProfiles:
allOf:
- properties:
data:
type: array
items:
allOf:
- properties:
attributes:
type: array
items: {}
type: object
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
- $ref: '#/components/schemas/greetProfileStats'
type: object
- $ref: '#/components/schemas/pagination'
greetResults:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/greetResult'
type: object
- $ref: '#/components/schemas/pagination'
greetResultsStats:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/resultStats'
type: object
- $ref: '#/components/schemas/pagination'
greet:
allOf:
- properties:
assignee:
$ref: '#/components/schemas/user'
link_id:
type: string
format: uuid
example: 1b8c061b-058c-4636-a34d-95bc0ac6acbb
event:
$ref: '#/components/schemas/event'
status:
type: string
example: open
draft:
type: boolean
example: false
thumb_url:
type: string
format: uri
example: http://example-path-to-thumb-url.png
record_url:
type: string
format: uri
example: http://example-path-to-record-url
uploads_url:
type: string
format: uri
example: http://example-path-to-uploads-url
self_url:
type: string
format: uri
example: http://example-path-to-self-url
attributes_url:
type: string
format: uri
example: http://example-path-to-attributes-url
events_url:
type: string
format: uri
example: http://example-path-to-events-url
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
greetFull:
allOf:
- properties:
profiles:
type: array
items:
allOf:
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
type: object
- properties:
message_template:
$ref: '#/components/schemas/messageTemplate'
type: object
- $ref: '#/components/schemas/greet'
greetProfileStats:
properties:
stats:
properties:
opened:
type: boolean
example: true
watched:
type: boolean
example: true
clicked:
type: boolean
example: false
reacted:
type: boolean
example: false
viewed:
type: boolean
example: true
shared:
type: boolean
example: false
recipient_replied:
type: boolean
example: false
date_opened:
type: string
format: datetime
example: '2021-01-10T12:22:41.000000Z'
nullable: true
date_replied:
type: string
format: datetime
example: '2021-01-10T12:22:41.000000Z'
nullable: true
opens:
type: integer
example: 0
clicks:
type: integer
example: 0
views:
type: integer
example: 0
shares:
type: integer
example: 0
reactions:
type: integer
example: 0
type: object
type: object
greetResult:
allOf:
- properties:
profile:
$ref: '#/components/schemas/profile'
last_replied_at:
type: string
format: datetime
nullable: true
awaiting_reply:
type: integer
example: 1
nullable: true
results_modal_url:
type: string
format: uri
example: http://domain/path-to-modal
results_url:
type: string
format: uri
example: http://domain/path-to-modal
replies:
type: array
items: {}
greet:
type: object
allOf:
- properties:
is_multigreet:
type: boolean
example: false
last_modified_at:
type: datetime
example: '2021-01-10T12:22:41.000000Z'
preview:
properties:
image:
type: string
example: http://path-to-s3-asset/
nullable: true
gif:
type: string
example: http://path-to-s3-asset/
nullable: true
video:
type: string
example: http://path-to-s3-asset/
nullable: true
type: object
type: object
- $ref: '#/components/schemas/greet'
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/greetProfileStats'
greetProfileUpdatePayload:
properties:
email:
type: string
format: email
example: email@mail.com
first_name:
type: string
example: Jane
last_name:
type: string
example: Foster
message:
description: The event message
type: string
example: This is an event message
type: object
updateGreetProfileResult:
properties:
greets:
$ref: '#/components/schemas/greetFull'
profile:
$ref: '#/components/schemas/profile'
type: object
integration:
allOf:
- properties:
name:
type: string
example: Roob, Kling and Haley integration
is_set_up:
type: boolean
example: false
provider:
type: string
enum:
- zapier
- google
- microsoft
- infusionsoft
- intercom
- mailchimp
- convertkit
- drip
- patreon
- hubspot
- trello
- slack
- activecampaign
- campaignmonitor
- sharpspring
- shopify
- mailerlite
- vero
- clearbit
- facebook
- salesforce
- stripe
- twitter
- webhook
- ontraport
- mailers
example: webhook
type: object
- $ref: '#/components/schemas/idUUID'
invites:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/invite'
type: object
- $ref: '#/components/schemas/pagination'
invite:
allOf:
- properties:
team_id:
type: string
format: uuid
email:
type: string
format: email
first_name:
type: string
example: Tony
last_name:
type: string
example: Stark
role:
type: string
enum:
- admin
- filmer
example: admin
sent_at:
type: string
format: datetime
example: '2021-01-11 01:51:26'
nullable: true
creator_url:
type: string
format: uri
example: http://path-to-creator-url
creator:
properties:
id:
type: string
format: uuid
image:
type: string
example: /path-to-image
type: object
self_url:
type: string
format: uri
example: http://path-to-self-url
team_url:
type: string
format: uri
example: http://path-to-self-url
type: object
- $ref: '#/components/schemas/idUUID'
inviteAddPayload:
properties:
team_id:
type: string
format: uuid
email:
type: string
format: email
role:
type: string
enum:
- admin
- filmer
nullable: true
type: object
links:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/link'
type: object
- $ref: '#/components/schemas/pagination'
link:
allOf:
- properties:
team_id:
type: string
format: uuid
subject:
type: string
example: Here's a personal video I recorded for you.
color:
type: string
example: '#fc5a00'
cta:
properties:
text:
type: string
example: Send your own videos
color:
type: string
example: '#ffffff'
url:
type: string
format: uri
example: http://domain.com
type: object
logo_url:
type: string
format: uri
example: /path-to-logo-url
background_url:
type: string
format: uri
example: /path-to-background-url
is_default:
type: boolean
format: boolean
self_url:
type: string
format: uri
example: http://example-self-url
team_url:
type: string
format: uri
example: http://example-team-url
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
googleLoginToken:
properties:
token:
properties:
accessToken:
type: string
example: exampleAccessToken.eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjM1YzEyYjU
expires:
type: integer
example: 1642215881
type:
type: string
example: Bearer
type: object
type: object
branchLoginToken:
properties:
api_token:
properties:
accessToken:
type: string
example: exampleAccessToken.eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjM1YzEyYjU
token:
properties:
id:
type: string
example: 4c3c94fb5c723bf85b3c3524c3e4131b94867ce62f3a1deec5f475cda9cab310f52a386b1ba6b942
user_id:
type: string
format: uuid
client_id:
type: integer
example: 5
name:
type: string
example: Branch Autologin
scope:
type: array
items: {}
revoked:
type: boolean
format: boolean
created_at:
type: string
format: datetime
example: '2021-01-15 03:16:40'
updated_at:
type: string
format: datetime
example: '2021-01-15 03:16:40'
expires_at:
type: string
format: datetime
example: '2022-01-15 03:16:40'
type: object
type: object
type: object
allMedia:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/media'
type: object
- $ref: '#/components/schemas/pagination'
media:
allOf:
- properties:
type:
type: string
example: Media
name:
type: string
example: like.png
tags:
type: string
example: logo image
url:
type: string
format: uri
example: /example-path-to-url
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
messageTemplates:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/messageTemplate'
type: object
- $ref: '#/components/schemas/pagination'
messageTemplate:
allOf:
- properties:
name:
type: string
example: Magic
is_greet_shareable:
type: boolean
example: true
theme:
$ref: '#/components/schemas/mtTheme'
landing_page:
$ref: '#/components/schemas/mtLandingPage'
state:
type: string
enum:
- open
- demo
- locked
example: open
email_template:
$ref: '#/components/schemas/mtEmailTemplate'
creator:
$ref: '#/components/schemas/user'
stats:
$ref: '#/components/schemas/mtStats'
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
messageTemplateUpdatePayload:
properties:
name:
type: string
example: Magic
is_greet_shareable:
type: boolean
example: true
theme:
$ref: '#/components/schemas/mtThemeUpdatePayload'
landing_page:
$ref: '#/components/schemas/mtLandingPageUpdatePayload'
email_template:
$ref: '#/components/schemas/mtEmailTemplate'
type: object
messageTemplateDemoUpdatePayload:
properties:
landing_page:
properties:
id:
type: string
format: uuid
type: object
theme:
$ref: '#/components/schemas/mtThemeUpdatePayload'
type: object
messageTemplateMinimal:
allOf:
- properties:
name:
type: string
example: Magic
is_greet_shareable:
type: boolean
example: true
landing_page:
type: object
nullable: true
state:
type: string
enum:
- open
- demo
- locked
example: open
email_template:
$ref: '#/components/schemas/mtEmailTemplate'
stats:
$ref: '#/components/schemas/mtStats'
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
mtTheme:
allOf:
- properties:
primary_color:
type: string
example: '#fc5a00'
secondary_color:
type: string
example: '#ffffff'
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
mtThemeUpdatePayload:
allOf:
- properties:
primary_color:
type: string
example: '#fc5a00'
secondary_color:
type: string
example: '#ffffff'
type: object
- $ref: '#/components/schemas/idUUID'
mtLandingPage:
properties:
background:
$ref: '#/components/schemas/mtMedia'
background_type:
type: string
enum:
- Media
- StockMedia
example: Media
logo:
$ref: '#/components/schemas/mtMedia'
cta:
$ref: '#/components/schemas/mtCallToAction'
type: object
mtLandingPageUpdatePayload:
properties:
background:
properties:
id:
type: string
format: uuid
type:
type: string
enum:
- Media
- StockMedia
type: object
nullable: true
logo:
properties:
id:
type: string
format: uuid
type: object
cta:
properties:
id:
description: A new CTA will be created if id is empty
type: string
format: uuid
text:
type: string
example: You can also send your own videos!
uri:
type: string
format: uri
example: http://example.com
is_displayed:
type: boolean
enum:
- true
- false
type: object
type: object
mtEmailTemplate:
properties:
layout:
type: string
enum:
- html
- plain
example: html
subject_line:
type: string
example: Here's a personal video I recorded for you.
message_template:
type: string
example: Hi {first_name|there}, I recorded a message for you, check it out!
type: object
mtMedia:
allOf:
- properties:
type:
type: string
enum:
- Media
- StockMedia
example: Media
name:
type: string
example: like.png
tags:
type: string
example: background image
url:
type: string
format: uri
example: http://example-path-to-url
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
mtCallToAction:
allOf:
- properties:
text:
type: string
example: Send your own videos
url:
type: string
format: uri
example: http://example-path-to-url
is_displayed:
type: boolean
example: false
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
mtStats:
properties:
total:
type: integer
example: 0
percentage_replies:
type: integer
example: 0
percentage_views:
type: integer
example: 0
percentage_reactions:
type: integer
example: 0
percentage_clicks:
type: integer
example: 0
percentage_opens:
type: integer
example: 0
type: object
notifications:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/notification'
type: object
- $ref: '#/components/schemas/pagination'
notification:
allOf:
- properties:
title:
type: string
example: A bonjoro you sent has bounced
action_text:
type: string
example: user.greet.bounced
created_at:
type: string
format: datetime
example: '2021-01-17 03:28:05'
action_url:
type: string
format: uri
example: http://example-path-to-action-url
self_url:
type: string
format: uri
example: http://example-path-to-self-url
type: object
- $ref: '#/components/schemas/idUUID'
pricing:
properties:
plans:
type: object
allOf:
- properties:
free:
$ref: '#/components/schemas/pricingPlanWithImageSet'
type: object
- properties:
basic:
$ref: '#/components/schemas/pricingPlan'
type: object
features:
properties:
standard:
type: array
items:
$ref: '#/components/schemas/pricingPlanFeature'
pro:
type: array
items:
$ref: '#/components/schemas/pricingPlanFeature'
growth:
type: array
items:
$ref: '#/components/schemas/pricingPlanFeature'
type: object
type: object
pricingPlan:
properties:
title:
type: string
example: Example plan title
image:
type: string
example: example.jpg
price:
$ref: '#/components/schemas/pricingPrice'
copy:
type: string
example: For individuals & teams running multiple campaigns
features:
type: array
items:
anyOf:
- properties:
text:
type: string
example: Unlimited videos
type: object
- properties:
text:
type: string
example: Unlimited videos
text-anchor:
type: string
example: '#standard-features'
type: object
type: object
pricingPlanWithImageSet:
allOf:
- properties:
imageset:
properties:
1x:
type: string
format: uri
example: /example-path-to-image
2x:
type: string
format: uri
example: /example-path-to-image
type: object
type: object
- $ref: '#/components/schemas/pricingPlan'
pricingPrice:
anyOf:
- properties:
per_unit:
properties:
monthly:
type: string
example: '50'
annual:
type: string
example: '12.50'
type: object
tier:
properties:
monthly:
type: string
example: '50'
annual:
type: string
example: '12.50'
type: object
notes:
type: object
anyOf:
- properties:
monthly:
type: string
example: first user/month
$20 per additional user
type: object
- properties:
annual:
type: string
example: Billed annually
type: object
type: object
pricingPlanFeature:
properties:
icon:
type: string
example: message-templates
heading:
type: string
example: Screen recorder
body:
type: string
example: Record and share helpful screen recordings for your customers with Bonjoro’s Chrome extension.
type: object
profiles:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/profile'
type: object
- $ref: '#/components/schemas/pagination'
profile:
allOf:
- properties:
email:
type: string
format: email
example: mail@mail.com
name:
type: string
example: Michael Burnham
first_name:
type: string
example: Michael
nullable: true
last_name:
type: string
example: Burnham
nullable: true
image:
type: string
format: uri
example: http://example-path-to-image.jpg
work:
properties:
current:
type: string
nullable: true
title:
type: string
nullable: true
type: object
self_url:
type: string
format: uri
example: http://example-path-to-self-url
attributes_url:
type: string
format: uri
example: http://example-path-to-attributes-url
events_url:
type: string
format: uri
example: http://example-path-to-events-url
unsubscribed:
type: boolean
type: object
- $ref: '#/components/schemas/idUUID'
profileBulkUpdatePayload:
allOf:
- properties:
email:
type: string
format: email
first_name:
type: string
example: Frank
last_name:
type: string
example: Castle
type: object
- $ref: '#/components/schemas/idUUID'
profileDemographic:
properties:
demographic:
properties:
location:
type: string
nullable: true
country:
type: string
nullable: true
age:
type: string
nullable: true
sex:
type: string
nullable: true
type: object
type: object
recordings:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/recording'
type: object
- $ref: '#/components/schemas/pagination'
recording:
allOf:
- properties:
name:
type: string
example: Example recording name
state:
type: string
example: recording
type:
type: string
enum:
- screen_recording
- webcam
message_template:
$ref: '#/components/schemas/messageTemplate'
creator:
$ref: '#/components/schemas/user'
interactions:
properties:
views:
type: integer
example: 1
clicks:
type: integer
example: 0
type: object
media:
properties:
thumbnail_source:
type: string
format: uri
example: /example-path-to-thumbnail-source
thumbnail_play:
type: string
format: uri
example: /example-path-to-thumbnail-play
type: object
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
replies:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/reply'
type: object
- $ref: '#/components/schemas/pagination'
reply:
allOf:
- properties:
content:
type: string
example: This is en example response
author:
type: object
allOf:
- properties:
name:
type: string
example: Takeshi Kovaks
is_recepient:
type: boolean
enum:
- true
- false
is_current_user:
type: boolean
enum:
- true
- false
created_at:
type: string
format: datetime
example: 2021-01-18T06:26:56+0000
type: object
- $ref: '#/components/schemas/idUUID'
type: object
- $ref: '#/components/schemas/idUUID'
result:
properties:
greet:
$ref: '#/components/schemas/resultGreet'
profile:
$ref: '#/components/schemas/user'
message:
type: string
example: Hi there, I recorded a message for you, check it out!
stats:
$ref: '#/components/schemas/greetProfileStats'
replies:
type: array
items:
$ref: '#/components/schemas/reply'
sent_at:
type: string
format: datetime
nullable: true
results_url:
type: string
format: uri
example: http://example-path-to-results-url
results_modal_url:
type: string
format: uri
example: http://example-path-to-results-modal-url
awaiting_reply:
type: string
format: boolean
enum:
- true
- false
nullable: true
last_replied_at:
type: string
format: datetime
example: '2021-01-18 05:21:04'
nullable: true
type: object
resultStats:
properties:
greet:
$ref: '#/components/schemas/greetFull'
profile:
$ref: '#/components/schemas/user'
stats:
$ref: '#/components/schemas/greetProfileStats'
replies:
type: array
items:
$ref: '#/components/schemas/reply'
sent_at:
type: string
format: datetime
nullable: true
awaiting_reply:
type: string
format: boolean
enum:
- true
- false
nullable: true
last_replied_at:
type: string
format: datetime
example: '2021-01-18 05:21:04'
nullable: true
type: object
resultGreet:
allOf:
- properties:
profiles:
type: array
items:
allOf:
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
type: object
- properties:
assignee:
$ref: '#/components/schemas/user'
event:
$ref: '#/components/schemas/event'
link_id:
type: string
format: uuid
status:
type: string
example: sent
draft:
type: boolean
enum:
- false
- true
thumb_url:
type: string
format: uri
example: /example-path-to-thumb-url
public_url:
type: string
format: uri
example: http://example-path-to-thumb-url
video_url:
type: string
format: uri
example: http://example-path-to-thumb-url
preview:
properties:
image:
type: string
format: uri
example: /path-to-image
nullable: true
gif:
type: string
format: uri
example: /path-to-gif
nullable: true
video:
type: string
format: uri
example: /path-to-video
nullable: true
type: object
self_url:
type: string
format: uri
example: http://example-path-to-self-url
nullable: true
assignee_url:
type: string
format: uri
example: http://example-path-to-assigne-url
nullable: true
profiles_url:
type: string
format: uri
example: http://example-path-to-profiles-url
nullable: true
event_url:
type: string
format: uri
example: http://example-path-to-event-url
nullable: true
type: object
- properties:
message_template:
$ref: '#/components/schemas/messageTemplate'
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
signatures:
allOf:
- properties:
data:
type: array
items:
allOf:
- properties:
user_count:
type: integer
example: 1
users:
type: array
items:
$ref: '#/components/schemas/userWithSignature'
type: object
- $ref: '#/components/schemas/signature'
type: object
- $ref: '#/components/schemas/pagination'
signature:
properties:
id:
type: number
example: 7
name:
type: string
example: John Jones
address:
type: string
example: example@domain-email.com
via:
type: string
enum:
- Default
- Gmail
- Microsoft
- CNAME
- CNAME - Enhanced
is_private:
type: boolean
enum:
- true
- false
is_verified:
type: boolean
enum:
- true
- false
is_confirmed:
type: boolean
enum:
- true
- false
transport_type:
type: string
enum:
- transport_google
- transport_microsoft
- transport_postmark
- transport_sparkpost
- postmark_domain
descriptive_address:
type: string
example: example@domain.com (Default)
forwarding_address:
type: string
example: 'Off'
is_default:
type: boolean
enum:
- true
- false
type: object
statistics:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/statistic'
type: object
- $ref: '#/components/schemas/pagination'
statistic:
allOf:
- properties:
unique_opens:
type: string
example: '1'
unique_views:
type: string
example: '1'
unique_clicks:
type: string
example: '1'
unique_reactions:
type: string
example: '1'
greet_total:
type: integer
example: 1
greet_opens:
type: string
example: '1'
greet_views:
type: string
example: '1'
greet_clicks:
type: string
example: '1'
greet_reactions:
type: string
example: '1'
greet_open_percentage:
type: string
example: '1'
greet_view_percentage:
type: string
example: '1'
greet_click_percentage:
type: string
example: '1'
greet_reply_percentage:
type: string
example: '1'
greet_reaction_percentage:
type: string
example: '1'
assignee:
type: object
allOf:
- properties:
email:
type: string
format: email
first_name:
type: string
example: Elizabeth
last_name:
type: string
example: Keen
type: object
- $ref: '#/components/schemas/idUUID'
type: object
- $ref: '#/components/schemas/idUUID'
statisticGreetForUser:
properties:
opens:
type: string
example: '1'
views:
type: string
example: '1'
clicks:
type: string
example: '1'
replies:
type: string
example: '1'
reactions:
type: string
example: '1'
unique_opens:
type: string
example: '1'
unique_views:
type: string
example: '1'
unique_clicks:
type: string
example: '1'
unique_reactions:
type: string
example: '1'
unique_replies:
type: string
example: '1'
percentage_opens:
type: string
example: '1'
percentage_replies:
type: string
example: '1'
total:
type: integer
example: 1
minimumComplete:
type: integer
example: 1
averageOpens:
type: integer
example: 1
averageViews:
type: integer
example: 1
averageClicks:
type: integer
example: 1
averageReactions:
type: integer
example: 1
type: object
statisticTeam:
properties:
unique_opens:
type: string
example: '1'
unique_views:
type: string
example: '1'
unique_clicks:
type: string
example: '1'
unique_reactions:
type: string
example: '1'
greet_total:
type: integer
example: 1
greet_opens:
type: string
example: '1'
greet_views:
type: string
example: '1'
greet_clicks:
type: string
example: '1'
greet_reactions:
type: string
example: '1'
type: object
stockMedia:
allOf:
- properties:
type:
type: string
example: StockMedia
name:
type: string
example: example-media-name.jpg
tags:
type: string
example: background image
url:
type: string
format: uri
example: /example-path-to-url-image.jpg
type: object
- $ref: '#/components/schemas/idUUID'
- $ref: '#/components/schemas/timestamps'
tasklistResponse:
properties:
counts:
properties:
replies:
type: integer
example: 0
tasks:
type: integer
example: 10
type: object
type: object
teams:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/teamWithSignatures'
type: object
- $ref: '#/components/schemas/pagination'
team:
allOf:
- properties:
name:
type: string
example: Example team name
nullable: true
landing_page_subdomain:
type: string
example: example-subomdain
nullable: true
landing_page_host:
type: string
example: example-hostname
owner_id:
type: string
format: uuid
owner_url:
type: string
format: uri
example: http://path-to-owner-url
self_url:
type: string
format: uri
example: http://path-to-self-url
invites_url:
type: string
format: uri
example: http://path-to-invites-url
links_url:
type: string
format: uri
example: http://path-to-links-url
type: object
- $ref: '#/components/schemas/idUUID'
teamWithSignatures:
allOf:
- properties:
signatures:
type: array
items:
allOf:
- $ref: '#/components/schemas/signature'
type: object
- $ref: '#/components/schemas/team'
transmissions:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/transmission'
type: object
- $ref: '#/components/schemas/pagination'
transmission:
allOf:
- properties:
title:
type: string
example: Example title
status:
type: string
enum:
- bounce
- click
- complaint
- delay
- delivery
- open
- sent
- unsubscribe
- failed
- resolved
endpoint:
type: string
format: email
created_at:
type: string
format: datetime
example: '2021-01-19 23:32:04'
events:
type: array
items:
allOf:
- $ref: '#/components/schemas/transmissionEvent'
user:
$ref: '#/components/schemas/user'
signature:
$ref: '#/components/schemas/signature'
type: object
- $ref: '#/components/schemas/idUUID'
transmissionEvent:
properties:
event_type:
type: string
example: sent
message:
type: string
example: We received the message and are sending it to the recipient’s mail server.
created_at:
type: string
format: datetime
example: '2021-01-19 23:45:45'
type: object
users:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/userWithSignature'
type: object
- $ref: '#/components/schemas/pagination'
user:
properties:
id:
type: string
format: uuid
example: bbf3195e-21a3-4e6a-9698-9b8c09ec0b5b
bio:
type: string
example: Example bio
first_name:
type: string
example: John
image:
type: string
format: uri
example: https://example-path-to-image.jpg
last_name:
type: string
example: Jones
name:
type: string
example: John Jones
self_url:
type: string
format: uri
example: https://example-path-to-self-url
team_url:
type: string
format: uri
example: https://example-path-to-team-url
type: object
userWithSignature:
allOf:
- properties:
signatures:
description: Only visible when `inclues` parameter is provided or signature is being updated
type: array
items:
allOf:
- $ref: '#/components/schemas/signature'
from_signature:
$ref: '#/components/schemas/signature'
replyto_signature:
$ref: '#/components/schemas/signature'
type: object
- $ref: '#/components/schemas/user'
userUpdateOnboardingPayload:
properties:
visitor:
$ref: '#/components/schemas/utmExamplePayload'
industry:
description: Retrieve valid values from prismic `industries`
type: string
nullable: true
company:
description: This will be used as the team name
type: string
nullable: true
avatar:
type: string
format: binary
email:
type: string
format: email
timezone:
type: string
example: UTC
type:
type: string
example: default
signature_id:
type: integer
example: 7
type: object
utmExamplePayload:
description: Properties may vary
properties:
referrer:
type: string
example: example-referrer
landing_page:
type: string
example: example-landing-page
utm_source:
type: string
example: active urser
utm_medium:
type: string
example: email
type: object
automationAccounts:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/automationAccount'
type: object
- $ref: '#/components/schemas/pagination'
automationAccount:
allOf:
- properties:
name:
type: string
example: Slack Account
service:
type: string
example: slack
created_at:
type: string
format: uri
example: '2021-01-20 02:38:50'
type: object
- $ref: '#/components/schemas/idUUID'
automationAction:
allOf:
- properties:
params:
type: string
nullable: true
type:
type: string
example: send_message
service:
type: string
enum:
- active_campaign
- bonjoro
- convertkit
- drip
- hubspot_crm
- infusionsoft
- intercom
- mailchimp
- mailerlite
- ontraport
- patreon-v2
- shopify
- slack
type: object
- $ref: '#/components/schemas/idUUID'
editorAutomationServices:
type: array
items:
$ref: '#/components/schemas/automationService'
automationService:
properties:
id:
type: string
example: active_campaign
name:
type: string
example: ActiveCampaign
description:
type: string
example: Example description
logo_url:
type: string
format: uri
example: /example-path-to-logo.png
actions:
type: boolean
enum:
- true
- false
triggers:
type: boolean
enum:
- true
- false
self_url:
type: string
format: uri
example: http://example-path-to-self-url
auth_url:
type: string
format: uri
example: http://example-path-to-auth-url
disabled:
type: boolean
enum:
- true
- false
default_trigger:
type: array
items:
allOf:
- $ref: '#/components/schemas/automationServiceDefaultTrigger'
capability:
properties:
primary_collection:
type: boolean
enum:
- true
- false
external_profiles:
type: boolean
enum:
- true
- false
creates_greets:
type: boolean
enum:
- true
- false
type: object
hidden:
type: boolean
enum:
- true
- false
type: object
automationServiceDefaultTrigger:
properties:
id:
type: string
example: subscriber_created
name:
type: string
example: Person created
description:
type: string
example: Example description
greetable_reason:
type: string
example: Example greetable reason
parameters:
type: object
example:
form_id:
required: true
type: dropdown
name: Form
description: Your chosen form
type: object
automationServicesContacts:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/profile'
- $ref: '#/components/schemas/profileDemographic'
- $ref: '#/components/schemas/timestamps'
type: object
- $ref: '#/components/schemas/pagination'
editorAutomations:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/editorAutomation'
type: object
- $ref: '#/components/schemas/pagination'
editorAutomation:
properties:
uuid:
type: string
format: uuid
name:
type: string
example: Example automation name
enabled:
type: boolean
enum:
- true
- false
editor_url:
type: string
format: uri
example: http://example-path-to-editor-url
self_url:
type: string
format: uri
example: http://example-path-to-self-url
trigger_client_logo:
type: string
format: uri
example: /path-to-logo.png
action_client_logo:
type: string
format: uri
example: /path-to-logo.png
type: object
editorAutomationUpdatePayload:
properties:
trigger_id:
type: string
format: uuid
action_id:
type: string
format: uuid
enabled:
type: boolean
enum:
- true
- false
state:
type: object
example:
activeStep: finish
type: object
editorAutomationUpdateResponseItem:
properties:
name:
type: string
example: Example name
enabled:
type: boolean
enum:
- true
- false
trigger:
$ref: '#/components/schemas/editorAutomationTrigger'
action:
$ref: '#/components/schemas/editorAutomationAction'
id:
type: string
format: uuid
trigger_id:
type: string
format: uuid
action_id:
type: string
format: uuid
activeStep:
type: string
example: finish
nullable: true
type: object
editorAutomationTrigger:
properties:
service:
$ref: '#/components/schemas/editorAutomationService'
item:
$ref: '#/components/schemas/editorAutomationTriggerItem'
account:
$ref: '#/components/schemas/editorAutomationAccount'
options:
type: object
example:
tag_id: 618194a6-9c58-3703-90b8-e0243265eaea
nullable: true
type: object
editorAutomationAccount:
properties:
uuid:
type: string
format: uuid
name:
type: string
example: Example account name
service:
type: string
example: hubspot_crm
created_at:
type: string
format: datetime
example: hubspot_crm
type: object
editorAutomationService:
properties:
id:
type: string
example: bonjoro
name:
type: string
example: Bonjoro
description:
type: string
example: Example description
logo_url:
type: string
format: uri
example: /example-path-to-logo.png
actions:
type: boolean
enum:
- true
- false
triggers:
type: boolean
enum:
- true
- false
self_url:
type: string
format: uri
example: http://example-path-to-self-url
auth_url:
type: string
format: uri
example: http://example-path-to-auth-url
disabled:
type: boolean
enum:
- true
- false
default_trigger:
type: array
items:
allOf:
- properties:
id:
type: string
example: contact_updated
name:
type: string
example: Contact Updated
description:
type: string
example: Example description
type: object
capability:
properties:
primary_collection:
type: boolean
enum:
- true
- false
external_profiles:
type: boolean
enum:
- true
- false
creates_greets:
type: boolean
enum:
- true
- false
type: object
hidden:
type: boolean
enum:
- true
- false
actions_url:
type: string
format: uri
example: http://example-path-to-action-url
type: object
editorAutomationTriggerItem:
properties:
id:
type: string
example: bonjoro_created
name:
type: string
example: Bonjoro Created
description:
type: string
example: Example description
variables:
properties:
example_property:
properties:
name:
type: string
example: example name
description:
type: string
example: example name
type: object
type: object
type: object
editorAutomationAction:
properties:
service:
$ref: '#/components/schemas/editorAutomationService'
action:
$ref: '#/components/schemas/editorAutmationActionItem'
account:
$ref: '#/components/schemas/editorAutomationAccount'
options:
type: object
example:
assignee: 3b12757c-97e5-4193-a7c8-14029a4aae4f
campaign: 5
reason: Dd
nullable: true
type: object
editorAutmationActionItem:
properties:
id:
type: string
example: create_bonjoro
service:
type: string
example: bonjoro
name:
type: string
example: Create Bonjoro
description:
type: string
example: Example description
self_url:
type: string
format: uri
example: http://example-path-to-self-url
service_url:
type: string
format: uri
example: http://example-path-to-service-url
parameters:
properties:
example_property_name:
type: object
example:
name: Add fields
type: object
type: object
automationEditorAction:
properties:
id:
type: string
example: send_message
service:
type: string
example: slack
name:
type: string
example: Send To Slack
description:
type: string
example: Example description
self_url:
type: string
format: uri
example: http://path-to-self-url
service_url:
type: string
format: uri
example: http://path-to-service-url
parameters:
description: Properties will vary
type: object
example:
channel:
name: Channel
description: Select the channel where you want to send the message
required: true
type: dropdown
type: object
automationEditorParameters:
properties:
required:
type: boolean
enum:
- true
- false
placeholder:
type: string
example: Select a mailing list...
type:
type: string
example: Dropdown
description:
type: string
example: Example description
options:
type: array
items: {}
type: object
automationTriggers:
allOf:
- properties:
data:
type: array
items:
allOf:
- $ref: '#/components/schemas/automationTrigger'
type: object
- $ref: '#/components/schemas/pagination'
automationTrigger:
properties:
uuid:
type: string
format: uuid
type:
type: string
example: subscribe
service:
type: string
example: active_campaign
account_id:
type: string
format: uuid
nullable: true
type: object