In the following it is assumed that:
admin:password are the credentials for accessing Syncope coreDetails are available in the Reference Guide.
With Apache Syncope 2.0.0, besides usingĀ curl as with earlier versions, a brand new CLI tool is available. |
For more details please refer to the REST API reference, which is also available at http://localhost:9080/syncope/. |
If selected for deployment, the Swagger extension is also available at http://localhost:9080/syncope/swagger/. |
For more details please refer to the REST API reference, which is also available at http://localhost:9080/syncope/rest/doc/. |
curl -X POST -u admin:password -H "Accept: application/json" -H "Content-Type: application/json"\ --data @/tmp/newuser.json http://localhost:9080/syncope/rest/users |
where /tmp/newuser.json looks like:
{
"id": 0,
"password": "password123",
"username": "myusername@apache.org",
"securityQuestion": null,
"securityAnswer": null,
"attributes": [
{
"schema": "fullname",
"readonly": false,
"values": [
"myusername@apache.org"
]
},
{
"schema": "loginDate",
"readonly": false,
"values": [
"2015-11-12"
]
}
]
} |
To link the user to an existing resource, include this in the root json hash:
"resources": [
"ws-target-resource-1"
]
|
You might want to add
-H "Prefer: return-no-content" |
to avoid Syncope core populating the HTTP response with the created user entry.
curl -X POST -u admin:password -H "Accept: application/json" -H "Content-Type: application/json"\ --data @/tmp/updateuser.json http://localhost:9080/syncope/rest/users/100 |
where 100 is the id of the user to be deleted and /tmp/updateuser.json looks like:
{
"id": 100,
"username": "newUsername",
"password": "updatedPassword",
"attributesToRemove": [
"surname"
],
"attributesToUpdate": [
{
"schema": "surname",
"valuesToBeAdded": [
"New surname"
],
"valuesToBeRemoved": []
}
]
} |
You might want to add
-H "Prefer: return-no-content" |
to avoid Syncope core populating the HTTP response with the updated user entry.
curl -X DELETE -u admin:password -H "Accept: application/json" http://localhost:9080/syncope/rest/users/100 |
where 100 is the id of the user to be deleted.
You might want to add
-H "Prefer: return-no-content" |
to avoid Syncope core populating the HTTP response with the deleted user entry.
curl -X GET -u admin:password -o content.xml http://localhost:9080/syncope/rest/configurations/stream |
curl -X PUT -u admin:password -H "Accept: application/json" -H "Content-Type: application/json" \
-d '{"schema":"selfRegistration.allowed","values":["true"]}' http://localhost:9080/syncope/rest/configurations/selfRegistration.allowed |
curl -u admin:password -H "Content-Type: application/json" --data @/tmp/newuser.json http://localhost:9080/syncope/rest/user/create.json |
where /tmp/newuser.json looks like:
{
"id": "0",
"username": "myusername",
"password": "test123",
"attributes": [
{
"schema": "userId",
"values": [
"example1@example.com"
]
},
{
"schema": "surname",
"values": [
"My Surname"
]
}
]
}
|
To link the user to an existing resource, include this in the root json hash:
"resources": [
"ws-target-resource-1"
]
|
curl -u admin:password -o content.xml -H "Content-Type: application/xml" -X GET http://localhost:9080/syncope/cxf/configurations/stream |
curl -u admin:password -H "Content-Type: application/json" \
-d '{"key":"smtp.host","value":"smtp.ngi.it"}' http://localhost:9080/syncope/rest/configuration/update.json |