REST API for the Bonjoro personal-video platform. Create and assign greets (video tasks) for one or many recipients, manage recipient profiles and campaigns/workspaces, upload recordings to presigned S3 URLs, apply message templates and branding, read engagement results, event streams and transmission/deliverability records, manage teams, users, invites, custom sending domains and verified email signatures, and build trigger/action automations against connected CRM and email services. OAuth 2.0 bearer tokens issued from /api/v2/oauth/2/token.
This API exposes
123 operations
across 94 paths,
organized into 42 resource areas,
and defines 126 schemas.
It is described by OpenAPI 3.0.0, at version 1.0.0.
Requests are made against a single base URL, https://www.bonjoro.com/.
123 operations94 paths126 schemas13 DELETE67 GET2 PATCH28 POST13 PUT
Metadata
The identity and technical contract details declared by the specification.
Specification
OpenAPI 3.0.0
API Version
1.0.0
Base URL
https://www.bonjoro.com/api/v2
Resource Areas
42
Paths & Operations 123
Across 94 paths, the API surfaces 123 operations — 13 DELETE, 67 GET, 2 PATCH, 28 POST, 13 PUT. They span 42 resource areas, including Authentications, Profile Attributes, Automations, Campaigns, Checklist, Devices, Domains, Events, and 34 more. Each is listed below with its method, path, parameters, and response codes.
Authentications 1
POST
/api/v2/oauth/2/token
Authenticate
authenticatebody→ 200401
Profile Attributes 2
GET
/api/v2/attributes
Get the profile information related to the specified greetid and profileid
getAttributes2 params→ 200401
GET
/api/v2/attribute-types
Get all profile attribute types
getAttributeTypes→ 200401
Automations 4
GET
/api/v2/automations
Get paginated automations
getAutomations→ 200401
GET
/api/v2/automations/{automation_id}
Update an automation
getAutomation1 param→ 200401404
PUT
/api/v2/automations/{automation_id}
Update the name or enabled status of an automation
putAutomation1 parambody→ 200401404
DELETE
/api/v2/automations/{automation_id}
Delete an automation
deleteAutomation1 param→ 203401404
Campaigns 5
GET
/api/v2/campaigns
Get paginated campaigns
getCampaigns1 param→ 200401
GET
/api/v2/campaigns/segmented
Get segmented campaigns
getSegmentedCampaigns→ 200401
GET
/api/v2/campaigns/{campaign_id}
Get a campaign
getCampaign1 param→ 200401404
PUT
/api/v2/campaigns/{campaign_id}
Update a campaign
putCampaign1 parambody→ 200400401404
DELETE
/api/v2/campaigns/{campaign_id}
Delete a campaign
deleteCampaign1 param→ 200401404
Checklist 1
GET
/api/v2/checklist
Get paginated checklists
getChecklist→ 200401
Devices 1
POST
/api/v2/users/me/devices
Add user devices
postUserDevicesbody→ 200400401
Domains 5
GET
/api/v2/domain-availabilities/{domain_name}
Returns the availability of the specified domain
getDomain1 param→ 200401
GET
/api/v2/domains
Returns paginated domains
getDomains→ 200401
POST
/api/v2/domains
Add a domain
postDomainbody→ 200401
DELETE
/api/v2/domains/{domain_id}
Delete a domain
deleteDomain1 param→ 200401404
PUT
/api/v2/domains/{domain_id}/verify
Verify a domain
putVerifyDomain1 param→ 200401404
Events 1
GET
/api/v2/events
Get paginated events
getEvents→ 200401
Feedback 1
POST
/api/v2/feedback
Add a feedback
postFeedbackbody→ 200401
Greets 18
GET
/api/v2/greets
Get paginated greets
getGreets6 params→ 200401404
POST
/api/v2/greets
Add a greet
postGreetbody→ 200400401404
DELETE
/api/v2/greets
Delete multiple greets
delete multipleGreets1 param→ 200400401404
PATCH
/api/v2/greets
Updates assigneeid and/or campaignid of the specified greets
updateManyGreetsbody→ 200400401404
PUT
/api/v2/greets/{greet_id}
Update the assignee for a greet
putGreet1 parambody→ 200400401404
DELETE
/api/v2/greets/{greet_id}
Delete a greet
deleteGreet1 param→ 200400401404
POST
/api/v2/greets/create
Create greets in bulk
bulkCreateGreetsbody→ 200401
POST
/api/v2/greets/{greet_id}/notifications
Mark greet as complete
sendNotification1 parambody→ 200400401404
POST
/api/v2/greets/rollup
Rollup and delete greets
rollupGreetsbody→ 200401
POST
/api/v2/greets/{greet_id}/{profile_id}/update
Update a greet profile and event message
updateGreetsProfile2 paramsbody→ 200400401404
DELETE
/api/v2/greets/{greet_id}/{profile_id}
Delete a greet profile
deleteGreetProfile2 params→ 200400401404
GET
/api/v2/greets/{greet_id}/events
Get paginated greet events
getGreetEvents1 param→ 200401404
GET
/api/v2/greets/{greet_id}/profiles
Get paginated greet profiles
getGreetProfiles1 param→ 200401404
GET
/api/v2/greets/results
Get paginated greet results
getGreetResults5 params→ 200401404
GET
/api/v2/greets/results/stats
Get paginated lightweight greet results stats
getGreetResultsStats5 params→ 200401404
GET
/api/v2/greets/todo
Get paginated greet todos
getGreetTodos3 params→ 200401404
GET
/api/v2/greets/{greet_id}/upload-url
Get S3 upload url for a greet
getGreetUploadUrl1 param→ 200401404
POST
/api/v2/greets/{greet_id}/uploads
Update greet metadata
postGreetProfiles1 parambody→ 200400401404
Industries 1
GET
/api/v2/industries
Get valid industries
getIndustries→ 200401
Integrations 2
GET
/api/v2/integrations
Get paginated integrations
getIntegrations→ 200401
GET
/api/v2/integrations/{integration_id}
Get an integration
getIntegration1 param→ 200401
Invites 4
GET
/api/v2/invites
Get paginated team invites
getInvites1 param→ 200401
POST
/api/v2/invites
Add an invite
postInvitebody→ 200400401
PUT
/api/v2/{invite_id}/resend
Resend an invite
resendInvite1 param→ 200400401
DELETE
/api/v2/{invite_id}
Delete an invite
deleteInvite1 param→ 200400401
Links 2
GET
/api/v2/links
Get paginated message template links
getLinks→ 200401
GET
/api/v2/links/{link_id}
Get a message template link
getLink1 param→ 200401
Login 2
POST
/api/v2/login/google
Retrieve a token via google sign in
loginViaGoogle1 param→ 200400401
POST
/api/v2/login/branch
Retrieve a token via branch
loginViaBranch1 param→ 200400401
Media 3
GET
/api/v2/media
Get all paginated media
getAllMedia→ 200400401
POST
/api/v2/media
Add a media
postMediabody→ 200400401
DELETE
/api/v2/media/{media_id}
Delete a media
deleteMedia1 param→ 200400401
Message Templates 6
GET
/api/v2/message-templates
Get paginated message templates
getMessageTemplates1 param→ 200401
POST
/api/v2/message-templates
Add message template
postMessageTemplates→ 200401
GET
/api/v2/message-templates/{message_template_id}
Get message template
getMessageTemplate1 param→ 200401403404
PUT
/api/v2/message-templates/{message_template_id}
Update message template
putMessageTemplate1 parambody→ 200401403404
DELETE
/api/v2/message-templates/{message_template_id}
Delete message template
deleteMessageTemplate1 param→ 200401403404
POST
/api/v2/message-templates/demo/update
Update demo message template
updateDemoTemplatebody→ 200404
Notifications 2
GET
/api/v2/notifications
Get paginated notifications
getNotifications→ 200401
POST
/api/v2/notifications/{notification_id}/reads
Mark notification as read
postMarkRead1 param→ 200401404
Pricing 1
GET
/api/v2/pricing
Get all pricing details
getPricing→ 200401
Profiles 5
GET
/api/v2/profiles
Get paginated profiles
getProfiles→ 200401
POST
/api/v2/profiles
Add profile
postProfilebody→ 200400401
PATCH
/api/v2/profiles
Bulk Update profiles
patchProfilebody→ 200401404
GET
/api/v2/profiles/{profile_id}
Get profile
getProfile1 param→ 200401404
PUT
/api/v2/profiles/{profile_id}
Update profile
putProfile1 parambody→ 200401404
Recordings 5
GET
/api/v2/recordings
Get paginated recordings
getRecordings→ 200401
PUT
/api/v2/recordings
Update recording
updateARecordingbody→ 200401
GET
/api/v2/recordings/{recording_id}
Get recording
getRecording1 param→ 200401
DELETE
/api/v2/recordings/{recording_id}
Delete recording
deleteRecordings1 param→ 200401
GET
/api/v2/recordings/{recording_id}/upload-url
Get recording upload url
getUploadURL2 params→ 200401
Replies 2
GET
/api/v2/replies
Get paginated replies
getReplies2 params→ 200401
POST
/api/v2/replies
Add reply
postReplybody→ 200401403
Results 3
GET
/api/v2/results/{greet_id}/{profile_id}
Get results for the specified greet and profile
getResults2 params→ 200401404
PUT
/api/v2/results/{greet_id}/{profile_id}
Mark result as replied
putResult2 paramsbody→ 200401404
GET
/api/v2/results/{greet_id}/{profile_id}/stats
Get lightweight results stats for the specified greet and profile
Get an editor parameter from the specified itemid and parametername
getEditorParameter2 params→ 200401
Editor Automation Services 1
GET
/api/v2/automation/editor/services
Get editor services
getEditorServices3 params→ 200401
Editor Services 1
GET
/api/v2/automation/editor/services/{service_id}
Get an editor service
getEditorService4 params→ 200401
Editor Automation Triggers 1
GET
/api/v2/automation/editor/triggers
Get all available triggers for the specified service
getEditorServices1 param→ 200401
Automation Triggers 3
GET
/api/v2/automation/triggers
Get all automation triggers
getAutomationTriggers→ 200401
POST
/api/v2/automation/triggers
Add a trigger to the specified service
postAutomationTriggerbody→ 200400401
PUT
/api/v2/automation/triggers/{trigger_id}
Assign the specified account to the trigger
putAutomationTriggerbody→ 200400401404
Schemas 126
The contract defines 126 schemas that model the data the API accepts and returns. The most detailed are statisticGreetForUser (18 properties), editorAutomationService (13 properties), domain (12 properties), automationService (12 properties). Each schema is shown below with its type and property counts.
accessToken
object
4 properties
authenticationPayload
object
5 properties
profileAttributes
object
3 properties
profileAttributeType1
object
2 properties
profileAttributeType2
object
3 properties
automations
automation
object
6 properties
automationNoAction
object
5 properties
trigger
object
5 properties
action
object
5 properties
campaigns
campaignsSegmented
object
1 property
userCampaignsSegmented
object
1 property
campaign
object
10 properties
campaignWithUsers
object
campaignUpdatePayload
object
5 properties1 required
checklists
checklist
object
4 properties
devices
object
4 properties2 required
domains
domain
object
12 properties
domainWithCanonical
domain_record_set
object
6 properties
events
event
object
5 properties
feedbackPayload
object
3 properties3 required
unauthorized
object
1 property
timestamps
object
2 properties
notFound
object
1 property
badRequest
object
1 property
forbidden
object
1 property
pagination
object
9 properties
idUUID
object
1 property
idUUIDNullable
object
1 property
greets
greetEvents
greetProfiles
greetResults
greetResultsStats
greet
greetFull
greetProfileStats
object
1 property
greetResult
greetProfileUpdatePayload
object
4 properties
updateGreetProfileResult
object
2 properties
integration
invites
invite
inviteAddPayload
object
3 properties
links
link
googleLoginToken
object
1 property
branchLoginToken
object
1 property
allMedia
media
messageTemplates
messageTemplate
messageTemplateUpdatePayload
object
5 properties
messageTemplateDemoUpdatePayload
object
2 properties
messageTemplateMinimal
mtTheme
mtThemeUpdatePayload
mtLandingPage
object
4 properties
mtLandingPageUpdatePayload
object
3 properties
mtEmailTemplate
object
3 properties
mtMedia
mtCallToAction
mtStats
object
6 properties
notifications
notification
pricing
object
2 properties
pricingPlan
object
5 properties
pricingPlanWithImageSet
pricingPrice
pricingPlanFeature
object
3 properties
profiles
profile
profileBulkUpdatePayload
profileDemographic
object
1 property
recordings
recording
replies
reply
result
object
10 properties
resultStats
object
7 properties
resultGreet
signatures
signature
object
11 properties
statistics
statistic
statisticGreetForUser
object
18 properties
statisticTeam
object
9 properties
stockMedia
tasklistResponse
object
1 property
teams
team
teamWithSignatures
transmissions
transmission
transmissionEvent
object
3 properties
users
user
object
8 properties
userWithSignature
userUpdateOnboardingPayload
object
8 properties
utmExamplePayload
object
Properties may vary
4 properties
automationAccounts
automationAccount
automationAction
editorAutomationServices
array
automationService
object
12 properties
automationServiceDefaultTrigger
object
5 properties
automationServicesContacts
editorAutomations
editorAutomation
object
7 properties
editorAutomationUpdatePayload
object
4 properties
editorAutomationUpdateResponseItem
object
8 properties
editorAutomationTrigger
object
4 properties
editorAutomationAccount
object
4 properties
editorAutomationService
object
13 properties
editorAutomationTriggerItem
object
4 properties
editorAutomationAction
object
4 properties
editorAutmationActionItem
object
7 properties
automationEditorAction
object
7 properties
automationEditorParameters
object
5 properties
automationTriggers
automationTrigger
object
4 properties
Specification
The full machine-readable OpenAPI contract behind this narrative.
Every API here is available over the API and to AI agents over MCP. APIs is not yet its own endpoint on the v1 API. Reach this content through network search and the tag graph, or the MCP server below.
Installs https://mcp.apievangelist.com/mcp in Claude, Cursor, VS Code and the rest — one button, every client.
MCP tools for apis
4 tools reach this content
search_api_evangelistSearch every content type across the network at once.
find_relatedThe shared-tag relevance graph — what else covers this.
get_tagEverything one tag labels, across all content types.
guide_topicPRO — a curated bundle for a topic: area, guidance, rules, papers, stories, services.
A second provider on the same verified email joins the account you already have.
Your account
ⓘWhere this information came from
This is an independent, third-party profile of Bonjoro API V2, published by
API Evangelist. We do not operate, host, resell, or
support these APIs, and we are not affiliated with or endorsed by the company unless stated above.
Everything here is built from publicly available information — the company's own site,
developer portal, documentation, public repositories, and the specifications it publishes for public use.
Nothing is obtained by breaching a system, defeating an access control, or using credentials.
The Kin Score and Agent Readiness rating are independently calculated assessments of a company's
public API artifacts, scored against a published rubric. They are not certifications,
endorsements, security assessments, or audits.
Corrections, re-scores, and removal are free — no partnership or purchase required, and
you do not need to justify the request. A removed company is recorded as unrated, never scored
zero for having asked. Acknowledgement within one business day; removal within two.
info@apievangelist.com
·
Read the full data-sourcing policy → On a security or compliance team? Put security in the subject line and
you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.