Skip to main content

Deployment Management

note

At the moment of writing this documentation, the TANGO Private API server to make the requests is hosted at this link.

A TANGO Deployment represents the configuration of a specific environment where your models will be managed and executed. It acts as a bridge between your models and the underlying infrastructure, defining a connection to the catalog containing the models ( Registry Connector) and a gateway to endpoints that are serving models (Server Proxy).

This document details the API endpoints available for managing deployments.

Add a New Deployment

POST /api/deployment

Creates a new TANGO Deployment by providing its complete configuration. This endpoint registers your infrastructure, such as MLflow or Databricks, with the TANGO platform.

  • Requires bearer token authentication (bearerAuth).

Request Body

The body must be a DeploymentPayload object, which defines the connection to the artifact repository and the model serving endpoint.

note

The deployment_key serves as a unique, permanent identifier for your deployment. Please choose it carefully, as it cannot be modified later. Because deletions are soft deletes, the key cannot be reused for a new deployment.

Attributes

NameTypeRequiredDescription
deployment_keystringYesA unique key for the deployment.
registry_connector_classstringYesThe Python class for the registry connector (e.g., for MLflow or Databricks).
registry_connector_initobjectYesA dictionary with initialization parameters for the registry connector, such as model_registry_url.
server_proxy_classstringYesThe Python class for the server proxy.
server_proxy_initobjectYesA dictionary with initialization parameters for the server proxy, such as server_proxy_url.
note

The workspace is automatically set to the workspace associated with the authenticated user's token.

Example: MLflow Deployment Payload

{
"deployment_key": "mlflow-deployment-staging",
"registry_connector_class": "tango_shared.connectors.deployment.mlflow_registry_connector.MlflowModelRegistryConnector",
"registry_connector_init": {
"model_registry_url": "{{model_registry_url}}",
"tracking_server_url": "{{tracking_server_url}}"
},
"server_proxy_class": "tango_shared.connectors.deployment.mlflow_server_proxy.MlflowModelServerProxy",
"server_proxy_init": {
"server_proxy_url": "{{server_proxy_url}}"
}
}

Example: Databricks Deployment Payload

The Databricks connector requires additional pat (Personal Access Token) parameters for authentication.

{
"deployment_key": "databricks-deployment-staging",
"registry_connector_class": "tango_shared.connectors.databricks_registry_connector.DatabricksModelRegistryConnector",
"registry_connector_init": {
"model_registry_url": "{{model_registry_url}}",
"tracking_server_url": "{{tracking_server_url}}",
"tracking_server_pat": "{{tracking_server_pat}}"
},
"server_proxy_class": "tango_shared.connectors.databricks_server_proxy.DatabricksModelServerProxy",
"server_proxy_init": {
"server_proxy_url": "{{server_proxy_url}}",
"server_proxy_pat": "{{server_proxy_pat}}"
}
}

Response Format

If successful, it returns the created Deployment object in an array.

[
{
"deployment_key": "mlflow-deployment-staging",
"workspace": "my-workspace",
"registry_connector_class": "...",
"registry_connector_init": {},
"server_proxy_class": "...",
"server_proxy_init": {}
}
]

List Available Deployments

GET /api/deployment

Retrieves a list of all TANGO Deployments available in the workspace associated with the authenticated user's token.

  • Requires bearer token authentication (bearerAuth).

Response Format

If successful, it returns an array of Deployment objects.

[
{
"deployment_key": "mlflow-deployment-staging",
"workspace": "my-workspace",
"registry_connector_class": "tango_shared.connectors.mlflow_registry_connector.MlflowModelRegistryConnector",
"registry_connector_init": {
"model_registry_url": "...",
"tracking_server_url": "..."
},
"server_proxy_class": "tango_shared.connectors.mlflow_server_proxy.MlflowModelServerProxy",
"server_proxy_init": {
"server_proxy_url": "..."
}
}
]

Get a Specific Deployment

GET /api/deployment/{deploymentKey}

Retrieves the details of a single TANGO Deployment identified by its deploymentKey.

  • Requires bearer token authentication (bearerAuth).

Path Parameters

NameTypeRequiredDescriptionExample
deploymentKeystringYesThe unique key identifying the deployment.mlflow-deployment-staging

Response Format

If successful, it returns the requested Deployment object in an array.

[
{
"deployment_key": "mlflow-deployment-staging",
"workspace": "my-workspace",
"registry_connector_class": "...",
"registry_connector_init": {},
"server_proxy_class": "...",
"server_proxy_init": {}
}
]

Delete a Deployment

DELETE /api/deployment/{deploymentKey}

Deletes a specific TANGO Deployment. This is a soft delete, meaning the deploymentKey cannot be reused.

  • Requires bearer token authentication (bearerAuth).

Path Parameters

NameTypeRequiredDescriptionExample
deploymentKeystringYesThe unique key identifying the deployment.mlflow-deployment-staging

Response Format

A successful 204 No Content response will be returned with a confirmation message in the body.

{
"message": "The TANGO Deployment has been deleted",
"message_code": "ok"
}