Complete user profile for a share recipient
Activates a deactivated user account that was created as part of the document share registration flow.
This is a public endpoint — no authentication is required.
Flow context: When a document is shared with a recipient who does not yet have an account, a deactivated user account is created and the recipient receives a share link. Following that link, the recipient eventually calls this endpoint to supply their personal details and activate their account.
Preconditions:
- The recipient identified by
userIdmust exist as a deactivated share recipient with statusWAITING_FOR_USER_REGISTRATION. If the recipient is in any other status (e.g. already registered or pending admin approval), a 422 is returned.
Side effects on success:
- The Keycloak user account is enabled and updated with the provided name and language.
- The share recipient's status transitions to
WAITING_FOR_ADMIN_DECISION. - An email notification is sent to the sender organisation's admins (or to the support address if no admin is configured) so they can approve the new user.
Access restricted to roles:
Path Parameters
UUID of the share recipient whose profile should be completed. This matches the deactivated Keycloak user ID.
uuidRequest Body
application/json
Personal details and role selection for the new user
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://dev.sweetconnect.io/api/storage/v1/shares/complete-profile/a1b2c3d4-5678-90ab-cdef-1234567890ab" \ -H "Content-Type: application/json" \ -d '{ "firstname": "John", "lastname": "Doe", "language": "de" }'{
"data": {
"id": "0c1b9613-7d6f-40b7-bf29-3179ac401fc9",
"email": "john.doe@example.com",
"enabled": false
}
}{
"errors": [
{
"errorCode": "BadRequest",
"message": "The request payload is invalid.",
"extension": {}
}
]
}{
"errors": [
{
"errorCode": "NotFound",
"message": "The requested resource was not found.",
"extension": {}
}
]
}{
"errors": [
{
"errorCode": "UnprocessableEntity",
"message": "Operation not allowed for this entity type.",
"extension": {
"entityType": "Document"
}
}
]
}{
"errors": [
{
"errorCode": "InternalServerError",
"message": "An unexpected error occurred. See logs for further details or create a support ticket.",
"extension": {}
}
]
}