Partner API endpoints
Manage API keys, key groups, limits, usage and statistics through the Partner API.
Partner API endpoints
Base URL: https://panel.model-gate.com/api/v1/partner
Authenticate every request with Authorization: Bearer mg_partner_....
API keys
POST /keysGET /keysGET /keys/{id}PATCH /keys/{id}DELETE /keys/{id}POST /keys/{id}/freezePOST /keys/{id}/unfreezePOST /keys/{id}/rotatePOST /keys/{id}/reset-usageGET /keys/{id}/usageGET /keys/{id}/spent-limit
Key create and update fields: name, group_id, rpm_limit, concurrency_limit, spend_limit. A numeric limit of 0 means unlimited. group_id is the public group ID or an empty value for no group.
Key groups
GET /groupsPOST /groupsGET /groups/{id}PATCH /groups/{id}DELETE /groups/{id}POST /groups/{id}/reset-usageGET /groups/{id}/usageGET /groups/{id}/statsGET /groups/{id}/membersPOST /groups/{id}/membersDELETE /groups/{id}/members/{keyId}
Group create and update fields: name, description, status, rpm_limit, concurrency_limit, spend_limit. Status is active or frozen.
Key and group RPM, concurrency and spend limits are enforced independently. A request is rejected when either level exceeds its limit. Moving a key between groups does not rewrite historical statistics: every request keeps the group snapshot captured at request time.
Reset usage clears the resettable usage window and updates usage_reset_at; it never changes total_spent.
Transactions and async results
GET /transactionsGET /requests/{request_id}
Group statistics use aggregate tables for completed periods and raw api_requests only for the current incomplete hour.
Identifier convention: every{id}in this documentation is the resourcepublic_id. Internal numeric database IDs are never accepted or returned. In nested member routes,{keyId}is the API keypublic_id.