API Designer & Deployer¶
Reference documentation¶
API Designer¶
-
class
dataikuapi.dss.apiservice.
DSSAPIServiceSettings
(client, project_key, service_id, settings)¶ The settings of an API Service in the API Designer
Do not create this directly, use
DSSAPIService.get_settings()
-
get_raw
()¶ Gets the raw settings of this API Service. This returns a reference to the raw settings, not a copy, so changes made to the returned object will be reflected when saving.
Return type: dict
-
add_prediction_endpoint
(endpoint_id, saved_model_id)¶ Adds a new “visual prediction” endpoint to this API service
Parameters: - endpoint_id (str) – Identifier of the new endpoint to create
- saved_model_id (str) – Identifier of the saved model (deployed to Flow) to use
-
save
()¶ Saves back these settings to the API Service
-
-
class
dataikuapi.dss.apiservice.
DSSAPIService
(client, project_key, service_id)¶ An API Service from the API Designer on the DSS instance
Do not create this directly, use
dataikuapi.dss.project.DSSProject.get_api_service()
-
get_settings
()¶ Gets the settings of this API Service
-
list_packages
()¶ List the versions of this API service
Returns: a list of dictionaries, with one item per version. Each dictionary contains at least a ‘id’ field which is the version identifier Return type: list of dict
-
create_package
(package_id)¶ Create a new version of this API service
Parameters: package_id (str) – Identifier of the new version to create
-
delete_package
(package_id)¶ Delete a version of this API service
-
download_package_stream
(package_id)¶ Download a package archive that can be deployed in a DSS API Node, as a binary stream.
Warning: this stream will monopolize the DSSClient until closed.
-
download_package_to_file
(package_id, path)¶ Download a package archive that can be deployed in a DSS API Node, into the given output file.
-
API Deployer¶
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployer
(client)¶ Handle to interact with the API Deployer.
Do not create this directly, use
dataikuapi.dss.DSSClient.get_apideployer()
-
list_deployments
(as_objects=True)¶ Lists deployments on the API Deployer
Parameters: as_objects (boolean) – if True, returns a list of DSSAPIDeployerDeployment
, else returns a list of dict. Each dict contains at least a field “id” indicating the identifier of this deploymentReturns: a list - see as_objects for more information Return type: list
-
get_deployment
(deployment_id)¶ Returns a handle to interact with a single deployment, as a
DSSAPIDeployerDeployment
Parameters: deployment_id (str) – Identifier of the deployment to get Return type: DSSAPIDeployerDeployment
-
create_deployment
(deployment_id, service_id, infra_id, version)¶ Creates a deployment and returns the handle to interact with it. The returned deployment is not yet started and you need to call
start_update()
Parameters: - deployment_id (str) – Identifier of the deployment to create
- service_id (str) – Identifier of the API Service to target
- infra_id (str) – Identifier of the deployment infrastructure to use
- version_id (str) – Identifier of the API Service version to deploy
Return type:
-
list_infras
(as_objects=True)¶ Lists deployment infrastructures on the API Deployer
Parameters: as_objects (boolean) – if True, returns a list of DSSAPIDeployerInfra
, else returns a list of dict. Each dict contains at least a field “id” indicating the identifier of this infraReturns: a list - see as_objects for more information Return type: list
-
get_infra
(infra_id)¶ Returns a handle to interact with a single deployment infra, as a
DSSAPIDeployerInfra
Parameters: infra_id (str) – Identifier of the infra to get Return type: DSSAPIDeployerDeployment
-
list_services
(as_objects=True)¶ Lists API services on the API Deployer
Parameters: as_objects (boolean) – if True, returns a list of DSSAPIDeployerService
, else returns a list of dict. Each dict contains at least a field “id” indicating the identifier of this ServiceReturns: a list - see as_objects for more information Return type: list
-
create_service
(service_id)¶ Creates a new API Service on the API Deployer and returns the handle to interact with it.
Parameters: service_id (str) – Identifier of the API Service to create Return type: DSSAPIDeployerService
-
get_service
(service_id)¶ Returns a handle to interact with a single service, as a
DSSAPIDeployerService
Parameters: service_id (str) – Identifier of the API service to get Return type: DSSAPIDeployerService
-
Infrastructures¶
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployerInfra
(client, infra_id)¶ A Deployment infrastructure on the API Deployer
Do not create this directly, use
get_infra()
-
id
()¶
-
get_settings
()¶ Gets the settings of this infra. If you want to modify the settings, you need to call
save()
on the returned objectReturns: a dataikuapi.dss.apideployer.DSSAPIDeployerInfraSettings
-
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployerInfraSettings
(client, infra_id, settings)¶ The settings of an API Deployer Infra.
Do not create this directly, use
get_settings()
-
get_type
()¶ Gets the type of this infra, either STATIC or K8S
-
add_apinode
(url, api_key, graphite_prefix=None)¶ Adds an API node to the list of nodes of this infra.
Only applicable to STATIC infrastructures
-
get_raw
()¶ Gets the raw settings of this infra. This returns a reference to the raw settings, not a copy, so changes made to the returned object will be reflected when saving.
Return type: dict
-
save
()¶ Saves back these settings to the infra
-
API Services¶
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployerService
(client, service_id)¶ An API service on the API Deployer
Do not create this directly, use
get_service()
-
id
()¶
-
get_status
()¶ Returns status information about this service. This is used mostly to get information about which versions are available and which deployments are exposing this service
Return type: dataikuapi.dss.apideployer.DSSAPIDeployerServiceStatus
-
import_version
(version_id, fp)¶ Imports a new version for an API service from a file-like object pointing to a version package Zip file
Parameters: - version_id (string) – identifier of the new version
- fp (string) – A file-like object pointing to a version package Zip file
-
get_settings
()¶ Gets the settings of this service. If you want to modify the settings, you need to call
save()
on the returned object.The main things that can be modified in a service settings are permissions
Returns: a dataikuapi.dss.apideployer.DSSAPIDeployerServiceSettings
-
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployerServiceSettings
(client, service_id, settings)¶ The settings of an API Deployer Service.
Do not create this directly, use
get_settings()
-
get_raw
()¶ Gets the raw settings of this deployment. This returns a reference to the raw settings, not a copy, so changes made to the returned object will be reflected when saving.
Return type: dict
-
save
()¶ Saves back these settings to the API service
-
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployerServiceStatus
(client, service_id, light_status)¶ The status of an API Deployer Service.
Do not create this directly, use
get_status()
-
get_versions
()¶ Returns the versions of this service that have been published on the API Service
Each version is a dict that contains at least a “id” field, which is the version identifier
Returns: a list of versions, each as a dict containing a “id” field Return type: list of dicts
-
get_raw
()¶ Gets the raw status information. This returns a dictionary with various information about the service, :rtype: dict
-
Deployments¶
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployerDeployment
(client, deployment_id)¶ A Deployment on the API Deployer
Do not create this directly, use
get_deployment()
-
id
()¶
-
get_status
()¶ Returns status information about this deployment
Return type: dataikuapi.dss.apideployer.DSSAPIDeployerDeploymentStatus
-
get_settings
()¶ Gets the settings of this deployment. If you want to modify the settings, you need to call
save()
on the returned objectReturns: a dataikuapi.dss.apideployer.DSSAPIDeployerDeploymentSettings
-
start_update
()¶ Starts an asynchronous update of this deployment to try to match the actual state to the current settings
Returns: - a
dataikuapi.dss.future.DSSFuture
tracking the progress of the update. Call wait_for_result()
on the returned object
to wait for completion (or failure)
- a
-
delete
()¶ Deletes this deployment
You may only delete a deployment if it is disabled and has been updated after disabling it.
-
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployerDeploymentSettings
(client, deployment_id, settings)¶ The settings of an API Deployer deployment.
Do not create this directly, use
get_settings()
-
get_raw
()¶ Gets the raw settings of this deployment. This returns a reference to the raw settings, not a copy, so changes made to the returned object will be reflected when saving.
Return type: dict
-
set_enabled
(enabled)¶ Enables or disables this deployment
-
set_single_version
(version)¶ Sets this deployment to target a single version of the API service
Parameters: version (str) – Identifier of the version to set
-
save
()¶ Saves back these settings to the deployment
-
-
class
dataikuapi.dss.apideployer.
DSSAPIDeployerDeploymentStatus
(client, deployment_id, light_status, heavy_status)¶ The status of an API Deployer deployment.
Do not create this directly, use
get_status()
-
get_light
()¶ Gets the ‘light’ (summary) status. This returns a dictionary with various information about the deployment, but not the actual health of the deployment
Return type: dict
-
get_heavy
()¶ Gets the ‘heavy’ (full) status. This returns a dictionary with various information about the deployment :rtype: dict
-
get_service_urls
()¶ Returns service-level URLs for this deployment (ie without the enpdoint-specific suffix)
-
get_health
()¶ Returns the health of this deployment as a string
Returns: HEALTHY if the deployment is working properly, various other status otherwise Return type: string
-
get_health_messages
()¶ Returns messages about the health of this deployment
-