/user

post
User

https://api-org.synap.ac/users
Register a new user to your organisation.
Request
Response
Request
Headers
x-api-key
required
string
Your API usage token
x-syn-org-id
required
string
Your organisation's identifier on Synap
x-syn-org-secret
required
string
You organisation's secret key, used to authorise each request
content-type
required
string
application/json
Response
200: OK
The user was successfully created.
{
"user": {
"objectId": "A123TESTX9",
"email": "[email protected]",
"password": "Password123",
"name": "Tom Smith",
"attr": {
"foo": true,
"bar": 123
}
}
"timestamp": "2020-03-30T10:05:16.754Z"
}
400: Bad Request
Various examples of bad requests
// Email already exists in our database
{
"code": 400,
"error": "Account already exists for this username.";
}
// insufficient password security
{
"code": 400,
"error": "Password does not meet the password policy requirements.";
}

Body Parameters

User

Attribute

Type

Required

Description

email

string

yes

The user's email address

password

string

yes

At least 8 characters, mixture of 1 uppercase, 1 lowercase and 1 digit

name

string

yes

The user's name

attr

object

optional

Custom attributes you wish to set for the user

Actions

Attribute

Type

Required

Description

addToUserGroup

object

optional

Provide the id of the usergroup the new user should be added to

Examples

cURL Request
Request Body
Response
cURL Request
curl --request POST \
--url https://api-org.synap.ac/users \
--header 'content-type: application/json' \
--header 'x-syn-org-id: org123test' \
--header 'x-syn-org-secret: secret123test' \
--header 'x-api-key: test123api' \
--data '{
"user": {
"email": "[email protected]",
"password": "Password123",
"name": "Tom Smith",
"attr": {
"foo": true,
"bar": 123
}
},
"actions": {
"addToUserGroup": "U6CoTESTL7"
}
}'
Request Body
{
"user": {
"email": "[email protected]",
"password": "Password123",
"name": "Tom Smith",
"attr": {
"foo": true,
"bar": 123
}
},
"actions": {
"addToUserGroup": "U6CoTESTL7"
}
}
Response
{
"objectId": "A123TESTX9",
"email": "[email protected]",
"password": "Password123",
"name": "Tom Smith",
"attr": {
"foo": true,
"bar": 123
}
"timestamp": "2020-03-30T10:05:16.754Z"
}
--
403 Forbidden
{
"code": 403,
"error": "Unauthorised request."
}

delete
Delete user

{API_URL}/users/:objectId
Permanently remove the user and all their data from your organisation.
Request
Response
Request
Headers
X-Api-Key
optional
string
Your API usage token
X-Syn-Org-Id
optional
string
Your organisation's identifier on Synap
X-Syn-Org-Secret
optional
string
Your organisation's secret key, used to authorised each request
Content-Type
optional
string
application/json
Query Parameters
objectId
required
string
The user's objectId.
Response
200: OK
The user was deleted successfully.
{
"objectId": "A123TESTX9",
"createdAt": "2020-03-27T12:00:00.000Z",
"updatedAt": "2020-03-27T12:00:00.000Z",
"email": "[email protected]",
"name": "Tom Smith",
"attr": {
"foo": true,
"bar": 123
}
"timestamp": "2020-03-30T10:05:16.754Z"
}
404: Not Found
The user does not exist.
{
"code": 404,
"error": "Object not found.";
}

Examples

cURL Request
Response
cURL Request
curl --request DELETE \
--url https://api-org.synap.ac/users/A123TESTX9 \
--header 'x-syn-org-id: org123test' \
--header 'x-syn-org-secret: secret123test' \
--header 'x-api-key: test123api' \
Response
200 Ok
{
"objectId": "A123TESTX9",
"createdAt": "2020-03-27T12:00:00.000Z",
"updatedAt": "2020-03-27T12:00:00.000Z",
"email": "[email protected]",
"name": "Tom Smith",
"attr": {
"foo": true,
"bar": 123
}
"timestamp": "2020-03-30T10:05:16.754Z"
}
--
403 Forbidden
{
"code": 403,
"error": "Unauthorised request."
}
--
404 Not Found
{
"code": 404,
"error": "Object not found."
}