Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
The Module object represents a module in the Marketplace platform.
This object contains the following attributes:
id
string, core
(Read-only) Primary identifier for the module.
name
string, core
(Read-only) Name of the module.
description
string, core
(Read-only) A description of the module.
accountTypes
string
(Read-only) Indicates the module availability for the account type.
isEnabledByDefault
boolean
(Read-only) Indicates whether the module is enabled by default.
isConfigurable
boolean
(Read-only) Indicates whether module access can be changed.
paid
boolean, core
(Read-only) Indicates whether the module is fee-based.
settings
object, core
(Read-only) Defines the module setting.
sharedAccount – Defines whether there are multiple accounts with the same external ID.
configurable – Defines whether the module access can be changed.
default – Defines whether the module is enabled by default.
paid – Defines whether the module is fee-based.
filters
object, core
(Read-only) Defines the custom filters configuration.
{
"id": "MOD-1234",
"name": "Invoices",
"description": "Invoices module",
"accountTypes": ["vendor", "client", "operations"],
"isEnabledByDefault": true,
"isConfigurable": false,
"paid": true,
"settings": {
"sharedAccount": true,
"configurable": true,
"default": true,
"paid": false
},
"filters": {
"group.buyers": [
"selected",
"all"
]
}
}Gets a list of modules within the platform.
The following diagram shows the state (status) transition process of a group containing users.
New
This is the initial status of a group. This status is assigned by the platform when the group is created.
Active
The group has been created successfully and is now active.
Deleted
The group has been deleted by the account administrator.

Gets a single API token using the token ID.
Gets information. This can include an optional query string parameter destinationAccountId for the preliminary validation of the transfer operation.
Gets the user groups collection.
Get the Buyers collection.
Synchronizes the buyer with the ERP system.
Deactivates a specific buyer.
Transfers a Buyer object with all its dependencies between Accounts sharing the same External ID.
Enable a specific API token.
Disable a specific API token.
Deletes the seller object. When deleted, the status changes from Active to Deleted.
The following diagram shows the status transition process of an API token on the platform.
Active
The token has been authenticated in the account. It will allow access to the endpoint.
Disabled
The token has been temporarily deactivated. Any attempts to access the endpoint will return an error.
Deleted
The token has been permanently removed from the system. This state is not visible to the client or vendor account users.

Updates a user group.
Creates a new licensee object.
Disables the Buyer object. Disabled buyers cannot be used in transactions.
List Licensee items in the Licensees collection.
Deletes a specific buyer.
Delete a token by its token ID.
Gets the API tokens collection.
Update the Buyer object. You can only update the Logo and Contact fields.
Sends a new invitation if the original invite has expired.
The following diagram shows the state (status) transition process of a licensee in the platform.
Active
The licensee is active and can be used when ordering products through the Marketplace.
Enabled
Accepts the user invitation to the account.
Get a single Buyer object by ID.
The following diagram shows the state (status) transition process of a user within an account in the Marketplace Platform. It shows the possible statuses a user can have.
Deletes the licensee object.
Retrieves the icon for the seller.
The licensee has been set up in the system, but can't be used for transactions.
Disabled
The licensee has been disabled and can no longer be used.
Deleted
The licensee has been deleted.

The user's invitation has expired because they didn't accept it within 7 days from the send date.
Active
The user has accepted the invitation. They can access the account and perform actions based on their permissions.
Blocked
The user's access has been restricted. This could be due to terms and conditions violations, security concerns, or at the administrator's discretion.
Disabled
The user has been removed from the account and can no longer perform any actions.
Deleted
The user no longer exists in the system.
Invited
The user has been invited to join the account but has not accepted the invite yet. This status remains in place until the invitation is accepted.

Invitation expired
The Marketplace Platform REST API allows you to interact with the platform programmatically.
The APIs are organized around REST principles, use predictable resource-oriented URLs, JSON-encoded representations, and standard HTTP methods and status codes.
Each API works similarly, whether you access it directly over HTTP or through helper libraries in various programming languages.
Use Marketplace APIs to:
Manage accounts, users, and groups.
Automate order processing and fulfillment workflows.
Manage orders, subscriptions, and assets.
Retrieve billing and financial data.
Synchronize Marketplace data with external business systems.
Integrate and manage notification workflows.
Follow to generate an API token, authenticate requests, and make your first API call.
Marketplace Platform uses for authentication.
Include your API token in the Authorization HTTP header with the Bearer scheme.
Your API keys have permissions assigned to them, so keep them secure. Don't share your secret API keys in public areas, like GitHub or client-side code.
All API requests must be made over HTTPS.
Requests sent over HTTP are not supported. API requests without authentication will fail.
Most Marketplace API endpoints expect requests to use the application/json content type. Endpoints that support file uploads may require multipart/form-data instead.
To communicate successfully with the APIs, ensure your API requests are formatted using the application/json content type.
Using the wrong content type may result in unexpected behavior or errors.
Disables the licensee object.
The following figure shows the state (status) transition process of a buyer in the platform.
Enabled
The buyer has been created in the system, but SoftwareOne hasn't activated it yet.
Active
The buyer is active and can be selected from the list of buyers when ordering products.
Disabled
The buyer has been disabled and can no longer be selected when buying products.
Mismatch
The buyer’s data is not in sync with the data in our backend system. This discrepancy can occur due to various reasons. Contact support for assistance.

Manage catalog, products, items, & more.
Manage orders, subscriptions, assets, & more.
Work with currencies, pairs, and exchange rates.
Manage extensions, installations, media, & more.
Manage cases, chats, feedback, & more.
Manage notifications, subscribers, & more.
Browse software products, manage profile, categories, & more.
Manage programs, enrollments, and certificates.
Work with spotlight objects and queries.
Create tasks and retrieve task logs and results.
GET https://api.platform.softwareone.com/public/v1/accounts/buyers
Authorization: Bearer {TOKEN_VALUE}
Content-Type: application/jsonManage accounts, users, groups, & more.
Track and retrieve audit activity.
Work with invoices, statements, charges, & more.
The API Token object represents a user authentication token within the platform.
This object contains the following attributes:
id
string, core
Enables a buyer that was previously disabled. When enabled, the buyer's status changes to Active if the buyer has ExternalId assigned or enabled.
Enables the licensee that was previously disabled.
Activates a previously deactivated or disabled seller.
When activated, the status changes from Offline or Disabled to Active.
Get a single account user by ID.
(Read-only) The primary identifier for the token.
name
string, core
The name of the token.
description
string
(Optional) A description of the token.
icon
string, core
(Optional) The relative path to the API token icon.
status
string
(Read-only) The token's status. Allowed values are:
Active
Disabled
Deleted
modules
Module validation when creating API token.
account
object
Represents the account object under which the token has been defined.
Example:
token
string
(Read-only) The token's authentication code.
audit
object
(Read-only) Represents the audit object.
{
"id": "ACC-123-123",
"name": "Microsoft"
}{
"id": "TKN-4134-7330",
"name": "access token",
"description": "Token for Marketplace",
"icon": "",
"status": "Active",
"modules": [
{
"id": "MOD-1756-1452"
},
{
"id": "MOD-9042-8216"
}
],
"token": "CODE"
}The Licensee object represents a licensee in the Marketplace platform.
This object contains the following attributes:
id
string, core
Deletes a user from the account. The user remains active in other accounts.
Updates the seller object, except for the seller's status. To manage the status, use the disable, activate, deactivate, and delete endpoints.
The Account object represents an individual account in the SoftwareOne Marketplace.
This object contains the following attributes:
Cloud Tenant represents a cloud tenant object in the Marketplace Platform.
This object contains the following attributes:
(Read-only) The primary identifier for the licensee.
status
string
The status of the licensee. Allowed values are:
Enabled
Active
Disabled
Deleted
name
string, core
The licensee's name.
icon
string
(Optional) A relative path to the licensee’s logo.
externalId
string, core
(Optional) The external identifier.
useBuyerAddress
boolean
(Optional) Defines whether the address should be copied from the buyer.
address
object
(Optional) The address of the licensee.
Example:
description
string
(Optional) A description of the licensee.
contact
object
The details of the contact person.
Example:
buyer
object
Represents the buyer object.
seller
object
Represents the seller object.
account
object
Represents the account object.
audit
object
(Read-only) Represents the audit object.
{
"name": "Stark Industries Finance Dept",
"externalId": "WW-CON-12345678",
"status": "Active",
"address": null,
"useBuyerAddress": true,
"icon": null,
"description": null
}{
"id": "LCE-8893-6916-0000",
"contact": null,
"name": "Stark Industries",
"externalId": null,
"status": "Active",
"address": null,
"useBuyerAddress": false,
"icon": null,
"description": null,
"account": {
"id": "ACC-5563-4382",
"type": "Client",
"status": "Active",
"icon": null,
"name": "AdAstraflexx"
},
"buyer": {
"id": "BUY-8928-0965",
"name": "Stark Industries"
},
"seller": {
"id": "SEL-4717-3953",
"externalId": "SWO_CA",
"name": "SoftwareOne Canada, Inc."
}
}{
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"postCode": "12345",
"city": "Cityville",
"state": "S",
"country": "ST"
}{
"name": "Reto Mayer",
"firstName": "Reto",
"lastName": "Mayer",
"email": "reto.mayer@example.com",
"phone": null,
"user": {
"id": "USR-0000-0001",
"icon": null,
"name": "Reto Mayer"
},
"address": {
"addressLine1": "23 Main",
"addressLine2": "Apt 4B",
"postCode": "12345",
"city": "Cityville",
"state": "S",
"country": "ST"
}
}
(Read-only) Unique identifier for the account.
type
string, core
The type of account. Allowed values are:
Client
Vendor
Operations
status
string, core
(Read-only) The status of the account. Allowed values are:
Enabled
Active
Disabled
name
string
The name of the account.
description
string
(Optional) A description of the account.
externalId
string
(Optional) The Customer Discount Group number.
externalName
string
The Customer Discount Group name.
serviceLevel
string
Service level for the account. Allowed values are:
Essential
Elite
DSC
address
object
The of the company.
icon
string, core
The relative path to the account's logo.
website
string
The path to the company’s website.
technicalSupportEmail
string
The email address for technical support.
audit
object
Represents the object.
groups
object
Represents the object.
buyers
object
Represents the object.
externalIDs
object
Represents the externalId for the account.
defaultLanguageCode
string
The default language code of the account.
{
"id": "ACC-1671-0642",
"type": "Client",
"status": "Enabled",
"name": "Stark industries",
"description": "Stark industries procurement team.",
"externalId": "WW-1001111",
"serviceLevel": "Express",
"address": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"postCode": "12345",
"city": "Cityville",
"state": "S",
"country": "ST"
},
"logo": null,
"technicalSupportEmail": "jane@doe.com",
"website": "https://example.com"
}{
"id": "ACC-1671-0642",
"type": "Client",
"status": "Enabled",
"name": "Stark industries",
"description": "Stark industries procurement team.",
"externalId": "WW-1001111",
"serviceLevel": "Express",
"address": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"postCode": "12345",
"city": "Cityville",
"state": "S",
"country": "ST"
},
"logo": null,
"technicalSupportEmail": "jane@doe.com",
"website": "https://janedoeexample.com",
"groups": [
{
"id": "UGR-9354-3382",
"name": "Administrators",
"description": "Manages administrative tasks and resources within an organization.",
"logo": null,
"isDefault": true
}
],
{
"created": { "at": "2023-12-14T17:28:57.667Z", "by": { "id": "USR-1234-1234", "name": "John Smith" } },
"updated": { "at": "2023-12-14T17:28:57.667Z", "by": { "id": "USR-1234-1234", "name": "John Smith" } },
"disabled": { "at": "2023-12-14T17:28:57.667Z", "by": { "id": "USR-1234-1234", "name": "John Smith" } },
"enabled": { "at": "2023-12-14T17:28:57.667Z", "by": { "id": "USR-1234-1234", "name": "John Smith" } },
"activated": { "at": "2023-12-14T17:28:57.667Z", "by": { "id": "USR-1234-1234", "name": "John Smith" } }
}
}id
string, core
name
string, core
The name of the cloud tenant.
status
string
The status of the cloud tenant. Allowed values are:
Active
Disabled
Deleted
account
object
The to which the cloud tenant is assigned.
type
string
(Read-only) The type of cloud tenant.
externalId
object
(Read-only) Represents the object.
audit
object
(Read-only) Represents the object.
pyraTenantId
string
(Read-only) The PYC tenant ID.
cloudConsumptionId
string
id
string, core
(Read-only) The primary identifier for the cloud tenant.
{
"id": "CLT-3206-7146",
"account": {
"id": "ACC-2253-2884",
"type": "Client",
"status": "Active",
"name": "AdAstrafleX"
},
"externalIds": {
"cloudConsumptionId": "012b2a18-1df0-473f-8759-c3c019b54486",
"providerId": "7270638c-ca21-4500-ac82-25dca634566a",
"pyraTenantId": "c6469e97-302a-408a-8589-2122a0bb725d"
},
"name": "AdAstraflex Germany",
"status": "Active",
"type": "CspAzure",
"audit": {
"created": {
"at": "2024-12-12T11:17:44.042Z",
"by": {
"id": "TKN-9299-7556",
"name": "Migration token"
}
}
}
}Gets a single user group by ID.
Get the icon for a specific licensee.
(Read-only) The unique identifier of this cloud tenant in PYC.
providerId
string
(Read-only) The object identifier within the cloud provider, like AWS, Azure, and more.
Removes a user from a specific group.
Resends the invitation to the user.
Gets a single Seller object by ID.
The User Group object represents a group containing users.
This object contains the following attributes:
id
string, core
Gets the Sellers collection.
(Read-only) Primary identifier for the group.
icon
string
(Optional) The relative path to the group's icon image or logo.
name
string, core
The name of the group.
description
string
(Optional) A description of the group.
modules
object
(Optional) Represents the object, which contains modules that the group members can access.
default
bool
Indicates if the group has been set as a default group within the account. An account can contain only one default group.
users
object
(Read-only)Represents the object containing users assigned to the group. A group can be deleted only if no user is assigned.
{
"id": "UGR-5116-6265",
"name": "Jane Doe",
"description": "This group contains all Accounts team members",
"modules": [
{
"id": "MOD-1756-1452",
"name": "Access management"
},
{
"id": "MOD-9042-8216",
"name": "Account management"
}
],
"icon": "https://picsum.photos/210/201",
"default": true,
"users": [
{
"id": "USR-0000-0016",
"icon": null,
"name": "Reto Mayer"
}
]
}Disables or deactivates the seller object. When the seller has been disabled, the status changes from Active to Disabled. Note that disabled sellers can't be used in transactions.
Creates a user group for the client account.
(Read-only) The primary identifier for the ERP link.
status
enum, core
(Read-only) The object's status. Allowed values are Active or Blocked.
note
string
(Optional)
name
string, core
(Read-only) The names of the buyer and seller.
externalIds
object
A reference to the buyerExternalIdsObject.
Example:
address
object
The of the buyer in the given seller instance.
companyName
string, core
(Read-only) The name of the buyer in the given seller instance.
buyer
object
(Read-only) Represents the object.
seller
object
(Read-only) Represents the object.
audit
object
(Read-only) Represents the object.
{
"id": "ERP-0808-7934-2576",
"buyer": {
"id": "BUY-0808-7934",
"name": "AGCO Corporation"
},
"seller": {
"id": "SEL-1968-2576",
"externalId": "AR",
"name": "SoftwareONE Argentina",
"icon": "/v1/accounts/sellers/SEL-1968-2576/icon"
},
"name": "AGCO Corporation - SoftwareONE Argentina",
"status": "Active",
"externalIds": {
"erpCompanyContact": "US-CON-183485",
"erpCustomer": "US-SCU-117126",
"accountExternalId": "WW-100502"
},
"address": {
"addressLine1": "4205 River Green Pkwy",
"postCode": "30096",
"city": "DULUTH",
"state": "GA",
"country": "US"
},
"companyName": "AGCO Corporation",
"audit": {
"created": {
"at": "2025-01-21T12:27:31.716Z",
"by": {
"id": "TKN-4113-7170",
"name": "Nav Extension"
}
},
"updated": {
"at": "2025-03-10T12:45:04.479Z",
"by": {
"id": "TKN-8915-3154",
"name": "Test Token"
}
}
}
}{
"erpCompanyContact": "WW-CON-123456",
"erpCustomer": "WW-SCU-123456",
"erpCustomerDiscountGroup": "WW-12345"
}The User object represents a single user on the Marketplace platform.
This object contains the following attributes:
id
string, core
(Read-only) Primary identifier for the user.
email
string
The email address of the user.
status
string
(Read-only) The user's status. Allowed values are:
New
Invited
Invitation expired
Active
Blocked
Disabled
Deleted.
The Invited or InvitationExpired statuses apply only if the user has not yet joined the account.
name
string, core
The user's full name.
firstName
string
The user's first name.
lastName
string
The user's last name.
phone
object
The country code and phone number.
accounts
object
List of accounts that the user is added to; not returned in the user’s account sub‑collection.
currentAccount
object
The account currently selected by the user.
groups
object
(Read-only) Represents the group object containing all groups that the user belongs to.
Example:
buyers
object
(Read-only) List of all buyers the user can access through their groups. Not defined when the ‘All’ option is selected.
modules
object
(Read-only) List of all modules the user can access through their groups.
settings
object
(Optional) Indicates the user’s preferences, including language and regional settings (legacy).
invitation
object
(Optional) Represents the invitation object. This is included only in the context of an account (within the account sub‑collection) and only when the user has been invited.
invitation.code
string
(Read-only) (Optional) The invitation code sent to user when they are invited to the platform.
invitation.status
string
(Read-only) (Optional) Indicates the user's account invitation status.
audit
object
(Read-only) Represents the audit object.
[
{
"id": "UGR-5116-6265",
"name": "Administrators"
},
{
"id": "UGR-5116-6565",
"name": "Fulfillment Managers"
}
]{
"id": "USR-3773-5838",
"email": "test@testignite.de",
"status": "Active",
"firstName": "d",
"lastName": "d",
"settings": {
"cultureCode": "en-US",
"languageCode": "en-US"
},
"name": "d d",
"account": {
"id": "ACC-0774-6909",
"type": "Client",
"status": "Active",
"name": "Ignite Test CDG"
},
"groups": [
{
"id": "UGR-5240-4954",
"name": "Only Marketplace and Buyer BUY-1089-7077",
"description": "",
"account": {
"id": "ACC-0774-6909",
"type": "Client",
"status": "Active",
"name": "Ignite Test CDG"
},
"logo": "",
"isDefault": false
}
],
"buyers": [
{
"id": "BUY-1089-7077",
"status": "Enabled",
"address": {
"addressLine1": "adress1",
"addressLine2": "adress2",
"postCode": "88131",
"city": "city",
"state": "bavaria",
"country": "DE"
},
"account": {
"id": "ACC-0774-6909",
"type": "Client",
"status": "Active",
"name": "Ignite Test CDG"
},
"name": "testBuyer"
}
],
"modules": [
{
"id": "MOD-0478",
"description": "Buy and manage subscription based licenses.",
"isConfigurable": true,
"isEnabledByDefault": true,
"paid": false,
"name": "Marketplace",
"filters": {
"group.buyers": [
"selected",
"all"
]
},
"settings": {
"sharedAccount": true,
"configurable": true,
"default": true,
"paid": false
}
}
],
"invitation": {
"url": "https://portal.s1.show/accept-invite?code=eyJjb2RlIjoiUzM0dVpsVWNjL0JSRTdpVXFSdFBpN2J4Z3BaY3VXNTFoM2d4WlN6T0xwdz0iLCJhY2NvdW50VXNlcklkIjoiQVVTUi0xMDQwLTg2MzYtNzI2NyJ9",
"status": "Active"
},
"audit": {
"login": {
"at": "2024-05-09T14:40:28.886Z"
},
"access": {
"at": "2024-09-20T14:01:45.603Z"
},
"joined": {
"at": "2024-05-09T14:40:28.886Z"
},
"created": {
"at": "2024-05-09T14:40:28.958Z",
"by": {
"id": "TKN-7670-9957",
"href": "/accounts/api-tokens/TKN-7670-9957",
"name": "[DO NOT REMOVE] PyraProxy"
}
},
"updated": {
"at": "2024-09-16T12:33:03.761Z",
"by": {
"href": "//"
}
}
}
}
{
"id": "USR-3773-5838",
"email": "test@testignite.de",
"status": "Active",
"firstName": "d",
"lastName": "d",
"settings": {
"cultureCode": "en-US",
"languageCode": "en-US"
},
"name": "d d",
"accounts": [
{
"id": "ACC-0774-6909",
"type": "Client",
"status": "Active",
"name": "Ignite Test CDG"
}
],
"currentAccount": {
"id": "ACC-0774-6909",
"type": "Client",
"status": "Active",
"name": "Ignite Test CDG"
},
"audit": {
"login": {
"at": "2024-05-09T14:40:28.886Z"
},
"created": {
"at": "2024-05-09T14:40:28.958Z",
"by": {
"id": "TKN-7670-9957",
"href": "/accounts/api-tokens/TKN-7670-9957",
"name": "[DO NOT REMOVE] PyraProxy"
}
},
"updated": {
"at": "2024-09-16T12:33:03.761Z",
"by": {
"href": "//"
}
}
}
}Updates the specific token object.
The Buyer object represents an individual buyer in the SoftwareOne Marketplace. Buyers are the recipients of invoices issued by SoftwareOne, and are essential for placing orders, creating agreements, and ordering subscriptions.
This object contains the following attributes:
id
string, core
(Read-only) The primary identifier for the buyer.
status
string
Represents the buyer status. Allowed values are:
Enabled
Active
Disabled
Deleted
name
string, core
Represents the buyer name.
icon
string
(Optional) The relative path to the buyer’s logo.
externalIds
object
(Optional) Represents the externalIds object.
address
object
(Optional) Represents the address object containing the buyer's address.
taxId
string
(Optional) The buyer's tax ID.
account
object
Represents the buyer’s account object.
sellers
object
Represents the seller object.
contact
object
Represents the contact object, which contains details of the contact person.
audit
object
(Read-only) Represents the audit object.
{
"id": "BUY-3911-2313",
"contact": {
"name": "Will Smith",
"firstName": "Will",
"lastName": "Smith",
"email": "will.smith@adastraflex.com",
"phone": null
},
"externalIds": {
"erpCompanyContact": "WW-CON-123456",
"erpCustomer": "WW-SCU-123456"
},
"status": "Active",
"icon": null,
"address": {
"addressLine1": "PO Box 31",
"addressLine2": "Victory Road",
"postCode": "DE24 8BJ",
"city": "Derby",
"state": "Derbs",
"country": "UK"
},
"taxId": "VAT1",
"name": "Stark Industries"
}{
"id": "BUY-3911-2313",
"contact": {
"name": "Will Smith",
"firstName": "Will",
"lastName": "Smith",
"email": "will.smith@adastraflex.com",
"phone": null,
"user": {
"id": "USR-0000-0001",
"icon": null,
"invited": "2024-02-03T11:34:15.381Z",
"joined": "2024-02-04T12:34:15.381Z",
"lastLogin": "2024-02-05T13:34:15.381Z",
"name": "Will Smith"
}
},
"externalIds": {
"erpCompanyContact": "WW-CON-123456",
"erpCustomer": "WW-SCU-123456"
},
"status": "Active",
"icon": null,
"address": {
"addressLine1": "PO Box 31",
"addressLine2": "Victory Road",
"postCode": "DE24 8BJ",
"city": "Derby",
"state": "Derbs",
"country": "UK"
},
"taxId": "VAT1",
"account": {
"id": "ACC-5563-4382",
"type": "Client",
"status": "Active",
"icon": null,
"name": "AdAstraflexx"
},
"name": "Stark Industries",
"sellers": [
{
"id": "SEL-1299-2079",
"externalId": "SWO_CH",
"name": "SoftwareOne AG"
}
],
"audit": {
"created": {
"at": "2023-12-14T13:44:20.896Z",
"by": {
"id": "USR-0000-0001",
"icon": null,
"invited": "2024-02-03T11:34:15.383Z",
"joined": "2024-02-04T12:34:15.383Z",
"lastLogin": null,
"name": "Will Smith"
}
},
"updated": {
"at": "2024-01-06T19:04:16.692Z",
"by": {
"id": "USR-0000-0001",
"icon": null,
"invited": "2024-02-03T11:34:15.383Z",
"joined": "2024-02-04T12:34:15.383Z",
"lastLogin": null,
"name": "Will Smith"
}
}
}
}The Seller object represents a seller in the Marketplace platform.
This object contains the following attributes:
id
string, core
(Read-only) Primary identifier for the seller.
status
string
The seller's status. Allowed values are:
Active
Disabled
Offline
Deleted
name
string, core
The name of the seller.
icon
string
(Optional) The relative path to the seller’s logo.
externalId
string, core
The external identifier.
address
object
The address of the seller.
Example:
currency
string
The currency of the seller.
buyers
object
Represents the buyer object.
audit
object
(Read-only) Represents the audit object.
{
"id": "SEL-7295-4834",
"externalId": "SWO_CH",
"status": "Active",
"icon": null,
"currency": "USD",
"address": {
"addressLine1": "Some street",
"addressLine2": null,
"postCode": "P0S C0D3",
"city": "Some city",
"state": "SS",
"country": "CH"
},
"name": "SoftwareOne AG"
}{
"id": "SEL-7295-4834",
"externalId": "SWO_CH",
"status": "Active",
"icon": null,
"currency": "USD",
"address": {
"addressLine1": "Some street",
"addressLine2": null,
"postCode": "P0S C0D3",
"city": "Some city",
"state": "SS",
"country": "CH"
},
"name": "SoftwareOne AG",
"buyers": [
{
"id": "BUY-2321-7707",
"name": "My first buyer"
}
],
"audit": {
"created": {
"at": "2023-12-14T14:19:13.410Z",
"by": {
"id": "USR-0000-0001",
"icon": null,
"invited": "2024-02-03T11:59:55.933Z",
"joined": "2024-02-04T12:59:55.933Z",
"lastLogin": null,
"name": "Will Smith"
}
},
"updated": {
"at": "2024-01-24T09:33:09.073Z",
"by": {
"id": "USR-0000-0001",
"icon": null,
"invited": "2024-02-03T11:59:55.933Z",
"joined": "2024-02-04T12:59:55.933Z",
"lastLogin": "2024-02-05T13:59:55.933Z",
"name": "Will Smith"
}
}
}
}{
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"postCode": "12345",
"city": "Cityville",
"state": "S",
"country": "ST"
}The Marketplace Platform provides three distinct user interfaces, namely the Client Portal, Vendor Portal, and Operations Portal. This topic describes how the account object transitions through different lifecycle states within the platform.
The following diagram shows how a client account moves between states like enable, activate, and disable.
The following diagram shows how a vendor account progresses between states.
New
This is the default state of a newly created account. This state is not visible on the interface.
Enabled
The account has been created, but it has not been fully set up yet in the system. While the account can be used for transactions, these transactions will not be completed.
Active
The account is fully operational in the Marketplace.
Disabled
The account is not available for transactions, and users cannot sign in or switch to this account.


Deactivates a seller. When the seller has been deactivated, the status changes from Active to Offline.
Get all users assigned to an account.
Gets a single licensee object by ID.
Use the Accounts API to manage accounts, users, and related entities programmatically.
The Accounts API enables you to programmatically access and manage key account-related data within the Marketplace Platform.
It provides secure endpoints that allow you to perform operations such as creating, updating, and retrieving information about accounts, users, user groups, licensees, sellers, and API tokens.
Additionally, the API supports retrieving a list of available modules within the platform and managing ERP system links.
Review the shared API docs before you work with account resources.
The Accounts API is built around the following core resources:
Account – Represents a client, vendor, or operations account.
Account user – Represents an account user.
API token – Represents an authentication token object.
Buyer – Represents entities that engage in commercial activities and are the recipients of invoices
The API is organized into collections, each containing a set of operations. Access to these operations varies by role, depending on whether you are a client, vendor, or operations user.
Use the following links to jump to the collection you need:
Cloud tenant – Represents a CloudTenant object in the Marketplace.
ERP link – Represents the connection between the buyer and seller objects in the Marketplace.
Licensee – Represents entities that consume the software products or services procured by the buyer.
Module – Represents modules within the platform, for example, Marketplace.
Seller – Represents SoftwareOne entities (for example, SoftwareOne Canada) that buy software solutions from vendors and sell those solutions to clients.
User – Represents users who sign in to the platform using their credentials and perform operations associated with their permissions.
User group – Represents a UserGroup object in the Marketplace.
POST
Creates a new account.
ops
PUT
Updates account details.
vendor, client, ops
GET
Retrieves a single Account by its ID.
vendor, client, ops
GET
Retrieves the full Accounts collection.
vendor, client, ops
POST
Re-enables a previously disabled account.
ops
POST
Disables the account; users cannot log in.
ops
POST
Activates an account that has been enabled.
ops
POST
Validates account data before creation.
ops
POST
Deactivates an active account.
ops
GET
Retrieves the account’s icon.
public
POST
Invites or re‑invites a user to the account.
vendor, client, ops
GET
Lists all users assigned to the account.
vendor, client, ops
GET
Retrieves an account user by ID.
vendor, client, ops
DELETE
Removes a user from the account.
vendor, client, ops
POST
Accepts a user invitation to the account.
vendor, client, ops
POST
Assigns an account user to specific groups.
vendor, client, ops
POST
Resends an invitation to the account.
vendor, client, ops
POST
Sends a new invitation when the previous one expired.
vendor, client, ops
PUT
Updates a user’s group assignment.
vendor, client, ops
DELETE
Removes an account user from specific groups.
vendor, client, ops
POST
Creates an API token for the account.
vendor, client, ops
GET
Retrieves the API tokens collection.
vendor, client, ops
GET
Retrieves an API token by ID.
vendor, client, ops
PUT
Updates an existing API token.
vendor, client, ops
DELETE
Deletes an API token.
vendor, client, ops
POST
Disables an API token.
vendor, client, ops
POST
Enables a previously disabled API token.
vendor, client, ops
POST
Creates a buyer for the client account.
ops
GET
Retrieves the buyers collection.
client, ops
GET
Retrieves a buyer by ID.
client, ops
PUT
Updates a buyer.
client, ops
POST
Disables a buyer.
client, ops
POST
Enables a previously disabled buyer.
ops
POST
Validates buyer data.
ops
DELETE
Deletes a buyer.
ops
POST
Deactivates a buyer.
ops
POST
Synchronizes a buyer with the ERP system.
ops
POST
Transfers a buyer and its dependencies between accounts with same External ID.
ops
GET
Retrieves buyer transfer information, optionally validating destination account.
public
GET
Retrieves the buyer’s icon.
vendor, client, ops
POST
Creates a cloud tenant.
ops
GET
Retrieves the cloud tenants collection.
ops
GET
Retrieves a cloud tenant by ID.
ops
PUT
Updates a cloud tenant.
ops
DELETE
Deletes a cloud tenant.
ops
POST
Creates a seller for the account.
ops
GET
Retrieves the sellers collection.
client, ops
GET
Retrieves a seller by ID.
client, ops
PUT
Updates a seller.
ops
POST
Activates a previously deactivated or disabled seller.
ops
POST
Deactivates a seller.
ops
POST
Disables a seller.
ops
DELETE
Deletes a seller.
public
GET
Retrieves the seller icon.
ops
GET
Retrieves the ERP Links collection.
client, ops
GET
Retrieves an ERP Link by ID.
client, ops
PUT
Updates an ERP Link.
ops
POST
Unblocks an ERP Link.
ops
POST
Blocks an ERP Link.
ops
POST
Creates a licensee linking a Buyer and Seller.
client, ops
GET
Retrieves the licensees collection.
client, ops
GET
Retrieves a licensee by ID.
client, ops
PUT
Updates a licensee.
client, ops
POST
Disables a licensee.
client, ops
POST
Enables a previously disabled licensee.
client, ops
DELETE
Deletes a licensee.
ops
GET
Retrieves the licensee icon.
public
GET
Retrieves the list of modules available in the portal.
ops
GET
Retrieves the platform users collection.
vendor, client, ops
GET
Retrieves a user by ID.
vendor, client, ops
GET
Retrieves SSO configuration for the user.
vendor, client, ops
PUT
Updates a user.
vendor, client, ops
POST
Sets password for non‑SSO users during onboarding.
vendor, client, ops
POST
Blocks a user, preventing login.
ops
POST
Unblocks a previously blocked user.
ops
POST
Creates a user group for the account.
vendor, client, ops
GET
Retrieves the user groups collection.
vendor, client, ops
GET
Retrieves a user group by ID.
vendor, client, ops
PUT
Updates a user group.
vendor, client, ops
DELETE
Deletes a user group.
vendor, client, ops
OK
Bad Request
GET /public/v1/accounts/buyers/{id}/transfer HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
],
"stats": {
"licenseeCount": 1,
"orderCount": 1,
"subscriptionCount": 1,
"userCount": 1,
"userGroupCount": 1,
"agreementCount": 1
},
"users": [
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}
]
}OK
Bad Request
Not Found
Conflict
POST /public/v1/accounts/buyers/{id}/synchronize HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}OK
Bad Request
Not Found
POST /public/v1/accounts/buyers/{id}/deactivate HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}OK
Bad Request
Not Found
POST /public/v1/accounts/buyers/{id}/transfer HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 1109
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}Enable API token. Changes API token state to Active (e.g. from Disabled). Available for all account types (Operations account, Client account, Vendor account). Returns the updated API token object.
API token identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/api-tokens/{id}/enable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "TKN-4134-7330",
"revision": 2,
"name": "Robot",
"description": "Token for ERP integration",
"status": "Active",
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
}
],
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"enabled": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Disable API token. Changes API token state to Disabled. Available for all account types (Operations account, Client account, Vendor account). Returns the updated API token object.
API token identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/api-tokens/{id}/disable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "TKN-4134-7330",
"revision": 2,
"name": "Robot",
"description": "Token for ERP integration",
"status": "Disabled",
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
}
],
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:05:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"disabled": {
"at": "2024-02-02T10:05:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Delete seller. Available for Operations account with platform account management permissions. Removes the seller record. Returns 204 No Content on success.
Seller identifier.
No Content
No content
Bad Request
Not Found
DELETE /public/v1/accounts/sellers/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
Update user group. Accepts a delta payload with fields to update (e.g. name, description, logo, modules, buyers). Returns the updated user group object.
User group identifier.
OK
Bad Request
Not Found
PUT /public/v1/accounts/user-groups/{id} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 101
{
"name": "Rolls-Royce Updated",
"description": "Updated description",
"modules": [
{
"id": "MOD-1756-1452"
}
]
}{
"id": "UGR-5116-6265",
"revision": 2,
"name": "Rolls-Royce Updated",
"description": "Updated description",
"isDefault": false,
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
}
],
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Temporary Redirect
No content
Not Found
GET /public/v1/accounts/buyers/{id}/icon HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
OK
Bad Request
Not Found
POST /public/v1/accounts/buyers/{id}/disable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}Disable an active account. Access: Authenticated account with platform account management permissions. Moves the account to the Disabled state. Returns the updated account object.
Account identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/accounts/{id}/disable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "ACC-1234-1234",
"revision": 2,
"name": "Contoso Ltd",
"status": "Disabled",
"type": "Vendor",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:05:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"disabled": {
"at": "2024-02-02T10:05:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}List licensees. Available for Client and Operations accounts. Returns a paged list of licensees; supports RQL query parameters for filtering and selection.
OK
GET /public/v1/accounts/licensees HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "LCE-8893-6916-0000",
"revision": 2,
"name": "Rolls-Royce Canada Limited",
"status": "Active",
"buyer": {
"id": "BUY-8928-0965",
"name": "Rolls-Royce Canada Limited"
},
"seller": {
"id": "SEL-4717-3953",
"name": "SoftwareOne Canada, Inc."
}
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}No Content
No content
Bad Request
Not Found
DELETE /public/v1/accounts/buyers/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
Delete API token. Available for all account types (Operations account, Client account, Vendor account). Permanently removes the API token; it can no longer be used for authentication. Returns 204 No Content on success.
API token identifier.
No Content
No content
Bad Request
Not Found
DELETE /public/v1/accounts/api-tokens/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
Delete cloud tenant. Available for Operations account with platform account management permissions. Permanently removes the cloud tenant record. Returns 204 No Content on success.
Cloud tenant identifier.
No Content
No content
Not Found
DELETE /public/v1/accounts/cloud-tenants/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
List API tokens. Available for all account types (Operations account, Client account, Vendor account). Returns a paged list of API tokens; supports RQL query parameters for filtering and selection.
OK
GET /public/v1/accounts/api-tokens HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "TKN-4134-7330",
"revision": 2,
"name": "Robot",
"description": "Token for ERP integration",
"status": "Active",
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
},
{
"id": "MOD-9042-8216"
}
]
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}OK
Bad Request
Not Found
PUT /public/v1/accounts/buyers/{id} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 1151
{
"buyer": {
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
],
"logo": "binary"
},
"logo": "binary"
}{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}OK
Bad Request
Not Found
POST /public/v1/accounts/account-users/{id}/send-new-invite HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}OK
Not Found
GET /public/v1/accounts/buyers/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}Get account icon by identifier. Access: Anonymous. Returns a redirect to the icon binary URL. Uses a private blob cache profile for the response.
Account identifier.
Temporary Redirect
No content
Not Found
GET /public/v1/accounts/accounts/{id}/icon HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
Delete licensee. Available for Operations account. Removes the licensee record. Returns 204 No Content on success.
Licensee identifier.
No Content
No content
Bad Request
Not Found
DELETE /public/v1/accounts/licensees/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
Get seller icon. Available for public access (no authentication required). Returns a redirect (307) to the icon binary URL. Response uses a private blob cache profile.
Seller identifier.
Temporary Redirect
No content
Not Found
GET /public/v1/accounts/sellers/{id}/icon HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
Disable licensee. Moves the licensee status to Disabled. Available for Client and Operations accounts. Returns the updated licensee object.
Licensee identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/licensees/{id}/disable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "LCE-8893-6916-0000",
"revision": 2,
"name": "Rolls-Royce Canada Limited",
"status": "Disabled",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:35:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"disabled": {
"at": "2024-02-02T10:35:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}List accounts. Available for Operations account with platform account management permissions. Returns a paged list of accounts; supports RQL query parameters for filtering and selection.
OK
GET /public/v1/accounts/accounts HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "ACC-1234-1234",
"revision": 2,
"name": "Contoso Ltd",
"type": "Vendor",
"status": "Active",
"externalId": "WW-CON-123456"
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}Update ERP link. Available for Operations account with platform account management permissions. Accepts application/json or multipart/form-data (with optional icon). Use JSON for field updates and multipart when uploading an icon. Updates ERP link fields such as note, externalIds, or address. Returns the updated ERP link object.
ERP link identifier.
OK
Bad Request
Not Found
PUT /public/v1/accounts/erp-links/{id} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 1365
{
"erplink": {
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"blocked": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unblocked": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"buyer": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"seller": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
},
"companyName": "text",
"status": "Active",
"note": "text",
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"shipTo": [
{
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text",
"externalId": "text",
"name": "text"
}
],
"billTo": [
{
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text",
"externalId": "text",
"name": "text"
}
]
},
"logo": "binary"
}{
"id": "ERP-0808-7934-2576",
"revision": 2,
"name": "AGCO Corporation - SoftwareONE Argentina",
"status": "Active",
"note": "Blocked due to validation",
"audit": {
"created": {
"at": "2024-01-21T12:27:31+00:00",
"by": {
"id": "TKN-4113-7170",
"name": "Navision Extension"
}
},
"updated": {
"at": "2024-02-02T10:05:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Get cloud tenant by ID. Available for Operations account with platform account management permissions. Returns a single cloud tenant with id, name, status, type, account, externalIds, and audit. Optional select query parameter controls which fields are returned.
Cloud tenant identifier.
Optional RQL select statement to limit returned fields.
OK
Not Found
GET /public/v1/accounts/cloud-tenants/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "CLT-3206-7146",
"revision": 2,
"name": "AdAstraflex Germany",
"status": "Active",
"type": "CspAzure",
"account": {
"id": "ACC-2253-2884",
"name": "AdAstrafleX"
},
"externalIds": {
"pyraTenantId": "c6469e97-302a-408a-8589-2122a0bb725d",
"cloudConsumptionId": "012b2a18-1df0-473f-8759-c3c019b54486",
"providerId": "7270638c-ca21-4500-ac82-25dca634566a"
}
}List cloud tenants. Available for Operations account with platform account management permissions. Returns a paged list of cloud tenants; supports RQL query parameters for filtering and selection.
OK
GET /public/v1/accounts/cloud-tenants HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "CLT-3206-7146",
"revision": 2,
"name": "AdAstraflex Germany",
"status": "Active",
"type": "CspAzure",
"account": {
"id": "ACC-2253-2884",
"name": "AdAstrafleX"
}
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}Unblock ERP link. Moves the ERP link status to Active. Available for Operations account with platform account management permissions. Returns the updated ERP link object.
ERP link identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/erp-links/{id}/unblock HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 33
{
"note": "Unblocked after review"
}{
"id": "ERP-0808-7934-2576",
"revision": 2,
"name": "AGCO Corporation - SoftwareONE Argentina",
"status": "Active",
"note": "Unblocked after review",
"audit": {
"created": {
"at": "2024-01-21T12:27:31+00:00",
"by": {
"id": "TKN-4113-7170",
"name": "Navision Extension"
}
},
"updated": {
"at": "2024-02-02T10:15:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"blocked": {
"at": "2024-02-02T15:15:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"unblocked": {
"at": "2024-02-02T20:15:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}OK
Bad Request
Not Found
POST /public/v1/accounts/buyers/{id}/enable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}Enable licensee. Moves the licensee status to Enabled. Available for Client and Operations accounts. Returns the updated licensee object.
Licensee identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/licensees/{id}/enable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "LCE-8893-6916-0000",
"revision": 2,
"name": "Rolls-Royce Canada Limited",
"status": "Enabled",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:30:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"enabled": {
"at": "2024-02-02T10:30:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Activate seller. Changes seller state to Active. Available for Operations account with platform account management permissions. Returns the updated seller object.
Seller identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/sellers/{id}/activate HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "SEL-7295-4834",
"revision": 2,
"name": "SoftwareOne AG",
"externalId": "SWO_CH",
"status": "Active",
"icon": null,
"currencies": [
"USD"
],
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"activated": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Update seller. Available for Operations account with platform account management permissions. Accepts application/json or multipart/form-data (with optional icon). Updates seller fields such as name, address, or external identifiers. Returns the updated seller object.
Seller identifier.
OK
Bad Request
Not Found
PUT /public/v1/accounts/sellers/{id} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 692
{
"seller": {
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text",
"status": "Active",
"currencies": [
{
"value": "text",
"billingEnabled": true,
"isDefault": true
}
],
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"erpLink": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"companyName": "text",
"status": "Active"
},
"attributes": {
"navision": null
}
},
"logo": "binary"
}{
"id": "SEL-7295-4834",
"revision": 2,
"name": "SoftwareOne AG",
"icon": "/static/accounts/SEL-7295-4834/logo.png",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:20:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Get user group by ID. Returns a single user group with id, name, description, account, modules, users, buyers, and default flag. Optional select query parameter controls which fields are returned.
User group identifier.
Optional RQL select statement to limit returned fields.
OK
Not Found
GET /public/v1/accounts/user-groups/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "UGR-5116-6265",
"revision": 2,
"name": "Test-1",
"description": "Group for access management",
"isDefault": false,
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452",
"name": "Access management"
},
{
"id": "MOD-9042-8216",
"name": "Account management"
}
],
"users": [
{
"id": "USR-0000-0016",
"name": "Astha Pruthi"
}
]
}Get licensee icon. Access: Public. Returns a redirect to the icon binary URL. Uses a private blob cache profile for the response.
Licensee identifier.
Temporary Redirect
No content
Not Found
GET /public/v1/accounts/licensees/{id}/icon HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
No Content
No content
Bad Request
Not Found
DELETE /public/v1/accounts/account-users/{id}/groups/{userGroupId} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
^UGR-\d\d\d\d-\d\d\d\d$^UGR-\d\d\d\d-\d\d\d\d$OK
Bad Request
Not Found
PUT /public/v1/accounts/account-users/{id}/groups HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 13
{
"id": "text"
}{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}OK
Bad Request
Not Found
POST /public/v1/accounts/account-users/{id}/resend-invite HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}Get seller by ID. Available for Client, Vendor and Operations accounts. Returns a single seller with id, name, status, address, currencies, and audit. Optional select query parameter controls which fields are returned.
Seller identifier.
Optional RQL select statement to limit returned fields.
OK
Not Found
GET /public/v1/accounts/sellers/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "SEL-7295-4834",
"revision": 2,
"name": "SoftwareOne AG",
"externalId": "SWO_CH",
"status": "Active",
"currencies": [
"USD"
],
"address": {
"addressLine1": "Some street",
"postCode": "P0S C0D3",
"city": "Some city",
"state": "SS",
"country": "CH"
}
}List sellers. Available for Client, Vendor and Operations accounts. Returns a paged list of sellers; supports RQL query parameters for filtering and selection.
OK
GET /public/v1/accounts/sellers HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "SEL-7295-4834",
"revision": 2,
"name": "SoftwareOne AG",
"externalId": "SWO_CH",
"status": "Active",
"currencies": [
"USD"
]
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}List ERP links. Available for Operations account with platform account management permissions. Returns a paged list of ERP links; supports RQL query parameters for filtering and selection.
OK
GET /public/v1/accounts/erp-links HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "ERP-0808-7934-2576",
"revision": 2,
"name": "AGCO Corporation - SoftwareONE Argentina",
"status": "Active",
"companyName": "AGCO Corporation",
"buyer": {
"id": "BUY-0808-7934",
"name": "AGCO Corporation"
},
"seller": {
"id": "SEL-1968-2576",
"name": "SoftwareONE Argentina"
}
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}Disable seller. Changes seller state to Disabled. Available for Operations account with platform account management permissions. Returns the updated seller object.
Seller identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/sellers/{id}/disable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "SEL-7295-4834",
"revision": 2,
"name": "SoftwareOne AG",
"externalId": "SWO_CH",
"status": "Disabled",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:10:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"disabled": {
"at": "2024-02-02T10:10:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Update API token. Available for all account types (Operations account, Client account, Vendor account). Accepts a delta payload with fields to update (e.g. name, description, icon, modules). Returns the updated API token object.
API token identifier.
OK
Bad Request
Not Found
PUT /public/v1/accounts/api-tokens/{id} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 95
{
"name": "Robot Updated",
"description": "Updated description",
"modules": [
{
"id": "MOD-1756-1452"
}
]
}{
"id": "TKN-4134-7330",
"revision": 2,
"name": "Robot Updated",
"description": "Updated description",
"status": "Active",
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
}
],
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Get account by ID. Available for Operations account with platform account management permissions. Returns a single account with id, name, type, status, address, eligibility, and audit. Optional select query parameter controls which fields are returned.
Account identifier.
Optional RQL select statement to limit returned fields.
OK
Not Found
GET /public/v1/accounts/accounts/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "ACC-1234-1234",
"revision": 2,
"name": "Contoso Ltd",
"type": "Vendor",
"status": "Active",
"externalId": "WW-CON-123456",
"address": {
"addressLine1": "123 Main Street",
"postCode": "12345",
"city": "Cityville",
"state": "S",
"country": "ST"
},
"eligibility": {
"client": true,
"partner": false
}
}Deactivate seller. Changes seller state to Offline (e.g for maintenance). Available for Operations account with platform account management permissions. Returns the updated seller object.
Seller identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/sellers/{id}/deactivate HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "SEL-7295-4834",
"revision": 2,
"name": "SoftwareOne AG",
"externalId": "SWO_CH",
"status": "Offline",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:05:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"offline": {
"at": "2024-02-02T10:05:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Get licensee by ID. Available for Client and Operations accounts. Returns a single licensee with buyer, seller, address, and audit. Optional select query parameter controls which fields are returned.
Licensee identifier.
Optional RQL select statement to limit returned fields.
OK
Not Found
GET /public/v1/accounts/licensees/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "LCE-8893-6916-0000",
"revision": 2,
"name": "Rolls-Royce Canada Limited",
"externalId": "WW-CON-12345678",
"status": "Active",
"buyer": {
"id": "BUY-8928-0965",
"name": "Rolls-Royce Canada Limited"
},
"seller": {
"id": "SEL-4717-3953",
"name": "SoftwareOne Canada, Inc."
},
"address": {
"addressLine1": "123 Main Street",
"postCode": "12345",
"city": "Cityville",
"state": "S",
"country": "ST"
}
}Get ERP link by ID. Available for Operations account with platform account management permissions. Returns a single ERP link with buyer, seller, externalIds, address, and audit. Optional select query parameter controls which fields are returned.
ERP link identifier.
Optional RQL select statement to limit returned fields.
OK
Not Found
GET /public/v1/accounts/erp-links/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "ERP-0808-7934-2576",
"revision": 2,
"name": "AGCO Corporation - SoftwareONE Argentina",
"status": "Active",
"companyName": "AGCO Corporation",
"buyer": {
"id": "BUY-0808-7934",
"name": "AGCO Corporation"
},
"seller": {
"id": "SEL-1968-2576",
"name": "SoftwareONE Argentina",
"icon": "/v1/accounts/sellers/SEL-1968-2576/icon"
},
"externalIds": {
"erpCompanyContact": "US-CON-183485",
"erpCustomer": "US-SCU-117126",
"accountExternalId": "WW-100502"
},
"address": {
"addressLine1": "4205 River Green Pkwy",
"postCode": "30096",
"city": "DULUTH",
"state": "GA",
"country": "US"
}
}Deactivate account. Moves the account from Active to Enabled. Available for Operations account with platform account management permissions. Returns the updated account object.
Account identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/accounts/{id}/deactivate HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "ACC-1234-1234",
"revision": 2,
"name": "Contoso Ltd",
"status": "Disabled",
"type": "Vendor",
"audit": {
"created": {
"at": "2024-01-15T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:15:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"activated": {
"at": "2024-02-02T15:15:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"deactivated": {
"at": "2024-02-02T20:15:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Create seller. Available for Operations account with platform account management permissions. Accepts application/json. Returns the created seller object.
Created
Bad Request
POST /public/v1/accounts/sellers HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 220
{
"name": "SoftwareOne AG",
"externalId": "SWO_CH",
"status": "Active",
"currencies": [
"USD"
],
"address": {
"addressLine1": "Some street",
"addressLine2": "Apt 4B",
"postCode": "P0S C0D3",
"city": "Some city",
"state": "SS",
"country": "CH"
}
}{
"id": "SEL-7295-4834",
"revision": 1,
"name": "SoftwareOne AG",
"externalId": "SWO_CH",
"status": "Active",
"currencies": [
"USD"
],
"address": {
"addressLine1": "Some street",
"addressLine2": "Apt 4B",
"postCode": "P0S C0D3",
"city": "Some city",
"state": "SS",
"country": "CH"
},
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Enable a disabled account. Available for Operations account with platform account management permissions. Moves the account to the Enabled state. Returns the updated account object.
Account identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/accounts/{id}/enable HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "ACC-1234-1234",
"revision": 2,
"name": "Contoso Ltd",
"status": "Enabled",
"type": "Vendor",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"enabled": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}List modules. Available for Operations account with platform account management permissions. Returns a paged list of modules; supports RQL query parameters for filtering and selection.
OK
GET /public/v1/accounts/modules HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "MOD-1234",
"revision": 1,
"name": "Invoices",
"description": "Invoices module",
"accountTypes": [
"vendor",
"client",
"operations"
],
"settings": {
"sharedAccount": true,
"configurable": true,
"default": true,
"paid": false
},
"filters": {
"group.buyers": [
"selected",
"all"
]
}
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}Get API token by ID. Available for all account types (Operations account, Client account, Vendor account). Returns a single API token; token value is not returned (only on create). Optional select query parameter controls which fields are returned.
API token identifier.
Optional RQL select statement to limit returned fields.
OK
Not Found
GET /public/v1/accounts/api-tokens/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "TKN-4134-7330",
"revision": 2,
"name": "Robot",
"description": "Token for ERP integration",
"status": "Active",
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
},
{
"id": "MOD-9042-8216"
}
]
}List user groups. Returns a paged list of user groups; supports RQL query parameters for filtering and selection.
OK
GET /public/v1/accounts/user-groups HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "UGR-5116-6265",
"revision": 2,
"name": "Test-1",
"description": "Group for access management",
"isDefault": false,
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
},
{
"id": "MOD-9042-8216"
}
]
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}Validate account payload and external identifiers. Available for Operations account with platform account management permissions. Returns validation result. Use this endpoint to check account externalId constraints before activation.
OK
Bad Request
POST /public/v1/accounts/accounts/{id}/validate HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 43
{
"revision": 1,
"externalId": "WW-CON-123456"
}{
"revision": 2,
"externalId": "WW-CON-123456"
}Create licensee. Available for Client and Operations accounts. Accepts application/json or multipart/form-data (with optional icon). Creates a licensee to link Buyer and Seller. Returns the created licensee object.
Created
Bad Request
POST /public/v1/accounts/licensees HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 944
{
"licensee": {
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text",
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"useBuyerAddress": true,
"description": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"buyer": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"seller": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
},
"eligibility": {
"client": true,
"partner": true
},
"logo": "binary"
},
"logo": "binary"
}{
"id": "LCE-8893-6916-0000",
"revision": 1,
"name": "Rolls-Royce Canada Limited",
"status": "Active",
"icon": "/static/accounts/LCE-8893-6916-0000/logo.png",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Activate account. Available for Operations account with platform account management permissions. Moves the account to Active state and sets the externalId from the request if sent. Returns the updated account object with audit.activated.
Account identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/accounts/{id}/activate HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 30
{
"externalId": "WW-CON-123456"
}{
"id": "ACC-1234-1234",
"revision": 2,
"name": "Contoso Ltd",
"status": "Active",
"externalId": "WW-CON-123456",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:10:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"activated": {
"at": "2024-02-02T10:10:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Update cloud tenant. Available for Operations account with platform account management permissions. Support partial update pattern (e.g. name, status). Returns the updated cloud tenant object.
Cloud tenant identifier.
OK
Bad Request
Not Found
PUT /public/v1/accounts/cloud-tenants/{id} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 56
{
"name": "AdAstraflex Germany Updated",
"status": "Active"
}{
"id": "CLT-3206-7146",
"revision": 2,
"name": "AdAstraflex Germany Updated",
"status": "Active",
"type": "CspAzure",
"account": {
"id": "ACC-2253-2884",
"name": "AdAstrafleX"
},
"externalIds": {
"pyraTenantId": "c6469e97-302a-408a-8589-2122a0bb725d",
"cloudConsumptionId": "012b2a18-1df0-473f-8759-c3c019b54486",
"providerId": "7270638c-ca21-4500-ac82-25dca634566a"
},
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "TKN-9299-7556",
"name": "Migration token"
}
},
"updated": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "TKN-9299-7556",
"name": "Migration token"
}
}
}
}Create a new account. Available for Operations account with platform account management permissions. Creates account record and optional user groups/modules scope. When used Content-type: application/json - account created without icon. When used Content-type: multipart/form-data - account created with icon, parts should account and logo. Returns the created account object.
Created
Bad Request
POST /public/v1/accounts/accounts HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 868
{
"account": {
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active",
"externalIds": {
"pyraTenantId": "123e4567-e89b-12d3-a456-426614174000"
},
"externalId": "text",
"externalName": "text",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"technicalSupportEmail": "name@gmail.com",
"website": "text",
"description": "text",
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"eligibility": {
"client": true,
"partner": true
},
"defaultLanguageCode": "text",
"logo": "binary"
},
"logo": "binary"
}{
"id": "ACC-1234-1234",
"revision": 1,
"name": "Contoso Ltd",
"type": "Vendor",
"status": "Active",
"externalId": "WW-CON-123456",
"externalName": "Contoso",
"website": "https://contoso.com",
"description": "Enterprise customer account",
"address": {
"addressLine1": "123 Main Street",
"addressLine2": "Apt 4B",
"postCode": "12345",
"city": "Cityville",
"state": "S",
"country": "ST"
},
"eligibility": {
"client": true,
"partner": false
},
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Block ERP link. Moves the ERP link status to Blocked. Available for Operations account with platform account management permissions. Returns the updated ERP link object.
ERP link identifier.
OK
Bad Request
Not Found
POST /public/v1/accounts/erp-links/{id}/block HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 36
{
"note": "Blocked due to validation"
}{
"id": "ERP-0808-7934-2576",
"revision": 2,
"name": "AGCO Corporation - SoftwareONE Argentina",
"status": "Blocked",
"note": "Blocked due to validation",
"audit": {
"created": {
"at": "2024-01-21T12:27:31+00:00",
"by": {
"id": "TKN-4113-7170",
"name": "Navision Extension"
}
},
"updated": {
"at": "2024-02-02T10:10:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"blocked": {
"at": "2024-02-02T10:10:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Create cloud tenant. Available for Operations account with platform account management permissions. Accepts type, name, status, external IDs (pyraTenantId, cloudConsumptionId, providerId), and optional account reference. Returns the created cloud tenant object with revision 1.
^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$Created
Bad Request
POST /public/v1/accounts/cloud-tenants HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 281
{
"type": "CspAzure",
"name": "AdAstraflex Germany",
"status": "Active",
"externalIds": {
"pyraTenantId": "c6469e97-302a-408a-8589-2122a0bb725d",
"cloudConsumptionId": "012b2a18-1df0-473f-8759-c3c019b54486",
"providerId": "7270638c-ca21-4500-ac82-25dca634566a"
},
"account": {
"id": "ACC-2253-2884"
}
}{
"id": "CLT-3206-7146",
"revision": 1,
"name": "AdAstraflex Germany",
"status": "Active",
"type": "CspAzure",
"account": {
"id": "ACC-2253-2884",
"name": "AdAstrafleX"
},
"externalIds": {
"pyraTenantId": "c6469e97-302a-408a-8589-2122a0bb725d",
"cloudConsumptionId": "012b2a18-1df0-473f-8759-c3c019b54486",
"providerId": "7270638c-ca21-4500-ac82-25dca634566a"
},
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "TKN-9299-7556",
"name": "Migration token"
}
},
"updated": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "TKN-9299-7556",
"name": "Migration token"
}
}
}
}Create user group. Accepts account reference, name, optional description and logo, modules (at least one), and optional buyers and extensions. Returns the created user group object with revision 1.
^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^MOD-\d\d\d\d$^MOD-\d\d\d\d$^BUY-\d\d\d\d-\d\d\d\d$Created
Bad Request
POST /public/v1/accounts/user-groups HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 188
{
"account": {
"id": "ACC-1234-5678"
},
"name": "Rolls-Royce",
"description": "The best car producer ever",
"modules": [
{
"id": "MOD-1756-1452"
},
{
"id": "MOD-9042-8216"
}
],
"buyers": null,
"extensions": null
}{
"id": "UGR-5116-6265",
"revision": 1,
"name": "Rolls-Royce",
"description": "The best car producer ever",
"isDefault": false,
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
},
{
"id": "MOD-9042-8216"
}
],
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Creates a new token object for the specific account.
Validate a Buyer object.
Updates the licensee object.
You can update the licensee Seller object, except the status (which is managed through the disable, enable, delete endpoints), buyersId , and sellersId.
OK
Bad Request
POST /public/v1/accounts/buyers/{id}/validate HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 1109
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}Licensee identifier.
OK
Bad Request
Not Found
PUT /public/v1/accounts/licensees/{id} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 944
{
"licensee": {
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text",
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"useBuyerAddress": true,
"description": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"buyer": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"seller": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
},
"eligibility": {
"client": true,
"partner": true
},
"logo": "binary"
},
"logo": "binary"
}{
"id": "LCE-8893-6916-0000",
"revision": 2,
"name": "Rolls-Royce Canada Limited",
"icon": "/static/accounts/LCE-8893-6916-0000/logo.png",
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-02T10:25:00+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}Create API token. Available for all account types (Operations account, Client account, Vendor account). Accepts account reference, name, optional description, and at least one module. Returns the created API token object with revision 1 and token value (returned only on create).
^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^MOD-\d\d\d\d$^MOD-\d\d\d\d$Created
Bad Request
POST /public/v1/accounts/api-tokens HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 149
{
"account": {
"id": "ACC-1234-5678"
},
"name": "Robot",
"description": "Token for ERP integration",
"modules": [
{
"id": "MOD-1756-1452"
},
{
"id": "MOD-9042-8216"
}
]
}{
"id": "TKN-4134-7330",
"revision": 1,
"name": "Robot",
"description": "Token for ERP integration",
"status": "Active",
"token": "idt:TKN-4134-7330:z24kA...328f",
"account": {
"id": "ACC-1234-5678",
"name": "Microsoft"
},
"modules": [
{
"id": "MOD-1756-1452"
},
{
"id": "MOD-9042-8216"
}
],
"audit": {
"created": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
},
"updated": {
"at": "2024-02-01T09:12:23+00:00",
"by": {
"id": "USR-0001",
"name": "Ops User"
}
}
}
}The following diagram shows the state (status) transition process of a seller in the platform.
Active
The seller is active and available for transactions in the Marketplace.
Offline
Creates a new Buyer object for the client account.
The seller is unavailable or offline.
Disabled
The seller is not operational and cannot be used for transactions. However, you can still access any historical data related to the seller.
Deleted
The seller has been deleted. This status is not visible on the interface.

Update licensee. Available for Client and Operations accounts. Accepts application/json or multipart/form-data (with optional icon). Updates licensee fields such as name, address, description, or contacts. Returns the updated licensee object.
Update account. Available for Operations account with platform account management permissions. Accepts application/json or multipart/form-data (with optional icon). Updates account fields such as name, address, website, and description. Returns the updated account object.
Account identifier.
OK
Bad Request
Not Found
PUT /public/v1/accounts/accounts/{id} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 868
{
"account": {
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active",
"externalIds": {
"pyraTenantId": "123e4567-e89b-12d3-a456-426614174000"
},
"externalId": "text",
"externalName": "text",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"technicalSupportEmail": "name@gmail.com",
"website": "text",
"description": "text",
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"eligibility": {
"client": true,
"partner": true
},
"defaultLanguageCode": "text",
"logo": "binary"
},
"logo": "binary"
}{
"id": "ACC-1234-1234",
"revision": 2,
"name": "Contoso Ltd",
"icon": "/static/accounts/ACC-1234-1234/logo.png"
}This object contains the following attributes:
id
string, core
(Read-only) The primary identifier for the account user.
user
object, core
Represents the object.
account
object, core
Represents the object.
invitation
string
(Read-only) The status of the invitation. Allowed values are:
Invited
Active
InvitationExpired
groups
object
Represents the object containing a list of groups.
{
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
},
"omitted": [
"audit"
]
},
"data": [
{
"id": "AUSR-4134-7183-7330",
"user": {
"id": "USR-6375-2499",
"email": "janedoe@example.com",
"firstName": "jane",
"lastName": "doe"
},
"groups": [
{
"id": "UGR-8447-7590",
"name": "Reto",
"description": "Mayer",
"logo": "",
"isDefault": false
}
],
"account": {
"id": "ACC-1671-0642",
"icon": null,
"name": "This is my account."
},
"invitation": {
"code": "TEST",
"status": "Invited"
}
}
]
}OK
GET /public/v1/accounts/buyers HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"$meta": {
"pagination": {
"offset": 1,
"limit": 1,
"total": 1
},
"omitted": [
"text"
]
},
"data": [
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}
]
}Blocks a user and prevents access. Returns the updated user object.
User identifier (USR-...) or user email address.
OK
Bad Request
Not Found
POST /public/v1/accounts/users/{uniqueFilter}/block HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z"
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"email": "text",
"status": "text",
"phone": {
"prefix": "text",
"number": "text"
},
"firstName": "text",
"lastName": "text",
"lastLoginAt": "2026-01-01T00:00:00.000Z",
"settings": {
"cultureCode": "text",
"dateFormat": "text",
"languageCode": "text",
"numberFormat": {
"decimalSeparator": "text",
"groupSeparator": "text"
},
"timeFormat": "text",
"timeZone": "text",
"optOuts": {
"objectTypes": [
"text"
]
}
},
"accounts": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
}
],
"currentAccount": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
}
}Sets a new password for the user. Intended for password-based users; updates are applied immediately. Returns the updated user object.
User identifier (USR-...) or user email address.
OK
Bad Request
Not Found
POST /public/v1/accounts/users/{uniqueFilter}/set-password HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 65
{
"currentPassword": "OldPassword123",
"password": "NewPassword123!"
}{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z"
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"email": "text",
"status": "text",
"phone": {
"prefix": "text",
"number": "text"
},
"firstName": "text",
"lastName": "text",
"lastLoginAt": "2026-01-01T00:00:00.000Z",
"settings": {
"cultureCode": "text",
"dateFormat": "text",
"languageCode": "text",
"numberFormat": {
"decimalSeparator": "text",
"groupSeparator": "text"
},
"timeFormat": "text",
"timeZone": "text",
"optOuts": {
"objectTypes": [
"text"
]
}
},
"accounts": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
}
],
"currentAccount": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
}
}OK
Bad Request
Not Found
POST /public/v1/accounts/account-users/{id}/accept-invite HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}Unblocks a user and restores access. Returns the updated user object.
User identifier (USR-...) or user email address.
OK
Bad Request
Not Found
POST /public/v1/accounts/users/{uniqueFilter}/unblock HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z"
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"email": "text",
"status": "text",
"phone": {
"prefix": "text",
"number": "text"
},
"firstName": "text",
"lastName": "text",
"lastLoginAt": "2026-01-01T00:00:00.000Z",
"settings": {
"cultureCode": "text",
"dateFormat": "text",
"languageCode": "text",
"numberFormat": {
"decimalSeparator": "text",
"groupSeparator": "text"
},
"timeFormat": "text",
"timeZone": "text",
"optOuts": {
"objectTypes": [
"text"
]
}
},
"accounts": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
}
],
"currentAccount": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
}
}^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^ACC-\d\d\d\d-\d\d\d\d$^UGR-\d\d\d\d-\d\d\d\d$^UGR-\d\d\d\d-\d\d\d\d$Created
Bad Request
POST /public/v1/accounts/account-users HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 393
{
"id": "text",
"email": "name@gmail.com",
"firstName": "text",
"lastName": "text",
"phone": {
"prefix": "text",
"number": "text"
},
"settings": {
"cultureCode": "text",
"dateFormat": "text",
"languageCode": "text",
"numberFormat": {
"decimalSeparator": "text",
"groupSeparator": "text"
},
"timeFormat": "text",
"timeZone": "text"
},
"notes": "text",
"account": {
"id": "text"
},
"groups": [
{
"id": "text"
}
],
"invitation": {
"status": "text"
}
}{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}OK
Not Found
GET /public/v1/accounts/account-users/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}Delete user from account. Available for account users with platform account management permissions or to the user himself. When user removes himself from the account, that means leaving the account. Returns 204 No Content on success.
Account identifier.
User identifier.
No Content
No content
Bad Request
Not Found
DELETE /public/v1/accounts/accounts/{accountId}/users/{userId} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
Deprecated - use the /accounts/users/{userId}/sso endpoint instead. Returns an object with boolean isSso property.
User identifier (USR-...) or user email address.
OK
No content
Not Found
GET /public/v1/accounts/users/{uniqueFilter}/sso-check HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content
Get user by ID or unique filter. If uniqueFilter is a user ID, returns a full user representation (respecting optional select). Otherwise, resolves a user by the provided unique filter and returns a minimal payload containing id, email, status and audit.invitationAcceptedAt.
User identifier (USR-...) or user email address.
Optional RQL select statement to limit returned fields (only applied when requesting by user ID).
OK
Not Found
GET /public/v1/accounts/users/{uniqueFilter} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
"id": "USR-3758-7092",
"email": "john.doe@example.com",
"status": "Active",
"audit": {
"invitationAcceptedAt": "2026-02-02T10:00:00+00:00"
}
}OK
GET /public/v1/accounts/account-users HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"$meta": {
"pagination": {
"offset": 1,
"limit": 1,
"total": 1
},
"omitted": [
"text"
]
},
"data": [
{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}
]
}Created
Bad Request
POST /public/v1/accounts/buyers HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 1151
{
"buyer": {
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
],
"logo": "binary"
},
"logo": "binary"
}{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"activated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"unassigned": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"disabled": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
}
},
"$meta": {
"omitted": [
"text"
]
},
"name": "text",
"icon": "text",
"revision": 1,
"externalIds": {
"erpCompanyContact": "text",
"erpCustomer": "text",
"accountExternalId": "text"
},
"status": "Active",
"address": {
"addressLine1": "text",
"addressLine2": "text",
"postCode": "text",
"city": "text",
"state": "text",
"country": "text"
},
"taxId": "text",
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"errors": [
{
"id": "text",
"message": "text",
"parameters": null
}
],
"sellers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"externalId": "text"
}
]
}List users. Available for Operations account with platform account management permissions and for Client and Vendor accounts for own users. Returns a paged list of users; supports RQL query parameters for filtering, sorting, and selecting fields. Use the select parameter to limit fields for performance; default response includes audit and basic profile fields.
OK
GET /public/v1/accounts/users HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
OK
{
"data": [
{
"id": "USR-3758-7092",
"revision": 3,
"name": "John Doe",
"icon": "/v1/accounts/users/USR-3758-7092/icon",
"email": "john.doe@example.com",
"status": "Active",
"firstName": "John",
"lastName": "Doe",
"lastLoginAt": "2026-02-02T10:00:00+00:00",
"settings": {
"cultureCode": "en-US",
"languageCode": "en-US"
},
"currentAccount": {
"id": "ACC-3758-7092",
"type": "Client",
"status": "Active",
"name": "Example Account",
"icon": "/v1/accounts/accounts/ACC-3758-7092/icon"
},
"audit": {
"created": {
"at": "2024-02-02T10:00:00+00:00",
"by": {
"id": "USR-1234-5678",
"name": "John Doe"
}
},
"updated": {
"at": "2026-02-02T10:00:00+00:00",
"by": {
"id": "USR-0000-0022",
"name": "John Smith"
}
}
}
}
],
"$meta": {
"pagination": {
"offset": 0,
"limit": 10,
"total": 1
}
}
}Update account user. Available for Operations account with platform account management permissions or to the user himself. Accepts a delta payload with fields to update (e.g. email, firstName, lastName, phone, settings). Returns the updated account user object.
Account identifier.
User identifier.
OK
Bad Request
Forbidden
Not Found
PUT /public/v1/accounts/accounts/{accountId}/users/{userId} HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 41
{
"firstName": "Updated",
"lastName": "Name"
}{
"id": "USR-3758-7092",
"revision": 2,
"name": "Updated Name",
"email": "new.user@example.com",
"firstName": "Updated",
"lastName": "Name",
"status": "Active",
"account": {
"id": "ACC-3758-7092",
"name": "Test Account"
},
"groups": [
{
"id": "UGR-3758-7092"
}
]
}Assign an account user to a specific group.
^UGR-\d\d\d\d-\d\d\d\d$^UGR-\d\d\d\d-\d\d\d\d$OK
Bad Request
Not Found
POST /public/v1/accounts/account-users/{id}/groups HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 13
{
"id": "text"
}{
"id": "text",
"audit": {
"created": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"updated": {
"at": "2026-01-01T00:00:00.000Z",
"by": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
},
"invitationAcceptedAt": "2026-01-01T00:00:00.000Z",
"access": {
"at": "2026-01-01T00:00:00.000Z"
},
"joined": {
"at": "2026-01-01T00:00:00.000Z"
}
},
"$meta": {
"omitted": [
"text"
]
},
"revision": 1,
"user": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
},
"groups": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"logo": "text",
"isDefault": true
}
],
"buyers": [
{
"id": "text",
"name": "text",
"icon": "text",
"revision": 1
}
],
"modules": [
{
"id": "text",
"name": "text",
"revision": 1,
"description": "text",
"filters": {
"group.buyers": [
"text"
]
},
"settings": {
"configurable": true,
"default": true,
"paid": true,
"type": [
"text"
],
"obsolete": true,
"eligibility": {
"multi": true,
"single": true
}
}
}
],
"account": {
"id": "text",
"name": "text",
"icon": "text",
"revision": 1,
"type": "Client",
"status": "Active"
},
"invitation": {
"url": "text",
"notes": "text",
"status": "text"
},
"lastLoginAt": "2026-01-01T00:00:00.000Z"
}Delete a user group.
Delete user group. Permanently removes the user group; the group can be deleted only if no users are assigned. Returns 204 No Content on success.
User group identifier.
No Content
No content
Bad Request
Not Found
DELETE /public/v1/accounts/user-groups/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
No content