How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Metabolon Users API

The Users API from Metabolon — 90 operation(s) for users.

Metabolon Users API is one of 18 APIs that Metabolon publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include User. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 90 operations across 90 paths, and defines 46 schemas. It is described by OpenAPI 3.2.0, at version 1.0.

Requests are made against a single base URL, https://portal-api.prod.metabolon.com.

90 operations 90 paths 46 schemas 50 GET40 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0
Base URL
https://portal-api.prod.metabolon.com
Resource Areas
1

Paths & Operations 90

Across 90 paths, the API surfaces 90 operations — 50 GET, 40 POST. Each is listed below with its method, path, parameters, and response codes.

Users 90
GET
/api/v1/users/current
Retrieves the current user
Users_GetCurrentUser → 200
GET
/api/v1/users/current/learning-center-links
Returns Learning Center launch links authorized for the current user from Portal DB permissions and backend branch config.
Users_GetCurrentUserLearningCenterLinks → 200
POST
/api/v1/users/current/eula-acceptance
Accepts the End User License Agreement for the current user
Users_AcceptEula → 200
GET
/api/v2/users/current
Retrieves the current user
Users_GetCurrentUser2 → 200
GET
/api/v2/users/current/learning-center-links
Returns Learning Center launch links authorized for the current user from Portal DB permissions and backend branch config.
Users_GetCurrentUserLearningCenterLinks2 → 200
POST
/api/v2/users/current/eula-acceptance
Accepts the End User License Agreement for the current user
Users_AcceptEula2 → 200
GET
/api/v1/admin/users
Retrieves all users which details contains this string in an email, firstname or lastname
Users_GetUsers 2 params → 200
POST
/api/v1/admin/users/user/upsert
Adds or updates a user without assigning a project. When updating an existing user (e.g. when email is changed), set OriginalEmail to the user's current email so the backend can find the record to up…
Users_UpsertUser body → 200
POST
/api/v1/admin/users/user/{email}/projects/add/collection
Adds projects to a user
Users_AddUserProjects 1 param body → 200
POST
/api/v1/admin/users/user/{email}/roles/add/collection
Adds roles to a user
Users_AddUserRoles 1 param body → 200
POST
/api/v1/admin/users/roles/{roleName}/users/add/collection
Adds users to a role
Users_AddUsersRole 1 param body → 200
POST
/api/v1/admin/users/user/{email}/role/{roleName}/add
Adds a role to a user
Users_AddUserRole 2 params body → 200
POST
/api/v1/admin/users/user/{email}/role/{roleName}/remove
Removes a role from a user
Users_RemoveUserRole 2 params body → 200
POST
/api/v1/admin/users/user/{email}/roles/remove/collection
Removes roles from a user
Users_RemoveUserRoles 1 param body → 200
GET
/api/v1/admin/users/search/{text}
Retrieves all users which details contains this string in an email, firstname or lastname
Users_GetUsersSearch 3 params → 200
GET
/api/v1/admin/users/projects
Retrieves all the user project entries
Users_GetProjects 2 params → 200
GET
/api/v1/admin/users/projects/search/{text}
Retrieves all projects which details contains this string
Users_GetProjectSearch 3 params → 200
GET
/api/v1/admin/users/roles
Retrieves all roles excluding migration role
Users_GetRoles 2 params → 200
GET
/api/v1/admin/users/roles/all
Retrieves all roles without pagination
Users_GetRolesAll → 200
GET
/api/v1/admin/users/roles/search/{text}
Retrieves all roles which details contains this string
Users_GetRolesSearch 3 params → 200
GET
/api/v1/admin/users/roles/permissions/catalog
Returns the default permission catalog used to validate role permission changes.
Users_GetPermissionsCatalog → 200
GET
/api/v1/admin/users/roles/definitions/default
Returns role names defined in the default role definitions.
Users_GetDefaultRoles → 200
POST
/api/v1/admin/users/roles/reset
Restores all database roles to the default role definitions, removing roles not in the defaults and their user assignments.
Users_ResetAllRoles → 200
GET
/api/v1/admin/users/roles/{roleName}/permissions
Returns permissions currently assigned to a role in the database.
Users_GetRolePermissions 1 param → 200
POST
/api/v1/admin/users/roles/{roleName}/permissions/reset
Restores a single role's permissions to the default role definitions.
Users_ResetRolePermissions 1 param → 200400
POST
/api/v1/admin/users/roles/{roleName}/permissions/add
Adds a permission to a role from the default permission catalog.
Users_AddRolePermission 1 param body → 200400404
POST
/api/v1/admin/users/roles/{roleName}/permissions/remove
Removes a permission from a role.
Users_RemoveRolePermission 1 param body → 200400404
GET
/api/v1/admin/users/{email}/projects
Retrieves all projects for a user by email
Users_GetUserProjects 3 params → 200
GET
/api/v1/admin/users/salesforce/{email}
Returns resolved Salesforce login status for Access Management (Employee, Legacy, Contact, etc.).
Users_GetUserSalesforceLoginStatus 1 param → 200
GET
/api/v1/admin/users/talent-lms/{email}
Returns Learning Center branch access and TalentLMS sync status for a Portal user.
Users_GetUserTalentLmsSyncStatus 1 param → 200
GET
/api/v1/admin/users/talent-lms/queue
Returns how many Portal users are currently due for TalentLMS reconciliation.
Users_GetTalentLmsSyncQueue → 200
GET
/api/v1/admin/users/talent-lms/failures
Returns Portal users whose latest TalentLMS sync is in a failed state.
Users_GetTalentLmsSyncFailures → 200
POST
/api/v1/admin/users/talent-lms/sync
Queues eligible Portal users and reconciles all due TalentLMS users.
Users_RunTalentLmsSync → 200
POST
/api/v1/admin/users/talent-lms/{email}/reconcile
Manually reconciles a Portal user's TalentLMS branch membership from Portal permissions.
Users_ReconcileUserTalentLms 1 param → 200
GET
/api/v1/admin/users/registration-eligibility/{email}
Checks whether a new non-employee user may be added for the given email (same rules as upsert auto-approval).
Users_GetRegistrationEligibility 1 param → 200
GET
/api/v1/admin/users/salesforce/pending
Lists users in the Portal waiting room for Salesforce approval.
Users_GetSalesforcePendingUsers 3 params → 200
GET
/api/v1/admin/users/salesforce/pending/search/{text}
Searches users in the Portal waiting room for Salesforce approval.
Users_SearchSalesforcePendingUsers 3 params → 200
GET
/api/v1/admin/users/salesforce/pending/count
Returns how many users are currently in the Salesforce approval waiting room.
Users_GetSalesforcePendingUserCount → 200
POST
/api/v1/admin/users/salesforce/pending/sync
Discovers pending Salesforce leads and reconciles the waiting room (including approval emails).
Users_RunSalesforcePendingUserSync 1 param → 200
POST
/api/v1/admin/users/salesforce/{email}/approve
Marks the user as Salesforce-approved using Leads only. A Contact is treated as already approved (no change); an existing Lead has its Portal Access Status set to Approved; if no Salesforce record ex…
Users_ApproveUser 1 param → 200400503
GET
/api/v1/admin/users/{email}/roles
Retrieves all roles for a user by email
Users_GetUserRoles 3 params → 200
GET
/api/v1/admin/users/projects/{projectId}/users
Retrieves all users for a project
Users_GetProjectUsersAll 3 params → 200
GET
/api/v1/admin/users/roles/{roleName}/users
Retrieves all users for a role
Users_GetRoleUsers 3 params → 200
POST
/api/v1/admin/users/project/{projectId}/add
Adds or grants access to these user
Users_AddUserProject 1 param body → 200
POST
/api/v1/admin/users/project/{projectId}/add/collection
Adds or grants access to these users
Users_AddUsersProject 1 param body → 200
POST
/api/v1/admin/users/project/{projectId}/remove
Removes access to these user
Users_RemoveUserProject 1 param body → 200
POST
/api/v1/admin/users/project/{projectId}/remove/collection
Removes access to these users
Users_RemoveUsersProject 1 param body → 200
GET
/api/v1/admin/users/projects/report
Retrieves the report for the users and projects
Users_GetProjectUsers → 200
GET
/api/v2/admin/users
Retrieves all users which details contains this string in an email, firstname or lastname
Users_GetUsers2 2 params → 200
POST
/api/v2/admin/users/user/upsert
Adds or updates a user without assigning a project. When updating an existing user (e.g. when email is changed), set OriginalEmail to the user's current email so the backend can find the record to up…
Users_UpsertUser2 body → 200
POST
/api/v2/admin/users/user/{email}/projects/add/collection
Adds projects to a user
Users_AddUserProjects2 1 param body → 200
POST
/api/v2/admin/users/user/{email}/roles/add/collection
Adds roles to a user
Users_AddUserRoles2 1 param body → 200
POST
/api/v2/admin/users/roles/{roleName}/users/add/collection
Adds users to a role
Users_AddUsersRole2 1 param body → 200
POST
/api/v2/admin/users/user/{email}/role/{roleName}/add
Adds a role to a user
Users_AddUserRole2 2 params body → 200
POST
/api/v2/admin/users/user/{email}/role/{roleName}/remove
Removes a role from a user
Users_RemoveUserRole2 2 params body → 200
POST
/api/v2/admin/users/user/{email}/roles/remove/collection
Removes roles from a user
Users_RemoveUserRoles2 1 param body → 200
GET
/api/v2/admin/users/search/{text}
Retrieves all users which details contains this string in an email, firstname or lastname
Users_GetUsersSearch2 3 params → 200
GET
/api/v2/admin/users/projects
Retrieves all the user project entries
Users_GetProjects2 2 params → 200
GET
/api/v2/admin/users/projects/search/{text}
Retrieves all projects which details contains this string
Users_GetProjectSearch2 3 params → 200
GET
/api/v2/admin/users/roles
Retrieves all roles excluding migration role
Users_GetRoles2 2 params → 200
GET
/api/v2/admin/users/roles/all
Retrieves all roles without pagination
Users_GetRolesAll2 → 200
GET
/api/v2/admin/users/roles/search/{text}
Retrieves all roles which details contains this string
Users_GetRolesSearch2 3 params → 200
GET
/api/v2/admin/users/roles/permissions/catalog
Returns the default permission catalog used to validate role permission changes.
Users_GetPermissionsCatalog2 → 200
GET
/api/v2/admin/users/roles/definitions/default
Returns role names defined in the default role definitions.
Users_GetDefaultRoles2 → 200
POST
/api/v2/admin/users/roles/reset
Restores all database roles to the default role definitions, removing roles not in the defaults and their user assignments.
Users_ResetAllRoles2 → 200
GET
/api/v2/admin/users/roles/{roleName}/permissions
Returns permissions currently assigned to a role in the database.
Users_GetRolePermissions2 1 param → 200
POST
/api/v2/admin/users/roles/{roleName}/permissions/reset
Restores a single role's permissions to the default role definitions.
Users_ResetRolePermissions2 1 param → 200400
POST
/api/v2/admin/users/roles/{roleName}/permissions/add
Adds a permission to a role from the default permission catalog.
Users_AddRolePermission2 1 param body → 200400404
POST
/api/v2/admin/users/roles/{roleName}/permissions/remove
Removes a permission from a role.
Users_RemoveRolePermission2 1 param body → 200400404
GET
/api/v2/admin/users/{email}/projects
Retrieves all projects for a user by email
Users_GetUserProjects2 3 params → 200
GET
/api/v2/admin/users/salesforce/{email}
Returns resolved Salesforce login status for Access Management (Employee, Legacy, Contact, etc.).
Users_GetUserSalesforceLoginStatus2 1 param → 200
GET
/api/v2/admin/users/talent-lms/{email}
Returns Learning Center branch access and TalentLMS sync status for a Portal user.
Users_GetUserTalentLmsSyncStatus2 1 param → 200
GET
/api/v2/admin/users/talent-lms/queue
Returns how many Portal users are currently due for TalentLMS reconciliation.
Users_GetTalentLmsSyncQueue2 → 200
GET
/api/v2/admin/users/talent-lms/failures
Returns Portal users whose latest TalentLMS sync is in a failed state.
Users_GetTalentLmsSyncFailures2 → 200
POST
/api/v2/admin/users/talent-lms/sync
Queues eligible Portal users and reconciles all due TalentLMS users.
Users_RunTalentLmsSync2 → 200
POST
/api/v2/admin/users/talent-lms/{email}/reconcile
Manually reconciles a Portal user's TalentLMS branch membership from Portal permissions.
Users_ReconcileUserTalentLms2 1 param → 200
GET
/api/v2/admin/users/registration-eligibility/{email}
Checks whether a new non-employee user may be added for the given email (same rules as upsert auto-approval).
Users_GetRegistrationEligibility2 1 param → 200
GET
/api/v2/admin/users/salesforce/pending
Lists users in the Portal waiting room for Salesforce approval.
Users_GetSalesforcePendingUsers2 3 params → 200
GET
/api/v2/admin/users/salesforce/pending/search/{text}
Searches users in the Portal waiting room for Salesforce approval.
Users_SearchSalesforcePendingUsers2 3 params → 200
GET
/api/v2/admin/users/salesforce/pending/count
Returns how many users are currently in the Salesforce approval waiting room.
Users_GetSalesforcePendingUserCount2 → 200
POST
/api/v2/admin/users/salesforce/pending/sync
Discovers pending Salesforce leads and reconciles the waiting room (including approval emails).
Users_RunSalesforcePendingUserSync2 1 param → 200
POST
/api/v2/admin/users/salesforce/{email}/approve
Marks the user as Salesforce-approved using Leads only. A Contact is treated as already approved (no change); an existing Lead has its Portal Access Status set to Approved; if no Salesforce record ex…
Users_ApproveUser2 1 param → 200400503
GET
/api/v2/admin/users/{email}/roles
Retrieves all roles for a user by email
Users_GetUserRoles2 3 params → 200
GET
/api/v2/admin/users/projects/{projectId}/users
Retrieves all users for a project
Users_GetProjectUsersAll2 3 params → 200
GET
/api/v2/admin/users/roles/{roleName}/users
Retrieves all users for a role
Users_GetRoleUsers2 3 params → 200
POST
/api/v2/admin/users/project/{projectId}/add
Adds or grants access to these user
Users_AddUserProject2 1 param body → 200
POST
/api/v2/admin/users/project/{projectId}/add/collection
Adds or grants access to these users
Users_AddUsersProject2 1 param body → 200
POST
/api/v2/admin/users/project/{projectId}/remove
Removes access to these user
Users_RemoveUserProject2 1 param body → 200
POST
/api/v2/admin/users/project/{projectId}/remove/collection
Removes access to these users
Users_RemoveUsersProject2 1 param body → 200
GET
/api/v2/admin/users/projects/report
Retrieves the report for the users and projects
Users_GetProjectUsers2 → 200

Schemas 46

The contract defines 46 schemas that model the data the API accepts and returns. The most detailed are User (10 properties), TalentLmsManualSyncResponse (8 properties), TalentLmsSyncStatusResponse (7 properties), SalesforcePendingUserResponse (7 properties). Each schema is shown below with its type and property counts.

PublishParametersOfEmailDTO
object
2 properties
Role
object
2 properties
PublishParametersOfIEnumerableOfEmailDTO
object
2 properties
TalentLmsSyncQueueResponse
object
2 properties
PublishParametersRemoveUserRoles
TalentLmsReconcileResponse
object
2 properties
AddRolePermissionRequest
object
1 property
UserRoleNamesDTO
object
2 properties
TalentLmsSyncStatusResponse
object
7 properties
SalesforcePendingUserQueueCountResponse
object
1 property
PublishParametersOfUserDTO
object
2 properties
PublishParametersRemoveUsersProject
SalesforcePendingUsersPageResponse
object
2 properties
PublishParametersAddUserProjects
RoleResetResponse
object
4 properties
RoleDTO
object
2 properties
EmailDTO
object
1 property
LoginStatusResponse
object
1 property
PublishParametersOfIEnumerableOfUserDTO
object
2 properties
PublishParametersAddUser
PublishParametersAddUserRoles
PublishParametersAddUsersProject
PublishParametersOfUserProjectIdsDTO
object
2 properties
SalesforcePendingUserSyncResponse
object
5 properties
PublishParametersAddUserProject
TalentLmsBranchSummary
object
2 properties
LearningCenterLinkDto
object
3 properties
User
object
10 properties
RegistrationEligibilityResponse
object
2 properties
UserDTO
object
3 properties
TalentLmsSyncFailuresResponse
object
1 property
LearningCenterLinksResponse
object
1 property
RolePermissionsResponse
object
1 property
UserProject
object
2 properties
PublishParametersOfUserRoleNamesDTO
object
2 properties
DefaultRolesResponse
object
1 property
PublishParametersRemoveUserProject
PermissionsCatalogResponse
object
1 property
PublishParametersAddUsersRole
SalesforcePendingUserResponse
object
7 properties
TalentLmsManualSyncResponse
object
8 properties
UserProjectIdsDTO
object
2 properties
PublishParametersRemoveUserRole
ProblemDetails
object
5 properties
ProjectDTO
object
3 properties
TalentLmsSyncFailureSummaryResponse
object
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

metabolon-users-api-openapi.yml Raw ↑

Other APIs Metabolon publishes across the network.

Metabolon Assistant API
Metabolon Auth API
Metabolon Decentralization API
Metabolon Eula API
Metabolon Files API
Metabolon Health API
Metabolon Lab Vantage Files API
Metabolon Pipeline Status API
Metabolon Projects API
Metabolon Reports API
Metabolon Sample Sets API
Metabolon Sample Sets Info API
Where this information came from

This is an independent, third-party profile of Metabolon Users API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.