Set the state for a profile's role
Updates the lifecycle state of a specific role. Use this to advance a candidate through the admissions pipeline — for example, from applicant::submitted to applicant::admitted. Provide the target state as a single state_and_substate string in the request body. Alternatively (or in addition), pass a role object to update the role's journey fields. A request with neither leaves the role unchanged.
Path Parameters
- Type: stringprofile
_id requiredUnique identifier of the profile.
- Type: stringrole
_id requiredUnique identifier of the role.
Body
application/json
- Type: stringstate
_and _substate Target lifecycle state and substate as a single
state::substatestring. Both halves are required and must form a valid combination in the institution's lifecycle, otherwise the request returns 400.
Responses
- application/json
- application/json
- application/json
- application/json
Request Example for patch/apis/profiles/profiles/{profile_id}/roles/{role_id}
curl https://ff-business-school.fullfabric.cloud/apis/profiles/profiles/507f1f77bcf86cd799439011/roles/507f1f77bcf86cd799439011 \
--request PATCH \
--header 'Content-Type: application/json' \
--header 'FF-Auth: YOUR_SECRET_TOKEN' \
--data '{
"state_and_substate": "applicant::admitted"
}'
{
"id": "6385bdd4976a7719120108ed",
"withdrawn": false,
"withdrew_at": null,
"withdrawn_reasons": [],
"withdrawn_detail": null,
"state": "applicant",
"substate": "submitted",
"state_and_substate": "applicant::submitted",
"potential": "high",
"context_id": "6385bb46976a771912003e6a",
"context_type": "Institutions::ClassOf",
"campus_id": null,
"owner_id": null
}