Token FactoryAPI Reference

Overview

Token Factory REST APIs for the model catalog, virtual keys, playground conversations, members, departments, audit logs, model owners, and token cost estimation.

Overview

These APIs back the Token Factory screens: browsing models, issuing and deleting virtual-key tokens, starting playground conversations, creating and managing members, creating departments and teams, reading the audit log, managing model owners, and loading the token cost estimation application.

Base URL

https://{your-tenant-host}/api/v1

Use the same Monetize360 tenant host as the Mbrix and Revos APIs.

Authentication

Send a tenant Bearer token (the JWT from signing in to Monetize360):

curl -H "Authorization: Bearer YOUR_API_TOKEN" \
  "https://YOUR_TENANT_HOST/api/v1/model-catalog?page=0&size=20"

That token is the platform session token. The virtual-key JWT returned by Keys is a different credential: applications send it to the AI gateway, and it is not the token that calls these management APIs.

Member create, update, and delete require one of ORG_ADMIN, SUPERADMIN, TENANTADMIN, or ROLE_SYSTEM.

Endpoint groups

GroupMethod and pathDocs
ModelsGET /model-catalog, GET /model-catalog/{listingId}Models
KeysPOST /virtual-key-tokens/generate, DELETE /governance/virtual-keys/{virtualKeyId}Keys
PlaygroundPOST /agent-playground/conversationsPlayground
MembersGET /users, POST /users/standard-component, PUT and DELETE /users/standard-component/{id}Members
DepartmentsPOST /mdata/mobject/{orgUnitId}, PUT and DELETE /mdata/{rowId}, POST /mdata/mobject/{orgUnitId}/resolved-dataDepartments
Audit logPOST /audit-logAudit log
Model ownersGET and POST /catalog/vendorsModel owners
Token costGET /application-builder/applications/{applicationId}/definitionToken cost

Paths above are relative to /api/v1.

Pagination

Catalog and vendor lists return StandardPageResponse. size is clamped to 1–100.

{
  "items": [],
  "page": 0,
  "size": 20,
  "totalElements": 0,
  "totalPages": 0
}

Member and audit lists return a Spring Page (content, totalElements, totalPages, number, size). Page indexes are 0-based.

Department and team lists use POST .../resolved-data. Pagination sits in the JSON body (pagination.page, pagination.size), and the response uses data plus meta.

Errors

StatusWhen
200Successful read, update, token issue, or department create/update
201Member created
204Virtual key or department deleted
400Invalid body, inactive virtual key, or a catalog listing that does not exist
401Missing or invalid tenant token
403Authenticated, but missing a member-manager role
404Virtual key, user, department object, or application not found
409Member update conflicts with the current membership
500Unexpected server error