Becoming You Labs Partner API
  • Documentation
  • API Reference
Information
Assessment
    Get published assessment schemaget
Sessions
    Create an assessment sessionpostGet session statusgetRecord answerspostComplete and score a sessionpostGet session resultsget
Subjects
    Get latest results for one of your usersget
Schemas
powered by Zuplo
Becoming You Labs Partner API
Becoming You Labs Partner API

Sessions

Per-end-user assessment sessions.


Create an assessment session

POST
https://api.becomingyou.com
/v1/{product}/sessions

Create an assessment session › path Parameters

product
​string · enum · required

Assessment product identifier.

Enum values:
values-bridge

Create an assessment session › Request Body

Every field is optional, but the body itself is not: send at least `{}`.
CreateSessionRequest
subject
​object | null
mode
​string · enum
Enum values:
headless
hosted
Default: headless
redirectUrl
​string · uri

Where to send the end user after a hosted session completes. Required when mode is "hosted", and must be an http(s) URL.

​object

Accepted and validated but not currently persisted or echoed back. Do not rely on retrieving it later.

Create an assessment session › Responses

Session created.

oneOf
Exactly one variant must match.

Decision Table

VariantMatching Criteria
type = object
type = object
Properties for Variant 1:
HeadlessSession
sessionId
​string · uuid
mode
​string · enum
Enum values:
headless
​object
​AssessmentSchema
POST/v1/{product}/sessions
curl https://api.becomingyou.com/v1/:product/sessions \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "subject": { "externalId": "externalId" }, "mode": "headless", "redirectUrl": "https://www.example.com/path/to/resource", "metadata": {} }'
Example Request Body
{ "subject": { "externalId": "externalId" }, "mode": "headless", "redirectUrl": "https://www.example.com/path/to/resource", "metadata": {} }
json
Example Responses
{ "sessionId": "00000000-0000-0000-0000-000000000000", "mode": "headless", "subject": { "id": "00000000-0000-0000-0000-000000000000", "externalId": "externalId", "anonymous": true }, "assessment": { "product": "product", "assessmentId": 0, "version": 0, "questions": [ { "id": 0, "prompt": "prompt", "type": "likert", "group": "group", "position": 0, "required": true, "likertConfig": { "min": 0, "max": 0 }, "choices": [ { "id": 0, "label": "label" } ], "valuesBridgeConfig": { "valueId": 0, "valueName": "valueName", "lifeContext": "ideal", "inverse": true, "omegaWeight": 0 } } ] } }
json
application/json

Get session status

GET
https://api.becomingyou.com
/v1/{product}/sessions/{id}

Get session status › path Parameters

product
​string · enum · required

Assessment product identifier.

Enum values:
values-bridge
id
​string · uuid · required

Session (submission) id.

Get session status › Responses

Session status.

SessionStatus
sessionId
​string · uuid
product
​string
status
​string · enum
Enum values:
in_progress
completed
createdAt
​string · date-time
completedAt
​string | null · date-time
GET/v1/{product}/sessions/{id}
curl https://api.becomingyou.com/v1/:product/sessions/:id \ --header 'Authorization: Bearer <token>'
Example Responses
{ "sessionId": "00000000-0000-0000-0000-000000000000", "product": "product", "status": "in_progress", "createdAt": "2024-08-25T15:00:00Z", "completedAt": "2024-08-25T15:00:00Z" }
json
application/json

Record answers

POST
https://api.becomingyou.com
/v1/{product}/sessions/{id}/answers

Record answers › path Parameters

product
​string · enum · required

Assessment product identifier.

Enum values:
values-bridge
id
​string · uuid · required

Session (submission) id.

Record answers › Request Body

SubmitAnswersRequest
​AnswerItem[] · minItems: 1 · required

Record answers › Responses

Answers recorded.

sessionId
​string · uuid
recorded
​integer
POST/v1/{product}/sessions/{id}/answers
curl https://api.becomingyou.com/v1/:product/sessions/:id/answers \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "answers": [ { "questionId": 0, "response": { "type": "likert", "value": 1 } } ] }'
Example Request Body
{ "answers": [ { "questionId": 0, "response": { "type": "likert", "value": 1 } } ] }
json
Example Responses
{ "sessionId": "00000000-0000-0000-0000-000000000000", "recorded": 0 }
json
application/json

Complete and score a session

POST
https://api.becomingyou.com
/v1/{product}/sessions/{id}/complete

Scores the session against the assessment it was created with, not the currently published one. Answers must therefore use the questionId values returned by POST /v1/{product}/sessions; a set that matches none of them is rejected with 422 invalid_request and the session stays open rather than being scored as if unanswered.

Complete and score a session › path Parameters

product
​string · enum · required

Assessment product identifier.

Enum values:
values-bridge
id
​string · uuid · required

Session (submission) id.

Complete and score a session › Request Body optional

CompleteRequest
​AnswerItem[]

Complete and score a session › Responses

Session completed; results returned.

CompletedSession
sessionId
​string · uuid
status
​string · enum
Enum values:
completed
​NullableValuesBridgeResults

Scored results, or null when the session has not been scored yet.

POST/v1/{product}/sessions/{id}/complete
curl https://api.becomingyou.com/v1/:product/sessions/:id/complete \ --request POST \ --header 'Content-Type: application/json' \ --header 'Authorization: Bearer <token>' \ --data '{ "answers": [ { "questionId": 0, "response": { "type": "likert", "value": 1 } } ] }'
Example Request Body
{ "answers": [ { "questionId": 0, "response": { "type": "likert", "value": 1 } } ] }
json
Example Responses
{ "sessionId": "00000000-0000-0000-0000-000000000000", "status": "completed", "results": { "overall": { "archetypeId": 0, "totalAuthenticityGapScaled": 0, "totalConflictScoreScaled": 0, "totalHarmonyScoreScaled": 0 }, "values": [ { "valueId": 0, "idealDisplayRank": 0, "idealRankTier": "core", "currentDisplayRank": 0, "currentRankTier": "core", "authenticityGapScaled": 0 } ], "pairings": [ { "valuePairingId": 0, "scaledScore": 0 } ] } }
json
application/json

Get session results

GET
https://api.becomingyou.com
/v1/{product}/sessions/{id}/results

Get session results › path Parameters

product
​string · enum · required

Assessment product identifier.

Enum values:
values-bridge
id
​string · uuid · required

Session (submission) id.

Get session results › Responses

Scored results.

Only returned once the session is scored; an unscored session is a `404 not_found`.
SessionResults
sessionId
​string · uuid
​ValuesBridgeResults

Scored Values Bridge results. Per-value authenticityGapScaled is a signed percentage of the rating span in −100…+100 (positive = the value is lived less than desired); totals (totalAuthenticityGapScaled, totalConflictScoreScaled, totalHarmonyScoreScaled) and pairing scaledScores are 0–100. values is ordered by idealDisplayRank ascending, pairings by scaledScore descending. Numeric fields are null when a value or pairing produced no score.

GET/v1/{product}/sessions/{id}/results
curl https://api.becomingyou.com/v1/:product/sessions/:id/results \ --header 'Authorization: Bearer <token>'
Example Responses
{ "sessionId": "00000000-0000-0000-0000-000000000000", "results": { "overall": { "archetypeId": 0, "totalAuthenticityGapScaled": 0, "totalConflictScoreScaled": 0, "totalHarmonyScoreScaled": 0 }, "values": [ { "valueId": 0, "idealDisplayRank": 0, "idealRankTier": "core", "currentDisplayRank": 0, "currentRankTier": "core", "authenticityGapScaled": 0 } ], "pairings": [ { "valuePairingId": 0, "scaledScore": 0 } ] } }
json
application/json

AssessmentSubjects