diff --git a/api-guides/profile/identity-search.html b/api-guides/profile/identity-search.html index c78b271b7..baa1aa85d 100644 --- a/api-guides/profile/identity-search.html +++ b/api-guides/profile/identity-search.html @@ -5,7 +5,7 @@ - SAP Concur Developer Center | Identity .search Implementation Guide + SAP Concur Developer Center | Identity v4.1 Search Guide @@ -494,19 +494,22 @@ class="col-md-8 markdown-body"> -

Identity .search Implementation Guide

+

Identity v4.1 Search Guide

-

The Identity .search API is built to enable clients to filter based on User Identity attributes. Filters allow logical and grouping operators to refine search results.

+

The Identity v4.1 Search API is built to enable clients to filter based on User Identity attributes. +This guide presents a set of detailed examples, advanced functionalities, and limitations of v4.1 Search. +Search is an endpoint that enables callers to retrieve a subset of users matching conditions as parameters.

- + -

This section outlines popular use cases and assumes the caller has been authenticated within a company resource via Company JWT.

+

This section outlines popular use cases and assumes the caller has been authenticated within a company resource via Company JWT. +The following examples use all available parameters to demonstrate the functionality of this API.

Authentication (Required)

To use Identity v4.1 APIs, the appropriate scopes must be assigned to the requesting authentication application. Contact your SAP Concur account representative to update your Company JWT scopes to access the identity endpoints. After scopes have been granted to your authentication application, please verify the scopes. If you have questions regarding granting scopes, please contact your SAP Concur account representative.

-

Search for user by email address

+

Search for a user by email address

Retrieve the UUID of a User Identity Profile based on email address.

@@ -725,33 +728,13 @@

Response

"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": { "startDate": "2013-01-01" } - }, + } ] } -

Schemas

-

We define a schema, as an outline of how the caller may interact with the API.

- -

The schemas parameter is required for all POST requests.

- - - - - - - - - - - - - - -
NamePath
SearchRequesturn:ietf:params:scim:api:messages:concur:2.0:SearchRequest
- -

Search Request

-

This API implements some of the functionality defined in RFC 7644 § 3.4.3. The SearchRequest schema outlines the supported parameters that may be used when calling .search endpoint.

+

Search Parameters

+

This API implements the functionality defined in RFC 7644 § 3.4.3.

@@ -802,6 +785,12 @@

Search Request

+

Schemas

+

The schemas parameter is required and may not be empty. The required format:

+ +
"schemas": [ "urn:ietf:params:scim:api:messages:concur:2.0:SearchRequest" ]
+
+

Attributes / ExcludedAttributes

Adding attributes and/or excludedAttributes to a query remove attributes from each user-object in the response. The attributes parameter returns only what is requested while the excludedAttributes parameter returns everything except what is requested.

@@ -1355,9 +1344,10 @@

Precedence Examples < -

Request/Response Examples

+

Filtering Examples

-

Retrieves a unique users based on search criteria.

+

The filter parameter implemented all the functionality described in Filtering as a string. +This section contributes a set of more detailed examples, limitations, and variations of expressions.

Filter is Optional

Company JWT contains companyId, and used to retrieve all users within Company.

@@ -1452,52 +1442,6 @@

Response

} -

Filter By Active Field

-

Return the first 1000 users who have active (field) set to true (value)

- -

Request

-
POST https://us.api.concursolutions.com/profile/identity/v4.1/Users/.search
-Accept: application/json
-Authorization: BEARER {token}
-
-
{
-  "schemas": [ "urn:ietf:params:scim:api:messages:concur:2.0:SearchRequest" ],
-  "filter": "active eq true",
-  "count": 1000
-} 
-
- -

Response

- -
200 OK
-Content-Type: application/json
-
- -
{
-  "schemas": [
-    "urn:ietf:params:scim:api:messages:2.0:ListResponse" 
-  ],
-  "totalResults": 1234,
-  "startIndex": 1,
-  "itemsPerPage": 100,
-  "Resources": [
-    {
-      "id": "uuid-v4-user-1",
-      "active": "true"
-    },
-    {
-      "id": "uuid-v4-user-2",
-      "active": "false"
-    },
-    ...
-    {
-      "id": "uuid-v4-user-100",
-      "active": "true"
-    }
-  ]
-}
-
-

Filter By Multi-Valued Attributes

emails and addresses are multi-valued attributes.

@@ -1556,22 +1500,18 @@

Filter By Multi-Valued Attributes

Limitations -
    -
  1. not and ne are restricted within Complex Groupings. -
    "filter": "emails[not(type eq \"work\")]"
    -
    -
    "filter": "addresses[type ne \"work\"]"
    -
    -
  2. -
  3. or may not be nested within Complex Groupings.
  4. -
+

Filters may not contain not and ne within Complex Groupings.

+
"filter": "emails[not(type eq \"work\")]"
+
+
"filter": "addresses[type ne \"work\"]"
+
+ +

Filters may not nest or inside parentheses within Complex Groupings.

"filter": "emails[value ew \"@sap.com\" and (type eq \"home\" or type eq \"work\")]"
 
-
    -
  1. Duplicate attributes may not be conjoined with and inside of Complex Grouping.
  2. -
+

Duplicate attributes may not be conjoined with and inside of Complex Grouping.

"filter": "emails[value ew \"@concur.com\" and value ew \"@sap.com\"]"
 
diff --git a/api-reference/profile/v4.1.identity.html b/api-reference/profile/v4.1.identity.html index 869bf215b..2d2ce8e65 100644 --- a/api-reference/profile/v4.1.identity.html +++ b/api-reference/profile/v4.1.identity.html @@ -1167,7 +1167,7 @@

Identity v4.1

-

The Identity v4.1 service is designed to create, update, and read user’s core identity profile. This service includes additional search functionality enables clients to filter based on User Identity attributes.

+

The Identity v4.1 service is built to create, update, and read user’s core identity profile. This service includes advanced search functionality that enable clients to filter based on user identity attributes.

Limitations

@@ -1332,7 +1332,7 @@

Examples

Request

-
GET https://us.api.concursolutions.com/profile/identity/v4.1/Users/
+
GET https://us.api.concursolutions.com/profile/identity/v4.1/Users
 Accept: application/json
 Authorization: BEARER {token}
 
@@ -1359,9 +1359,11 @@

Response

}
-

Filter For Users

+

Search For Users

-

/Users/.search enables clients to filter based on User Identity attributes. Filters allow logical and grouping operators to refine search results.

+

Retrieve matching User Identity Profiles based on one or more expressions. +Expressions may be passed through the filter parameter that retrieves a subset of compliant Users. +The filter parameter supports all data types inside of the User schema including: booleans, strings, numbers, dates, and lists.

Scopes

@@ -1384,7 +1386,7 @@

Parameters

Payloads

@@ -2975,7 +2977,7 @@

Search Filters

+

Search Parameters

diff --git a/feed.xml b/feed.xml index 931756a14..63a452b3c 100644 --- a/feed.xml +++ b/feed.xml @@ -5,8 +5,8 @@ Concur docs provides comprehensive information on working with the Concur platformhttps://preview.developer.concur.com/ - Fri, 21 Jul 2023 16:25:12 +0000 - Fri, 21 Jul 2023 16:25:12 +0000 + Tue, 25 Jul 2023 21:01:30 +0000 + Tue, 25 Jul 2023 21:01:30 +0000 Jekyll v4.1.1