Actions
The ballerinax/microsoft.dynamics365.finance.users package exposes the following clients:
| Client | Purpose |
|---|---|
Client | Provides CRUD access to Microsoft Dynamics 365 Finance user, security, and access-control entities via the Users OData API. |
Client
Provides CRUD access to Microsoft Dynamics 365 Finance user, security, and access-control entities via the Users OData API.
Configuration
| Field | Type | Default | Description |
|---|---|---|---|
auth | OAuth2ClientCredentialsGrantConfig | Required | OAuth2 client credentials grant configuration — tokenUrl, clientId, clientSecret, and optional scopes. |
httpVersion | http:HttpVersion | http:HTTP_2_0 | HTTP protocol version to use for outbound requests. |
http1Settings | http:ClientHttp1Settings | {} | HTTP/1.x client settings including keep-alive, chunking, and proxy configuration. |
secureSocket | http:ClientSecureSocket | () | SSL/TLS configuration for secure connections. |
proxy | http:ProxyConfig | () | Proxy server configuration. |
Initializing the client
import ballerinax/microsoft.dynamics365.finance.users;
configurable string tokenUrl = ?;
configurable string clientId = ?;
configurable string clientSecret = ?;
configurable string serviceUrl = ?;
users:Client usersClient = check new (
{
auth: {
tokenUrl,
clientId,
clientSecret
}
},
serviceUrl
);
Operations
Channel Users
listChannelUsers
Lists channel users, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListChannelUsersQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:ChannelUsersCollection|error
Sample code:
users:ChannelUsersCollection result = check usersClient->listChannelUsers(
queries = {filter: "dataAreaId eq 'USMF'", top: 20}
);
createChannelUsers
Creates a channel user.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:ChannelUser | Yes | The channel user to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:ChannelUser|error
Sample code:
users:ChannelUser created = check usersClient->createChannelUsers({
dataAreaId: "USMF",
operatingUnitNumber: "001",
user: "alice.nguyen"
});
getChannelUsers
Reads a specific channel user by its composite key.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
operatingUnitNumber | string | Yes | The operating unit number key field. |
user | string | Yes | The user key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetChannelUsersQueries | No | OData query parameters: $expand, $select. |
Returns: users:ChannelUser|error
Sample code:
users:ChannelUser channelUser = check usersClient->getChannelUsers("USMF", "001", "alice.nguyen");
deleteChannelUsers
Deletes a specific channel user.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
operatingUnitNumber | string | Yes | The operating unit number key field. |
user | string | Yes | The user key field. |
headers | DeleteChannelUsersHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteChannelUsers("USMF", "001", "alice.nguyen", {ifMatch: eTag});
updateChannelUsers
Updates a specific channel user.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
operatingUnitNumber | string | Yes | The operating unit number key field. |
user | string | Yes | The user key field. |
payload | users:ChannelUser | Yes | Fields to update. |
headers | UpdateChannelUsersHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:ChannelUser|error
Sample code:
users:ChannelUser updated = check usersClient->updateChannelUsers(
"USMF", "001", "alice.nguyen",
{operatingUnitNumber: "002"},
{ifMatch: eTag}
);
External Roles
listExternalRoles
Lists external role mappings, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListExternalRolesQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:ExternalRolesCollection|error
Sample code:
users:ExternalRolesCollection result = check usersClient->listExternalRoles(
queries = {filter: "Type eq 'Customer'"}
);
createExternalRoles
Creates an external role mapping for a customer, vendor, or other external party.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:ExternalRole | Yes | The external role to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:ExternalRole|error
Sample code:
users:ExternalRole created = check usersClient->createExternalRoles({
role: "CUST-EXT-001",
'type: "Customer"
});
getExternalRoles
Reads a specific external role mapping by its composite key.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
role | string | Yes | The role key field. |
'type | string | Yes | The entity type identifier — one of Customer, Vendor, BusinessRelation, ProspectiveVendor, Worker. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetExternalRolesQueries | No | OData query parameters: $expand, $select. |
Returns: users:ExternalRole|error
Sample code:
users:ExternalRole role = check usersClient->getExternalRoles("CUST-EXT-001", "Customer");
deleteExternalRoles
Deletes a specific external role mapping.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
role | string | Yes | The role key field. |
'type | string | Yes | The entity type identifier. |
headers | DeleteExternalRolesHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteExternalRoles("CUST-EXT-001", "Customer", {ifMatch: eTag});
updateExternalRoles
Updates a specific external role mapping.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
role | string | Yes | The role key field. |
'type | string | Yes | The entity type identifier. |
payload | users:ExternalRole | Yes | Fields to update. |
headers | UpdateExternalRolesHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:ExternalRole|error
ExternalRole has only two fields — role and 'type — and both together form the entity's key. OData entities reject updates that change key fields, so updateExternalRoles cannot be used to remap a role from one type to another (for example, from "Customer" to "Vendor"). To change the mapping, delete the existing external role and create a new one with the desired role/'type combination instead.
Sample code:
// updateExternalRoles cannot change the role/type mapping itself (both are key fields).
// To remap "CUST-EXT-001" from "Customer" to "Vendor", delete and recreate the record:
check usersClient->deleteExternalRoles("CUST-EXT-001", "Customer", {ifMatch: eTag});
users:ExternalRole created = check usersClient->createExternalRoles({
role: "CUST-EXT-001",
'type: "Vendor"
});
Groups
listGroups
Lists deferrals groups, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListGroupsQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:GroupsCollection|error
Sample code:
users:GroupsCollection result = check usersClient->listGroups(
queries = {filter: "dataAreaId eq 'USMF'"}
);
createGroups
Creates a deferrals group.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:Group | Yes | The group to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:Group|error
Sample code:
users:Group created = check usersClient->createGroups({
dataAreaId: "USMF",
deferralsGroup: "DEF-STD",
name: "Standard deferrals",
postingProfile: "DEF"
});
getGroups
Reads a specific deferrals group by its composite key.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
deferralsGroup | string | Yes | The deferrals group key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetGroupsQueries | No | OData query parameters: $expand, $select. |
Returns: users:Group|error
Sample code:
users:Group group = check usersClient->getGroups("USMF", "DEF-STD");
deleteGroups
Deletes a specific deferrals group.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
deferralsGroup | string | Yes | The deferrals group key field. |
headers | DeleteGroupsHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteGroups("USMF", "DEF-STD", {ifMatch: eTag});
updateGroups
Updates a specific deferrals group.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
deferralsGroup | string | Yes | The deferrals group key field. |
payload | users:Group | Yes | Fields to update. |
headers | UpdateGroupsHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:Group|error
Sample code:
users:Group updated = check usersClient->updateGroups(
"USMF", "DEF-STD",
{name: "Updated standard deferrals group"},
{ifMatch: eTag}
);
Security Roles
listSecurityRoles
Lists security roles, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListSecurityRolesQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:SecurityRolesCollection|error
Sample code:
users:SecurityRolesCollection result = check usersClient->listSecurityRoles(
queries = {filter: "UserLicenseType eq 'Functional'"}
);
createSecurityRoles
Creates a security role.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:SecurityRole | Yes | The security role to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:SecurityRole|error
Sample code:
users:SecurityRole created = check usersClient->createSecurityRoles({
securityRoleIdentifier: "SR-AP-CLERK",
securityRoleName: "Accounts payable clerk",
description: "Manages vendor invoices",
userLicenseType: "Functional",
accessToSensitiveData: false
});
getSecurityRoles
Reads a specific security role by its identifier.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
securityRoleIdentifier | string | Yes | The security role identifier key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetSecurityRolesQueries | No | OData query parameters: $expand, $select. |
Returns: users:SecurityRole|error
Sample code:
users:SecurityRole role = check usersClient->getSecurityRoles("SR-AP-CLERK");
deleteSecurityRoles
Deletes a specific security role.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
securityRoleIdentifier | string | Yes | The security role identifier key field. |
headers | DeleteSecurityRolesHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteSecurityRoles("SR-AP-CLERK", {ifMatch: eTag});
updateSecurityRoles
Updates a specific security role.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
securityRoleIdentifier | string | Yes | The security role identifier key field. |
payload | users:SecurityRole | Yes | Fields to update. |
headers | UpdateSecurityRolesHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:SecurityRole|error
Sample code:
users:SecurityRole updated = check usersClient->updateSecurityRoles(
"SR-AP-CLERK",
{accessToSensitiveData: true},
{ifMatch: eTag}
);
Source Systems
listSourceSystems
Lists source systems, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListSourceSystemsQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:SourceSystemsCollection|error
Sample code:
users:SourceSystemsCollection result = check usersClient->listSourceSystems();
createSourceSystems
Creates a source system.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:SourceSystem | Yes | The source system to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:SourceSystem|error
Sample code:
users:SourceSystem created = check usersClient->createSourceSystems({
name: "CRM-EXT-01",
description: "External CRM integration source"
});
getSourceSystems
Reads a specific source system by name.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The name key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetSourceSystemsQueries | No | OData query parameters: $expand, $select. |
Returns: users:SourceSystem|error
Sample code:
users:SourceSystem sourceSystem = check usersClient->getSourceSystems("CRM-EXT-01");
deleteSourceSystems
Deletes a specific source system.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The name key field. |
headers | DeleteSourceSystemsHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteSourceSystems("CRM-EXT-01", {ifMatch: eTag});
updateSourceSystems
Updates a specific source system.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The name key field. |
payload | users:SourceSystem | Yes | Fields to update. |
headers | UpdateSourceSystemsHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:SourceSystem|error
Sample code:
users:SourceSystem updated = check usersClient->updateSourceSystems(
"CRM-EXT-01",
{description: "Updated external CRM integration source"},
{ifMatch: eTag}
);
Source Types
listSourceTypes
Lists source types, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListSourceTypesQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:SourceTypesCollection|error
Sample code:
users:SourceTypesCollection result = check usersClient->listSourceTypes(
queries = {filter: "Direction eq 'In'"}
);
createSourceTypes
Creates a source type.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:SourceType | Yes | The source type to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:SourceType|error
Sample code:
users:SourceType created = check usersClient->createSourceTypes({
dataAreaId: "USMF",
sourceTypeId: "INV-IN",
description: "Inbound invoice source",
direction: "In"
});
getSourceTypes
Reads a specific source type by its composite key.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
sourceTypeId | string | Yes | The source type id key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetSourceTypesQueries | No | OData query parameters: $expand, $select. |
Returns: users:SourceType|error
Sample code:
users:SourceType sourceType = check usersClient->getSourceTypes("USMF", "INV-IN");
deleteSourceTypes
Deletes a specific source type.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
sourceTypeId | string | Yes | The source type id key field. |
headers | DeleteSourceTypesHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteSourceTypes("USMF", "INV-IN", {ifMatch: eTag});
updateSourceTypes
Updates a specific source type.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
dataAreaId | string | Yes | The company data area identifier. |
sourceTypeId | string | Yes | The source type id key field. |
payload | users:SourceType | Yes | Fields to update. |
headers | UpdateSourceTypesHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:SourceType|error
Sample code:
users:SourceType updated = check usersClient->updateSourceTypes(
"USMF", "INV-IN",
{description: "Updated inbound invoice source"},
{ifMatch: eTag}
);
Sys AAD Clients
listSysAADClients
Lists Azure AD client registrations, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListSysAADClientsQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:SysAADClientsCollection|error
Sample code:
users:SysAADClientsCollection result = check usersClient->listSysAADClients(
queries = {filter: "UserId eq 'svc-integration-user'"}
);
createSysAADClients
Creates an Azure AD client registration linked to a Dynamics 365 user.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:SysAADClient | Yes | The client registration to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:SysAADClient|error
Sample code:
users:SysAADClient created = check usersClient->createSysAADClients({
userId: "svc-integration-user",
aADClientId: "3f2b1c4a-1234-4a5b-9c6d-abcdef123456",
name: "Integration service principal"
});
getSysAADClients
Reads a specific Azure AD client registration by its client ID.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
aADClientId | string | Yes | The Azure AD client ID key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetSysAADClientsQueries | No | OData query parameters: $expand, $select. |
Returns: users:SysAADClient|error
Sample code:
users:SysAADClient client = check usersClient->getSysAADClients("3f2b1c4a-1234-4a5b-9c6d-abcdef123456");
deleteSysAADClients
Deletes a specific Azure AD client registration.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
aADClientId | string | Yes | The Azure AD client ID key field. |
headers | DeleteSysAADClientsHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteSysAADClients("3f2b1c4a-1234-4a5b-9c6d-abcdef123456", {ifMatch: eTag});
updateSysAADClients
Updates a specific Azure AD client registration.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
aADClientId | string | Yes | The Azure AD client ID key field. |
payload | users:SysAADClient | Yes | Fields to update. |
headers | UpdateSysAADClientsHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:SysAADClient|error
Sample code:
users:SysAADClient updated = check usersClient->updateSysAADClients(
"3f2b1c4a-1234-4a5b-9c6d-abcdef123456",
{name: "Updated integration service principal"},
{ifMatch: eTag}
);
Sys Mon Datas
listSysMonDatas
Lists system monitoring data entries, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListSysMonDatasQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:SysMonDatasCollection|error
Sample code:
users:SysMonDatasCollection result = check usersClient->listSysMonDatas();
createSysMonDatas
Creates a system monitoring data entry.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:SysMonData | Yes | The monitoring data entry to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:SysMonData|error
Sample code:
users:SysMonData created = check usersClient->createSysMonDatas({
description: "Nightly batch monitoring rule"
});
getSysMonDatas
Reads a specific system monitoring data entry by its description.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
description | string | Yes | The description key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetSysMonDatasQueries | No | OData query parameters: $expand, $select. |
Returns: users:SysMonData|error
Sample code:
users:SysMonData monitoringData = check usersClient->getSysMonDatas("Nightly batch monitoring rule");
deleteSysMonDatas
Deletes a specific system monitoring data entry.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
description | string | Yes | The description key field. |
headers | DeleteSysMonDatasHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteSysMonDatas("Nightly batch monitoring rule", {ifMatch: eTag});
updateSysMonDatas
Updates a specific system monitoring data entry.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
description | string | Yes | The description key field. |
payload | users:SysMonData | Yes | Fields to update. |
headers | UpdateSysMonDatasHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:SysMonData|error
Sample code:
users:SysMonData updated = check usersClient->updateSysMonDatas(
"Nightly batch monitoring rule",
{description: "Nightly batch monitoring rule - updated"},
{ifMatch: eTag}
);
System Users
listSystemUsers
Lists system users, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListSystemUsersQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:SystemUsersCollection|error
Sample code:
users:SystemUsersCollection result = check usersClient->listSystemUsers(
queries = {filter: "Enabled eq true", top: 25, 'select: "UserID,UserName,Email,Enabled"}
);
createSystemUsers
Creates a system user account.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:SystemUser | Yes | The system user to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:SystemUser|error
Sample code:
users:SystemUser created = check usersClient->createSystemUsers({
userID: "jsmith",
userName: "J. Smith",
personName: "John Smith",
email: "[email protected]",
company: "USMF",
enabled: true,
accountType: "ADUser",
language: "en-us",
preferredTimeZone: "GMTMINUS0800PACIFICTIME"
});
getSystemUsers
Reads a specific system user by their user ID.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
userID | string | Yes | The user id key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetSystemUsersQueries | No | OData query parameters: $expand, $select. |
Returns: users:SystemUser|error
Sample code:
users:SystemUser systemUser = check usersClient->getSystemUsers("jsmith");
deleteSystemUsers
Deletes a specific system user.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
userID | string | Yes | The user id key field. |
headers | DeleteSystemUsersHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteSystemUsers("jsmith", {ifMatch: eTag});
updateSystemUsers
Updates a specific system user.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
userID | string | Yes | The user id key field. |
payload | users:SystemUser | Yes | Fields to update. |
headers | UpdateSystemUsersHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:SystemUser|error
Sample code:
users:SystemUser updated = check usersClient->updateSystemUsers(
"jsmith",
{enabled: false},
{ifMatch: eTag}
);
User Groups
listUserGroups
Lists user groups, optionally filtered with OData query parameters.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | ListUserGroupsQueries | No | OData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select. |
Returns: users:UserGroupsCollection|error
Sample code:
users:UserGroupsCollection result = check usersClient->listUserGroups();
createUserGroups
Creates a user group.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
payload | users:UserGroup | Yes | The user group to create. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
Returns: users:UserGroup|error
Sample code:
users:UserGroup created = check usersClient->createUserGroups({
groupId: "AP-CLERKS",
name: "Accounts payable clerks"
});
getUserGroups
Reads a specific user group by its group ID.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
groupId | string | Yes | The group id key field. |
headers | map<string|string[]> | No | Additional HTTP request headers. |
queries | GetUserGroupsQueries | No | OData query parameters: $expand, $select. |
Returns: users:UserGroup|error
Sample code:
users:UserGroup userGroup = check usersClient->getUserGroups("AP-CLERKS");
deleteUserGroups
Deletes a specific user group.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
groupId | string | Yes | The group id key field. |
headers | DeleteUserGroupsHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: error?
Sample code:
check usersClient->deleteUserGroups("AP-CLERKS", {ifMatch: eTag});
updateUserGroups
Updates a specific user group.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
groupId | string | Yes | The group id key field. |
payload | users:UserGroup | Yes | Fields to update. |
headers | UpdateUserGroupsHeaders | No | Optional ifMatch ETag mapped to the If-Match header. |
Returns: users:UserGroup|error
Sample code:
users:UserGroup updated = check usersClient->updateUserGroups(
"AP-CLERKS",
{name: "Accounts payable clerks (updated)"},
{ifMatch: eTag}
);