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/v1Use 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
| Group | Method and path | Docs |
|---|---|---|
| Models | GET /model-catalog, GET /model-catalog/{listingId} | Models |
| Keys | POST /virtual-key-tokens/generate, DELETE /governance/virtual-keys/{virtualKeyId} | Keys |
| Playground | POST /agent-playground/conversations | Playground |
| Members | GET /users, POST /users/standard-component, PUT and DELETE /users/standard-component/{id} | Members |
| Departments | POST /mdata/mobject/{orgUnitId}, PUT and DELETE /mdata/{rowId}, POST /mdata/mobject/{orgUnitId}/resolved-data | Departments |
| Audit log | POST /audit-log | Audit log |
| Model owners | GET and POST /catalog/vendors | Model owners |
| Token cost | GET /application-builder/applications/{applicationId}/definition | Token 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
| Status | When |
|---|---|
200 | Successful read, update, token issue, or department create/update |
201 | Member created |
204 | Virtual key or department deleted |
400 | Invalid body, inactive virtual key, or a catalog listing that does not exist |
401 | Missing or invalid tenant token |
403 | Authenticated, but missing a member-manager role |
404 | Virtual key, user, department object, or application not found |
409 | Member update conflicts with the current membership |
500 | Unexpected server error |