SCIM 1.1 SDK for Java
Java HTML Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
scim-ldap Setting release version 1.8.21-SNAPSHOT May 24, 2018
.gitignore Add a .gitignore file. Apr 27, 2017
.travis.yml Remove oraclejdk7 and openjdk6 build targets from Travis CI config Jan 12, 2018 Fix typos in May 18, 2018 Add project contribution guidelines Apr 10, 2018

Maven Central Javadocs

SCIM 1.1 SDK for Java

This is UnboundID's open source Java SDK for the 1.1 version of the SCIM specification. Use it to create client applications that communicate with the UnboundID Data Store and any 3rd party SCIM 1.1-compliant service provider.

About SCIM 1.1

The System for Cross-domain Identity Management (SCIM) specification is designed to make managing user identities in cloud-based applications and services easier. The specification suite seeks to build upon experience with existing schemas and deployments, placing specific emphasis on simplicity of development and integration, while applying existing authentication, authorization, and privacy models. Its intent is to reduce the cost and complexity of user management operations by providing a common user schema and extension model, as well as binding documents to provide patterns for exchanging this schema using standard protocols. In essence: make it fast, cheap, and easy to move users in to, out of, and around the cloud.

See the SCIM 1.1 Core Schema and SCIM 1.1 Protocol specifications for more information.

Getting started

This SDK contains utilities for interacting with different types of SCIM Endpoints, Resources, Schemas, Attributes, Filters, and other objects. The SCIMService and SCIMEndpoint classes provide a starting point for connecting to a REST endpoint and issuing queries or invoking SCIM operations on existing resources.

Release notes can be found in Release-Notes.txt.


public class Client {
  public static void main (String[] args) {
    final URI uri = URI.create("");
    final SCIMService scimService = new SCIMService(uri, "bjensen", "password");

    // Core user resource CRUD operation example
    final SCIMEndpoint<UserResource> endpoint = scimService.getUserEndpoint();

    // Query for a specified user
    Resources<UserResource> resources =
            endpoint.query("userName eq \"bjensen\"");
    if (resources.getItemsPerPage() == 0) {
      System.out.println("User bjensen not found");
    UserResource user = resources.iterator().next();

    Name name = user.getName();
    if (name != null) {

    Collection<Entry<String>> phoneNumbers = user.getPhoneNumbers();
    if (phoneNumbers != null) {
      for (Entry<String> phoneNumber : phoneNumbers) {

Maven coordinates

Check Maven Central for the latest available version of the SCIM 1.1 SDK.


Reporting issues

Please report bug reports and enhancement requests through this project's issue tracker. See the contribution guidelines for more information.


See the LICENSE.txt file for more info.