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