ClearML REST API Reference
The ClearML Server exposes a comprehensive REST API.
The API reference pages are split into two main sections:
- Object definitions - Detailed specification of available objects
- Service definitions - Specification of the available REST services
Object Definitions
See the Rest API object definitions reference page to view descriptions of the objects used in API requests:
Service Definitions
The ClearML Open Source and Enterprise offerings each support their own API sets.
Open Source Server API Services
- debug - Debugging utilities.
- events - Event reporting and retrieval (e.g., metrics, debug samples)
- login - Authentication management, authorization and administration for the entire system.
- models - Model management: create, edit, update metadata and tags, move, publish, archive, set visibility, and retrieve models.
- pipelines – Pipeline management: create, update, execute, monitor, and query pipelines.
- projects - Project management for creating, updating, retrieving, and controlling access
- queues - Queue management (see Workers Service).
- reports – Report management: create, update, publish, archive, move, and query Reports.
- serving – Model serving configuration and endpoint management.
- tasks - Task Management API.
- workers - Worker registration, status reporting, and task execution
Enterprise Server API Services
- apps – ClearML UI Application templates and instance management.
- auth – User authentication, credential management, and token generation.
- datasets – HyperDataset management API
- debug – Debugging utilities
- events – Event reporting and retrieval (e.g., metrics, debug samples)
- frames – HyperDataset frame (entry) retrieval
- login – Authentication management, authorization and administration for the entire system.
- models – Model management: create, edit, update metadata and tags, move, publish, archive, set visibility, and retrieve models.
- organization – Manage organizations, users, invites, and company metadata.
- permissions – Manage user groups, access rules, and entity-level permissions.
- pipelines – Pipeline management: create, update, execute, monitor, and query pipelines.
- projects – Project management API for creating, updating, organizing, querying, and controlling access to Projects
- queues – Queue management API (see Workers Service).
- reports – Report management API for creating, editing, publishing, archiving, moving, and querying ClearML Reports.
- resources – Resource policies, configurations, and allocation management.
- routers – Request routing rules and task router configuration.
- server – Server configuration, health, status, and version information retrieval.
- serving – Model serving configuration and endpoint management.
- sso – Single sign-on (SSO) provider management and authentication testing.
- storage – Storage settings and configuration management.
- system – Companies, datasets, and system-wide configuration.
- tasks – Task management API.
- tenants –Tenant information retrieval
- users – User accounts, preferences, service users, and access-related information.
- variables – Global variables and counters management.
- workers – Worker registration, status reporting, and task execution
Request Format
An API request is formatted in the following way:
base_url/endpoint
Where the base_url is the api_server configured in your clearml.conf file (e.g. https://api.clear.ml) and the
endpoint is as specified for the available services. The content-type is application/json.
Requests need to be authenticated with a bearer token that identifies the workspace that you want to work with.
An initial request of GET /auth.login, using the basic authorization scheme generates this token to be used with all
subsequent API requests. The authorization header contains Basic <credentials> where credentials
is base64("<key>:<secret>") using ClearML credentials (access key and secret key).
curl -u "<access_key>:<secret_key>" -X GET https://<base_url>/auth.login
This call will return the token. By default, the token expires in 30 days. Generate a token with a shorter expiration
time by specifying the expiration_sec field (as a query parameter or as a JSON payload).