Skip to main content

SCIM Application examples

Operations

List all

List all applications.

Request
GET http://<your-domain>/webservice/scim2/v1/Application
Response 200 OK
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 2,
    "startIndex": 1,
    "Resources": [
        {
            "parent": "Operation/Business 2",
            "relativeName": "SOFFID",
            "database": "",
            "bpmEnabled": true,
            "meta": {
                "location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application/41",
                "links": {
                    "children": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application?filter=parent.name+eq+'Operation/Business 2/SOFFID'",
                    "roles": "http://soffid.pat.lab:8080/webservice/scim2/v1/Role?filter=informationSystemName+eq+'Operation/Business 2/SOFFID'"
                },
                "resourceType": "Application"
            },
            "schemas": [
                "urn:soffid:com.soffid.iam.api.Application"
            ],
            "name": "Operation/Business 2/SOFFID",
            "description": "SOFFID Identity Manager",
            "singleRole": false,
            "attributes": {},
            "id": 41,
            "type": "application"
        },
        {
            "parent": "Operation/Business process",
            "relativeName": "ad",
            "database": "ad",
            "bpmEnabled": true,
            "meta": {
                "location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application/391459",
                "links": {
                    "children": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application?filter=parent.name+eq+'Operation/Business process/ad'",
                    "roles": "http://soffid.pat.lab:8080/webservice/scim2/v1/Role?filter=informationSystemName+eq+'Operation/Business process/ad'"
                },
                "resourceType": "Application"
            },
            "schemas": [
                "urn:soffid:com.soffid.iam.api.Application"
            ],
            "name": "Operation/Business process/ad",
            "description": "Active Directory",
            "singleRole": false,
            "attributes": {},
            "id": 391459,
            "type": "application"
        }
    ]
}

List by filter

List all application with a filter expression. It is allowed to use pagination and sort the information.

Request

For instance, filter all applications that contain "SOFFID" on field description

GET http://<your-domain>/soffid/webservice/scim2/v1/Application?filter=description co SOFFID
Response 200 OK
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 2,
    "startIndex": 1,
    "Resources": [
        {
            "parent": "Operation/Business 2",
            "relativeName": "SOFFID",
            "database": "",
            "bpmEnabled": true,
            "meta": {
                "location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application/41",
                "links": {
                    "children": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application?filter=parent.name+eq+'Operation/Business 2/SOFFID'",
                    "roles": "http://soffid.pat.lab:8080/webservice/scim2/v1/Role?filter=informationSystemName+eq+'Operation/Business 2/SOFFID'"
                },
                "resourceType": "Application"
            },
            "schemas": [
                "urn:soffid:com.soffid.iam.api.Application"
            ],
            "name": "Operation/Business 2/SOFFID",
            "description": "SOFFID Identity Manager",
            "singleRole": false,
            "attributes": {},
            "id": 41,
            "type": "application"
        },
        {
            "parent": "Operation/Business 2",
            "relativeName": "iam.soffid.com",
            "database": "iam.soffid.com",
            "bpmEnabled": false,
            "meta": {
                "location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application/1836136",
                "links": {
                    "children": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application?filter=parent.name+eq+'Operation/Business 2/iam.soffid.com'",
                    "roles": "http://soffid.pat.lab:8080/webservice/scim2/v1/Role?filter=informationSystemName+eq+'Operation/Business 2/iam.soffid.com'"
                },
                "resourceType": "Application"
            },
            "schemas": [
                "urn:soffid:com.soffid.iam.api.Application"
            ],
            "name": "Operation/Business 2/iam.soffid.com",
            "description": "Discovered host iam.soffid.com",
            "singleRole": false,
            "attributes": {},
            "id": 1836136,
            "type": "application"
        }
    ]
}

Query by id

Retrieve by its id (primary key). 

Request
GET http://<your-domain>/soffid/webservice/scim2/v1/Application/391459
Response 200 OK
{
    "parent": "Operation/Business process",
    "relativeName": "ad",
    "database": "ad",
    "bpmEnabled": true,
    "meta": {
        "location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application/391459",
        "links": {
            "children": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application?filter=parent.name+eq+'Operation/Business process/ad'",
            "roles": "http://soffid.pat.lab:8080/webservice/scim2/v1/Role?filter=informationSystemName+eq+'Operation/Business process/ad'"
        },
        "resourceType": "Application"
    },
    "schemas": [
        "urn:soffid:com.soffid.iam.api.Application"
    ],
    "name": "Operation/Business process/ad",
    "description": "Active Directory",
    "singleRole": false,
    "attributes": {},
    "id": 391459,
    "type": "application"
}

Create

One may create a role. This role will be used for the following examples.

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

JSON

{
    "schemas": [
        "urn:soffid:com.soffid.iam.api.Application"
    ],
    "parent": "Operation/Business 2",
    "relativeName": "appBilling",
    "database": "",
    "bpmEnabled": false,
    "name": "Operation/Business 2/App Billing",
    "description": "Billing application",
    "singleRole": false,
    "attributes": {},
    "type": "application"
}
Response 201 Created
{
    "parent": "Operation/Business 2",
    "relativeName": "App Billing",
    "database": "",
    "bpmEnabled": false,
    "meta": {
        "location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application/1976515",
        "resourceType": "Application"
    },
    "schemas": [
        "urn:soffid:com.soffid.iam.api.Application"
    ],
    "name": "Operation/Business 2/App Billing",
    "description": "Billing application",
    "singleRole": false,
    "attributes": {},
    "id": 1976515,
    "type": "application"
}

Update partial

Update only the attributes with changes, only these attributes will be updated in the user, the rest will maintain the same value.

Request
PATCH http://<your-domain>/soffid/webservice/scim2/v1/Application/1976515

JSON

{
    "schemas": [
        "urn:soffid:com.soffid.iam.api.Application"
    ],
    "Operations": [
        {
            "op": "replace",
            "path": "parent",
            "value": "Operation/Business process"
        },
        {
            "op": "replace",
            "path": "name",
            "value": "Operation/Business process/App Billing"
        },
        {
            "op": "replace",
            "path": "database",
            "value": "DDBBBilling"
        }
    ]
}
Response 200 OK
{
    "parent": "Operation/Business process",
    "relativeName": "App Billing",
    "database": "DDBBBilling",
    "bpmEnabled": false,
    "meta": {
        "location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application/1976515",
        "links": {
            "children": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application?filter=parent.name+eq+'Operation/Business process/App Billing'",
            "roles": "http://soffid.pat.lab:8080/webservice/scim2/v1/Role?filter=informationSystemName+eq+'Operation/Business process/App Billing'"
        },
        "resourceType": "Application"
    },
    "schemas": [
        "urn:soffid:com.soffid.iam.api.Application"
    ],
    "name": "Operation/Business process/App Billing",
    "description": "Billing application",
    "singleRole": false,
    "attributes": {},
    "id": 1976515,
    "type": "application"
}

Update all

This operation replaces all values in the user. For example we will update nationalID.

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

JSON

{
    "schemas": [
        "urn:soffid:com.soffid.iam.api.Application"
    ],
    "id": 1976515,
    "parent": "Operation/Business 2",
    "relativeName": "appBilling",
    "database": "",
    "bpmEnabled": false,
    "name": "Operation/Business 2/App Billing",
    "description": "Billing application",
    "singleRole": false,
    "attributes": {},
    "type": "application"
}
Response 200 OK
{
    "parent": "Operation/Business 2",
    "relativeName": "App Billing",
    "database": "",
    "bpmEnabled": false,
    "meta": {
        "location": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application/1976515",
        "links": {
            "children": "http://soffid.pat.lab:8080/webservice/scim2/v1/Application?filter=parent.name+eq+'Operation/Business 2/App Billing'",
            "roles": "http://soffid.pat.lab:8080/webservice/scim2/v1/Role?filter=informationSystemName+eq+'Operation/Business 2/App Billing'"
        },
        "resourceType": "Application"
    },
    "schemas": [
        "urn:soffid:com.soffid.iam.api.Application"
    ],
    "name": "Operation/Business 2/App Billing",
    "description": "Billing application",
    "singleRole": false,
    "attributes": {},
    "id": 1976515,
    "type": "application"
}

Delete

Delete a user and its relations (groups, accounts, attributes, secondary groups, etc).

  • Please note that after this delete action, you will need to create again the user to use it in the next examples.
Request
DELETE http://<your-domain>/webservice/scim2/v1/Application/2236428
Response 204 No Content
204 No Content

Error response

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