User API
Onboarding
Personalized onboarding pipeline — run and review findings
POST
/onboarding/runStart a new onboarding pipeline run for the current user
Request body
Responses
202Run enqueued
ok reqboolean
sessionId reqstring
status reqstring
400Bad request
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/run' \
-X POST \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{}'GET
/onboarding/sessionsList onboarding sessions for the current user (most recent first)
Responses
200Session list
ok reqenum
truesessions reqobject[]
id reqstring
status reqenum
in_progresspausedcompletecreatedAt reqstring
completedAtstring
findingsCountinteger
pendingWorkflowProposalsCountinteger
pageinteger
perPageinteger
totalinteger
Request
curl 'https://app.openassistant.us/api/onboarding/sessions' \
-H "Authorization: Bearer ak_live_..."Response
{
"ok": true,
"sessions": [
{
"id": "string",
"status": "in_progress",
"createdAt": "2025-01-15T10:30:00.000Z"
}
]
}GET
/onboarding/sessions/current-or-latestGet the current in-progress session if one exists, else the most recent — drives the dashboard resume banner
Responses
200Current or latest session summary + nextStep deep-link hint
ok reqenum
truesession reqobject
idstring
statusenum
in_progresspausedcompletecreatedAtstring
completedAtstring
findingsCountinteger
pendingWorkflowProposalsCountinteger
204User has never run onboarding — no body.
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/current-or-latest' \
-H "Authorization: Bearer ak_live_..."Response
{
"ok": true,
"session": {
"id": "string",
"status": "in_progress",
"createdAt": "2025-01-15T10:30:00.000Z",
"nextStep": "pipeline"
}
}GET
/onboarding/sessions/{sessionId}Get a specific onboarding session with full briefing + findings
Path parameters
sessionId reqstring
Responses
200Session
ok reqenum
truesession reqobject
id reqstring
account reqstring
user reqstring
status reqenum
in_progresspausedcompleteconnections reqobject
calendarsany[]
contactsConnectedboolean
assistant reqobject
assistantstring
namestring
personastring
voicestring
userContext reqobject
linkedinPastestring
additionalEmailsstring[]
roleDescriptionstring
detectedTimezonestring
detectedCitystring
detectedCountrystring
detectedLocalestring
detectedAtstring
detectedSourcestring
briefing reqobject
deterministicobject
findingsany[]
inferredPreferencesobject
syncboolean
availabilityobject
syncboolean
workingHoursobject
MOobject[]
startstring
endstring
TUobject[]
startstring
endstring
WEobject[]
startstring
endstring
THobject[]
startstring
endstring
FRobject[]
startstring
endstring
SAobject[]
startstring
endstring
SUobject[]
startstring
endstring
workingHolidaysstring[]
customHolidaysstring[]
holidayCountriesstring[]
holidayCountrystring
defaultsobject
syncboolean
virtualobject
durationnumber
defaultMeetingLinkstring
conferenceSolutionstring
conferenceIntegrationstring
inPersonobject
durationnumber
defaultLocationstring
calendarsobject
syncboolean
readstring[]
writestring
buffersobject
syncboolean
bufferTypeenum
nonemeetingtimeBlockbufferLengthnumber
bufferBlockLengthnumber
dailyMeetingLimitnumber
customEventTitlesobject
internalobject
useCustomTitlesboolean
solostring
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
externalobject
useCustomTitlesboolean
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
transcriptany[]
stagedMemoriesobject[]
content reqstring
categorystring
confidencenumber
weekLabelsobject[]
eventId reqstring
weekStart reqstring
labelenum
flexibleimportantprotectedcould-have-been-asyncrecurring-1:1prioritynumber
1confidencenumber
workflowProposalsobject[]
proposalId reqstring
titlestring
iconstring
colorstring
sentence reqstring
category reqenum
emailcalendarpost-meetingfollow-upsbriefingscontactsotherevidenceany...
confidencenumber
reviewStateenum
pendingacceptededitedrejecteduserEditedSentencestring
createdAt reqstring
upFrontAnswersobject
roleOneLinerstring
schedulingAnnoyancestring
earnedAnswersobject
finalizeobject
summary reqobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownany[]
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
asyncWorkflowJobsany[]
runErrorsobject[]
stage reqstring
error reqstring
at reqstring
lastErrorstring
debugobject
langsmithTraceIdstring
awsRequestIdstring
logGroupNamestring
logStreamNamestring
regionstring
startedAtstring
completedAtstring
createdAt reqstring
updatedAt reqstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>' \
-H "Authorization: Bearer ak_live_..."Response
{
"ok": true,
"session": {
"id": "string",
"account": "string",
"user": "string",
"status": "in_progress",
"connections": {
"calendars": [],
"contactsConnected": false
},
"assistant": {
"assistant": "string",
"name": "string",
"persona": "string",
"voice": "string"
}
}
}PATCH
/onboarding/sessions/{sessionId}/findings/{findingId}Update a finding's review state or user edits
Path parameters
sessionId reqstring
findingId reqstring
Request body
reviewStateenum
pendingconfirmededitedrejectedskippeduserEditsany
Responses
200Updated session
ok reqenum
truesession reqobject
id reqstring
account reqstring
user reqstring
status reqenum
in_progresspausedcompleteconnections reqobject
calendarsany[]
contactsConnectedboolean
assistant reqobject
assistantstring
namestring
personastring
voicestring
userContext reqobject
linkedinPastestring
additionalEmailsstring[]
roleDescriptionstring
detectedTimezonestring
detectedCitystring
detectedCountrystring
detectedLocalestring
detectedAtstring
detectedSourcestring
briefing reqobject
deterministicobject
findingsany[]
inferredPreferencesobject
syncboolean
availabilityobject
syncboolean
workingHoursobject
MOobject[]
startstring
endstring
TUobject[]
startstring
endstring
WEobject[]
startstring
endstring
THobject[]
startstring
endstring
FRobject[]
startstring
endstring
SAobject[]
startstring
endstring
SUobject[]
startstring
endstring
workingHolidaysstring[]
customHolidaysstring[]
holidayCountriesstring[]
holidayCountrystring
defaultsobject
syncboolean
virtualobject
durationnumber
defaultMeetingLinkstring
conferenceSolutionstring
conferenceIntegrationstring
inPersonobject
durationnumber
defaultLocationstring
calendarsobject
syncboolean
readstring[]
writestring
buffersobject
syncboolean
bufferTypeenum
nonemeetingtimeBlockbufferLengthnumber
bufferBlockLengthnumber
dailyMeetingLimitnumber
customEventTitlesobject
internalobject
useCustomTitlesboolean
solostring
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
externalobject
useCustomTitlesboolean
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
transcriptany[]
stagedMemoriesobject[]
content reqstring
categorystring
confidencenumber
weekLabelsobject[]
eventId reqstring
weekStart reqstring
labelenum
flexibleimportantprotectedcould-have-been-asyncrecurring-1:1prioritynumber
1confidencenumber
workflowProposalsobject[]
proposalId reqstring
titlestring
iconstring
colorstring
sentence reqstring
category reqenum
emailcalendarpost-meetingfollow-upsbriefingscontactsotherevidenceany...
confidencenumber
reviewStateenum
pendingacceptededitedrejecteduserEditedSentencestring
createdAt reqstring
upFrontAnswersobject
roleOneLinerstring
schedulingAnnoyancestring
earnedAnswersobject
finalizeobject
summary reqobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownany[]
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
asyncWorkflowJobsany[]
runErrorsobject[]
stage reqstring
error reqstring
at reqstring
lastErrorstring
debugobject
langsmithTraceIdstring
awsRequestIdstring
logGroupNamestring
logStreamNamestring
regionstring
startedAtstring
completedAtstring
createdAt reqstring
updatedAt reqstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/findings/<findingId>' \
-X PATCH \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{
"reviewState": "pending",
"userEdits": null
}'Response
{
"ok": true,
"session": {
"id": "string",
"account": "string",
"user": "string",
"status": "in_progress",
"connections": {
"calendars": [],
"contactsConnected": false
},
"assistant": {
"assistant": "string",
"name": "string",
"persona": "string",
"voice": "string"
}
}
}PUT
/onboarding/sessions/{sessionId}/week-labelsReplace the per-event week labels on a session
Path parameters
sessionId reqstring
Request body
labelsobject[]
eventId reqstring
weekStart reqstring
labelenum
flexibleimportantprotectedcould-have-been-asyncrecurring-1:1prioritynumber
1confidencenumber
Responses
200Updated session
ok reqenum
truesession reqobject
id reqstring
account reqstring
user reqstring
status reqenum
in_progresspausedcompleteconnections reqobject
calendarsany[]
contactsConnectedboolean
assistant reqobject
assistantstring
namestring
personastring
voicestring
userContext reqobject
linkedinPastestring
additionalEmailsstring[]
roleDescriptionstring
detectedTimezonestring
detectedCitystring
detectedCountrystring
detectedLocalestring
detectedAtstring
detectedSourcestring
briefing reqobject
deterministicobject
findingsany[]
inferredPreferencesobject
syncboolean
availabilityobject
syncboolean
workingHoursobject
MOobject[]
startstring
endstring
TUobject[]
startstring
endstring
WEobject[]
startstring
endstring
THobject[]
startstring
endstring
FRobject[]
startstring
endstring
SAobject[]
startstring
endstring
SUobject[]
startstring
endstring
workingHolidaysstring[]
customHolidaysstring[]
holidayCountriesstring[]
holidayCountrystring
defaultsobject
syncboolean
virtualobject
durationnumber
defaultMeetingLinkstring
conferenceSolutionstring
conferenceIntegrationstring
inPersonobject
durationnumber
defaultLocationstring
calendarsobject
syncboolean
readstring[]
writestring
buffersobject
syncboolean
bufferTypeenum
nonemeetingtimeBlockbufferLengthnumber
bufferBlockLengthnumber
dailyMeetingLimitnumber
customEventTitlesobject
internalobject
useCustomTitlesboolean
solostring
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
externalobject
useCustomTitlesboolean
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
transcriptany[]
stagedMemoriesobject[]
content reqstring
categorystring
confidencenumber
weekLabelsobject[]
eventId reqstring
weekStart reqstring
labelenum
flexibleimportantprotectedcould-have-been-asyncrecurring-1:1prioritynumber
1confidencenumber
workflowProposalsobject[]
proposalId reqstring
titlestring
iconstring
colorstring
sentence reqstring
category reqenum
emailcalendarpost-meetingfollow-upsbriefingscontactsotherevidenceany...
confidencenumber
reviewStateenum
pendingacceptededitedrejecteduserEditedSentencestring
createdAt reqstring
upFrontAnswersobject
roleOneLinerstring
schedulingAnnoyancestring
earnedAnswersobject
finalizeobject
summary reqobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownany[]
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
asyncWorkflowJobsany[]
runErrorsobject[]
stage reqstring
error reqstring
at reqstring
lastErrorstring
debugobject
langsmithTraceIdstring
awsRequestIdstring
logGroupNamestring
logStreamNamestring
regionstring
startedAtstring
completedAtstring
createdAt reqstring
updatedAt reqstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/week-labels' \
-X PUT \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{
"labels": []
}'Response
{
"ok": true,
"session": {
"id": "string",
"account": "string",
"user": "string",
"status": "in_progress",
"connections": {
"calendars": [],
"contactsConnected": false
},
"assistant": {
"assistant": "string",
"name": "string",
"persona": "string",
"voice": "string"
}
}
}POST
/onboarding/sessions/{sessionId}/finalizeApply inferred preferences + save confirmed memories and close the session
Path parameters
sessionId reqstring
Request body
applyPreferencesboolean
saveMemoriesboolean
Responses
200Finalize result
ok reqboolean
sessionId reqstring
summary reqobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownobject[]
category reqenum
PROFILECONTACTCOMPANYEVENTSCHEDULINGFAMILYVOICERULEcount reqinteger
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
asyncWorkflowJobsobject[]
proposalId reqstring
statusenum
queuedbuildingreadyfailedskillIdstring
errorstring
updatedAt reqstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/finalize' \
-X POST \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{
"applyPreferences": true,
"saveMemories": true
}'Response
{
"ok": true,
"sessionId": "string",
"summary": {
"appliedPreferences": false,
"savedMemoryCount": 0,
"memoryBreakdown": [],
"contactsCreated": 0
}
}PATCH
/onboarding/sessions/{sessionId}/up-front-answersPersist the two up-front interview answers (step 3)
Path parameters
sessionId reqstring
Request body
roleOneLinerstring
schedulingAnnoyancestring
Responses
200Updated session
ok reqenum
truesession reqobject
id reqstring
account reqstring
user reqstring
status reqenum
in_progresspausedcompleteconnections reqobject
calendarsany[]
contactsConnectedboolean
assistant reqobject
assistantstring
namestring
personastring
voicestring
userContext reqobject
linkedinPastestring
additionalEmailsstring[]
roleDescriptionstring
detectedTimezonestring
detectedCitystring
detectedCountrystring
detectedLocalestring
detectedAtstring
detectedSourcestring
briefing reqobject
deterministicobject
findingsany[]
inferredPreferencesobject
syncboolean
availabilityobject
syncboolean
workingHoursobject
MOobject[]
startstring
endstring
TUobject[]
startstring
endstring
WEobject[]
startstring
endstring
THobject[]
startstring
endstring
FRobject[]
startstring
endstring
SAobject[]
startstring
endstring
SUobject[]
startstring
endstring
workingHolidaysstring[]
customHolidaysstring[]
holidayCountriesstring[]
holidayCountrystring
defaultsobject
syncboolean
virtualobject
durationnumber
defaultMeetingLinkstring
conferenceSolutionstring
conferenceIntegrationstring
inPersonobject
durationnumber
defaultLocationstring
calendarsobject
syncboolean
readstring[]
writestring
buffersobject
syncboolean
bufferTypeenum
nonemeetingtimeBlockbufferLengthnumber
bufferBlockLengthnumber
dailyMeetingLimitnumber
customEventTitlesobject
internalobject
useCustomTitlesboolean
solostring
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
externalobject
useCustomTitlesboolean
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
transcriptany[]
stagedMemoriesobject[]
content reqstring
categorystring
confidencenumber
weekLabelsobject[]
eventId reqstring
weekStart reqstring
labelenum
flexibleimportantprotectedcould-have-been-asyncrecurring-1:1prioritynumber
1confidencenumber
workflowProposalsobject[]
proposalId reqstring
titlestring
iconstring
colorstring
sentence reqstring
category reqenum
emailcalendarpost-meetingfollow-upsbriefingscontactsotherevidenceany...
confidencenumber
reviewStateenum
pendingacceptededitedrejecteduserEditedSentencestring
createdAt reqstring
upFrontAnswersobject
roleOneLinerstring
schedulingAnnoyancestring
earnedAnswersobject
finalizeobject
summary reqobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownany[]
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
asyncWorkflowJobsany[]
runErrorsobject[]
stage reqstring
error reqstring
at reqstring
lastErrorstring
debugobject
langsmithTraceIdstring
awsRequestIdstring
logGroupNamestring
logStreamNamestring
regionstring
startedAtstring
completedAtstring
createdAt reqstring
updatedAt reqstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/up-front-answers' \
-X PATCH \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{
"roleOneLiner": "string",
"schedulingAnnoyance": "string"
}'Response
{
"ok": true,
"session": {
"id": "string",
"account": "string",
"user": "string",
"status": "in_progress",
"connections": {
"calendars": [],
"contactsConnected": false
},
"assistant": {
"assistant": "string",
"name": "string",
"persona": "string",
"voice": "string"
}
}
}PATCH
/onboarding/sessions/{sessionId}/earned-answersPersist step 6 earned-question answers; triggers propose-workflows if a finding has been confirmed
Path parameters
sessionId reqstring
Request body
Responses
200Updated session
ok reqenum
truesession reqobject
id reqstring
account reqstring
user reqstring
status reqenum
in_progresspausedcompleteconnections reqobject
calendarsany[]
contactsConnectedboolean
assistant reqobject
assistantstring
namestring
personastring
voicestring
userContext reqobject
linkedinPastestring
additionalEmailsstring[]
roleDescriptionstring
detectedTimezonestring
detectedCitystring
detectedCountrystring
detectedLocalestring
detectedAtstring
detectedSourcestring
briefing reqobject
deterministicobject
findingsany[]
inferredPreferencesobject
syncboolean
availabilityobject
syncboolean
workingHoursobject
MOobject[]
startstring
endstring
TUobject[]
startstring
endstring
WEobject[]
startstring
endstring
THobject[]
startstring
endstring
FRobject[]
startstring
endstring
SAobject[]
startstring
endstring
SUobject[]
startstring
endstring
workingHolidaysstring[]
customHolidaysstring[]
holidayCountriesstring[]
holidayCountrystring
defaultsobject
syncboolean
virtualobject
durationnumber
defaultMeetingLinkstring
conferenceSolutionstring
conferenceIntegrationstring
inPersonobject
durationnumber
defaultLocationstring
calendarsobject
syncboolean
readstring[]
writestring
buffersobject
syncboolean
bufferTypeenum
nonemeetingtimeBlockbufferLengthnumber
bufferBlockLengthnumber
dailyMeetingLimitnumber
customEventTitlesobject
internalobject
useCustomTitlesboolean
solostring
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
externalobject
useCustomTitlesboolean
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
transcriptany[]
stagedMemoriesobject[]
content reqstring
categorystring
confidencenumber
weekLabelsobject[]
eventId reqstring
weekStart reqstring
labelenum
flexibleimportantprotectedcould-have-been-asyncrecurring-1:1prioritynumber
1confidencenumber
workflowProposalsobject[]
proposalId reqstring
titlestring
iconstring
colorstring
sentence reqstring
category reqenum
emailcalendarpost-meetingfollow-upsbriefingscontactsotherevidenceany...
confidencenumber
reviewStateenum
pendingacceptededitedrejecteduserEditedSentencestring
createdAt reqstring
upFrontAnswersobject
roleOneLinerstring
schedulingAnnoyancestring
earnedAnswersobject
finalizeobject
summary reqobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownany[]
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
asyncWorkflowJobsany[]
runErrorsobject[]
stage reqstring
error reqstring
at reqstring
lastErrorstring
debugobject
langsmithTraceIdstring
awsRequestIdstring
logGroupNamestring
logStreamNamestring
regionstring
startedAtstring
completedAtstring
createdAt reqstring
updatedAt reqstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/earned-answers' \
-X PATCH \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{}'Response
{
"ok": true,
"session": {
"id": "string",
"account": "string",
"user": "string",
"status": "in_progress",
"connections": {
"calendars": [],
"contactsConnected": false
},
"assistant": {
"assistant": "string",
"name": "string",
"persona": "string",
"voice": "string"
}
}
}PATCH
/onboarding/sessions/{sessionId}/workflow-proposals/{proposalId}Accept / edit-sentence / reject a workflow proposal
Path parameters
sessionId reqstring
proposalId reqstring
Request body
reviewState reqenum
pendingacceptededitedrejecteduserEditedSentencestring
Responses
200Updated session
ok reqenum
truesession reqobject
id reqstring
account reqstring
user reqstring
status reqenum
in_progresspausedcompleteconnections reqobject
calendarsany[]
contactsConnectedboolean
assistant reqobject
assistantstring
namestring
personastring
voicestring
userContext reqobject
linkedinPastestring
additionalEmailsstring[]
roleDescriptionstring
detectedTimezonestring
detectedCitystring
detectedCountrystring
detectedLocalestring
detectedAtstring
detectedSourcestring
briefing reqobject
deterministicobject
findingsany[]
inferredPreferencesobject
syncboolean
availabilityobject
syncboolean
workingHoursobject
MOobject[]
startstring
endstring
TUobject[]
startstring
endstring
WEobject[]
startstring
endstring
THobject[]
startstring
endstring
FRobject[]
startstring
endstring
SAobject[]
startstring
endstring
SUobject[]
startstring
endstring
workingHolidaysstring[]
customHolidaysstring[]
holidayCountriesstring[]
holidayCountrystring
defaultsobject
syncboolean
virtualobject
durationnumber
defaultMeetingLinkstring
conferenceSolutionstring
conferenceIntegrationstring
inPersonobject
durationnumber
defaultLocationstring
calendarsobject
syncboolean
readstring[]
writestring
buffersobject
syncboolean
bufferTypeenum
nonemeetingtimeBlockbufferLengthnumber
bufferBlockLengthnumber
dailyMeetingLimitnumber
customEventTitlesobject
internalobject
useCustomTitlesboolean
solostring
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
externalobject
useCustomTitlesboolean
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
transcriptany[]
stagedMemoriesobject[]
content reqstring
categorystring
confidencenumber
weekLabelsobject[]
eventId reqstring
weekStart reqstring
labelenum
flexibleimportantprotectedcould-have-been-asyncrecurring-1:1prioritynumber
1confidencenumber
workflowProposalsobject[]
proposalId reqstring
titlestring
iconstring
colorstring
sentence reqstring
category reqenum
emailcalendarpost-meetingfollow-upsbriefingscontactsotherevidenceany...
confidencenumber
reviewStateenum
pendingacceptededitedrejecteduserEditedSentencestring
createdAt reqstring
upFrontAnswersobject
roleOneLinerstring
schedulingAnnoyancestring
earnedAnswersobject
finalizeobject
summary reqobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownany[]
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
asyncWorkflowJobsany[]
runErrorsobject[]
stage reqstring
error reqstring
at reqstring
lastErrorstring
debugobject
langsmithTraceIdstring
awsRequestIdstring
logGroupNamestring
logStreamNamestring
regionstring
startedAtstring
completedAtstring
createdAt reqstring
updatedAt reqstring
400Bad request
status reqinteger
error_codestring
error reqstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/workflow-proposals/<proposalId>' \
-X PATCH \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{
"reviewState": "pending"
}'Response
{
"ok": true,
"session": {
"id": "string",
"account": "string",
"user": "string",
"status": "in_progress",
"connections": {
"calendars": [],
"contactsConnected": false
},
"assistant": {
"assistant": "string",
"name": "string",
"persona": "string",
"voice": "string"
}
}
}POST
/onboarding/sessions/{sessionId}/workflow-proposals/skip-allReject all remaining pending workflow proposals
Path parameters
sessionId reqstring
Request body
Responses
200Updated session
ok reqenum
truesession reqobject
id reqstring
account reqstring
user reqstring
status reqenum
in_progresspausedcompleteconnections reqobject
calendarsany[]
contactsConnectedboolean
assistant reqobject
assistantstring
namestring
personastring
voicestring
userContext reqobject
linkedinPastestring
additionalEmailsstring[]
roleDescriptionstring
detectedTimezonestring
detectedCitystring
detectedCountrystring
detectedLocalestring
detectedAtstring
detectedSourcestring
briefing reqobject
deterministicobject
findingsany[]
inferredPreferencesobject
syncboolean
availabilityobject
syncboolean
workingHoursobject
MOobject[]
startstring
endstring
TUobject[]
startstring
endstring
WEobject[]
startstring
endstring
THobject[]
startstring
endstring
FRobject[]
startstring
endstring
SAobject[]
startstring
endstring
SUobject[]
startstring
endstring
workingHolidaysstring[]
customHolidaysstring[]
holidayCountriesstring[]
holidayCountrystring
defaultsobject
syncboolean
virtualobject
durationnumber
defaultMeetingLinkstring
conferenceSolutionstring
conferenceIntegrationstring
inPersonobject
durationnumber
defaultLocationstring
calendarsobject
syncboolean
readstring[]
writestring
buffersobject
syncboolean
bufferTypeenum
nonemeetingtimeBlockbufferLengthnumber
bufferBlockLengthnumber
dailyMeetingLimitnumber
customEventTitlesobject
internalobject
useCustomTitlesboolean
solostring
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
externalobject
useCustomTitlesboolean
oneAttendeestring
twoAttendeesstring
manyAttendeesstring
transcriptany[]
stagedMemoriesobject[]
content reqstring
categorystring
confidencenumber
weekLabelsobject[]
eventId reqstring
weekStart reqstring
labelenum
flexibleimportantprotectedcould-have-been-asyncrecurring-1:1prioritynumber
1confidencenumber
workflowProposalsobject[]
proposalId reqstring
titlestring
iconstring
colorstring
sentence reqstring
category reqenum
emailcalendarpost-meetingfollow-upsbriefingscontactsotherevidenceany...
confidencenumber
reviewStateenum
pendingacceptededitedrejecteduserEditedSentencestring
createdAt reqstring
upFrontAnswersobject
roleOneLinerstring
schedulingAnnoyancestring
earnedAnswersobject
finalizeobject
summary reqobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownany[]
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
asyncWorkflowJobsany[]
runErrorsobject[]
stage reqstring
error reqstring
at reqstring
lastErrorstring
debugobject
langsmithTraceIdstring
awsRequestIdstring
logGroupNamestring
logStreamNamestring
regionstring
startedAtstring
completedAtstring
createdAt reqstring
updatedAt reqstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/workflow-proposals/skip-all' \
-X POST \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{}'Response
{
"ok": true,
"session": {
"id": "string",
"account": "string",
"user": "string",
"status": "in_progress",
"connections": {
"calendars": [],
"contactsConnected": false
},
"assistant": {
"assistant": "string",
"name": "string",
"persona": "string",
"voice": "string"
}
}
}GET
/onboarding/sessions/{sessionId}/workflow-statusPoll async author-skill build status for accepted workflows
Path parameters
sessionId reqstring
Responses
200Per-proposal build status
ok reqboolean
jobsobject[]
proposalId reqstring
statusenum
queuedbuildingreadyfailedskillIdstring
errorstring
updatedAt reqstring
allComplete reqboolean
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/workflow-status' \
-H "Authorization: Bearer ak_live_..."Response
{
"ok": true,
"allComplete": true
}GET
/onboarding/sessions/{sessionId}/finalize-statusPolling-friendly progress endpoint for the screen-8 live finalize task
Path parameters
sessionId reqstring
Responses
200Live finalize progress
ok reqboolean
status reqenum
idlerunningcompleteerrorcurrentTaskstring
messagesobject[]
role reqenum
assistantusersystemcontent reqstring
atstring
pendingQuestionsobject[]
questionId reqstring
text reqstring
summaryobject
appliedPreferencesboolean
savedMemoryCountinteger
memoryBreakdownobject[]
category reqenum
PROFILECONTACTCOMPANYEVENTSCHEDULINGFAMILYVOICERULEcount reqinteger
contactsCreatedinteger
contactsUpdatedinteger
companiesUpsertedCountinteger
ownCompanyIdstring
weekLabelsAppliedinteger
skillsInstalledstring[]
notesstring[]
errorstring
404Not found
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/onboarding/sessions/<sessionId>/finalize-status' \
-H "Authorization: Bearer ak_live_..."Response
{
"ok": true,
"status": "idle"
}POST
/me/profile/bioIdempotent upsert of the user's profile:bio Memory (screen 1 of portal onboarding v3)
Request body
content reqstring
Responses
200Updated bio memory (or cleared)
ok reqboolean
removedboolean
countnumber
201Created bio memory
ok reqboolean
400Bad request
status reqinteger
error_codestring
error reqstring
Request
curl 'https://app.openassistant.us/api/me/profile/bio' \
-X POST \
-H "Authorization: Bearer ak_live_..." \
-H "Content-Type: application/json" \
-d '{
"content": "string"
}'Response
{
"ok": true
}