The Service client path is a three-step flow after the initial client-type selection. Use this path for:
- Fraud Prevention clients that call risk-evaluation APIs and SDKs
- Identity Verification clients that call APIs and SDKs
- Machine-to-machine (M2M) clients for server-to-server integrations, such as a backend that calls Mosaic identity management or authentication APIs
- Platform Administration clients that call Mosaic management APIs within their Mosaic application, for example to manage the Mosaic application and its clients
A service client operates within the scope of its Mosaic application. For administrative operations across Mosaic applications, use management apps.
Create a Mosaic application for the client and identify the API permissions your integration needs.
In Applications > your app > Clients, click + Add client and select Service client. Complete the three steps below.
| Field | Description |
|---|---|
| Client name | Client name to display when needed. |
| Client description | Short description of your client. |
| Field | Description |
|---|---|
| Authentication method | Enforces client authentication using a specific method:
|
| Enable token binding | Enabling this ensures that tokens are cryptographically bound to client certificate in the mTLS and private key JWT flows. |
| Token timeout configuration | Allows modifying default token expiration times:
|
| Additional settings > Resources | List of resources the client can explicitly request access to. This allows the client to manage dedicated access for a resource, including the token expiration. Before a resource can be added to a client, it must first be created from the Resources tab of the Applications page (see Resources). |
| Token exchange | Lets clients exchange user access tokens using OAuth 2.0 Token Exchange (RFC 8693). Both options are disabled by default.
See Token exchange. |
This last step lets you assign access to the service client by selecting an existing client role or creating one inline. Based on the scope of your backend integration, select:
- The CIAM role if your backend manages users, sessions, or credentials through identity management APIs, for example to sync users or revoke sessions.
- The Authentication Only role if your backend only orchestrates authentication flows, for example to run login methods or exchange journey codes.
- A custom role if your backend needs a specific set of permissions.
For details on the built-in roles, see Built-in roles.
If the service client is used only for Fraud Prevention or Identity Verification, you don't need to assign a client role. If the same backend also interacts with identity management, for example to read or update users, manage sessions, revoke credentials, or run authentication, assign the CIAM role. If it only orchestrates authentication flows, assign the Authentication Only role instead. Fraud Prevention and Identity Verification calls keep working with either role.
| Field | Description |
|---|---|
| Client roles | Assign one or more client roles to the client, including the built-in roles CIAM role and Authentication Only role. If you don't select a role, the client implicitly receives the App Admin role. |
| Client roles > + Add role | Opens the Add role flow:
|
Service clients don't require redirect URIs, SAML federation, supported prompt values, PKCE, or OIDC token-claim configuration.
Complete the wizard and save the client. Use its client ID and the configured authentication method to authorize your integration. See Retrieve client tokens.