Actions
The ballerinax/docusign.dsadmin package exposes the following clients:
| Client | Purpose |
|---|---|
Client | DocuSign Admin API: organization, user, permission, group, export/import, and asset group management. |
Client
DocuSign Admin API: organization, user, permission, group, export/import, and asset group management.
Configuration
| Field | Type | Default | Description |
|---|---|---|---|
auth | http:BearerTokenConfig|OAuth2RefreshTokenGrantConfig | Required | OAuth 2.0 refresh token grant config or bearer token config for authentication. |
httpVersion | http:HttpVersion | HTTP_2_0 | HTTP protocol version. |
timeout | decimal | 30 | The maximum time to wait (in seconds) for a response before closing the connection. |
retryConfig | http:RetryConfig | () | Retry configuration for failed requests. |
secureSocket | http:ClientSecureSocket | () | SSL/TLS-related options. |
proxy | http:ProxyConfig | () | Proxy server configuration. |
validation | boolean | true | Enables inbound payload validation provided by the constraint package. |
laxDataBinding | boolean | true | Enables relaxed data binding: nil values are treated as optional and absent fields as nilable. |
Initializing the client
import ballerinax/docusign.dsadmin;
configurable string clientId = ?;
configurable string clientSecret = ?;
configurable string refreshToken = ?;
configurable string refreshUrl = ?;
dsadmin:Client docuSignClient = check new (
{
auth: {
clientId,
clientSecret,
refreshToken,
refreshUrl
}
}
);
Operations
Organization operations
Returns a list of organizations that the authenticated user belongs to
Retrieves the list of organizations the authenticated user is a member of.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Optional headers to be sent with the request. |
queries | OrganizationOrganizationGetListV2Queries | No | Query parameters including optional mode filter. |
Returns: OrganizationsResponse|error
Sample code:
dsadmin:OrganizationsResponse orgResponse = check docuSignClient->/v2/organizations();
Sample response:
{
"organizations": [
{
"id": "8a311a1e-xxxx-xxxx-xxxx-aabbccddeeff",
"name": "My Organization",
"description": "Main org account",
"default_account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"created_on": "2023-01-15T10:30:00.000Z"
}
]
}
User management
Returns information about the users in an organization
Retrieves a list of users in the specified organization, with optional filters for email, account, status, and pagination.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
queries | OrganizationUserOrganizationUsersGetV2Queries | No | Query parameters including email, accountId, status, start, take, membershipStatus, etc. |
Returns: OrganizationUsersResponse|error
Sample code:
dsadmin:OrganizationUsersResponse userInfo = check docuSignClient->/v2/organizations/[organizationId]/users(accountId = accountId, email = "[email protected]");
Sample response:
{
"users": [
{
"id": "aaaa-bbbb-cccc-dddd",
"user_name": "John Doe",
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"user_status": "active",
"membership_status": "active"
}
],
"paging": {
"result_set_size": 1,
"result_set_start_position": 0,
"total_set_size": 1
}
}
Creates a new user
Creates a new user in the specified organization with the provided user details and account memberships.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | NewUserRequest | Yes | The new user's details including userName, firstName, email, and account assignments. |
Returns: NewUserResponse|error
Sample code:
dsadmin:NewUserRequest newUserReq = {
userName: "user1",
firstName: "Jane",
email: "[email protected]",
accounts: [
{
id: accountId,
companyName: "Acme Corp"
}
]
};
dsadmin:NewUserResponse newUser = check docuSignClient->/v2/organizations/[organizationId]/users.post(newUserReq);
Sample response:
{
"id": "eeee-ffff-0000-1111",
"user_name": "user1",
"first_name": "Jane",
"email": "[email protected]",
"language_culture": "en",
"federated_status": "RemoveStatus",
"accounts": [
{
"id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"company_name": "Acme Corp"
}
]
}
Adds users to an account
Adds a user to a specific account within the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
accountId | string | Yes | The account ID GUID. |
payload | NewAccountUserRequest | Yes | The new account user request with user details. |
Returns: NewUserResponse|error
Sample code:
dsadmin:NewAccountUserRequest userReq = {
userName: "user2",
firstName: "Bob",
email: "[email protected]"
};
dsadmin:NewUserResponse addedUser = check docuSignClient->/v2/organizations/[organizationId]/accounts/[accountId]/users.post(userReq);
Sample response:
{
"id": "2222-3333-4444-5555",
"user_name": "user2",
"first_name": "Bob",
"email": "[email protected]",
"accounts": [
{
"id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"company_name": "Acme Corp"
}
]
}
Updates a user's information
Updates profile information for one or more users in the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | UpdateUsersRequest | Yes | The update request containing a list of user updates. |
Returns: UsersUpdateResponse|error
Sample code:
dsadmin:UpdateUsersRequest updateReq = {
users: [
{
id: userId,
siteId: 1,
userName: "Updated Name",
firstName: "Updated",
lastName: "User"
}
]
};
dsadmin:UsersUpdateResponse updateResp = check docuSignClient->/v2/organizations/[organizationId]/users/profiles.post(updateReq);
Sample response:
{
"success": true,
"users": [
{
"id": "eeee-ffff-0000-1111",
"status": "updated",
"user_name": "Updated Name"
}
]
}
Updates a user's email address
Changes the email address for one or more users in the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | UpdateUsersEmailRequest | Yes | The email update request containing a list of user email changes. |
Returns: UsersUpdateResponse|error
Sample code:
dsadmin:UpdateUsersEmailRequest emailReq = {
users: [
{
id: userId,
siteId: 1,
newEmail: "[email protected]"
}
]
};
dsadmin:UsersUpdateResponse emailResp = check docuSignClient->/v2/organizations/[organizationId]/users/email_addresses.post(emailReq);
Sample response:
{
"success": true,
"users": [
{
"id": "eeee-ffff-0000-1111",
"status": "updated"
}
]
}
Closes a user's memberships
Closes one or more of a user's account memberships in the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
userId | string | Yes | The user ID GUID. |
payload | DeleteMembershipsRequest | Yes | The request specifying which account memberships to close. |
Returns: DeleteMembershipsResponse|error
Sample code:
dsadmin:DeleteMembershipsRequest deleteReq = {
accounts: [
{id: accountId}
]
};
dsadmin:DeleteMembershipsResponse deleteResp = check docuSignClient->/v2/organizations/[organizationId]/users/[userId]/accounts.delete(deleteReq);
Sample response:
{
"success": true,
"accounts": [
{
"id": "abcd1234-xxxx-xxxx-xxxx-000000000001"
}
]
}
Activates user memberships
Force-activates a user's membership in the specified account.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
userId | string | Yes | The user ID GUID. |
membershipId | string | Yes | The membership ID GUID. |
payload | ForceActivateMembershipRequest | Yes | The activation request with site ID. |
Returns: UpdateResponse|error
Sample code:
dsadmin:ForceActivateMembershipRequest activateReq = {
siteId: 1
};
dsadmin:UpdateResponse activateResp = check docuSignClient->/v2/organizations/[organizationId]/users/[userId]/memberships/[membershipId].post(activateReq);
Sample response:
{
"status": "activated"
}
Returns historical information about users with a specific email address
Retrieves profile details for a user identified by email address within the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
queries | OrganizationUserOrganizationUsersGetProfileV2Queries | No | Query parameters including email. |
Returns: UsersDrilldownResponse|error
Sample code:
dsadmin:UsersDrilldownResponse profile = check docuSignClient->/v2/organizations/[organizationId]/users/profile(email = "[email protected]");
Sample response:
{
"users": [
{
"id": "eeee-ffff-0000-1111",
"user_name": "John Doe",
"user_status": "active",
"first_name": "John",
"last_name": "Doe",
"email": "[email protected]",
"default_account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001"
}
]
}
Deletes user identities
Deletes one or more identities for a user in the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
userId | string | Yes | The user ID GUID. |
payload | DeleteUserIdentityRequest | Yes | The identity deletion request specifying identities to remove. |
Returns: DeleteResponse|error
Sample code:
dsadmin:DeleteUserIdentityRequest identityReq = {
identities: [
{id: "identity-id-guid"}
]
};
dsadmin:DeleteResponse identityResp = check docuSignClient->/v2/organizations/[organizationId]/users/[userId]/identities.delete(identityReq);
Sample response:
{
"success": true,
"identities": [
{
"id": "identity-id-guid"
}
]
}
Permissions & groups
Returns the list of permission profiles in an account
Retrieves all permission profiles available for the specified account in the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
accountId | string | Yes | The account ID GUID. |
Returns: PermissionsResponse|error
Sample code:
dsadmin:PermissionsResponse permissions = check docuSignClient->/v2/organizations/[organizationId]/accounts/[accountId]/permissions();
Sample response:
{
"permissions": [
{
"permission_profile_id": "12345",
"permission_profile_name": "DocuSign Sender"
},
{
"permission_profile_id": "12346",
"permission_profile_name": "Account Administrator"
}
]
}
Returns the list of groups in an account
Retrieves the list of groups for a given account within the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
accountId | string | Yes | The account ID GUID. |
queries | AccountAccountsGetGroupsV2Queries | No | Pagination parameters: start, take, end. |
Returns: MemberGroupsResponse|error
Sample code:
dsadmin:MemberGroupsResponse groups = check docuSignClient->/v2/organizations/[organizationId]/accounts/[accountId]/groups();
Sample response:
{
"groups": [
{
"id": 101,
"name": "Everyone",
"type": "everyone_group"
},
{
"id": 102,
"name": "Managers",
"type": "custom_group"
}
]
}
User list export
Returns a list of pending and completed export requests
Retrieves all user list export requests for the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
Returns: OrganizationExportsResponse|error
Sample code:
dsadmin:OrganizationExportsResponse exports = check docuSignClient->/v2/organizations/[organizationId]/exports/user_list();
Sample response:
{
"exports": [
{
"id": "export-001-guid",
"type": "organization_memberships_export",
"status": "completed",
"percent_completed": 100,
"number_rows": 250,
"created": "2024-01-15T10:30:00.000Z",
"completed": "2024-01-15T10:35:00.000Z"
}
]
}
Creates a user list export request
Creates a new export request to generate a list of users in the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | OrganizationExportRequest | Yes | The export request specifying the type and scope of the export. |
Returns: OrganizationExportResponse|error
Sample code:
dsadmin:OrganizationExportRequest exportReq = {
'type: "organization_memberships_export"
};
dsadmin:OrganizationExportResponse exportResp = check docuSignClient->/v2/organizations/[organizationId]/exports/user_list.post(exportReq);
Sample response:
{
"id": "export-002-guid",
"type": "organization_memberships_export",
"status": "queued",
"percent_completed": 0,
"created": "2024-03-01T08:00:00.000Z"
}
Returns the results for single user list export request
Retrieves the details and status of a specific user list export request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
exportId | string | Yes | The export ID GUID. |
Returns: OrganizationExportResponse|error
Sample code:
dsadmin:OrganizationExportResponse exportDetail = check docuSignClient->/v2/organizations/[organizationId]/exports/user_list/[exportId]();
Sample response:
{
"id": "export-001-guid",
"type": "organization_memberships_export",
"status": "completed",
"percent_completed": 100,
"number_rows": 250,
"created": "2024-01-15T10:30:00.000Z",
"completed": "2024-01-15T10:35:00.000Z",
"success": true
}
Deletes a single user list export request
Deletes a specific user list export request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
exportId | string | Yes | The export ID GUID. |
Returns: record {}|error
Sample code:
record {} deleteResult = check docuSignClient->/v2/organizations/[organizationId]/exports/user_list/[exportId].delete();
Sample response:
{}
Account settings export & import
Returns a list of pending and completed account settings export request
Retrieves all account settings export requests for the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
Returns: OrganizationExportsResponse|error
Sample code:
dsadmin:OrganizationExportsResponse settingsExports = check docuSignClient->/v2/organizations/[organizationId]/exports/account_settings();
Sample response:
{
"exports": [
{
"id": "settings-export-001",
"type": "organization_account_settings_export",
"status": "completed",
"percent_completed": 100
}
]
}
Creates a new account settings export request
Creates an export request for account settings across the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | OrganizationAccountsRequest | Yes | The export request specifying accounts to export. |
Returns: OrganizationExportResponse|error
Sample code:
dsadmin:OrganizationAccountsRequest settingsExportReq = {
accounts: [{accountId: accountId}]
};
dsadmin:OrganizationExportResponse settingsExportResp = check docuSignClient->/v2/organizations/[organizationId]/exports/account_settings.post(settingsExportReq);
Sample response:
{
"id": "settings-export-002",
"type": "organization_account_settings_export",
"status": "queued",
"percent_completed": 0,
"created": "2024-03-01T08:00:00.000Z"
}
Returns the results for a single account settings export request
Retrieves details of a specific account settings export request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
exportId | string | Yes | The export ID GUID. |
Returns: OrganizationExportResponse|error
Sample code:
dsadmin:OrganizationExportResponse settingsDetail = check docuSignClient->/v2/organizations/[organizationId]/exports/account_settings/[exportId]();
Sample response:
{
"id": "settings-export-001",
"type": "organization_account_settings_export",
"status": "completed",
"percent_completed": 100,
"success": true
}
Deletes a single account settings export request
Deletes a specific account settings export request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
exportId | string | Yes | The export ID GUID. |
Returns: record {}|error
Sample code:
record {} deleteSettingsExport = check docuSignClient->/v2/organizations/[organizationId]/exports/account_settings/[exportId].delete();
Sample response:
{}
Returns the details and metadata for Bulk Account Settings Import requests in the organization
Retrieves all account settings import requests for the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
Returns: OrganizationAccountSettingsImportResponse[]|error
Sample code:
dsadmin:OrganizationAccountSettingsImportResponse[] settingsImports = check docuSignClient->/v2/organizations/[organizationId]/imports/account_settings();
Sample response:
[
{
"id": "settings-import-001",
"status": "completed",
"number_processed_accounts": 5,
"number_unprocessed_accounts": 0
}
]
Creates a new account settings import request
Creates a new import request to apply account settings from a CSV file.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | ImportsAccountSettingsBody | Yes | Multipart body containing the CSV file with account settings. |
Returns: OrganizationAccountSettingsImportResponse|error
Sample code:
dsadmin:ImportsAccountSettingsBody importBody = {
fileCsv: {fileContent: csvBytes, fileName: "settings.csv"}
};
dsadmin:OrganizationAccountSettingsImportResponse importResp = check docuSignClient->/v2/organizations/[organizationId]/imports/account_settings.post(importBody);
Sample response:
{
"id": "settings-import-002",
"status": "queued"
}
Returns the details/metadata for a Bulk Account Settings Import request
Retrieves the status and details of a specific account settings import request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
importId | string | Yes | The import ID GUID. |
Returns: OrganizationAccountSettingsImportResponse|error
Sample code:
dsadmin:OrganizationAccountSettingsImportResponse importDetail = check docuSignClient->/v2/organizations/[organizationId]/imports/account_settings/[importId]();
Sample response:
{
"id": "settings-import-001",
"status": "completed",
"number_processed_accounts": 5,
"number_unprocessed_accounts": 0
}
Deletes a Bulk Account Settings Import request
Deletes a specific account settings import request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
importId | string | Yes | The import ID GUID. |
Returns: record {}|error
Sample code:
record {} deleteImport = check docuSignClient->/v2/organizations/[organizationId]/imports/account_settings/[importId].delete();
Sample response:
{}
Bulk user import
Creates a request to import new users into an account
Creates a bulk user import request to add new users across the organization using a CSV file.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | BulkUsersAddBody | Yes | Multipart body with a CSV file containing user details. |
Returns: OrganizationImportResponse|error
Sample code:
dsadmin:BulkUsersAddBody addBody = {
fileCsv: {fileContent: csvBytes, fileName: "new_users.csv"}
};
dsadmin:OrganizationImportResponse bulkAddResp = check docuSignClient->/v2/organizations/[organizationId]/imports/bulk_users/add.post(addBody);
Sample response:
{
"id": "import-001-guid",
"type": "add_users",
"status": "queued",
"user_count": 50,
"added_user_count": 0,
"created": "2024-03-01T08:00:00.000Z"
}
Import request for adding a user to a single account within the organization
Creates a bulk import to add users to a specific account using a CSV file.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
accountId | string | Yes | The account ID GUID. |
payload | BulkUsersAddBody1 | Yes | Multipart body with a CSV file. |
Returns: OrganizationImportResponse|error
Sample code:
dsadmin:BulkUsersAddBody1 addBody = {
fileCsv: {fileContent: csvBytes, fileName: "account_users.csv"}
};
dsadmin:OrganizationImportResponse acctAddResp = check docuSignClient->/v2/organizations/[organizationId]/accounts/[accountId]/imports/bulk_users/add.post(addBody);
Sample response:
{
"id": "import-002-guid",
"type": "add_users",
"status": "queued",
"user_count": 25
}
Bulk updates information for existing users
Creates a bulk import request to update existing users across the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | BulkUsersUpdateBody | Yes | Multipart body with a CSV file containing user updates. |
Returns: OrganizationImportResponse|error
Sample code:
dsadmin:BulkUsersUpdateBody updateBody = {
fileCsv: {fileContent: csvBytes, fileName: "update_users.csv"}
};
dsadmin:OrganizationImportResponse bulkUpdateResp = check docuSignClient->/v2/organizations/[organizationId]/imports/bulk_users/update.post(updateBody);
Sample response:
{
"id": "import-003-guid",
"type": "update_users",
"status": "queued",
"user_count": 30
}
Import request for updating users for a single account within the organization
Creates a bulk import to update users for a specific account using a CSV file.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
accountId | string | Yes | The account ID GUID. |
payload | BulkUsersUpdateBody1 | Yes | Multipart body with a CSV file. |
Returns: OrganizationImportResponse|error
Sample code:
dsadmin:BulkUsersUpdateBody1 updateBody = {
fileCsv: {fileContent: csvBytes, fileName: "account_updates.csv"}
};
dsadmin:OrganizationImportResponse acctUpdateResp = check docuSignClient->/v2/organizations/[organizationId]/accounts/[accountId]/imports/bulk_users/update.post(updateBody);
Sample response:
{
"id": "import-004-guid",
"type": "update_users",
"status": "queued",
"user_count": 15
}
Creates a request to close the accounts of existing users
Creates a bulk import request to close user accounts across the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | BulkUsersCloseBody | Yes | Multipart body with a CSV file specifying users to close. |
Returns: OrganizationImportResponse|error
Sample code:
dsadmin:BulkUsersCloseBody closeBody = {
fileCsv: {fileContent: csvBytes, fileName: "close_users.csv"}
};
dsadmin:OrganizationImportResponse bulkCloseResp = check docuSignClient->/v2/organizations/[organizationId]/imports/bulk_users/close.post(closeBody);
Sample response:
{
"id": "import-005-guid",
"type": "close_users",
"status": "queued",
"user_count": 10
}
Closes external memberships
Closes memberships for users whose email domain is external to the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
Returns: OrganizationImportResponse|error
Sample code:
dsadmin:OrganizationImportResponse closeExtResp = check docuSignClient->/v2/organizations/[organizationId]/imports/bulk_users/close_external.post();
Sample response:
{
"id": "import-006-guid",
"type": "close_external",
"status": "queued"
}
Gets a list of all of the user import requests
Retrieves all bulk user import requests for the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
Returns: OrganizationImportsResponse|error
Sample code:
dsadmin:OrganizationImportsResponse imports = check docuSignClient->/v2/organizations/[organizationId]/imports/bulk_users();
Sample response:
{
"imports": [
{
"id": "import-001-guid",
"type": "add_users",
"status": "completed",
"user_count": 50,
"added_user_count": 48,
"error_count": 2
}
]
}
Returns the details of a single user import request
Retrieves details and status of a specific bulk user import request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
importId | string | Yes | The import ID GUID. |
Returns: OrganizationImportResponse|error
Sample code:
dsadmin:OrganizationImportResponse importDetail = check docuSignClient->/v2/organizations/[organizationId]/imports/bulk_users/[importId]();
Sample response:
{
"id": "import-001-guid",
"type": "add_users",
"status": "completed",
"user_count": 50,
"added_user_count": 48,
"error_count": 2,
"has_csv_results": true
}
Deletes a specific user import request
Deletes a specific bulk user import request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
importId | string | Yes | The import ID GUID. |
Returns: record {}|error
Sample code:
record {} deleteImport = check docuSignClient->/v2/organizations/[organizationId]/imports/bulk_users/[importId].delete();
Sample response:
{}
Given the ID of a user import request, return the CSV file that was imported
Downloads the CSV results file for a completed bulk user import request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
importId | string | Yes | The import ID GUID. |
Returns: string|error
Sample code:
string csvResults = check docuSignClient->/v2/organizations/[organizationId]/imports/bulk_users/[importId]/results_csv();
Sample response:
"email,user_name,status\[email protected],Jane Doe,added\[email protected],Bob Smith,error"
Identity providers & domains
Returns the list of identity providers for an organization
Retrieves all identity providers configured for the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
Returns: IdentityProvidersResponse|error
Sample code:
dsadmin:IdentityProvidersResponse idpResponse = check docuSignClient->/v2/organizations/[organizationId]/identity_providers();
Sample response:
{
"identity_providers": [
{
"id": "idp-001-guid",
"friendly_name": "Corporate SSO",
"auto_provision_users": true
}
]
}
Returns the list of reserved domains for the organization
Retrieves all reserved (claimed) domains for the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
Returns: DomainsResponse|error
Sample code:
dsadmin:DomainsResponse domains = check docuSignClient->/v2/organizations/[organizationId]/reserved_domains();
Sample response:
{
"reserved_domains": [
{
"id": "domain-001-guid",
"status": "active",
"host_name": "example.com"
}
]
}
Data redaction
Deletes membership data for a user on an account
Redacts (deletes) a user's membership data from a specific account.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
accountId | string | Yes | The account ID from which to delete the user's data. |
payload | IndividualMembershipDataRedactionRequest | Yes | The redaction request specifying the user ID. |
Returns: IndividualUserDataRedactionResponse|error
Sample code:
dsadmin:IndividualMembershipDataRedactionRequest redactReq = {
userId: userId
};
dsadmin:IndividualUserDataRedactionResponse redactResp = check docuSignClient->/v2/data_redaction/accounts/[accountId]/user.post(redactReq);
Sample response:
{
"user_id": "eeee-ffff-0000-1111",
"status": "success",
"membership_results": [
{
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"status": "success"
}
]
}
Deletes data for one or more of a user's account memberships
Redacts (deletes) a user's data across one or more account memberships in the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization ID GUID. |
payload | IndividualUserDataRedactionRequest | Yes | The redaction request specifying the user and memberships. |
Returns: IndividualUserDataRedactionResponse|error
Sample code:
dsadmin:IndividualUserDataRedactionRequest orgRedactReq = {
userId: userId
};
dsadmin:IndividualUserDataRedactionResponse orgRedactResp = check docuSignClient->/v2/data_redaction/organizations/[organizationId]/user.post(orgRedactReq);
Sample response:
{
"user_id": "eeee-ffff-0000-1111",
"status": "success",
"membership_results": [
{
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"status": "success"
}
]
}
DSGroup management (v2.1)
Returns a list of DSGroups
Retrieves all DSGroups for a specific account within the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
queries | DocuSignGroupsv21GetDSGroupsV21Queries | No | Pagination parameters: page, pageSize. |
Returns: DSGroupListResponse|error
Sample code:
dsadmin:DSGroupListResponse dsGroups = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/dsgroups();
Sample response:
{
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"ds_groups": [
{
"group_id": "dsgroup-001-guid",
"group_name": "Engineering Team",
"user_count": 15,
"is_admin": false
}
],
"total_count": 1,
"page": 1,
"page_size": 20
}
Creates a new DSGroup
Creates a new DSGroup for the specified account.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
payload | DSGroupAddRequest | Yes | The group creation request with group name and optional description. |
Returns: DSGroupResponse|error
Sample code:
dsadmin:DSGroupAddRequest groupReq = {
groupName: "Sales Team",
description: "Sales department group"
};
dsadmin:DSGroupResponse newGroup = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/dsgroups.post(groupReq);
Sample response:
{
"group_id": "dsgroup-002-guid",
"group_name": "Sales Team",
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"is_admin": false,
"user_count": 0
}
Returns details about a single DSGroup
Retrieves detailed information about a specific DSGroup.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
dsGroupId | string | Yes | The DSGroup's ID GUID. |
Returns: DSGroupResponse|error
Sample code:
dsadmin:DSGroupResponse groupDetail = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/dsgroups/[dsGroupId]();
Sample response:
{
"group_id": "dsgroup-001-guid",
"group_name": "Engineering Team",
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"is_admin": false,
"user_count": 15
}
Deletes a DSGroup
Deletes a DSGroup from the specified account.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
dsGroupId | string | Yes | The DSGroup's GUID. |
Returns: error?
Sample code:
check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/dsgroups/[dsGroupId].delete();
Gets a list of users in a DSGroup
Retrieves all users belonging to a specific DSGroup.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
dsGroupId | string | Yes | The DSGroup's GUID. |
queries | DocuSignGroupsv21GetDSGroupUsersV21Queries | No | Pagination parameters: page, pageSize. |
Returns: DSGroupAndUsersResponse|error
Sample code:
dsadmin:DSGroupAndUsersResponse groupUsers = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/dsgroups/[dsGroupId]/users();
Sample response:
{
"group": {
"group_id": "dsgroup-001-guid",
"group_name": "Engineering Team"
},
"group_users": {
"users": [
{
"user_id": "eeee-ffff-0000-1111",
"user_name": "John Doe",
"email": "[email protected]"
}
],
"total_count": 1
}
}
Adds a list of users to a DSGroup
Adds one or more users to a specific DSGroup.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
dsGroupId | string | Yes | The DSGroup's GUID. |
payload | DSGroupUsersAddRequest | Yes | The request containing user IDs to add. |
Returns: AddDSGroupAndUsersResponse|error
Sample code:
dsadmin:DSGroupUsersAddRequest addUsersReq = {
userIds: [userId]
};
dsadmin:AddDSGroupAndUsersResponse addResult = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/dsgroups/[dsGroupId]/users.post(addUsersReq);
Sample response:
{
"TotalCount": 1,
"is_success": true
}
Removes a list of users from a DSGroup
Removes one or more users from a specific DSGroup.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
dsGroupId | string | Yes | The DSGroup's GUID. |
payload | DSGroupUsersRemoveRequest | Yes | The request containing user IDs to remove. |
Returns: RemoveDSGroupUsersResponse|error
Sample code:
dsadmin:DSGroupUsersRemoveRequest removeReq = {
userIds: [userId]
};
dsadmin:RemoveDSGroupUsersResponse removeResult = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/dsgroups/[dsGroupId]/users.delete(removeReq);
Sample response:
{
"is_success": true
}
Product permission profiles (v2.1)
Gets products associated with the account and the available permission profiles
Retrieves products and their available permission profiles for the specified account.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
Returns: ProductPermissionProfilesResponse|error
Sample code:
dsadmin:ProductPermissionProfilesResponse prodPerms = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/products/permission_profiles();
Sample response:
{
"product_permission_profiles": [
{
"product_id": "prod-001",
"product_name": "eSignature",
"permission_profiles": [
{
"permission_profile_id": "12345",
"permission_profile_name": "DocuSign Sender"
}
]
}
]
}
Retrieves a user's product permission profiles by email address
Retrieves the product permission profiles assigned to a user identified by email.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
queries | OrganizationProductPermissionProfileGetUserProductPermissionProfilesByEmailQueries | No | Query parameters including email. |
Returns: UserProductPermissionProfilesResponse|error
Sample code:
dsadmin:UserProductPermissionProfilesResponse userPerms = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/products/permission_profiles/users(email = "[email protected]");
Sample response:
{
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"user_id": "eeee-ffff-0000-1111",
"product_permission_profiles": [
{
"product_id": "prod-001",
"product_name": "eSignature",
"permission_profile_id": "12345",
"permission_profile_name": "DocuSign Sender"
}
]
}
Assigns permission profiles for a user by email address
Assigns product permission profiles to a user identified by email.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
payload | UserProductPermissionProfilesRequest | Yes | The request with email and product permission profiles to assign. |
Returns: UserProductPermissionProfilesResponse|error
Sample code:
dsadmin:UserProductPermissionProfilesRequest assignReq = {
email: "[email protected]",
productPermissionProfiles: [
{
productId: "prod-001",
permissionProfileId: "12345"
}
]
};
dsadmin:UserProductPermissionProfilesResponse assignResp = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/products/permission_profiles/users.post(assignReq);
Sample response:
{
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"user_id": "eeee-ffff-0000-1111",
"product_permission_profiles": [
{
"product_id": "prod-001",
"permission_profile_id": "12345",
"permission_profile_name": "DocuSign Sender"
}
]
}
Retrieves a user's product permission profiles by user ID
Retrieves the product permission profiles assigned to a user identified by user ID.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
userId | string | Yes | The user ID GUID. |
Returns: ProductPermissionProfilesResponse|error
Sample code:
dsadmin:ProductPermissionProfilesResponse userProdPerms = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/products/users/[userId]/permission_profiles();
Sample response:
{
"product_permission_profiles": [
{
"product_id": "prod-001",
"product_name": "eSignature",
"permission_profiles": [
{
"permission_profile_id": "12345",
"permission_profile_name": "DocuSign Sender"
}
]
}
]
}
Assigns permission profiles for a user by user ID
Assigns product permission profiles to a user identified by user ID.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
userId | string | Yes | The user ID GUID. |
payload | ProductPermissionProfilesRequest | Yes | The request with product permission profiles to assign. |
Returns: UserProductPermissionProfilesResponse|error
Sample code:
dsadmin:ProductPermissionProfilesRequest assignByIdReq = {
productPermissionProfiles: [
{
productId: "prod-001",
permissionProfileId: "12345"
}
]
};
dsadmin:UserProductPermissionProfilesResponse assignByIdResp = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/products/users/[userId]/permission_profiles.post(assignByIdReq);
Sample response:
{
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"user_id": "eeee-ffff-0000-1111",
"product_permission_profiles": [
{
"product_id": "prod-001",
"permission_profile_id": "12345",
"permission_profile_name": "DocuSign Sender"
}
]
}
Revokes a user's access to one or more products
Revokes a user's access to one or more products in the specified account.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
payload | UserProductProfileDeleteRequest | Yes | The request specifying the user and products to revoke. |
Returns: RemoveUserProductsResponse|error
Sample code:
dsadmin:UserProductProfileDeleteRequest revokeReq = {
userEmail: "[email protected]",
productIds: ["prod-001"]
};
dsadmin:RemoveUserProductsResponse revokeResp = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/products/users.delete(revokeReq);
Sample response:
{
"user_email": "[email protected]",
"user_id": "eeee-ffff-0000-1111",
"is_success": true
}
Multi-Product user management (v2.1)
Creates and updates a multi-product user
Creates a new user or updates an existing user with multi-product access.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
accountId | string | Yes | The account ID GUID. |
payload | NewMultiProductUserAddRequest | Yes | The multi-product user creation request. |
Returns: AddUserResponse|error
Sample code:
dsadmin:NewMultiProductUserAddRequest multiUserReq = {
email: "[email protected]",
userFirstName: "Alice",
userLastName: "Smith",
productPermissionProfiles: [
{
productId: "prod-001",
permissionProfileId: "12345"
}
]
};
dsadmin:AddUserResponse multiUserResp = check docuSignClient->/v2\.1/organizations/[organizationId]/accounts/[accountId]/users.post(multiUserReq);
Sample response:
{
"id": "new-user-guid",
"user_name": "Alice Smith",
"first_name": "Alice",
"last_name": "Smith",
"email": "[email protected]"
}
Retrieves the DS profile for a user specified by email address
Retrieves the DocuSign profile for a user identified by email address.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
queries | OrganizationUserOrganizationUsersGetDSProfilesQueries | No | Query parameters including email and sort. |
Returns: UsersDrilldownResponse|error
Sample code:
dsadmin:UsersDrilldownResponse dsProfile = check docuSignClient->/v2\.1/organizations/[organizationId]/users/dsprofile(email = "[email protected]");
Sample response:
{
"users": [
{
"id": "eeee-ffff-0000-1111",
"user_name": "John Doe",
"user_status": "active",
"email": "[email protected]",
"default_account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001"
}
]
}
Retrieves the DS profile for a user specified by ID
Retrieves the DocuSign profile for a user identified by user ID.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
userId | string | Yes | The user ID GUID. |
queries | OrganizationUserOrganizationUsersGetDSProfileByUserIdQueries | No | Query parameter: sort. |
Returns: UsersDrilldownResponse|error
Sample code:
dsadmin:UsersDrilldownResponse dsProfileById = check docuSignClient->/v2\.1/organizations/[organizationId]/users/[userId]/dsprofile();
Sample response:
{
"users": [
{
"id": "eeee-ffff-0000-1111",
"user_name": "John Doe",
"user_status": "active",
"email": "[email protected]",
"default_account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001"
}
]
}
Asset group operations
Get asset group accounts for an organization
Retrieves asset group accounts for the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
queries | OrganizationProvisionAssetGroupGetAssetGroupAccountsByOrgQueries | No | Query parameters for filtering and pagination. |
Returns: AssetGroupAccountsResponse|error
Sample code:
dsadmin:AssetGroupAccountsResponse assetAccounts = check docuSignClient->/v1/organizations/[organizationId]/assetGroups/accounts();
Sample response:
{
"asset_group_accounts": [
{
"account_id": "abcd1234-xxxx-xxxx-xxxx-000000000001",
"account_name": "Main Account",
"site_id": 1
}
]
}
Clone an existing DocuSign account
Creates a clone of an existing DocuSign account within the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
payload | AssetGroupAccountClone | Yes | The account clone request specifying source account and target details. |
Returns: AssetGroupAccountClone|error
Sample code:
dsadmin:AssetGroupAccountClone cloneReq = {
sourceAccount: {
id: "source-account-guid"
},
targetAccount: {
name: "Cloned Account"
}
};
dsadmin:AssetGroupAccountClone cloneResp = check docuSignClient->/v1/organizations/[organizationId]/assetGroups/accountClone.post(cloneReq);
Sample response:
{
"assetGroupWorkId": "clone-work-001",
"sourceAccount": {
"id": "source-account-guid"
},
"targetAccount": {
"name": "Cloned Account"
},
"status": "queued"
}
Gets all asset group account clones for an organization
Retrieves all account clone requests for the organization.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
queries | OrganizationProvisionAssetGroupGetAssetGroupAccountClonesByOrgIdQueries | No | Query parameters for filtering and pagination. |
Returns: AssetGroupAccountClones|error
Sample code:
dsadmin:AssetGroupAccountClones clones = check docuSignClient->/v1/organizations/[organizationId]/assetGroups/accountClones();
Sample response:
{
"assetGroupWorks": [
{
"assetGroupWorkId": "clone-work-001",
"status": "completed"
}
]
}
Gets information about a single cloned account
Retrieves the status and details of a specific account clone request.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
organizationId | string | Yes | The organization's GUID. |
assetGroupId | string | Yes | The ID of the asset group. |
assetGroupWorkId | string | Yes | The ID of the asset group account clone request. |
Returns: AssetGroupAccountClone|error
Sample code:
dsadmin:AssetGroupAccountClone cloneDetail = check docuSignClient->/v1/organizations/[organizationId]/assetGroups/[assetGroupId]/accountClones/[assetGroupWorkId]();
Sample response:
{
"assetGroupWorkId": "clone-work-001",
"sourceAccount": {
"id": "source-account-guid"
},
"targetAccount": {
"id": "target-account-guid",
"name": "Cloned Account"
},
"status": "completed"
}