All pages
Powered by GitBook
1 of 8

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Audit API

Use the Audit API to track and retrieve activity logs programmatically.

The Audit API enables you to track and retrieve activity logs across the Marketplace Platform, so you have full visibility into key actions taken by users or systems.

Use this API to create audit records, list logged events for monitoring or compliance, and retrieve details for specific events.

Before you start

Review the shared API docs before you work with audit resources.

  • Authentication

  • URL structure

The Audit API is built around the following core resources:

  • Audit record – Represents a detailed record of an event that took place within the platform.

  • Audit event types – Represents the event types used within the platform.

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.

See the following sections to determine which roles are authorized to perform specific operations within each collection:

Operation
Method
Description
Access
Operation
Method
Description
Access

POST

Creates an audit record.

vendor, client, ops

GET

Retrieves the list of all known audit event types.

vendor, client, ops

Core resources

Browse collections

Audit Records

Audit Event Types

Error handling

GET

Retrieves the audit records collection.

vendor, client, ops

GET

Retrieves an audit record by ID.

vendor, ops

Create audit record
List audit event types
List audit records
Get audit record

Get audit records

List audit event types

Audit

The Audit object provides a detailed record of a specific event that occurred within the platform.

This object contains the following attributes:

Field
Type
Description

id

string, core

(Read-only) A unique identifier for the audit record. Note that no nesting exists for this identifier.

event

string, core

The event code. Format: {platform/extension}.{module/extension name}.{object}.{action}

summary

string, core

A summary of the audit record.

details

string, core

The audit details template. Any document property may be used as a placeholder.

actor

object, core

(Read-only) Represents the object containing information about the actor who has triggered an event.

Example:

object

object, core

Represents the object for which an event has been triggered.

Example:

timestamp

dateTime, core

(Read-only) The timestamp of the event.

type

enum, core

(Read-only) The visibility of the audit record. Allowed values are public or private.

request

object, core

Represents the object, which defines the request for technical data.

Example:

documents

object

Represents the containing a collection of linked eventRecord objects.

Example:

viewers

object, core

(Read-only) Represents the object containing the list of accounts with access to audit records.

Example:

AUDIT OBJECT
{
    "event": "platform.commerce.order.created",
    "summary": "Order Created",
    "details": "The order ORD-1208-2301-8479 has been successfully created by Reto Mayer and is now in the platform.",
    "object": {
        "id": "ORD-1208-2301-8479",
        "name": "ORD-1208-2301-8479",
        "objectType": "Order"
    },
    "timestamp": "2024-10-21T10:03:00.800Z",
    "actor": {
        "id": "USR-0556-8733",
        "name": "Reto Mayer",
        "icon": "/v1/accounts/users/USR-0556-8733/icon",
        "account": {
            "id": "ACC-3408-7241",
            "name": "MPT_STATIC Commerce e2e client",
            "icon": "/v1/accounts/accounts/ACC-3408-7241/icon",
            "accountType": "Client"
        }
    },
    "type": "Public",
    "request": {
        "api": {
            "ip": "89.00.0.00",
            "geolocation": {
                "countryCode": "GB",
                "countryName": "United Kingdom",
                "region": "Scotland"
            },
            "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:131.0) Gecko/20100101 Firefox/131.0"
        }
    },
    "documents": {
        "order": {
            "id": "ORD-1208-2301-8479",
            "href": "/commerce/orders/ORD-1208-2301-8479",
            "type": "Termination",
            "status": "Draft"
        },
        "actor": {
            "id": "USR-0556-8733",
            "name": "Reto Mayer",
            "icon": "/v1/accounts/users/USR-0556-8733/icon",
            "account": {
                "id": "ACC-3408-7241",
                "name": "MPT_STATIC Commerce e2e client",
                "icon": "/v1/accounts/accounts/ACC-3408-7241/icon",
                "accountType": "Client"
            }
        }
    },
    "viewers": [
        {
            "id": "ACC-3408-7241",
            "name": "MPT_STATIC Commerce e2e client",
            "type": "Client",
            "icon": "/v1/accounts/accounts/ACC-3408-7241/icon"
        },
        {
            "id": "ACC-1675-9721",
            "name": "Adobe",
            "type": "Vendor",
            "icon": "/v1/accounts/accounts/ACC-1675-9721/icon"
        }
    ],
    "id": "AUD-0391-8050-9033-9920"
}

Example

auditRecordActor
auditRecord
auditRecordRequest
auditRecordDocument
auditRecordViewer
{
  "id": "USR-2311-4038",
  "name": "Will Smith",
  "icon": "/public/users/usr-2311-4038.jpg",
  "account": {
    "id": "ACC-8989-32321",
    "name": "AdAstra Flex",
    "icon": "/public/accounts/acc-8989-32321.jpg",
  }
}
{
  "id": "ORD-3568-4038-2535",
  "type": "order",
  "icon": null,
  "objectType": "Order"
}
{
  "api": {
    "ip": "192.168.2.2",
    "geolocation": {
       "countryCode": "ES",
       "countryName": "Spain",
       "region": "Catalonia"
    },
    "userAgent": "Chrome" 
  }
  "worker": {
    "workerName": null }
  "log": {
    "correlationId": "some-app-insights-id" }
}
{
    "order_01": {
    "id": "ORD-3568-4038-2535",
    "type": "Purchase",
    "status": "Completed" 
  }
  "extraData_01" {
    "extra_prop_01": "Some value that does not exist in order" 
  }
}
[
  {
      "id": "ACC-3408-7241",
      "name": "MPT Commerce e2e client",
      "type": "Client",
      "icon": "/v1/accounts/accounts/ACC-3408-7241/icon"
  },
  {
      "id": "ACC-1675-9721",
      "name": "Adobe",
      "type": "Vendor",
      "icon": "/v1/accounts/accounts/ACC-1675-9721/icon"
  }
]

Audit Event Type

Audit Event Type refers to an event that has occurred within the platform. These records are generated automatically and can be used to store supplementary information related to the specific event type.

Field
Type
Description

id

string, core

(Read-only) The ID of the item.

key

string, core

(Read-only) The event's key.

name

string, core

(Read-only) The name of the event.

description

string

(Read-only) (Optional) A description of the event.

Example

AUDIT EVENT TYPE OBJECT
{
  "id": "AET-5699-2751",
  "Key": "platform.commerce.order.created",
  "Name": "Order created.",
  "Description": "A standard event that occurs upon the creation of an order."
},
get
Path parameters
idstringRequired
Query parameters
selectstringOptional
Responses
200

OK

application/json
idstringOptional
eventstringOptional
summarystringOptional
detailsstringOptional
idstringOptional
namestring · nullableOptional
iconstring · nullableOptional
objectTypestringOptional
timestampstring · date-timeOptional
idstringOptional
namestringOptional
iconstring · nullableOptional
idstringOptional
namestringOptional
iconstring · nullableOptional
accountTypestringOptional
typestring · enumOptionalPossible values:
ipstringOptional
countryCodestringOptional
countryNamestringOptional
regionstringOptional
userAgentstringOptional
workerNamestringOptional
requestIdstringOptional
operationIdstringOptional
propertyNameCaseInsensitivebooleanOptional
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
propertyNameCaseInsensitivebooleanOptional
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
idstringOptional
namestring · nullableOptional
typestringOptional
iconstring · nullableOptional
404

Not Found

application/json
typestring · nullableOptional
titlestring · nullableOptional
statusinteger · int32 · nullableOptional
detailstring · nullableOptional
instancestring · nullableOptional
Other propertiesanyOptional
get/public/v1/audit/records/{id}
GET /public/v1/audit/records/{id} HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
{
  "id": "text",
  "event": "text",
  "summary": "text",
  "details": "text",
  "object": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "objectType": "text"
  },
  "timestamp": "2026-01-01T00:00:00.000Z",
  "actor": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "account": {
      "id": "text",
      "name": "text",
      "icon": "text",
      "accountType": "text"
    }
  },
  "type": "text",
  "request": {
    "api": {
      "ip": "text",
      "geolocation": {
        "countryCode": "text",
        "countryName": "text",
        "region": "text"
      },
      "userAgent": "text"
    },
    "worker": {
      "workerName": "text"
    },
    "log": {
      "requestId": "text",
      "operationId": "text"
    }
  },
  "documents": {
    "ANY_ADDITIONAL_PROPERTY": {
      "options": {
        "propertyNameCaseInsensitive": true
      },
      "parent": {
        "options": {
          "propertyNameCaseInsensitive": true
        },
        "parent": {},
        "root": {}
      },
      "root": {}
    }
  },
  "viewers": [
    {
      "id": "text",
      "name": "text",
      "type": "text",
      "icon": "text"
    }
  ]
}
get
Responses
200

OK

application/json
offsetinteger · int32Optional
limitinteger · int32Optional
totalinteger · int32 · nullableOptional
omittedstring[]Optional
idstringOptional
keystringOptional
namestringOptional
descriptionstringOptional
get/public/v1/audit/event-types
GET /public/v1/audit/event-types HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
200

OK

{
  "$meta": {
    "pagination": {
      "offset": 1,
      "limit": 1,
      "total": 1
    },
    "omitted": [
      "text"
    ]
  },
  "data": [
    {
      "id": "text",
      "key": "text",
      "name": "text",
      "description": "text"
    }
  ]
}

Audit Record

The Audit record object signifies a specific entity within the platform for which an Audit object is generated. Each Audit object can only be created for one platform object at a time.

Field
Type
Description

id

string, core

(Read-only) The identifier of the object.

The Audit record object signifies a specific entity within the platform for which an Audit object is generated. Each Audit object can only be created for one platform object at a time.

Field
Type
Description

The Identity object represents a user account associated with the creation of an audit object.

Field
Type
Description

The Request object captures request data that is useful to store as part of the Audit entry.

Field
Type
Description

This object captures metadata related to web-based requests, which is useful to include in the audit entry. It is populated only when the request is a web request.

Field
Type
Description

This object captures metadata for the request worker, which is useful to store as part of the Audit entry. It's populated only when the request is a worker request.

Field
Type
Description

This object captures request log metadata to be included in the audit entry.

Field
Type
Description

The Documents object is a flexible JSON structure designed to hold essential information that characterizes an event. It can represent either a complete or partial depiction of the object related to the audit event, or it may consist of any arbitrary JSON data.

The audit record viewer object signifies a platform account that grants access to specific audit records for its members.

Field
Type
Description

name

string, core

(Read-only) The name of the object. If the name doesn't exist, an ID is included.

icon

string, core

(Read-only) The URL of the object icon.

objectType

string, core

(Read-only) The type of object.

revision

integer, core

(Read-only) The revision number of the object.

AUDIT RECORD OBJECT
{
  "id": "ORD-3568-4038-2535",
  "type": "order",
  "icon": null,
  "objectType": "Order",
  "revision": 24
}

id

string, core

(Read-only) The ID of the user.

name

string, core

AUDIT RECORD ACTOR OBJECT
 "name": "John Doe",
  "icon": "/v1/accounts/users/USR-0556-8733/icon",
  "account": {
    "id": "ACC-3408-7241",
    "name": "MPT_Commerce e2e client",
    "icon": "/v1/accounts/accounts/ACC-3408-7241/icon",
    "accountType": "Client"
  }
} 

id

string, core

(Read-only) (Optional) The account ID.

name

string, core

AUDIT RECORD ACTOR ACCOUNT OBJECT
{
  "id": "ACC-3408-7241",
  "name": "MPT Commerce e2e client",
  "icon": "/v1/accounts/accounts/ACC-3408-7241/icon",
  "accountType": "Client"
}

api

object

(Read-only) (Optional) Represents the object.

Example:

worker

object

ip

string

(Read-only) (Optional) A unique identifier of the IP address.

userAgent

string

workerName

string

(Read-only) (Optional) The name of the request worker.

corellationId

string

(Read-only) (Optional) The ID that can be used to track requests in the logging system.

AUDIT RECORD DOCUMENTS OBJECT
{
  "order": {
      "id": "ORD-1208-2301-8479",
      "href": "/commerce/orders/ORD-1208-2301-8479",
      "type": "Termination",
      "status": "Processing"
  },
  "actor": {
      "id": "TKN-8033-2484",
      "name": "Adobe Extension API",
      "icon": "",
      "account": {
          "id": "ACC-1675-9721",
          "name": "Adobe",
          "icon": "/v1/accounts/accounts/ACC-1675-9721/icon",
          "accountType": "Vendor"
      }
  }
}

id

string, core

(Read-only) The ID of the account.

name

string, core

AUDIT RECORD VIEWER OBJECT
{
  "id": "ACC-3408-7241",
  "name": "e2e client",
  "type": "Client",
  "icon": "/v1/accounts/accounts/ACC-3408-7241/icon"
}

Example

Audit Record Actor object

Example

Audit Record Actor Account object

Example

Audit Record Request object

API Request object

Worker Request object

Log Info object

Audit Record Documents object

Audit Record Viewer object

Example

(Read-only) The name of the user.

icon

string, core

(Read-only) The URL to the user's logo.

account

object, core

(Read-only) Represents the object containing the user's account details.

Example:

(Read-only) The account name.

icon

string, core

(Read-only) The URL of the account logo.

accountType

object, core

(Read-only) Represents the type.

(Read-only) (Optional) Represents the object containing worker request details.

Example:

log

object

(Read-only) (Optional) Represents the object containing the logging information or metadata.

Example:

(Read-only) (Optional) The user agent making the API request.

geolocation

object

(Read-only) The geolocation metadata for the request.

Example:

(Read-only) The account name.

icon

string, core

(Read-only) The URL to the account logo.

accountType

object, core

(Read-only) The type of .

{
  "ip": "108.141.111.208",
  "geolocation": {
    "countryCode": "NL",
    "countryName": "Netherlands",
    "region": "North Holland"
  },
  "userAgent": "swo-extensions/1.0"
}
apiRequest
auditRecordActorAccount
account
workerRequest
logInfo
account
{
    "id": "ACC-3408-7241",
    "name": "MPT Commerce e2e client",
    "icon": "/v1/accounts/accounts/ACC-3408-7241/icon",
    "accountType": "Client"
  }
{ 
    "workerName": "platformWorker"
}
{
    "correlationId": "1233213215468"
}
{
  "countryCode": "NL",
  "countryName": "Netherlands",
  "region": "North Holland"
}

List audit records

get
Responses
200

OK

application/json
offsetinteger · int32Optional
limitinteger · int32Optional
totalinteger · int32 · nullableOptional
omittedstring[]Optional
idstringOptional
eventstringOptional
summarystringOptional
detailsstringOptional
idstringOptional
namestring · nullableOptional
iconstring · nullableOptional
objectTypestringOptional
timestampstring · date-timeOptional
idstringOptional
namestringOptional
iconstring · nullableOptional
idstringOptional
namestringOptional
iconstring · nullableOptional
accountTypestringOptional
typestring · enumOptionalPossible values:
ipstringOptional
countryCodestringOptional
countryNamestringOptional
regionstringOptional
userAgentstringOptional
workerNamestringOptional
requestIdstringOptional
operationIdstringOptional
propertyNameCaseInsensitivebooleanOptional
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
propertyNameCaseInsensitivebooleanOptional
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
idstringOptional
namestring · nullableOptional
typestringOptional
iconstring · nullableOptional
get/public/v1/audit/records
GET /public/v1/audit/records HTTP/1.1
Host: api.platform.softwareone.com
Accept: */*
200

OK

{
  "$meta": {
    "pagination": {
      "offset": 1,
      "limit": 1,
      "total": 1
    },
    "omitted": [
      "text"
    ]
  },
  "data": [
    {
      "id": "text",
      "event": "text",
      "summary": "text",
      "details": "text",
      "object": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "objectType": "text"
      },
      "timestamp": "2026-01-01T00:00:00.000Z",
      "actor": {
        "id": "text",
        "name": "text",
        "icon": "text",
        "account": {
          "id": "text",
          "name": "text",
          "icon": "text",
          "accountType": "text"
        }
      },
      "type": "text",
      "request": {
        "api": {
          "ip": "text",
          "geolocation": {
            "countryCode": "text",
            "countryName": "text",
            "region": "text"
          },
          "userAgent": "text"
        },
        "worker": {
          "workerName": "text"
        },
        "log": {
          "requestId": "text",
          "operationId": "text"
        }
      },
      "documents": {
        "ANY_ADDITIONAL_PROPERTY": {
          "options": {
            "propertyNameCaseInsensitive": true
          },
          "parent": {},
          "root": {}
        }
      },
      "viewers": [
        {
          "id": "text",
          "name": "text",
          "type": "text",
          "icon": "text"
        }
      ]
    }
  ]
}

Create audit record

post
Body
idstringOptional
eventstringOptional
summarystringOptional
detailsstringOptional
idstringOptional
namestring · nullableOptional
iconstring · nullableOptional
objectTypestringOptional
timestampstring · date-timeOptional
idstringOptional
namestringOptional
iconstring · nullableOptional
idstringOptional
namestringOptional
iconstring · nullableOptional
accountTypestringOptional
typestring · enumOptionalPossible values:
ipstringOptional
countryCodestringOptional
countryNamestringOptional
regionstringOptional
userAgentstringOptional
workerNamestringOptional
requestIdstringOptional
operationIdstringOptional
propertyNameCaseInsensitivebooleanOptional
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
propertyNameCaseInsensitivebooleanOptional
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
idstringOptional
namestring · nullableOptional
typestringOptional
iconstring · nullableOptional
Responses
201

Created

application/json
idstringOptional
eventstringOptional
summarystringOptional
detailsstringOptional
idstringOptional
namestring · nullableOptional
iconstring · nullableOptional
objectTypestringOptional
timestampstring · date-timeOptional
idstringOptional
namestringOptional
iconstring · nullableOptional
idstringOptional
namestringOptional
iconstring · nullableOptional
accountTypestringOptional
typestring · enumOptionalPossible values:
ipstringOptional
countryCodestringOptional
countryNamestringOptional
regionstringOptional
userAgentstringOptional
workerNamestringOptional
requestIdstringOptional
operationIdstringOptional
propertyNameCaseInsensitivebooleanOptional
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
propertyNameCaseInsensitivebooleanOptional
propertyNameCaseInsensitivebooleanOptional
parentall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
rootall ofOptional
⤷Circular reference to all of
idstringOptional
namestring · nullableOptional
typestringOptional
iconstring · nullableOptional
403

Forbidden

application/json
typestring · nullableOptional
titlestring · nullableOptional
statusinteger · int32 · nullableOptional
detailstring · nullableOptional
instancestring · nullableOptional
Other propertiesanyOptional
404

Not Found

application/json
typestring · nullableOptional
titlestring · nullableOptional
statusinteger · int32 · nullableOptional
detailstring · nullableOptional
instancestring · nullableOptional
Other propertiesanyOptional
500

Internal Server Error

No content

post/public/v1/audit/records
POST /public/v1/audit/records HTTP/1.1
Host: api.platform.softwareone.com
Content-Type: application/json
Accept: */*
Content-Length: 760

{
  "id": "text",
  "event": "text",
  "summary": "text",
  "details": "text",
  "object": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "objectType": "text"
  },
  "timestamp": "2026-01-01T00:00:00.000Z",
  "actor": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "account": {
      "id": "text",
      "name": "text",
      "icon": "text",
      "accountType": "text"
    }
  },
  "type": "text",
  "request": {
    "api": {
      "ip": "text",
      "geolocation": {
        "countryCode": "text",
        "countryName": "text",
        "region": "text"
      },
      "userAgent": "text"
    },
    "worker": {
      "workerName": "text"
    },
    "log": {
      "requestId": "text",
      "operationId": "text"
    }
  },
  "documents": {
    "ANY_ADDITIONAL_PROPERTY": {
      "options": {
        "propertyNameCaseInsensitive": true
      },
      "parent": {
        "options": {
          "propertyNameCaseInsensitive": true
        },
        "parent": {},
        "root": {}
      },
      "root": {}
    }
  },
  "viewers": [
    {
      "id": "text",
      "name": "text",
      "type": "text",
      "icon": "text"
    }
  ]
}
{
  "id": "text",
  "event": "text",
  "summary": "text",
  "details": "text",
  "object": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "objectType": "text"
  },
  "timestamp": "2026-01-01T00:00:00.000Z",
  "actor": {
    "id": "text",
    "name": "text",
    "icon": "text",
    "account": {
      "id": "text",
      "name": "text",
      "icon": "text",
      "accountType": "text"
    }
  },
  "type": "text",
  "request": {
    "api": {
      "ip": "text",
      "geolocation": {
        "countryCode": "text",
        "countryName": "text",
        "region": "text"
      },
      "userAgent": "text"
    },
    "worker": {
      "workerName": "text"
    },
    "log": {
      "requestId": "text",
      "operationId": "text"
    }
  },
  "documents": {
    "ANY_ADDITIONAL_PROPERTY": {
      "options": {
        "propertyNameCaseInsensitive": true
      },
      "parent": {
        "options": {
          "propertyNameCaseInsensitive": true
        },
        "parent": {},
        "root": {}
      },
      "root": {}
    }
  },
  "viewers": [
    {
      "id": "text",
      "name": "text",
      "type": "text",
      "icon": "text"
    }
  ]
}

Creates a new audit record for the object specified in body.