siemens.platformcore.identitymanagement
Module siemens.platformcore.identitymanagement
API
![](https://bcentral-packageicons.azureedge.net/images/ballerinax_siemens.platformcore.identitymanagement_1.2.0.png)
ballerinax/siemens.platformcore.identitymanagement Ballerina library
Overview
This is a generated connector for Siemens Identity Management API v3.3.0 OpenAPI specification.
The Identity Management API provides a means form managing users, groups and OAuth clients.
The user and group management is based on SCIM (System for Cross-domain Identity Management).
Note: Unless stated otherwise the Identity Management APIs allow each caller only to act within the context of the tenant to which the caller belong's to.
Note2: UIAM stands for User Identity Access Management, since users and providers are separated in system. Therefore this API documentation is related to users generally.
Prerequisites
Before using this connector in your Ballerina application, complete the following:
- Create a Siemens MindSphere account.
- Obtain tokens by following this guide.
Clients![](/images/permalink.svg)
siemens.platformcore.identitymanagement: Client![](/images/permalink.svg)
This is a generated connector from Siemens identity management API OpenAPI Specification.
The Identity Management API provides a means form managing users, groups and OAuth clients.
The user and group management is based on SCIM (System for Cross-domain Identity Management).
Note: Unless stated otherwise the Identity Management APIs allow each caller only to act within the context of the tenant to which the caller belong's to.
Note2: UIAM stands for User Identity Access Management, since users and providers are separated in system. Therefore this API documentation is related to users generally.
Constructor![](/images/permalink.svg)
Gets invoked to initialize the connector
.
The connector initialization requires setting the API credentials.
Create a (Siemens MindSphere)(https://siemens.mindsphere.io/en) account and obtain tokens by following this guide
init (ClientConfig clientConfig, string serviceUrl)
- clientConfig ClientConfig - The configurations to be used when initializing the
connector
- serviceUrl string - URL of the target service
listGroups![](/images/permalink.svg)
function listGroups(string? filter, decimal count, decimal startIndex) returns ScimGroupSearchResults|error
List all the groups of a tenant.
Parameters
- count decimal (default 100.0) - Number of objects to be returned (defaults to 100)
- startIndex decimal (default 1.0) - The starting index of the search results when paginated. Index starts with 1.
Return Type
createGroup![](/images/permalink.svg)
function createGroup(ScimGroupPost payload) returns ScimGroup|error
Create group
Parameters
- payload ScimGroupPost - Details of group
getGroup![](/images/permalink.svg)
Get group
Parameters
- id string - Id of group
updateGroup![](/images/permalink.svg)
function updateGroup(string id, ScimGroupPost payload) returns ScimGroup|error
Update group.
deleteGroup![](/images/permalink.svg)
Delete group
Parameters
- id string - Id of the group
listGroupMembers![](/images/permalink.svg)
List members of a group
Parameters
- id string - Id of group
Return Type
- ScimGroupMemberList|error - OK
addMemberToGroup![](/images/permalink.svg)
function addMemberToGroup(string id, ScimGroupMember payload) returns ScimGroupMember|error
Add member to a group
Return Type
- ScimGroupMember|error - Created
removeMemberFromGroup![](/images/permalink.svg)
function removeMemberFromGroup(string id, string memberId) returns ScimGroupMember|error
Delete member from a group
Return Type
- ScimGroupMember|error - OK
list![](/images/permalink.svg)
function list(string? filter, string? attributes, string? sortBy, string sortOrder, decimal count, decimal startIndex, string? subtenant) returns ScimUserResponseSearchResults|error
List of users of a tenant.
Parameters
- filter string? (default ()) - "SCIM filter for searching see here. The available filter attributes are: id, username, email or emails.value, givenname, familyname, active, phonenumber, verified, origin, created or meta.created, lastmodified or meta.lastmodified, version or meta.version, groups.display. </br> <b>Note</b>: <i>groups.display</i> parameter cannot be used in complex filter expression and only <i>eq</i> operator is allowed eg. <i>filter=groups.display eq "MyGroupName"</i>
- attributes string? (default ()) - Comma separated list of attribute names to be returned, e.g., userName, name, meta. The attributes parameters does not support the parameter "subtenants".
- sortBy string? (default ()) - Sorting field name, like email or id
- sortOrder string (default "ascending") - Sort order, ascending/descending (defaults to ascending)
- count decimal (default 100.0) - Number of objects to be returned (defaults to 100)
- startIndex decimal (default 1.0) - The starting index of the search results when paginated. Index starts with 1 (defaults to 1).
- subtenant string? (default ()) - Filter for subtenant users
Return Type
create![](/images/permalink.svg)
function create(ScimUserPost payload) returns ScimUserPostResponse|error
Create user
Parameters
- payload ScimUserPost - Details of user
Return Type
- ScimUserPostResponse|error - Created
get![](/images/permalink.svg)
function get(string id) returns ScimUserResponse|error
Get user
Parameters
- id string - Id of user
Return Type
- ScimUserResponse|error - OK
update![](/images/permalink.svg)
function update(string id, ScimUserPut payload) returns ScimUserResponse|error
Update user
Return Type
- ScimUserResponse|error - OK
delete![](/images/permalink.svg)
function delete(string id) returns ScimUserResponse|error
Delete user
Parameters
- id string - Id of user
Return Type
- ScimUserResponse|error - OK
getUserRoles![](/images/permalink.svg)
Get list of groups starting with the prefix "mdsp:" in which the user is a member.
getProviderOAuthClient![](/images/permalink.svg)
function getProviderOAuthClient(string id) returns OAuthClient|error
Get OAuth client details
Parameters
- id string - Id of your client. It must be the same as the
client_id
claim in the bearer token.
Return Type
- OAuthClient|error - OK
updateSecret![](/images/permalink.svg)
function updateSecret(string id, ChangeSecretRequest payload, string? currentSecret) returns ChangedSecretResponse|error
Update OAuth client's secret
Parameters
- id string - Client identifier
- payload ChangeSecretRequest - Parameters of the new secret.
- currentSecret string? (default ()) - Required, unless your have
prv.oc.sec.admin
scope. It is used to make sure the requestor has permission to modify the given client's secret.
Return Type
- ChangedSecretResponse|error - Secret has been changed successfully.
createSecret![](/images/permalink.svg)
function createSecret(string id, ChangeSecretRequest payload, string? currentSecret) returns ChangedSecretResponse|error
Add new OAuth client's secret
Parameters
- id string - Client identifier
- payload ChangeSecretRequest - Parameters of the new secret.
- currentSecret string? (default ()) - Required, unless your have
prv.oc.sec.admin
scope. It is used to make sure the requestor has permission to modify the given client's secret.
Return Type
- ChangedSecretResponse|error - Secret has been added successfully.
deleteSecret![](/images/permalink.svg)
Delete old OAuth client's secret
Records![](/images/permalink.svg)
siemens.platformcore.identitymanagement: ChangedSecretResponse![](/images/permalink.svg)
Fields
- secret string? - the new secret.
siemens.platformcore.identitymanagement: ChangeSecretRequest![](/images/permalink.svg)
Fields
- newSecret string? - New secret for the client. Must meet the following requirements:
- alphabet is a-zA-Z0-9
- minimum 43 characters
- maximum 255 characters If parameter is missing, then new secret will be generated.
siemens.platformcore.identitymanagement: ClientConfig![](/images/permalink.svg)
Provides a set of configurations for controlling the behaviours when communicating with a remote HTTP endpoint.
Fields
- auth BearerTokenConfig|OAuth2RefreshTokenGrantConfig - Configurations related to client authentication
- httpVersion string(default "1.1") - The HTTP version understood by the client
- http1Settings ClientHttp1Settings(default {}) - Configurations related to HTTP/1.x protocol
- http2Settings ClientHttp2Settings(default {}) - Configurations related to HTTP/2 protocol
- timeout decimal(default 60) - The maximum time to wait (in seconds) for a response before closing the connection
- forwarded string(default "disable") - The choice of setting
forwarded
/x-forwarded
header
- followRedirects FollowRedirects?(default ()) - Configurations associated with Redirection
- poolConfig PoolConfiguration?(default ()) - Configurations associated with request pooling
- cache CacheConfig(default {}) - HTTP caching related configurations
- compression Compression(default http:COMPRESSION_AUTO) - Specifies the way of handling compression (
accept-encoding
) header
- circuitBreaker CircuitBreakerConfig?(default ()) - Configurations associated with the behaviour of the Circuit Breaker
- retryConfig RetryConfig?(default ()) - Configurations associated with retrying
- cookieConfig CookieConfig?(default ()) - Configurations associated with cookies
- responseLimits ResponseLimitConfigs(default {}) - Configurations associated with inbound response size limits
- secureSocket ClientSecureSocket?(default ()) - SSL/TLS-related options
siemens.platformcore.identitymanagement: Email![](/images/permalink.svg)
Fields
- value string - The email address.
siemens.platformcore.identitymanagement: Group![](/images/permalink.svg)
Fields
- display string -
- 'type string? -
- value string? -
siemens.platformcore.identitymanagement: NameRequest![](/images/permalink.svg)
Name request
Fields
- familyName string - Family name
- givenName string - Given name
siemens.platformcore.identitymanagement: NameResponse![](/images/permalink.svg)
Fields
- familyName string? -
- givenName string? -
siemens.platformcore.identitymanagement: OAuthClient![](/images/permalink.svg)
Fields
- clientId string? - Identifier of the client, unique within the identity zone
- authorizedGrantTypes string[]? - List of grant types that can be used to obtain a token with this client. Can include authorization_code, password, implicit, and/or client_credentials.
- redirectUri string[]? -
- name string? - A human readable name for the client
- authorities string[]? - Scopes which the client is able to grant when creating a client. Defaults to "uaa.none". E.g. with client_credentials as authorized_grant_types, the client will get the scopes listed here.
- scopes string[]? - Scopes allowed for the client. Defaults to "uaa.none". E.g. with password as authorized_grant_types the user can get the intersection of his scopes and the scopes listed here.
- lastModified int? - Epoch (milliseconds) of the moment the client information was last altered. Not affected by secret changes.
- secretCreationTimes ClientSecretCreationTimes? - Epoch (milliseconds) of the moment the client secret was introduced. Array contains creation times in ascending order. Most of the time it should contain only one item, except during secret rotation - in that case, two items will be there.
siemens.platformcore.identitymanagement: ScimGroup![](/images/permalink.svg)
Fields
- id string? - The globally unique group ID
- description string? - Human readable description of the group, displayed e.g. when approving scopes
- displayName string? - The identifier specified upon creation of the group, unique within the identity zone
- members ScimGroupMember[]? -
- meta ScimMeta? -
siemens.platformcore.identitymanagement: ScimGroupMember![](/images/permalink.svg)
Fields
- 'type string - Either "USER" or "GROUP"
- value string - Globally unique identifier of the member, either a user ID or another group ID
siemens.platformcore.identitymanagement: ScimGroupPost![](/images/permalink.svg)
Fields
- description string? - Human readable description of the group, displayed e.g. when approving scopes
- displayName string - The identifier specified upon creation of the group, unique within the identity zone
- members ScimGroupMember[]? - If given members array is empty, all members will be deleted.
siemens.platformcore.identitymanagement: ScimGroupSearchResults![](/images/permalink.svg)
Fields
- itemsPerPage int? -
- resources ScimGroup[]? -
- schemas string[]? -
- startIndex int? -
- totalResults int? -
siemens.platformcore.identitymanagement: ScimMeta![](/images/permalink.svg)
Fields
- created string? -
- lastModified string? -
- 'version int? -
siemens.platformcore.identitymanagement: ScimUserPost![](/images/permalink.svg)
Fields
- active boolean? - False means a soft delete.
- name NameRequest? - Name request
- userName UserName - The e-mail address of the user.
- subtenants SubtenantId[]? -
siemens.platformcore.identitymanagement: ScimUserPostResponse![](/images/permalink.svg)
Fields
- schemas string[]? -
- id string? -
- userName string? - The e-mail address of the user.
- name NameResponse? -
- groups Group[]? -
- emails Email[]? -
- active boolean? -
- meta ScimMeta? -
- subtenants SubtenantId[]? -
siemens.platformcore.identitymanagement: ScimUserPut![](/images/permalink.svg)
Name object can be null. Example: "name": {}. Name attributes are fetched from WebKey during authentication.
Fields
- active boolean? - False means a soft delete.
- name NameRequest - Name request
- userName UserName - The e-mail address of the user.
- emails Email[] - An array of emails
- subtenants SubtenantId[]? - An array of subtenants.
siemens.platformcore.identitymanagement: ScimUserResponse![](/images/permalink.svg)
Fields
- schemas string[]? -
- id string? -
- userName string? - The e-mail address of the user.
- name NameResponse? -
- groups Group[]? -
- emails Email[]? -
- active boolean? -
- meta ScimMeta? -
- subtenants SubtenantId[]? -
siemens.platformcore.identitymanagement: ScimUserResponseSearchResults![](/images/permalink.svg)
Fields
- itemsPerPage int? -
- resources ScimUserResponse[]? -
- schemas string[]? -
- startIndex int? -
- totalResults int? -
siemens.platformcore.identitymanagement: SubtenantId![](/images/permalink.svg)
Fields
- id string - The ID / name of the subtenant.
String types![](/images/permalink.svg)
siemens.platformcore.identitymanagement: UserName![](/images/permalink.svg)
UserName
The e-mail address of the user.
Import
import ballerinax/siemens.platformcore.identitymanagement;
Metadata
Released date: over 2 years ago
Version: 1.2.0
License: Apache-2.0
Compatibility
Platform: any
Ballerina version: 2201.0.0
GraalVM compatible: Yes
Pull count
Total: 0
Current verison: 0
Weekly downloads
Keywords
IT Operations/Security & Identity Tools
Cost/Freemium
Contributors
Dependencies