Skip to main content

SCIM System examples

Operations

This page shows the operations that can be performed for the Systems object (Agents).

List all

Request
GET http://<your-domain>/soffid/webservice/scim2/v1/System
Response 200 OK
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 16,
    "startIndex": 1,
    "Resources": [
        {
            "accessControl": false,
            "usersDomain": "DEFAULT",
            "fullReconciliation": false,
            "authoritative": false,
            "description": "Soffid system",
            "groups": "",
            "threads": 1,
            "className": "- no class -",
            "userTypes": "I",
            "groupsList": [],
            "readOnly": false,
            "passwordsDomain": "DEFAULT",
            "timeStamp": "2020-04-18 19:32:37",
            "rolebased": true,
            "trusted": false,
            "meta": {
                "location": "http://soffid.pat.lab:8080/soffid/webservice/scim2/v1/System/44",
                "resourceType": "System"
            },
            "schemas": [
                "urn:soffid:com.soffid.iam.api.System"
            ],
            "name": "soffid",
            "id": 44,
            "passwordsDomainId": 27,
            "tenant": "master",
            "generateTasksOnLoad": true
        },
        {
            "accessControl": false,
            "usersDomain": "DEFAULT",
            "fullReconciliation": false,
            "authoritative": false,
            "description": "External SSO accounts",
            "groups": "admingroup,enterprise",
            "threads": 1,
            "className": "com.soffid.iam.sync.sso.agent.SSOAgent",
            "userTypes": "S,I",
            "groupsList": [
                "admingroup",
                "enterprise"
            ],
            "readOnly": false,
            "url": "local",
            "passwordsDomain": "DEFAULT",
            "timeStamp": "2020-09-21 10:17:38",
            "rolebased": false,
            "trusted": false,
            "meta": {
                "location": "http://soffid.pat.lab:8080/soffid/webservice/scim2/v1/System/47",
                "resourceType": "System"
            },
            "schemas": [
                "urn:soffid:com.soffid.iam.api.System"
            ],
            "name": "SSO",
            "id": 47,
            "manualAccountCreation": true,
            "passwordsDomainId": 27,
            "tenant": "master",
            "generateTasksOnLoad": true
        },
      ................
    ]
}

List by filter

List all Systems with a filter expression.

It is allowed to use pagination and sort the information, for more information visit the Sorting and Pagination information.

Request
GET http://<your-domain>/soffid/webservice/scim2/v1/System?filter=description co 10.129.
Response 200 OK
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 2,
    "startIndex": 1,
    "Resources": [
        {
            "accessControl": false,
            "description": "Discovered host 10.129.122.22",
            "className": "com.soffid.iam.sync.agent.SimpleSSHAgent",
            "userTypes": "",
            "passwordsDomain": "DEFAULT",
            "rolebased": false,
            "id": 1885153,
            "manualAccountCreation": true,
            "tenant": "master",
            "generateTasksOnLoad": false,
            "param7": "false",
            "usersDomain": "DEFAULT",
            "param6": "UTF-8",
            "fullReconciliation": true,
            "authoritative": false,
            "sharedDispatcher": true,
            "param0": "soffid",
            "groups": "",
            "threads": 1,
            "groupsList": [],
            "readOnly": false,
            "param3": "10.129.122.22",
            "param4": "true",
            "url": "local",
            "param2": "517y1hF40k4=",
            "timeStamp": "2021-04-23 12:23:15",
            "trusted": false,
            "meta": {
                "location": "http://soffid.pat.lab:8080/soffid/webservice/scim2/v1/System/1885153",
                "resourceType": "System"
            },
            "schemas": [
                "urn:soffid:com.soffid.iam.api.System"
            ],
            "name": "10.129.122.22",
            "passwordsDomainId": 27
        },
        {
            "accessControl": false,
            "description": "Discovered host 10.129.122.25",
            "className": "com.soffid.iam.sync.agent.SimpleWindowsAgent",
            "userTypes": "",
            "passwordsDomain": "DEFAULT",
            "rolebased": false,
            "id": 1890334,
            "manualAccountCreation": true,
            "tenant": "master",
            "generateTasksOnLoad": false,
            "param7": "false",
            "usersDomain": "DEFAULT",
            "fullReconciliation": true,
            "authoritative": false,
            "sharedDispatcher": true,
            "param0": "Administrador",
            "groups": "",
            "threads": 1,
            "groupsList": [],
            "readOnly": false,
            "param3": "10.129.122.25",
            "param4": "true",
            "url": "local",
            "param2": "VFJV1pSRfE7s",
            "timeStamp": "2021-04-23 20:00:34",
            "trusted": false,
            "meta": {
                "location": "http://soffid.pat.lab:8080/soffid/webservice/scim2/v1/System/1890334",
                "resourceType": "System"
            },
            "schemas": [
                "urn:soffid:com.soffid.iam.api.System"
            ],
            "name": "10.129.122.25",
            "passwordsDomainId": 27
        }
    ]
}

Query by id

Query a System by its id (primary key). 

Request
GET http://<your-domain>/soffid/webservice/scim2/v1/System/389082
Response 200 OK
{
    "accessControl": true,
    "description": "Active Directory.",
    "className": "com.soffid.iam.sync.agent2.CustomizableActiveDirectoryAgent",
    "userTypes": "I",
    "passwordsDomain": "DEFAULT",
    "rolebased": true,
    "id": 389082,
    "manualAccountCreation": false,
    "tenant": "master",
    "generateTasksOnLoad": true,
    "param7": "true",
    "param8": "true",
    "usersDomain": "DEFAULT",
    "fullReconciliation": false,
    "authoritative": true,
    "sharedDispatcher": false,
    "param0": "ad.bubu.lab",
    "groups": "",
    "threads": 1,
    "groupsList": [],
    "readOnly": false,
    "param3": "C27Nv4vjbIsI",
    "url": "https://soffid.bubu.lab:1760/",
    "param1": "dc=ad,dc=bubu,dc=lab",
    "param2": "ad\\Administrator",
    "timeStamp": "2021-04-07 09:31:59",
    "trusted": true,
    "meta": {
        "location": "http://soffid.pat.lab:8080/soffid/webservice/scim2/v1/System/389082",
        "resourceType": "System"
    },
    "schemas": [
        "urn:soffid:com.soffid.iam.api.System"
    ],
    "name": "ad",
    "passwordsDomainId": 27
}

Create

Request

POST http://<your-domain>/soffid/webservice/scim2/v1/System

JSON

{
    "schemas": [
        "urn:soffid:com.soffid.iam.api.System"
    ],
    "name": "SQLRRHH",
    "description": "SQL RRHH test",
    "className": "com.soffid.iam.sync.agent.SQLAgent2",
    "userTypes": "E,I",
    "passwordsDomain": "DEFAULT",
    "usersDomain": "DEFAULT"
}
Response 201 Created
{
    "accessControl": false,
    "usersDomain": "DEFAULT",
    "fullReconciliation": false,
    "authoritative": false,
    "description": "SQL RRHH test",
    "groups": "",
    "threads": 1,
    "className": "com.soffid.iam.sync.agent.SQLAgent2",
    "userTypes": "I,E",
    "groupsList": [],
    "readOnly": false,
    "passwordsDomain": "DEFAULT",
    "timeStamp": "2021-05-12 10:58:35",
    "rolebased": false,
    "trusted": false,
    "meta": {
        "location": "http://soffid.pat.lab:8080/soffid/webservice/scim2/v1/System/1977157",
        "resourceType": "System"
    },
    "schemas": [
        "urn:soffid:com.soffid.iam.api.System"
    ],
    "name": "SQLRRHH",
    "id": 1977157,
    "passwordsDomainId": 27,
    "tenant": "master",
    "generateTasksOnLoad": false
}

Update partial

Only attributes with changes will be updated, the other will maintain the same value.

Request
PATCH http://<your-domain>/soffid/webservice/scim2/v1/System/1977157

JSON

{
    "Operations": [
        {
            "op": "replace",
            "path": "param0",
            "value": "user"
        },
        {
            "op": "replace",
            "path": "param1",
            "value": "password"
        },
        {
            "op": "replace",
            "path": "param2",
            "value": "jdbc:mysql://localhost/personal"
        }
    ]
}
Response 200 OK
{
    "accessControl": false,
    "description": "SQL RRHH test",
    "className": "com.soffid.iam.sync.agent.SQLAgent2",
    "userTypes": "I,E",
    "passwordsDomain": "DEFAULT",
    "rolebased": false,
    "id": 1977157,
    "tenant": "master",
    "generateTasksOnLoad": false,
    "usersDomain": "DEFAULT",
    "fullReconciliation": false,
    "authoritative": false,
    "param0": "user",
    "groups": "",
    "threads": 1,
    "groupsList": [],
    "readOnly": false,
    "param1": "password",
    "param2": "jdbc:mysql://localhost/personal",
    "timeStamp": "2021-05-12 10:59:44",
    "trusted": false,
    "meta": {
        "location": "http://soffid.pat.lab:8080/soffid/webservice/scim2/v1/System/1977157",
        "resourceType": "System"
    },
    "schemas": [
        "urn:soffid:com.soffid.iam.api.System"
    ],
    "name": "SQLRRHH",
    "passwordsDomainId": 27
}

Update all

This operation replace all values in the System.

  • Note that the attribute id is required to confirm that the resource "...System/<id>" is the same that the JSON System.
  • Note that all the attributes not included in the request will be cleared in the System type and their data will be lost.
  • Note that not all the attributes are updatable, for example, tag meta, avoid these tags. For more information visit Resource data model page
Request
PUT http://<your-domain>/soffid/webservice/scim2/v1/System/1977157

JSON

{
    "schemas": [
        "urn:soffid:com.soffid.iam.api.System"
    ],
    "id": 1977157,
    "name": "SQLRRHH",
    "description": "SQL RRHH test",
    "className": "com.soffid.iam.sync.agent.SQLAgent2",
    "userTypes": "E,I",
    "passwordsDomain": "DEFAULT",
    "usersDomain": "DEFAULT"
}
Response 200 OK
{
    "accessControl": false,
    "usersDomain": "DEFAULT",
    "fullReconciliation": false,
    "authoritative": false,
    "description": "SQL RRHH test",
    "groups": "",
    "threads": 1,
    "className": "com.soffid.iam.sync.agent.SQLAgent2",
    "userTypes": "I,E",
    "groupsList": [],
    "readOnly": false,
    "passwordsDomain": "DEFAULT",
    "timeStamp": "2021-05-12 11:02:49",
    "rolebased": false,
    "trusted": false,
    "meta": {
        "location": "http://soffid.pat.lab:8080/soffid/webservice/scim2/v1/System/1977157",
        "resourceType": "System"
    },
    "schemas": [
        "urn:soffid:com.soffid.iam.api.System"
    ],
    "name": "SQLRRHH",
    "id": 1977157,
    "passwordsDomainId": 27,
    "tenant": "master",
    "generateTasksOnLoad": false
}

Delete

Please note after this delete, the System has to be created again to use it in the next examples.

Request
DELETE http://<your-omain>/soffid/webservice/scim2/v1/System/1977157
Response 204 No Content
204 No Content

Error response

For more information about error response visit https://bookstack.soffid.com/link/116#bkmrk-error-response