Improvements for REST API version 4.3

This document describes differences between of REST APIs in version 4.2 and version 4.3.

The differences are classified as follows:

A: Additional items

M: Modified items

D: Deleted items

ClaimDefinitions


GET (/api/rest/v2/claimdefinitions)

Scope Item Description
A Paging Support paging function in order not to get all claim types at once when calling the API

POST (/api/rest/v2/claimdefinitions)

Scope Item Description
D avoidUpsize Remove advoidUpsize parameter from Model Schema of FreeClaimDefinition.
Because a free claim is not supported this parameter. This parameter is used for discrete claims for role and security purposes

PUT (/api/rest/v2/claimdefinitions)

Scope Item Description
D avoidUpsize Remove advoidUpsize parameter from Model Schema of FreeClaimDefinition.
Because a free claim is not supported this parameter. This parameter is used for discrete claims for role and security purposes

POST (/api/rest/v2/claimdefinitions/.search)

Scope Item Description
A Paging Support paging function in order not to get all claim types at once when calling the API
D avoidUpsize Remove advoidUpsize parameter from Model Schema of FreeClaimDefinition.
Because a free claim is not supported this parameter. This parameter is used for discrete claims for role and security purposes

GET (/api/rest/v2/claimdefinitions/{claimType})

Scope Item Description
D avoidUpsize Remove advoidUpsize parameter from Model Schema of FreeClaimDefinition.
Because a free claim is not supported this parameter. This parameter is used for discrete claims for role and security purposes

GET (/api/rest/v2/claimdefinitions/{id})

Scope Item Description
D avoidUpsize Remove advoidUpsize parameter from Model Schema of FreeClaimDefinition.
Because a free claim is not supported this parameter. This parameter is used for discrete claims for role and security purposes

POST (/api/rest/v2/claimdefinitions/many)

Scope Item Description
D avoidUpsize Remove advoidUpsize parameter from Model Schema of FreeClaimDefinition.
Because a free claim is not supported this parameter. This parameter is used for discrete claims for role and security purposes

PUT (/api/rest/v2/claimdefinitions/many)

Scope Item Description
D avoidUpsize Remove advoidUpsize parameter from Model Schema of FreeClaimDefinition.
Because a free claim is not supported this parameter. This parameter is used for discrete claims for role and security purposes

 

Connections


GET (/api/rest/v2/connections)

Scope Item Description
A Paging Support paging function in order not to get all connections at once when calling the API

POST (/api/rest/v2/connections)

Scope Item Description
A Metadata Support updating a connection using encoded base64 metadata.
Since SAML 2.0 metadata is XML documents that may not only break JSON format but may also contain characters such as <, > which are identified by .NET request validators as security threats, Safewhere*Identify requires that the metadata parameter must be base64-encoded from version 4.3.

PUT (/api/rest/v2/connections)

Scope Item Description
A 2nd factor Support updating a connection which has the same type 2nd factor authentication connection with the 1st one
A Metadata Support updating a connection using encoded base64 metadata.
Since SAML 2.0 metadata is XML documents that may not only break JSON format but may also contain characters such as <, > which are identified by .NET request validators as security threats, Safewhere*Identify requires that the metadata parameter must be base64-encoded from version 4.3.

 

Transformations


GET (/api/rest/v2/transformations)

Scope Item Description
A Paging Support paging function in order not to get all transformations at once when calling the API

 

Users


GET (/api/rest/v2/users)

Scope Item Description
A Paging Support paging function in order not to get all users at once when calling the API

POST (/api/rest/v2/users)

Scope Item Description
A activationCodes Add validation for activationCodes.
Because a value of activationCodes must not be less than 6 and this validation is not implemented.
A emails.value Add validation for emails.value.
Because a value of emails.value must not be duplicated and this validation is not implemented.
A groups.value Add validation for groups.value.
Because value of groups.value must be a name of exist group and this validation is not implemented.
M Discrete option claim value Modify content of error message when posting a user with discrete option claim value is not found. Because the content in 4.2 is inappropriate.In version 4.2: “Sorry, the claim type does not exist”
In version 4.3: “Sorry, the claim value of claim type does not exist.”
M EnterpriseUser
MappingHints
ExtendedAttributes
Modify Model Schema as below:
– Change EnterpriseUser to urn:scim:schemas:extension:enterprise:1.0.
– Change MappingHints to urn:scim:schemas:extension:mapping:hint:1.0.
– Change ExtendedAttributes to urn:scim:schemas:extension:safewhere:identify:1.0In 4.2, because Model Schema is not JSon format. So a user cannot be created with a specified organization or specified claim types

PUT (/api/rest/v2/users)

Scope Item Description
A activationCodes Add validation for activationCodes.
Because a value of activationCodes must not be less than 6 and this validation is not implemented.
A emails.value Add validation for emails.value.
Because a value of emails.value must not be duplicated and this validation is not implemented.
A groups.value Add validation for groups.value.
Because value of groups.value must be a name of exist group and this validation is not implemented.
M Discrete option claim value Modify content of error message when updating a user with discrete option claim value is not found. Because the content in 4.2 is inappropriate.In version 4.2: “Sorry, the claim type does not exist”
In version 4.3: “Sorry, the claim value of claim type does not exist.”
M EnterpriseUser
MappingHints
ExtendedAttributes
Modify Model Schema as below:
– Change EnterpriseUser to urn:scim:schemas:extension:enterprise:1.0.
– Change MappingHints to urn:scim:schemas:extension:mapping:hint:1.0.
– Change ExtendedAttributes to urn:scim:schemas:extension:safewhere:identify:1.0In 4.2, because Model Schema is not JSon format. So a user cannot be created with a specified organization or specified claim types

POST (/api/rest/v2/users/.search)

Scope Item Description
A Paging Support paging function in order not to get all users at once when calling the API

PATCH (/api/rest/v2/users/{userId})

Scope Item Description
A activationCodes Add validation for activationCodes.
Because a value of activationCodes must not be less than 6 and this validation is not implemented.
A emails.value Add validation for emails.value.
Because a value of emails.value must not be duplicated and this validation is not implemented.
A groups.value Add validation for groups.value.
Because value of groups.value must be a name of exist group and this validation is not implemented.
M Discrete option claim value Modify content of error message when adding/ updating value of discrete option claim type with discrete option claim value is not found. Because the content in 4.2 is inappropriate.In version 4.2: “Sorry, the claim type does not exist”
In version 4.3: “Sorry, the claim value of claim type does not exist.”
M EnterpriseUser
MappingHints
ExtendedAttributes
Modify Model Schema as below:
– Change EnterpriseUser to urn:scim:schemas:extension:enterprise:1.0.
– Change MappingHints to urn:scim:schemas:extension:mapping:hint:1.0.
– Change ExtendedAttributes to urn:scim:schemas:extension:safewhere:identify:1.0In 4.2, because Model Schema is not JSon format. So a user cannot be created with a specified organization or specified claim types
Was this helpful ?Good Somewhat Bad