Create HappyProto's admin and customers spaces under HAPPYPROTO_DID, member-only, keeping either that already exists, and add each of staff to the admin space with write access, skipping existing members. Idempotent: a second call creates nothing and adds no one. Only HappyProto's own account may call it.
Input
application/jsonstaff
array
Optional
DIDs to add to the admin space with write access. A DID listed twice is added once. A DID that is already a member is left at its current access (a read-only member is not upgraded) and is not listed in staffAdded.
maxLength: 50 itemsOutput
Errors
Forbidden
The caller is not HAPPYPROTO_DID, is signed out, or HAPPYPROTO_DID is unset or not a DID. InvalidRequest
staff is not a list of at most 50 DIDs. Upstream
A space could not be read, created or changed, or the instance anchors new spaces under its own DID rather than HAPPYPROTO_DID. A failure part-way through staff names, in its message, the DIDs already added. Retrying is safe. Try It
Requests are sent directly from your browser. Some servers may block requests due to CORS.
View raw schema
{
"description": "Create HappyProto's admin and customers spaces under HAPPYPROTO_DID, member-only, keeping either that already exists, and add each of staff to the admin space with write access, skipping existing members. Idempotent: a second call creates nothing and adds no one. Only HappyProto's own account may call it.",
"errors": [
{
"description": "The caller is not HAPPYPROTO_DID, is signed out, or HAPPYPROTO_DID is unset or not a DID.",
"name": "Forbidden"
},
{
"description": "staff is not a list of at most 50 DIDs.",
"name": "InvalidRequest"
},
{
"description": "A space could not be read, created or changed, or the instance anchors new spaces under its own DID rather than HAPPYPROTO_DID. A failure part-way through staff names, in its message, the DIDs already added. Retrying is safe.",
"name": "Upstream"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"staff": {
"description": "DIDs to add to the admin space with write access. A DID listed twice is added once. A DID that is already a member is left at its current access (a read-only member is not upgraded) and is not listed in staffAdded.",
"items": {
"format": "did",
"type": "string"
},
"maxLength": 50,
"type": "array"
}
},
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"adminSpace": {
"ref": "#space",
"type": "ref"
},
"customersSpace": {
"ref": "#space",
"type": "ref"
},
"staffAdded": {
"description": "The DIDs this call added to the admin space; members already present are left out.",
"items": {
"format": "did",
"type": "string"
},
"type": "array"
}
},
"required": [
"adminSpace",
"customersSpace",
"staffAdded"
],
"type": "object"
}
},
"type": "procedure"
}