Skip to main content
Version: v2.7.0

Yeedu (1.0.0)

Download OpenAPI specification:Download

This is a Yeedu server.

Tenant Access Matrix

  • This matrix defines the abilities available to users with different roles at the tenant level. It specifies what platform administrators, admins, users, and those who manage clusters can do in terms of managing tenants, resources, and configurations.
Ability Platform Admin Admin Can Manage Cluster User
Tenant Management
Manage Default Configurations
Manage Resources
Manage Dependency Repository
Upload Files
Manage Clusters
Manage Workspaces

Workspace Access Matrix

  • This matrix outlines the permissions users have at the workspace level. It covers abilities to manage, edit, run, or view jobs, notebooks, and other workspace-related resources.
Ability Can Manage Can Edit Can Run Can View
Workspace Access Management
Activate or Inactivate the Job, Notebook, Workspace
Create or Update Job or Notebook Configurations
Run or Stop the Job or Notebook
Read All Job or Notebook Configurations and Runs

Health Check

Get the health status of the API

Performs a basic health check to verify if the API is operational and responding to requests.

Responses

Response samples

Content type
application/json
{
  • "uptime": 108.585168939,
  • "message": "API is up and running",
  • "date": "2024-06-20T14:11:23.423Z"
}

Lookup

Get the latest version of the Yeedu.

This endpoint returns the latest version of the Yeedu, allowing clients to verify they are interacting with the most current release.

Responses

Response samples

Content type
application/json
{
  • "version": "v2.6.0"
}

Get all the cloud providers.

Retrieves a list of cloud providers supported by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

Get details about a specific cloud provider.

Retrieve details about a specific cloud provider identified by the provided Cloud Provider Id.

Authorizations:
bearerAuth
path Parameters
cloud_provider_id
required
integer <int64>

Cloud provider Id used for filtering

Responses

Response samples

Content type
application/json
{
  • "cloud_provider_id": "0",
  • "name": "GCP",
  • "description": "Provider for creating infrastructure on Google Cloud Platform",
  • "from_date": "2024-06-20T14:08:12.294Z",
  • "to_date": null
}

Get all the disk machine types.

Retrieves a list of supported disk machine types.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the machine available zones.

Retrieves a list of available zones across all cloud providers.

Authorizations:
bearerAuth
query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get machine availability zones for a specific cloud provider.

Retrieves details of machine availability zones filtered by a specific Cloud Provider Id.

Authorizations:
bearerAuth
path Parameters
cloud_provider_id
required
integer <int64>

Cloud Provider Id used for filtering.

query Parameters
all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get machine availability zone details by a specific cloud provider ID and availability zone ID

Retrieve machine availability zone details based on a specific cloud provider and availability zone ID.

Authorizations:
bearerAuth
path Parameters
cloud_provider_id
required
integer <int64>

Cloud provider Id used for filtering.

availability_zone_id
required
integer <int64>

Availability zone Id used for filtering.

Responses

Response samples

Content type
application/json
{
  • "availability_zone_id": "108",
  • "cloud_provider": {
    },
  • "name": "ap-east-1",
  • "region": "ap-east-1",
  • "description": "Hong Kong, Asia Pacific",
  • "from_date": "2024-06-20T14:08:12.310Z",
  • "to_date": null
}

Get all the machine architecture types.

Retrieves a list of supported machine architecture types.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Get all the machine types.

Retrieves a list of supported machine types.

Authorizations:
bearerAuth
query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get all the machine types for a specific cloud provider.

Retrieve details of machine types filtered by a specific cloud provider.

Authorizations:
bearerAuth
path Parameters
cloud_provider_id
required
integer <int64>

Cloud Provider Id used for filtering.

query Parameters
all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get machine type details for a specific cloud provider and machine type.

Retrieve details of a machine type filtered by a specific Cloud Provider Id and Machine Type Id.

Authorizations:
bearerAuth
path Parameters
cloud_provider_id
required
integer <int64>

Cloud Provider Id used for filtering.

machine_type_id
required
integer <int64>

Machine Type Id used for filtering.

Responses

Response samples

Content type
application/json
{
  • "machine_type_id": 108,
  • "cloud_provider": {
    },
  • "name": "m6id.4xlarge",
  • "machine_architecture_type": {
    },
  • "vCPUs": 16,
  • "memory": "64 GiB",
  • "has_cuda": false,
  • "gpu_model": null,
  • "gpus": 0,
  • "gpu_memory": null,
  • "cpu_model": [
    ],
  • "cpu_min_frequency_GHz": [
    ],
  • "cpu_max_frequency_GHz": [
    ],
  • "has_local_disk": true,
  • "local_disk_size_GB": 950,
  • "local_num_of_disks": 1,
  • "local_disk_bus_type": {
    },
  • "local_disk_throughput_MB": null,
  • "machine_price_ycu": 10.4,
  • "from_date": "2024-06-20T14:08:12.30262+00:00",
  • "to_date": "infinity"
}

Get all the cloud label patterns.

Retrieves a list of cloud label patterns supported by the system.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

Get all the credential types.

Retrieves a list of credential types supported by the system.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

Get all the cluster types.

Retrieves a list of cluster types supported by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

Get all the engine cluster instance statuses.

Retrieves a list of engine cluster instance statuses defined by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Spark compute types.

Retrieves a list of Spark compute types defined by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Spark infrastructure versions.

Retrieves a list of Spark infrastructure versions supported by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Spark job statuses.

Retrieves a list of Spark job statuses defined by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Spark job types.

Retrieves a list of Spark job types supported by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get all the Spark job type languages.

Retrieves a list of Spark job type languages supported by the system.

Authorizations:
bearerAuth
query Parameters
job_type
Array of strings
Items Enum: "SPARK_JOB" "SPARK_SQL" "NOTEBOOK" "THRIFT_SQL" "YEEDU_FUNCTIONS"

Specifies the Spark Job Type to filter on.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the workflow execution states.

Retrieves a list of workflow execution states defined by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the workflow types.

Retrieves a list of workflow types defined by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Linux distros.

Retrieves a list of Linux distributions supported by the system.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Metastore Catalogs.

Retrieves a list of Metastore Catalogs supported.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the secret types.

Retrieves a list of supported secret types.

Authorizations:
bearerAuth
query Parameters
secret_supports
string
Enum: "unity" "hive" "storage"

Optional filter to return only secret types that support a specific platform or integration.

Valid values are:

  • unity: Returns secret types compatible with Unity Catalog.
  • hive: Returns secret types usable for authenticating with Hive services.
  • storage: Returns secret types associated with a supported storage type (e.g., Google Cloud Storage).

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the storage types.

Retrieves a list of supported storage types.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Volume Configuration

Get all the machine volume configurations.

Retrieves a list of machine volume configurations.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search machine volume configurations based on volume configuration name.

Retrieves a list of searched machine volume configurations based on volume configuration name.

Authorizations:
bearerAuth
query Parameters
volume_conf_name
required
string

Volume configuration name used for filtering.

cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new volume configuration.

Creates a new volume with the provided volume configuration.

Authorizations:
bearerAuth
Request Body schema: application/json
required

The volume configuration to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
encrypted
required
boolean
size
integer <int64>
disk_type_id
required
integer <int64>
machine_volume_num
required
integer <int64> >= 1
machine_volume_strip_num
required
integer <int64> >= 1
disk_iops
integer <int64>
disk_throughput_MB
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_volume",
  • "description": "dev volume",
  • "encrypted": true,
  • "size": 100,
  • "disk_type_id": 0,
  • "machine_volume_num": 1,
  • "machine_volume_strip_num": 1
}

Response samples

Content type
application/json
{
  • "volume_conf_id": "25",
  • "name": "yeedu_volume",
  • "description": "dev volume",
  • "encrypted": true,
  • "size": "100",
  • "disk_type_id": "0",
  • "disk_type_name": "pd-ssd",
  • "machine_volume_num": 1,
  • "machine_volume_strip_num": 1,
  • "disk_iops": null,
  • "disk_throughput_MB": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-08T05:34:55.306Z",
  • "from_date": "2024-03-08T05:34:55.306Z",
  • "to_date": null
}

Get details of a specific volume configuration.

Retrieve volume configuration details filtered by volume configuration ID or name.

Authorizations:
bearerAuth
query Parameters
volume_conf_id
integer <int64>

Volume configuration ID used for filtering.

volume_conf_name
string

Volume configuration name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "volume_conf_id": 18,
  • "volume_conf_name": "volume_aws_2",
  • "description": null,
  • "encrypted": true,
  • "size": 500,
  • "disk_type": {
    },
  • "machine_volume_num": 1,
  • "machine_volume_strip_num": 1,
  • "disk_iops": null,
  • "disk_throughput_MB": null,
  • "created_by": null,
  • "modified_by": null,
  • "last_update_date": "2024-06-25T14:54:39.980421+00:00",
  • "from_date": "2024-06-25T14:54:39.980421+00:00",
  • "to_date": "infinity"
}

Update details of a specific volume configuration.

Authorizations:
bearerAuth
query Parameters
volume_conf_id
integer <int64>

Volume configuration ID used for modification.

volume_conf_name
string

Volume configuration name used for modification.

Request Body schema: application/json
required

The volume configuration to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
encrypted
boolean
machine_volume_num
integer <int64>
machine_volume_strip_num
integer <int64>
size
integer <int64>
disk_type_id
integer <int64>
disk_iops
integer or null <int64>
disk_throughput_MB
integer or null <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_volume",
  • "description": "dev volume",
  • "encrypted": true,
  • "machine_volume_num": 1,
  • "machine_volume_strip_num": 1,
  • "size": 100,
  • "disk_type_id": 0
}

Response samples

Content type
application/json
{
  • "volume_conf_id": "25",
  • "name": "yeedu_volume",
  • "description": "dev volume",
  • "encrypted": true,
  • "size": "100",
  • "disk_type_id": "0",
  • "disk_type_name": "pd-ssd",
  • "machine_volume_num": 1,
  • "machine_volume_strip_num": 1,
  • "disk_iops": null,
  • "disk_throughput_MB": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-08T05:34:55.306Z",
  • "from_date": "2024-03-08T05:34:55.306Z",
  • "to_date": null
}

Delete a specific volume configuration.

Authorizations:
bearerAuth
query Parameters
volume_conf_id
integer <int64>

Volume configuration ID used for deletion.

volume_conf_name
string

Volume configuration name used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted machine volume configuration ID: 1."
}

Network Configuration

Get all the machine network configurations.

Retrieves a list of machine network configurations.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search machine network configurations based on network configuration name.

Retrieves a list of searched machine network configurations based on network configuration name.

Authorizations:
bearerAuth
query Parameters
network_conf_name
required
string

Network configuration name used for filtering.

cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new network configuration.

Creates a new network with the provided network configuration.

Authorizations:
bearerAuth
Request Body schema: application/json
required

The network configuration to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
network_project_id
required
string non-empty
network_name
required
string non-empty
network_tags
Array of strings unique [ items non-empty ]
subnet
required
string non-empty
availability_zone_id
required
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_network",
  • "description": "Yeedu machine network config.",
  • "network_project_id": "yeedu",
  • "network_name": "yeedu-spark-vpc",
  • "network_tags": [
    ],
  • "subnet": "custom-subnet-yeedu",
  • "availability_zone_id": 75
}

Response samples

Content type
application/json
{
  • "network_conf_id": "1",
  • "name": "yeedu_network",
  • "description": "Yeedu machine network config.",
  • "network_project_id": "yeedu",
  • "network_name": "yeedu-spark-vpc",
  • "network_tags": [
    ],
  • "subnet": "custom-subnet-yeedu",
  • "availability_zone_id": "75",
  • "tenant_id": "eeaf2b29-d2b0-4c32-8d74-4c9b565ce8bd",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-08T13:45:11.117224+00:00",
  • "from_date": "2024-03-08T13:45:11.117224+00:00",
  • "to_date": null
}

Get details of a specific network configuration.

Retrieve network configuration details filtered by network configuration ID or name.

Authorizations:
bearerAuth
query Parameters
network_conf_id
integer <int64>

Network configuration ID used for filtering.

network_conf_name
string

Network configuration name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "network_conf_id": 1,
  • "network_conf_name": "aws_network",
  • "description": null,
  • "network_project_id": "1234-4569-8765",
  • "network_name": "eni-0123d56edd7c8fe9f",
  • "network_tags": [
    ],
  • "subnet": "subnet-0d12345a67890d12d",
  • "availability_zone": {
    },
  • "tenant_id": "ec234745-4625-4abc-9ae7-1f8a9a9090b3",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-06-26T04:55:34.255071+00:00",
  • "from_date": "2024-06-26T04:55:34.255071+00:00",
  • "to_date": "infinity"
}

Update details of a specific network configuration.

Authorizations:
bearerAuth
query Parameters
network_conf_id
integer <int64>

Network configuration ID used for modification.

network_conf_name
string

Network configuration name used for modification.

Request Body schema: application/json
required

The network configuration to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
network_project_id
string non-empty
network_name
string non-empty
network_tags
Array of strings unique [ items non-empty ]
subnet
string non-empty
availability_zone_id
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_network",
  • "description": "Yeedu machine network config.",
  • "network_project_id": "yeedu",
  • "network_name": "yeedu-spark-vpc",
  • "network_tags": [
    ],
  • "subnet": "custom-subnet-yeedu",
  • "availability_zone_id": 75
}

Response samples

Content type
application/json
{
  • "network_conf_id": "1",
  • "name": "yeedu_network",
  • "description": "Yeedu machine network config.",
  • "network_project_id": "yeedu",
  • "network_name": "yeedu-spark-vpc",
  • "network_tags": [
    ],
  • "subnet": "custom-subnet-yeedu",
  • "availability_zone_id": "75",
  • "tenant_id": "eeaf2b29-d2b0-4c32-8d74-4c9b565ce8bd",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-08T13:45:11.117224+00:00",
  • "from_date": "2024-03-08T13:45:11.117224+00:00",
  • "to_date": null
}

Delete a specific network configuration.

Authorizations:
bearerAuth
query Parameters
network_conf_id
integer <int64>

Network configuration ID used for deletion.

network_conf_name
string

Network configuration name used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted machine network configuration ID: 1."
}

Boot Disk Image Configuration

Get all the boot disk image configurations.

Retrieves a list of boot disk image configurations.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

architecture_type
string
Enum: "x86_64" "aarch64"

Machine Architecture Type used for filtering.

all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search boot disk image configurations based on boot disk image configuration name.

Retrieves a list of searched boot disk image configurations based on boot disk image configuration name.

Authorizations:
bearerAuth
query Parameters
boot_disk_image_name
required
string

Boot disk image configuration name used for filtering.

cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

architecture_type
string
Enum: "x86_64" "aarch64"

Machine Architecture Type used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new boot disk image configuration.

Creates a new boot disk image configuration with the provided boot disk image configuration.

Authorizations:
bearerAuth
Request Body schema: application/json
required

The boot disk image configuration to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
boot_disk_image
required
string non-empty
cloud_provider_id
required
integer <int64>
linux_distro_id
required
integer <int64>
architecture_type_id
required
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "dev_boot_disk",
  • "description": "yeedu dev boot disk",
  • "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
  • "cloud_provider_id": 0,
  • "linux_distro_id": 0,
  • "architecture_type_id": 0
}

Response samples

Content type
application/json
{
  • "boot_disk_image_id": "1",
  • "boot_disk_image_name": "dev_boot_disk",
  • "description": "yeedu dev boot disk",
  • "cloud_provider_id": 0,
  • "linux_distro_id": 0,
  • "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
  • "architecture_type_id": 0,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-07T04:55:42.799Z",
  • "from_date": "2024-03-07T04:55:42.799Z",
  • "to_date": null
}

Get details of a specific boot disk image configuration.

Retrieve boot disk image configuration details filtered by boot disk image configuration ID or name.

Authorizations:
bearerAuth
query Parameters
boot_disk_image_id
integer <int64>

Boot disk image configuration ID used for filtering.

boot_disk_image_name
string

Boot disk image configuration name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "boot_disk_image_id": 2,
  • "boot_disk_image_name": "gcp_rhel",
  • "description": "Base image for GCP RHEL",
  • "cloud_provider": {
    },
  • "linux_distro": {
    },
  • "boot_disk_image": "rhel-cloud/rhel-8",
  • "machine_architecture_type": {
    },
  • "created_by": null,
  • "modified_by": null,
  • "last_update_date": "2024-06-25T14:54:39.990791+00:00",
  • "from_date": "2024-06-25T14:54:39.990791+00:00",
  • "to_date": "infinity"
}

Update details of a specific boot disk image configuration.

Authorizations:
bearerAuth
query Parameters
boot_disk_image_id
integer <int64>

Boot disk image configuration ID used for modification.

boot_disk_image_name
string

Boot disk image configuration name used for modification.

Request Body schema: application/json
required

The boot disk image configuration to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
boot_disk_image
string non-empty
linux_distro_id
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "dev_boot_disk",
  • "description": "yeedu dev boot disk",
  • "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
  • "linux_distro_id": 0
}

Response samples

Content type
application/json
{
  • "boot_disk_image_id": "1",
  • "boot_disk_image_name": "dev_boot_disk",
  • "description": "yeedu dev boot disk",
  • "cloud_provider_id": 0,
  • "linux_distro_id": 0,
  • "boot_disk_image": "ubuntu-os-cloud/ubuntu-2004-lts",
  • "architecture_type_id": 0,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-07T04:55:42.799Z",
  • "from_date": "2024-03-07T04:55:42.799Z",
  • "to_date": null
}

Delete a specific boot disk image configuration.

Authorizations:
bearerAuth
query Parameters
boot_disk_image_id
integer <int64>

Boot disk image configuration ID used for deletion.

boot_disk_image_name
string

Boot disk image configuration name used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted boot disk image configuration ID: 1."
}

Credentials Configuration

Get all the credentials configurations.

Retrieves a list of credentials configurations.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search credentials configurations based on credentials configuration name.

Retrieves a list of searched credentials configurations based on credentials configuration name.

Authorizations:
bearerAuth
query Parameters
credentials_conf_name
required
string

Credentials configuration name used for filtering.

cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new credentials configuration.

Creates a new credentials configuration with the provided credentials.

  • Accepted keys for the base64_encoded_credentials:

    Cloud Provider Credential Type Accepted Keys
    GCP Google Service Account ['TYPE', 'PROJECT_ID', 'PRIVATE_KEY_ID', 'PRIVATE_KEY', 'CLIENT_EMAIL', 'CLIENT_ID', 'AUTH_URI', 'TOKEN_URI', 'AUTH_PROVIDER_X509_CERT_URL', 'CLIENT_X509_CERT_URL']
    AWS Access Secret Key Pair ['AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY', 'AWS_DEFAULT_REGION']
    Azure Azure Service Principal ['CLIENT_ID', 'TENANT_ID', 'CLIENT_SECRET', 'SUBSCRIPTION_ID', 'STORAGE_ACCOUNT_NAME', 'CONTAINER_NAME']
Authorizations:
bearerAuth
Request Body schema: application/json
required

The credentials configuration to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
credential_type_id
required
integer <int64>
required
object

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu-aws",
  • "description": "yeedu credentials configuration",
  • "credential_type_id": 1,
  • "base64_encoded_credentials": {
    }
}

Response samples

Content type
application/json
{
  • "credentials_conf_id": "1",
  • "name": "yeedu-svc",
  • "description": "yeedu credentials configuration",
  • "credential_type_id": "0",
  • "tenant_id": "d9d98a22-5216-4955-b3d9-b0337d8ac0d9",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-08T12:18:49.334Z",
  • "from_date": "2024-03-08T12:18:49.334Z",
  • "to_date": null
}

Get details of a specific credentials configuration.

Retrieve credentials configuration details filtered by credentials configuration ID or name.

Authorizations:
bearerAuth
query Parameters
credentials_conf_id
integer <int64>

Credentials configuration ID used for filtering.

credentials_conf_name
string

Credentials configuration name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "credentials_conf_id": 1,
  • "credentials_conf_name": "aws_credential",
  • "description": null,
  • "credential_type": {
    },
  • "tenant_id": "ec234745-4625-4abc-9ae7-1f8a9a9090b3",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-06-26T04:58:48.922845+00:00",
  • "from_date": "2024-06-26T04:58:48.922845+00:00",
  • "to_date": "infinity"
}

Update details of a specific credentials configuration.

Updates an existing credentials configuration with the provided credentials.

  • Accepted keys for the base64_encoded_credentials:

    Cloud Provider Credential Type Accepted Keys
    GCP Google Service Account ['TYPE', 'PROJECT_ID', 'PRIVATE_KEY_ID', 'PRIVATE_KEY', 'CLIENT_EMAIL', 'CLIENT_ID', 'AUTH_URI', 'TOKEN_URI', 'AUTH_PROVIDER_X509_CERT_URL', 'CLIENT_X509_CERT_URL']
    AWS Access Secret Key Pair ['AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY', 'AWS_DEFAULT_REGION']
    Azure Azure Service Principal ['CLIENT_ID', 'TENANT_ID', 'CLIENT_SECRET', 'SUBSCRIPTION_ID', 'STORAGE_ACCOUNT_NAME', 'CONTAINER_NAME']
Authorizations:
bearerAuth
query Parameters
credentials_conf_id
integer <int64>

Credentials configuration ID used for modification.

credentials_conf_name
string

Credentials configuration name used for modification.

Request Body schema: application/json
required

The credentials configuration to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
object

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu-aws",
  • "description": "yeedu credentials configuration",
  • "base64_encoded_credentials": {
    }
}

Response samples

Content type
application/json
{
  • "credentials_conf_id": "1",
  • "name": "yeedu-svc",
  • "description": "yeedu credentials configuration",
  • "credential_type_id": "0",
  • "tenant_id": "d9d98a22-5216-4955-b3d9-b0337d8ac0d9",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-08T12:18:49.334Z",
  • "from_date": "2024-03-08T12:18:49.334Z",
  • "to_date": null
}

Delete a specific credentials configuration.

Authorizations:
bearerAuth
query Parameters
credentials_conf_id
integer <int64>

Credentials configuration ID used for deletion.

credentials_conf_name
string

Credentials configuration name used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted credentials configuration ID: 1"
}

Cloud Environment

Get all the cloud environments.

Retrieves a list of cloud environments.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

architecture_type
string
Enum: "x86_64" "aarch64"

Machine Architecture Type used for filtering.

all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search cloud environments based on cloud environment name.

Retrieves a list of searched cloud environments based on cloud environment name.

Authorizations:
bearerAuth
query Parameters
cloud_env_name
required
string

Cloud environment name used for filtering.

cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

architecture_type
string
Enum: "x86_64" "aarch64"

Machine Architecture Type used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new cloud environment.

Creates a new cloud environment with provided cloud environment.

Authorizations:
bearerAuth
Request Body schema: application/json
required

The cloud environment to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
cloud_provider_id
required
integer <int32>
availability_zone_id
required
integer <int64>
network_conf_id
required
integer <int64>
cloud_project
required
string non-empty
credential_config_id
required
integer <int64>
boot_disk_image_id
required
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_cloud_env",
  • "description": "yeedu cloud environment",
  • "cloud_provider_id": 0,
  • "availability_zone_id": 75,
  • "network_conf_id": 1,
  • "cloud_project": "yeedu",
  • "credential_config_id": 1,
  • "boot_disk_image_id": 1
}

Response samples

Content type
application/json
{
  • "cloud_env_id": 1,
  • "name": "yeedu_cloud_env",
  • "description": "yeedu cloud environment",
  • "cloud_provider_id": "0",
  • "availability_zone_id": "75",
  • "network_conf_id": "1",
  • "cloud_project": "yeedu",
  • "credential_config_id": "1",
  • "boot_disk_image_id": "1",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-08T13:45:15.0882Z",
  • "from_date": "2024-03-08T13:45:15.0882Z",
  • "to_date": null
}

Get details of a specific cloud environment.

Retrieve cloud environment details filtered by cloud environment ID or name.

Authorizations:
bearerAuth
query Parameters
cloud_env_id
integer <int64>

Cloud environment ID used for filtering.

cloud_env_name
string

Cloud environment name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "cloud_env_id": 21,
  • "cloud_env_name": "azure_cloud_env",
  • "description": "",
  • "cloud_provider": {
    },
  • "availability_zone": {
    },
  • "network_config": {
    },
  • "cloud_project": "12345678",
  • "credential_config": {
    },
  • "boot_disk_image": {
    },
  • "tenant_id": "a6a9c5ea-57b6-4a1c-aa99-84645f675b62",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-05-02T09:15:58.363635+00:00",
  • "from_date": "2024-05-02T09:15:58.363635+00:00",
  • "to_date": "infinity"
}

Update details of a specific cloud environment.

Authorizations:
bearerAuth
query Parameters
cloud_env_id
integer <int64>

Cloud environment ID used for modification.

cloud_env_name
string

Cloud environment name used for modification.

Request Body schema: application/json
required

The cloud environment details to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
availability_zone_id
integer <int64>
network_conf_id
integer <int64>
cloud_project
string non-empty
credential_config_id
integer <int64>
boot_disk_image_id
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "gcp_cloud_env",
  • "description": "yeedu cloud environment",
  • "availability_zone_id": 75,
  • "network_conf_id": 1,
  • "cloud_project": "yeedu",
  • "credential_config_id": 1,
  • "boot_disk_image_id": 1
}

Response samples

Content type
application/json
{
  • "cloud_env_id": 1,
  • "name": "yeedu_cloud_env",
  • "description": "yeedu cloud environment",
  • "cloud_provider_id": "0",
  • "availability_zone_id": "75",
  • "network_conf_id": "1",
  • "cloud_project": "yeedu",
  • "credential_config_id": "1",
  • "boot_disk_image_id": "1",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-03-08T13:45:15.0882Z",
  • "from_date": "2024-03-08T13:45:15.0882Z",
  • "to_date": null
}

Delete a specific cloud environment.

Authorizations:
bearerAuth
query Parameters
cloud_env_id
integer <int64>

Cloud environment ID used for deletion.

cloud_env_name
string

Cloud environment name used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted cloud environment ID: 1."
}

Object Storage Manager

Get all the object storage manager configurations.

Retrieves a list of object storage manager configurations.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search object storage manager configurations based on object storage manager name.

Retrieves a list of searched object storage manager configurations based on object storage manager name.

Authorizations:
bearerAuth
query Parameters
object_storage_manager_name
required
string

Object storage manager name used for filtering

cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new object storage manager configuration

Creates a new object storage manager configuration with provided object storage manager configuration.

Authorizations:
bearerAuth
Request Body schema: application/json
required

The object storage manager configuration to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
cloud_provider_id
required
integer <int32>
credentials_conf_id
required
integer <int64>
object_storage_bucket_name
required
string non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_osm",
  • "description": "Yeedu Object Storage Manager",
  • "cloud_provider_id": 0,
  • "credentials_conf_id": 1,
  • "object_storage_bucket_name": "yeedu"
}

Response samples

Content type
application/json
{
  • "object_storage_manager_id": "1",
  • "name": "yeedu_osm",
  • "description": "Yeedu Object Storage Manager",
  • "cloud_provider_id": "0",
  • "credentials_conf_id": "1",
  • "object_storage_bucket_name": "yeedu",
  • "tenant_id": "d9d98a22-5216-4955-b3d9-b0337d8ac0d9",
  • "created_by_user_id": "3",
  • "modified_by_user_id": "3",
  • "last_update_date": "2023-03-17T09:31:42.221Z",
  • "from_date": "2023-03-17T09:31:42.221Z",
  • "to_date": null
}

Get details of a specific object storage manager configuration.

Retrieve object storage manager configuration details filtered by ID or name.

Authorizations:
bearerAuth
query Parameters
object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for filtering.

object_storage_manager_name
string

Object storage manager configuration name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "object_storage_manager_id": 1,
  • "object_storage_manager_name": "yeedu_osm",
  • "description": "Yeedu Object Storage Manager",
  • "cloud_provider": {
    },
  • "object_storage_bucket_name": "yeedu-dev",
  • "credentials_config": {
    },
  • "tenant_id": "cf1f945f-01ce-4ac6-a070-8c733f2fa791",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2023-09-29T15:49:59.477968+00:00",
  • "from_date": "2023-09-29T15:49:59.477968+00:00",
  • "to_date": "infinity"
}

Update details of a specific object storage manager configuration.

Authorizations:
bearerAuth
query Parameters
object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for modification.

object_storage_manager_name
string

Object storage manager configuration name used for modification.

Request Body schema: application/json
required

Object storage manager configuration details to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
credentials_conf_id
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_osm",
  • "description": "Yeedu Object Storage Manager",
  • "credentials_conf_id": 1
}

Response samples

Content type
application/json
{
  • "object_storage_manager_id": "1",
  • "name": "yeedu_osm",
  • "description": "Yeedu Object Storage Manager",
  • "cloud_provider_id": "0",
  • "credentials_conf_id": "1",
  • "object_storage_bucket_name": "yeedu",
  • "tenant_id": "d9d98a22-5216-4955-b3d9-b0337d8ac0d9",
  • "created_by_user_id": "3",
  • "modified_by_user_id": "3",
  • "last_update_date": "2023-03-17T09:31:42.221Z",
  • "from_date": "2023-03-17T09:31:42.221Z",
  • "to_date": null
}

Delete a specific object storage manager configuration.

Authorizations:
bearerAuth
query Parameters
object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for deletion.

object_storage_manager_name
string

Object storage manager configuration name used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted Object Storage Manager Configuration: 1"
}

Object Storage Manager Files

Get all the object storage manager files.

Retrieves a list of object storage manager files for a specific object storage manager configuration ID or name.

Authorizations:
bearerAuth
query Parameters
object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for filtering.

object_storage_manager_name
string

Object storage manager configuration name used for filtering.

file_id
integer <int64>

Object storage manager file ID used for filtering.

file_path
string

Object storage manager file path used for filtering.

recursive
boolean
Default: false
Enum: true false

Boolean flag to indicate whether to list files recursively.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Upload file to an object storage manager.

Upload a file to a specified object storage manager configuration ID or name.

  1. overwrite: A boolean parameter indicating whether the file should overwrite any existing file in the object storage manager. The default value is false.
  2. is_dir: A boolean parameter indicating whether to create a directory or upload a file.
  3. path: The path used to specify the file location when uploading a directory. It indicates the directory structure where the file will be stored.
  4. target_dir: The target directory, used as a prefix, for the destination when uploading a directory or file to the object storage manager.
Authorizations:
bearerAuth
query Parameters
object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for filtering.

object_storage_manager_name
string

Object storage manager configuration name used for filtering.

overwrite
boolean
Default: false
Enum: true false

Boolean flag to indicate whether to overwrite existing files.

is_dir
boolean
Default: false
Enum: true false

A boolean flag indicating whether the uploaded file is part of a directory upload.

path
required
string non-empty

The path used to specify the file location when uploading a directory.

target_dir
string

The target directory, used as a prefix, for the destination when uploading a directory or file.

header Parameters
x-file-size
number

The header for file size

Request Body schema: application/octet-stream

File to upload to an object storage manager.

string <binary>

The file content being uploaded in chunks.

Responses

Response samples

Content type
application/json
{
  • "object_storage_manager_file_id": "76",
  • "object_storage_manager_id": "20",
  • "file_name": "spark-examples_2.12-3.2.2.jar",
  • "full_file_path": "file:///yeedu/object-storage-manager/spark-examples_2.12-3.2.2.jar",
  • "file_size_bytes": "1560870",
  • "file_type": "jar",
  • "tenant_id": "a6a9c5ea-57b6-4a1c-aa99-84645f675b62",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-05-08T06:26:52.461Z",
  • "from_date": "2024-05-08T06:26:52.461Z",
  • "to_date": null
}

Search object storage manager files based on file name.

Retrieve a list of object storage manager files based on file name search for a specific configuration ID or name.

Authorizations:
bearerAuth
query Parameters
file_name
required
string

Object storage manager file name used for filtering.

object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for filtering.

object_storage_manager_name
string

Object storage manager configuration name used for filtering.

file_id
integer <int64>

Object storage manager file ID used for filtering.

file_path
string

Object storage manager file path used for filtering.

recursive
boolean
Default: false
Enum: true false

Boolean flag to indicate whether to search files recursively.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get details of a specific object storage manager file.

Retrieve details of an object storage manager file filtered by its configuration ID or name, along with file ID or name.

Authorizations:
bearerAuth
query Parameters
object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for filtering.

object_storage_manager_name
string

Object storage manager configuration name used for filtering.

file_id
integer <int64>

Object storage manager file ID used for filtering.

file_path
string

Object storage manager file path used for filtering.

Responses

Response samples

Content type
application/json
{
  • "object_storage_manager_file_id": 68,
  • "object_storage_manager": {
    },
  • "file_name": "hive-jdbc-1.0.jar",
  • "full_file_path": "file:///yeedu/object-storage-manager/hive-jdbc-1.0.jar",
  • "file_size_bytes": "18255759",
  • "file_type": "jar",
  • "tenant_id": "a6a9c5ea-57b6-4a1c-aa99-84645f675b62",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-04-25T15:17:04.683271+00:00",
  • "from_date": "2024-04-25T15:17:04.683271+00:00",
  • "to_date": "infinity"
}

Delete a specific object storage manager file.

Delete an object storage manager file filtered by its configuration ID or name, along with the file ID or file path.

Authorizations:
bearerAuth
query Parameters
object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for filtering.

object_storage_manager_name
string

Object storage manager configuration name used for filtering.

file_id
integer <int64>

Object storage manager file ID used for deletion.

file_path
string

Object storage manager file path used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "The File yeedu/object-storage-manager/8cee6100-7086-4138-92fd-712046174e91/spark-sql_2.12-3.2.0.jar has been deleted."
}

Download object storage manager files or directories.

Download object storage manager files filtered by ID or name.

Authorizations:
bearerAuth
query Parameters
object_storage_manager_id
integer <int64>

Object storage manager configuration ID used for filtering.

object_storage_manager_name
string

Object storage manager configuration name used for filtering.

file_id
integer <int64>

Object storage manager file ID used for filtering.

file_path
string

Object storage manager file path used for filtering.

Responses

Response samples

Content type
application/json
{
  • "error_code": "string",
  • "error_message": "string"
}

Metastore Hive Catalog

Create a new Hive Catalog

API to create a new Metastore Hive Catalog.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
Authorizations:
bearerAuth
Request Body schema: application/json
required

The Metastore Hive Catalog to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
hiveSiteXml
string or null non-empty
coreSiteXml
string or null non-empty
hdfsSiteXml
string or null non-empty
krb5Conf
string or null non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_hive_catalog",
  • "description": "This is a test hive description",
  • "hiveSiteXml": "string",
  • "coreSiteXml": "string",
  • "hdfsSiteXml": "string",
  • "krb5Conf": "string"
}

Response samples

Content type
application/json
{
  • "metastore_catalog_id": "10",
  • "name": "yeedu_hive_conf_updated_1",
  • "description": "This is a test hive description",
  • "catalog_type": "HIVE",
  • "metastore_hive_catalog": {
    },
  • "tenant_id": "234e28f0-c93f-4b27-b5b0-83c4e4b1dae2",
  • "created_by_user_id": "3",
  • "modified_by_user_id": "3",
  • "last_update_date": "2025-04-07T16:13:16.503Z",
  • "from_date": "2025-04-07T16:13:16.503Z",
  • "to_date": null
}

Update a Metastore Hive Catalog

Update a specific Metastore Hive Catalog of type 'Hive'.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
  2. Any cluster attached to the provided metastore must be in DESTROYED or ERROR state.
Authorizations:
bearerAuth
query Parameters
metastore_catalog_id
required
integer <int64>

Metastore Hive Catalog ID used for modification.

Request Body schema: application/json
required

Metastore Hive Catalog details to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
hiveSiteXml
string or null non-empty
coreSiteXml
string or null non-empty
hdfsSiteXml
string or null non-empty
krb5Conf
string or null non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_hive_catalog",
  • "description": "This is a test hive description",
  • "hiveSiteXml": "string",
  • "coreSiteXml": "string",
  • "hdfsSiteXml": "string",
  • "krb5Conf": "string"
}

Response samples

Content type
application/json
{
  • "metastore_catalog_id": "10",
  • "name": "yeedu_hive_conf_updated_1",
  • "description": "This is a test hive description",
  • "catalog_type": "HIVE",
  • "metastore_hive_catalog": {
    },
  • "tenant_id": "234e28f0-c93f-4b27-b5b0-83c4e4b1dae2",
  • "created_by_user_id": "3",
  • "modified_by_user_id": "3",
  • "last_update_date": "2025-04-07T16:13:16.503Z",
  • "from_date": "2025-04-07T16:13:16.503Z",
  • "to_date": null
}

Delete a Metastore Hive.

Deletes a specific Metastore Catalog of type 'HIVE'.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
  2. Any cluster attached to the provided metastore must be in DESTROYED or ERROR state.
Authorizations:
bearerAuth
query Parameters
metastore_catalog_id
required
integer <int64>

Metastore Hive Catalog ID used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted Hive Metastore Configuration Id: 1"
}

Metastore Unity Catalog

Get Metastore Catalogs

API to get Metastore Catalogs.

Authorizations:
bearerAuth
query Parameters
metastore_catalog_id
integer <int64>
Example: metastore_catalog_id=1
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

catalog_type
string
Enum: "HIVE" "DATABRICKS UNITY"

Type of catalog to filter the metastore catalogs.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search Metastore Catalogs

API to search Metastore Catalogs.

Authorizations:
bearerAuth
query Parameters
metastore_catalog_name
required
string
Example: metastore_catalog_name=unity
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

catalog_type
string
Enum: "HIVE" "DATABRICKS UNITY"

Type of catalog to filter the metastore catalogs.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a Metastore Unity Catalog

API to create a new Metastore Unity Catalog.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
Authorizations:
bearerAuth
Request Body schema: application/json
required

The Metastore Unity Catalog configuration to be added.

name
required
string

Name of the unity metastore catalog.

  • Provided name must be 1-64 characters with lowercase letters, numbers, '_', '.', '@', or '-'.
description
string

Description of the unity metastore catalog (optional).

  • Provided description must be less than 1000 characters
endpoint
required
string

Endpoint for the unity metastore.

default_catalog
required
string

Default catalog for the unity metastore.

storage_path
required
string

Cloud storage path where the data is stored.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "metastore_catalog_id": 1,
  • "name": "databricks_unity_metastore",
  • "description": "This metastore refers to the metastore of databricks unity",
  • "catalog_type": "DATABRICKS UNITY",
  • "metastore_details": {},
  • "tenant_id": "3c5f2335-8a9c-46c8-bd1e-97420686e216",
  • "created_by_user_id": 1,
  • "modified_by_user_id": 1,
  • "last_update_date": "2025-03-19T04:47:23.824Z",
  • "from_date": "2025-03-19T04:47:23.824Z",
  • "to_date": "infinity"
}

Update a Metastore Unity Catalog

Update a specific Metastore Unity Catalog of type 'DATABRICKS UNITY'.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
  2. Any cluster attached to the provided metastore must be in DESTROYED or ERROR state.
Authorizations:
bearerAuth
query Parameters
metastore_catalog_id
required
integer <int64>
Example: metastore_catalog_id=1
Request Body schema: application/json
required

The Metastore Unity Catalog configuration to be updated.

non-empty
name
string

Name of the unity metastore catalog.

  • Provided name must be 1-64 characters with lowercase letters, numbers, '_', '.', '@', or '-'.
description
string or null non-empty

Description of the unity metastore catalog (optional).

  • Provided description must be less than 1000 characters
endpoint
string

Endpoint for the unity metastore.

default_catalog
string

Default catalog for the unity metastore.

storage_path
string

Cloud storage path where the data is stored.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "metastore_catalog_id": 1,
  • "name": "databricks_unity_metastore",
  • "description": "This metastore refers to the metastore of databricks unity",
  • "catalog_type": "DATABRICKS UNITY",
  • "metastore_details": {},
  • "tenant_id": "3c5f2335-8a9c-46c8-bd1e-97420686e216",
  • "created_by_user_id": 1,
  • "modified_by_user_id": 1,
  • "last_update_date": "2025-03-19T04:47:23.824Z",
  • "from_date": "2025-03-19T04:47:23.824Z",
  • "to_date": "infinity"
}

Delete a Metastore Unity Catalog

Deletes a specific Metastore Unity Catalog of type 'DATABRICKS UNITY'.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
  2. Any cluster attached to the provided metastore must be in DESTROYED or ERROR state.
Authorizations:
bearerAuth
query Parameters
metastore_catalog_id
required
integer <int64>
Example: metastore_catalog_id=1

Responses

Response samples

Content type
application/json
{
  • "message": "Metastore Unity Catalog 1 deleted successfully."
}

Metastore Catalog Secret Tenant

Get Metastore Catalogs and it's associated secret tenant

API to get Metastore Catalogs secret tenant associated.

Authorizations:
bearerAuth
query Parameters
metastore_catalog_secret_tenant_id
integer <int64>
Example: metastore_catalog_secret_tenant_id=1
catalog_type
string
Enum: "DATABRICKS UNITY" "HIVE"
metastore_catalog_id
integer <int64>
Example: metastore_catalog_id=1
metastore_catalog_name
string
Example: metastore_catalog_name=unity
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Attach a Metastore Catalog to a secret tenant

API to assoaciate Metastore Catalog with a secret tenant.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN, CAN MANAGE CLUSTER to attach a metastore with secret tenants.
Authorizations:
bearerAuth
Request Body schema: application/json
required

The Metastore Unity Catalog configuration to be added.

Any of
metastore_catalog_id
required
integer <int64>
metastore_secrets_tenant_id
required
integer <int64>

Secret for the Metastore Catalog.

  • For the catalog of type:
    • DATABRICKS UNITY
      • The provided secret tenant must be of type:
        • DATABRICKS UNITY TOKEN
    • HIVE
      • The provided secret tenant must be any one of the gievn types:
        • HIVE KERBEROS
        • HIVE BASIC
object_storage_secrets_tenant_id
integer <int64>

Secret for the cloud storage.

  • The provided secret tenant must be any one of the given types:
    • AWS ACCESS SECRET KEY PAIR
    • AZURE SERVICE PRINCIPAL
    • GOOGLE SERVICE ACCOUNT

Responses

Request samples

Content type
application/json
{
  • "metastore_catalog_id": 0,
  • "metastore_secrets_tenant_id": 0,
  • "object_storage_secrets_tenant_id": 0
}

Response samples

Content type
application/json
{
  • "metastore_catalog_secret_tenant_id": 1,
  • "metastore_catalog_id": 1,
  • "metastore_secrets_tenant_id": 1,
  • "object_storage_secrets_tenant_id": 2,
  • "created_by_user_id": 1,
  • "modified_by_user_id": 1,
  • "last_update_date": "2025-03-19T04:47:23.824Z",
  • "from_date": "2025-03-19T04:47:23.824Z",
  • "to_date": "infinity"
}

Update a Metastore Catalog Secret Tenant

Update a specific Metastore Catalog's secret.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
Authorizations:
bearerAuth
Request Body schema: application/json
required

The Metastore Catalog secret to be updated.

metastore_catalog_secret_tenant_id
required
integer <int64>
metastore_secrets_tenant_id
integer or null <int64>

Secret for the Metastore Catalog.

  • For the catalog of type:
    • DATABRICKS UNITY
      • The provided secret tenant must be of type:
        • DATABRICKS UNITY TOKEN
    • HIVE
      • The provided secret tenant must be any one of the gievn types:
        • HIVE KERBEROS
        • HIVE BASIC
object_storage_secrets_tenant_id
integer or null <int64>

Secret for the cloud storage.

  • The provided secret tenant must be any one of the given types:
    • AWS ACCESS SECRET KEY PAIR
    • AZURE SERVICE PRINCIPAL
    • GOOGLE SERVICE ACCOUNT

Responses

Request samples

Content type
application/json
{
  • "metastore_catalog_secret_tenant_id": 0,
  • "metastore_secrets_tenant_id": 0,
  • "object_storage_secrets_tenant_id": 0
}

Response samples

Content type
application/json
{
  • "metastore_catalog_id": 1,
  • "name": "databricks_unity_metastore",
  • "description": "This metastore refers to the metastore of databricks unity",
  • "catalog_type": "DATABRICKS UNITY",
  • "metastore_details": {},
  • "tenant_id": "3c5f2335-8a9c-46c8-bd1e-97420686e216",
  • "created_by_user_id": 1,
  • "modified_by_user_id": 1,
  • "last_update_date": "2025-03-19T04:47:23.824Z",
  • "from_date": "2025-03-19T04:47:23.824Z",
  • "to_date": "infinity"
}

Delete the association of Metastore Catalog Secret Tenant

Deletes a specific Metastore Catalog secret association.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
Authorizations:
bearerAuth
query Parameters
metastore_catalog_secret_tenant_id
required
integer <int64>
Example: metastore_catalog_secret_tenant_id=1

Responses

Response samples

Content type
application/json
{
  • "message": "Metastore Catalog Secret tenant association deleted successfully."
}

Metastore Catalog Secret Workspace

Get Metastore Catalogs and it's associated secret workspace

API to get Metastore Catalogs secret workspace associated.

Authorizations:
bearerAuth
query Parameters
metastore_catalog_secret_workspace_id
integer <int64>
Example: metastore_catalog_secret_workspace_id=1
workspace_id
integer <int64>
Example: workspace_id=1
catalog_type
string
Enum: "DATABRICKS UNITY" "HIVE"
metastore_catalog_id
integer <int64>
Example: metastore_catalog_id=1
metastore_catalog_name
string
Example: metastore_catalog_name=unity
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Attach a Metastore Catalog to a secret workspace

API to assoaciate Metastore Catalog with a secret workspace.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN to attach a metastore with secret workspace.
  2. The user must have MANAGE permission on the workspace to attach the secret to metastore
Authorizations:
bearerAuth
Request Body schema: application/json
required

The Metastore Catalog secret workspace to be attached.

Any of
metastore_catalog_id
required
integer <int64>
metastore_secrets_workspace_id
required
integer <int64>

Secret for the Metastore Catalog.

  • For the catalog of type:
    • DATABRICKS UNITY
      • The provided secret workspace must be of type:
        • DATABRICKS UNITY TOKEN
    • HIVE
      • The provided secret workspace must be any one of the gievn types:
        • HIVE KERBEROS
        • HIVE BASIC
object_storage_secrets_workspace_id
integer <int64>

Secret for the cloud storage.

  • The provided secret workspace must be any one of the given types:
    • AWS ACCESS SECRET KEY PAIR
    • AZURE SERVICE PRINCIPAL
    • GOOGLE SERVICE ACCOUNT

Responses

Request samples

Content type
application/json
{
  • "metastore_catalog_id": 0,
  • "metastore_secrets_workspace_id": 0,
  • "object_storage_secrets_workspace_id": 0
}

Response samples

Content type
application/json
{
  • "metastore_catalog_secret_workspace_id": 1,
  • "metastore_catalog_id": 1,
  • "metastore_secrets_workspace_id": 1,
  • "object_storage_secrets_workspace_id": 2,
  • "created_by_user_id": 1,
  • "modified_by_user_id": 1,
  • "last_update_date": "2025-03-19T04:47:23.824Z",
  • "from_date": "2025-03-19T04:47:23.824Z",
  • "to_date": "infinity"
}

Update a Metastore Catalog secret workspace

Update a specific Metastore Catalog's secret workspace.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
  2. The user must have MANAGE permission on the workspace to edit the secret for the association of the workspace secret to metastore
Authorizations:
bearerAuth
Request Body schema: application/json
required

The Metastore Catalog secret workspace to be updated.

metastore_catalog_secret_workspace_id
required
integer <int64>
metastore_secrets_workspace_id
integer or null <int64>

Secret for the Metastore Catalog.

  • For the catalog of type:
    • DATABRICKS UNITY
      • The provided secret workspace must be of type:
        • DATABRICKS UNITY TOKEN
    • HIVE
      • The provided secret workspace must be any one of the gievn types:
        • HIVE KERBEROS
        • HIVE BASIC
object_storage_secrets_workspace_id
integer or null <int64>

Secret for the cloud storage.

  • The provided secret workspace must be any one of the given types:
    • AWS ACCESS SECRET KEY PAIR
    • AZURE SERVICE PRINCIPAL
    • GOOGLE SERVICE ACCOUNT

Responses

Request samples

Content type
application/json
{
  • "metastore_catalog_secret_workspace_id": 0,
  • "metastore_secrets_workspace_id": 0,
  • "object_storage_secrets_workspace_id": 0
}

Response samples

Content type
application/json
{
  • "metastore_catalog_secret_workspace_id": 1,
  • "metastore_catalog_id": 1,
  • "metastore_secrets_workspace_id": 1,
  • "object_storage_secrets_workspace_id": 2,
  • "created_by_user_id": 1,
  • "modified_by_user_id": 1,
  • "last_update_date": "2025-03-19T04:47:23.824Z",
  • "from_date": "2025-03-19T04:47:23.824Z",
  • "to_date": "infinity"
}

Delete the association of Metastore Catalog secret workspace

Deletes a specific Metastore Catalog secret workspace association.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN.
  2. The user must have MANAGE permission on the workspace to remove the association of the workspace secret to metastore
Authorizations:
bearerAuth
query Parameters
metastore_catalog_secret_workspace_id
required
integer <int64>
Example: metastore_catalog_secret_workspace_id=1

Responses

Response samples

Content type
application/json
{
  • "message": "Metastore Catalog Secret workspace association deleted successfully."
}

Metastore Catalog Secret User

Get Metastore Catalogs and it's associated secret user

API to get Metastore Catalogs secret user associated.

Authorizations:
bearerAuth
query Parameters
metastore_catalog_secret_user_id
integer <int64>
Example: metastore_catalog_secret_user_id=1
user_id
integer <int64>
Example: user_id=1
catalog_type
string
Enum: "DATABRICKS UNITY" "HIVE"
metastore_catalog_id
integer <int64>
Example: metastore_catalog_id=1
metastore_catalog_name
string
Example: metastore_catalog_name=unity
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Attach a Metastore Catalog to a secret user

API to assoaciate Metastore Catalog with a secret user.

Rules:

  1. The user created the secret has the permission attach a metastore with secret user.
Authorizations:
bearerAuth
Request Body schema: application/json
required

The Metastore Catalog secret user to be attached.

Any of
metastore_catalog_id
required
integer <int64>
metastore_secrets_user_id
required
integer <int64>

Secret for the Metastore Catalog.

  • For the catalog of type:
    • DATABRICKS UNITY
      • The provided secret user must be of type:
        • DATABRICKS UNITY TOKEN
    • HIVE
      • The provided secret user must be any one of the given types:
        • HIVE KERBEROS
        • HIVE BASIC
object_storage_secrets_user_id
integer <int64>

Secret for the cloud storage.

  • The provided secret workspace must be any one of the given types:
    • AWS ACCESS SECRET KEY PAIR
    • AZURE SERVICE PRINCIPAL
    • GOOGLE SERVICE ACCOUNT

Responses

Request samples

Content type
application/json
{
  • "metastore_catalog_id": 0,
  • "metastore_secrets_user_id": 0,
  • "object_storage_secrets_user_id": 0
}

Response samples

Content type
application/json
{
  • "metastore_catalog_secret_user_id": 1,
  • "metastore_catalog_id": 1,
  • "metastore_secrets_user_id": 1,
  • "object_storage_secrets_user_id": 2,
  • "created_by_user_id": 1,
  • "modified_by_user_id": 1,
  • "last_update_date": "2025-03-19T04:47:23.824Z",
  • "from_date": "2025-03-19T04:47:23.824Z",
  • "to_date": "infinity"
}

Update a Metastore Catalog secret user

Update a specific Metastore Catalog's secret workspace.

Rules:

  1. The user attached the secret user to metastore catalog can only update the secret for the metastore
Authorizations:
bearerAuth
Request Body schema: application/json
required

The Metastore Catalog secret user to be updated.

metastore_catalog_secret_user_id
required
integer <int64>
metastore_secrets_user_id
integer or null <int64>

Secret for the Metastore Catalog.

  • For the catalog of type:
    • DATABRICKS UNITY
      • The provided secret user must be of type:
        • DATABRICKS UNITY TOKEN
    • HIVE
      • The provided secret user must be any one of the gievn types:
        • HIVE KERBEROS
        • HIVE BASIC
object_storage_secrets_user_id
integer or null <int64>

Secret for the cloud storage.

  • The provided secret user must be any one of the given types:
    • AWS ACCESS SECRET KEY PAIR
    • AZURE SERVICE PRINCIPAL
    • GOOGLE SERVICE ACCOUNT

Responses

Request samples

Content type
application/json
{
  • "metastore_catalog_secret_user_id": 0,
  • "metastore_secrets_user_id": 0,
  • "object_storage_secrets_user_id": 0
}

Response samples

Content type
application/json
{
  • "metastore_catalog_secret_user_id": 1,
  • "metastore_catalog_id": 1,
  • "metastore_secrets_user_id": 1,
  • "object_storage_secrets_user_id": 2,
  • "created_by_user_id": 1,
  • "modified_by_user_id": 1,
  • "last_update_date": "2025-03-19T04:47:23.824Z",
  • "from_date": "2025-03-19T04:47:23.824Z",
  • "to_date": "infinity"
}

Delete the association of Metastore Catalog secret user

Deletes a specific Metastore Catalog secret user association.

Rules:

  1. The user must have one of the following roles: PLATFORM ADMIN, ADMIN as well as the user attached the secret to metastore can delete the association of secret user to metastore
Authorizations:
bearerAuth
query Parameters
metastore_catalog_secret_user_id
integer <int64>
Example: metastore_catalog_secret_user_id=1

Responses

Response samples

Content type
application/json
{
  • "message": "Metastore Catalog Secret user association deleted successfully."
}

Cluster Configuration

Get all the cluster configurations.

Retrieves a list of cluster configurations.

Authorizations:
bearerAuth
query Parameters
cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

compute_type
string
Enum: "compute_optimized" "memory_optimized" "general_purpose" "gpu_accelerated" "storage_optimized" "custom_compute"

Compute type used for filtering.

architecture_type
string
Enum: "x86_64" "aarch64"

Machine Architecture Type used for filtering.

all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search cluster configurations based on configuration name.

Retrieve a list of cluster configurations based on the configuration name search.

Authorizations:
bearerAuth
query Parameters
cluster_conf_name
required
string

Specifies the name of the cluster configuration for the search.

cloud_provider
string
Enum: "GCP" "AWS" "Azure"

Cloud provider used for filtering.

compute_type
string
Enum: "compute_optimized" "memory_optimized" "general_purpose" "gpu_accelerated" "storage_optimized" "custom_compute"

Compute type used for filtering.

architecture_type
string
Enum: "x86_64" "aarch64"

Machine Architecture Type used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new cluster configuration.

Creates a new cluster configuration with provided configurations.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Cluster configuration to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
machine_type_id
required
integer <int64>
volume_conf_id
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_cluster",
  • "description": "Cluster Configurations test",
  • "machine_type_id": 76,
  • "volume_conf_id": 1
}

Response samples

Content type
application/json
{
  • "cluster_conf_id": "1",
  • "name": "yeedu_cluster",
  • "description": "Cluster Configurations test",
  • "machine_type_category_id": "1",
  • "machine_type_id": "1",
  • "volume_conf_id": "1",
  • "created_by_user_id": "3",
  • "modified_by_user_id": "3",
  • "last_update_date": "2023-03-17T10:20:21.627Z",
  • "from_date": "2023-03-17T10:20:21.627Z",
  • "to_date": null
}

Get details of a specific cluster configuration.

Retrieve cluster configuration details filtered by ID or name.

Authorizations:
bearerAuth
query Parameters
cluster_conf_id
integer <int64>

Cluster configuration ID used for filtering.

cluster_conf_name
string

Cluster configuration name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "cluster_conf_id": 261,
  • "cluster_conf_name": "cluster_conf",
  • "description": "creating aws cluster configuration",
  • "machine_type_category": "general_purpose",
  • "machine_type": {
    },
  • "machine_volume_conf": {
    },
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-04-12T13:27:29.754832+00:00",
  • "from_date": "2024-04-12T13:27:29.754832+00:00",
  • "to_date": "infinity"
}

Update details of a specific cluster configuration.

Authorizations:
bearerAuth
query Parameters
cluster_conf_id
integer <int64>

Cluster configuration ID used for modification.

cluster_conf_name
string

Cluster configuration name used for modification.

Request Body schema: application/json
required

Cluster configuration details to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
machine_type_id
integer <int64>
volume_conf_id
integer or null <int64>

Responses

Request samples

Content type
application/json
{
  • "name": "Yeedu Cluster Configuration",
  • "description": "Cluster Configurations test",
  • "machine_type_id": 75,
  • "volume_conf_id": 1
}

Response samples

Content type
application/json
{
  • "cluster_conf_id": "1",
  • "name": "yeedu_cluster",
  • "description": "Cluster Configurations test",
  • "machine_type_category_id": "1",
  • "machine_type_id": "1",
  • "volume_conf_id": "1",
  • "created_by_user_id": "3",
  • "modified_by_user_id": "3",
  • "last_update_date": "2023-03-17T10:20:21.627Z",
  • "from_date": "2023-03-17T10:20:21.627Z",
  • "to_date": null
}

Delete a specific cluster configuration.

Authorizations:
bearerAuth
query Parameters
cluster_conf_id
integer <int64>

Cluster configuration ID used for deletion.

cluster_conf_name
string

Cluster configuration name used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted Cluster Configuration Id: 1"
}

Cluster Instance

Get all the cluster instances.

Retrieves a list of cluster instances.

Authorizations:
bearerAuth
query Parameters
cluster_status
Array of strings
Items Enum: "INITIATING" "RUNNING" "STOPPING" "STOPPED" "DESTROYING" "DESTROYED" "ERROR" "RESIZING_UP" "RESIZING_DOWN"

Specifies the cluster instance statuses to be used as a filter.

cluster_conf_id
integer <int64>

Cluster configuration ID used for filtering.

cluster_conf_name
string

Cluster configuration name used for filtering.

enable
boolean
Enum: true false

Specifies which clusters to list.

  • If set to true, only active clusters will be listed.
  • If set to false, only disabled clusters will be listed.

Note: If unspecified, all clusters (both active and disabled) will be listed.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search cluster instance based on name.

Retrieve a list of cluster instances based on the name search.

Authorizations:
bearerAuth
query Parameters
cluster_name
required
string

Cluster instance name used for filtering.

cluster_status
Array of strings
Items Enum: "INITIATING" "RUNNING" "STOPPING" "STOPPED" "DESTROYING" "DESTROYED" "ERROR" "RESIZING_UP" "RESIZING_DOWN"

Specifies the cluster instance statuses to be used as a filter.

cluster_conf_id
integer <int64>

Cluster configuration ID used for filtering.

cluster_conf_name
string

Cluster configuration name used for filtering.

enable
boolean
Enum: true false

Specifies which clusters to list.

  • If set to true, only active clusters will be listed.
  • If set to false, only disabled clusters will be listed.

Note: If unspecified, all clusters (both active and disabled) will be listed.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Calculate Spark driver memory.

Calculates the Spark driver memory based on provided machine memory and the maximum parallel Spark job execution per instance.

Authorizations:
bearerAuth
query Parameters
machine_memory
required
integer <int64>

Total machine memory in GB

max_parallel_spark_job_execution_per_instance
required
integer <int64>

Maximum parallel Spark job execution per instance

Responses

Response samples

Content type
application/json
{
  • "message": "For each job 1G of Spark driver memory will be allocated."
}

Create a new cluster instance.

Create a new cluster instance with provided configuration.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Cluster instance configuration to be added.

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
idle_timeout_ms
integer <int64>
labels
object
is_spot_instance
required
boolean
is_turbo_enabled
boolean
Default: false
is_cuda_enabled
boolean
Default: false
enable_public_ip
required
boolean
block_project_ssh_keys
required
boolean
Default: false
bootstrap_shell_script
string or null non-empty
cloud_env_id
required
integer <int64>
object_storage_manager_id
required
integer <int64>
cluster_conf_id
required
integer <int64>
object
spark_infra_version_id
required
integer <int64>
metastore_catalog_id
integer or null <int64>
object
cluster_type
required
string
Enum: "YEEDU" "STANDALONE" "CLUSTER"
min_instances
integer or null <int64> >= 1
max_instances
integer or null <int64> [ 1 .. 30 ]
clean_up_timeout
integer <int64>
keep_scratch_disk
boolean or null

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_instance",
  • "description": "Test yeedu instance",
  • "idle_timeout_ms": 1200000,
  • "labels": {
    },
  • "is_spot_instance": false,
  • "enable_public_ip": false,
  • "block_project_ssh_keys": false,
  • "cloud_env_id": 1,
  • "object_storage_manager_id": 1,
  • "cluster_conf_id": 1,
  • "spark_infra_version_id": 0,
  • "is_turbo_enabled": false,
  • "is_cuda_enabled": false,
  • "spark_config": {
    },
  • "engine_cluster_spark_config": {
    },
  • "cluster_type": "YEEDU",
  • "min_instances": 1,
  • "max_instances": 3,
  • "clean_up_timeout": 240
}

Response samples

Content type
application/json
{
  • "cluster_id": "64",
  • "name": "yeedu_instance",
  • "description": "Yeedu Instance",
  • "cloud_env_id": "5",
  • "idle_timeout_ms": "600000",
  • "labels": {
    },
  • "is_spot_instance": false,
  • "enable_public_ip": true,
  • "is_turbo_enabled": false,
  • "is_cuda_enabled": false,
  • "block_project_ssh_keys": true,
  • "bootstrap_shell_script": null,
  • "object_storage_manager_id": "5",
  • "cluster_conf_id": "10",
  • "spark_config": {
    },
  • "metastore_catalog_id": null,
  • "spark_infra_version_id": "2",
  • "engine_cluster_spark_config": {
    },
  • "cluster_type": "YEEDU",
  • "min_instances": 1,
  • "max_instances": 1,
  • "clean_up_timeout": "240",
  • "keep_scratch_disk": false,
  • "tenant_id": "39262fc1-e77b-420b-83e6-952c5bca2857",
  • "created_by_user_id": "16",
  • "modified_by_user_id": "16",
  • "last_update_date": "2025-04-02T07:36:23.489Z",
  • "from_date": "2025-04-02T07:36:23.489Z",
  • "to_date": null
}

Get details of a specific cluster instance.

Retrieve cluster instance details filtered by ID or name.

Authorizations:
bearerAuth
query Parameters
cluster_id
integer <int64>

Cluster instance ID used for filtering.

cluster_name
string

Cluster instance name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "cluster_id": 21,
  • "name": "test-cluster",
  • "description": "Created for jobs load test",
  • "labels": {
    },
  • "idle_timeout_ms": 1800000,
  • "cluster_status": "RUNNING",
  • "cluster_type": "YEEDU",
  • "instance_size": 1,
  • "is_spot_instance": false,
  • "enable_public_ip": false,
  • "block_project_ssh_keys": false,
  • "min_instances": 1,
  • "max_instances": 1,
  • "clean_up_timeout": 240,
  • "total_ycu": 597.237,
  • "is_turbo_enabled": false,
  • "is_cuda_enabled": false,
  • "bootstrap_shell_script": "#!/bin/bash\n \necho \"10.10.30.196 test.yeedu.com\" >> /etc/hosts\n",
  • "cluster_conf": {
    },
  • "cloud_env": {
    },
  • "spark_infra_version": {
    },
  • "spark_config": {
    },
  • "engine_cluster_spark_config": {
    },
  • "object_storage_manager": {
    },
  • "workflow_job_instance_details": {
    },
  • "tenant_id": "a6a9c5ea-57b6-4a1c-aa99-84645f675b62",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-04-28T14:55:32.795+00:00",
  • "from_date": "2024-04-19T15:20:49.734293+00:00",
  • "to_date": "infinity"
}

Update details of a specific cluster instance.

The following parameters are permitted for editing in different cluster states:

In all cluster states:

  • name
  • description
  • idle_timeout_ms
  • clean_up_timeout

Only when the cluster is in a DESTROYED/ERROR state:

  • labels
  • block_project_ssh_keys
  • enable_public_ip
  • bootstrap_shell_script
  • cloud_env_id
  • object_storage_manager_id
  • cluster_conf_id
  • spark_infra_version_id
  • is_turbo_enabled
  • is_cuda_enabled
  • engine_cluster_spark_config:
    • max_parallel_spark_job_execution_per_instance
    • num_of_workers
  • spark_config:
    • conf
    • packages
    • repositories
    • jars
    • archives
    • env_var
    • conf_secret
    • env_var_secret
    • files
    • "py-files"
  • min_instances
  • max_instances
  • keep_scratch_disk
  • metastore_catalog_id
Authorizations:
bearerAuth
query Parameters
cluster_id
integer <int64>

Cluster instance ID used for modification.

cluster_name
string

Cluster instance name used for modification.

Request Body schema: application/json
required

Cluster instance details to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty
idle_timeout_ms
integer <int64>
labels
object
enable_public_ip
boolean
block_project_ssh_keys
boolean
bootstrap_shell_script
string or null non-empty
cloud_env_id
integer <int64>
cluster_conf_id
integer <int64>
is_turbo_enabled
boolean
is_cuda_enabled
boolean
object_storage_manager_id
integer <int64>
object
spark_infra_version_id
integer <int64>
metastore_catalog_id
integer or null <int64>
object
min_instances
integer or null <int64> >= 1
max_instances
integer or null <int64> [ 1 .. 30 ]
clean_up_timeout
integer <int64>
keep_scratch_disk
boolean or null

Responses

Request samples

Content type
application/json
{
  • "name": "yeedu_instance",
  • "description": "Test yeedu instance",
  • "idle_timeout_ms": 1200000,
  • "labels": {
    },
  • "enable_public_ip": false,
  • "block_project_ssh_keys": false,
  • "cloud_env_id": 1,
  • "object_storage_manager_id": 1,
  • "cluster_conf_id": 1,
  • "spark_infra_version_id": 1,
  • "is_turbo_enabled": false,
  • "is_cuda_enabled": false,
  • "spark_config": {
    },
  • "engine_cluster_spark_config": {
    },
  • "min_instances": 1,
  • "max_instances": 3,
  • "clean_up_timeout": 240
}

Response samples

Content type
application/json
{
  • "cluster_id": "64",
  • "name": "yeedu_instance",
  • "description": "Yeedu Instance",
  • "cloud_env_id": "5",
  • "idle_timeout_ms": "600000",
  • "labels": {
    },
  • "is_spot_instance": false,
  • "enable_public_ip": true,
  • "is_turbo_enabled": false,
  • "is_cuda_enabled": false,
  • "block_project_ssh_keys": true,
  • "bootstrap_shell_script": null,
  • "object_storage_manager_id": "5",
  • "cluster_conf_id": "10",
  • "spark_config": {
    },
  • "metastore_catalog_id": null,
  • "spark_infra_version_id": "2",
  • "engine_cluster_spark_config": {
    },
  • "cluster_type": "YEEDU",
  • "min_instances": 1,
  • "max_instances": 1,
  • "clean_up_timeout": "240",
  • "keep_scratch_disk": false,
  • "tenant_id": "39262fc1-e77b-420b-83e6-952c5bca2857",
  • "created_by_user_id": "16",
  • "modified_by_user_id": "16",
  • "last_update_date": "2025-04-02T07:36:23.489Z",
  • "from_date": "2025-04-02T07:36:23.489Z",
  • "to_date": null
}

Start a cluster instance.

Start a cluster instance by ID or name. Only cluster instances in the STOPPED state can be started.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Cluster instance to be started.

cluster_id
integer <int64>
cluster_name
string non-empty

Responses

Request samples

Content type
application/json
{
  • "cluster_id": 1
}

Response samples

Content type
application/json
{
  • "CosiStart": {
    }
}

Stop a cluster instance.

Stop a cluster instance by ID or name. Only cluster instances in the RUNNING state can be stopped.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Cluster instance to be stopped.

cluster_id
integer <int64>
cluster_name
string non-empty

Responses

Request samples

Content type
application/json
{
  • "cluster_id": 1,
  • "keep_scratch_disk": false
}

Response samples

Content type
application/json
{
  • "CosiStop": {
    }
}

Destroy a cluster instance.

Destroy a cluster instance by ID or name. Only cluster instances in the RUNNING, STOPPED, or ERROR states can be destroyed.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Cluster instance to be destroyed.

cluster_id
integer <int64>
cluster_name
string non-empty

Responses

Request samples

Content type
application/json
{
  • "cluster_id": 1
}

Response samples

Content type
application/json
{
  • "CosiDestroy": {
    }
}

Disable a cluster instance.

Disable a cluster instance by ID or name. Only cluster instances in the DESTROYED state can be disabled.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Cluster instance to be disabled.

cluster_id
integer <int64>
cluster_name
string non-empty

Responses

Request samples

Content type
application/json
{
  • "cluster_id": 1
}

Response samples

Content type
application/json
{
  • "message": "The cluster_id : 1 has been disabled."
}

Get all the cluster instance states.

Retrieve a list of cluster instance events (states) filtered by ID or name.

Authorizations:
bearerAuth
query Parameters
cluster_id
integer <int64>

Cluster instance ID used for filtering.

cluster_name
string

Cluster instance name used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Enable a cluster instance.

Enable a cluster instance by ID or name. Only cluster instances that are disabled can be enabled.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Cluster instance to be enabled.

cluster_id
integer <int64>
cluster_name
string non-empty

Responses

Request samples

Content type
application/json
{
  • "cluster_id": 1
}

Response samples

Content type
application/json
{
  • "cluster_id": "64",
  • "name": "yeedu_instance",
  • "description": "Yeedu Instance",
  • "cloud_env_id": "5",
  • "idle_timeout_ms": "600000",
  • "labels": {
    },
  • "is_spot_instance": false,
  • "enable_public_ip": true,
  • "is_turbo_enabled": false,
  • "is_cuda_enabled": false,
  • "block_project_ssh_keys": true,
  • "bootstrap_shell_script": null,
  • "object_storage_manager_id": "5",
  • "cluster_conf_id": "10",
  • "spark_config": {
    },
  • "metastore_catalog_id": null,
  • "spark_infra_version_id": "2",
  • "engine_cluster_spark_config": {
    },
  • "cluster_type": "YEEDU",
  • "min_instances": 1,
  • "max_instances": 1,
  • "clean_up_timeout": "240",
  • "keep_scratch_disk": false,
  • "tenant_id": "39262fc1-e77b-420b-83e6-952c5bca2857",
  • "created_by_user_id": "16",
  • "modified_by_user_id": "16",
  • "last_update_date": "2025-04-02T07:36:23.489Z",
  • "from_date": "2025-04-02T07:36:23.489Z",
  • "to_date": null
}

Get cluster instance logs.

Download cluster instance logs filtered by ID or name.

Authorizations:
bearerAuth
path Parameters
log_type
required
string
Enum: "stdout" "stderr"

The type of log file to filter.

query Parameters
cluster_id
integer <int64>

Cluster instance ID used for filtering.

cluster_name
string

Cluster instance name used for filtering.

cluster_status_id
integer <int64>

Cluster status ID used for filtering.

Responses

Response samples

Content type
application/json
{
  • "error_code": "string",
  • "error_message": "string"
}

Get Spark job statistics of a cluster instance.

Retrieve Spark job statistics for a specific cluster instance by its ID or Name.

Authorizations:
bearerAuth
query Parameters
cluster_id
integer <int64>

Cluster instance ID used for filtering.

cluster_name
string

Cluster instance name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "SUBMITTED": 0,
  • "RUNNING": 0,
  • "DONE": 511607,
  • "ERROR": 0,
  • "TERMINATED": 0,
  • "STOPPING": 0,
  • "STOPPED": 0,
  • "TOTAL_JOB_COUNT": 511607
}

Get workflow errors of a cluster instance.

Retrieve a list of workflow errors for a specific cluster instance by its ID.

Authorizations:
bearerAuth
path Parameters
cluster_id
required
integer <int64>

Cluster instance ID used for filtering.

query Parameters
cluster_status_id
integer <int64>

Cluster status ID used for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Stop all jobs in a cluster instance.

Stops all jobs in the SUBMITTED or RUNNING state for clusters that are in the INITIATING, RUNNING, or ERROR state.

Authorizations:
bearerAuth
path Parameters
cluster_id
required
integer <int64>

Specifies the ID of the cluster instance to stop all the jobs.

Responses

Response samples

Content type
application/json
{
  • "CosiKillAllJobsByCluster": {
    }
}

Cluster Access Control

Get Workspaces for a specific Cluster Id

Retrieve a list of workspaces filtered by a specific Cluster Id

Authorizations:
bearerAuth
path Parameters
cluster_id
required
integer <int64>

Cluster ID used for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search Workspaces for a specific Cluster Id and Workspace Name

Search workspaces for a specific Cluster Id and Workspace Name, returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
cluster_id
required
integer <int64>

Cluster Id that will be used for filter

query Parameters
workspace_name
required
string

Workspace Name that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get Clusters for a specific Workspace Id

Clusters are filtered for a specific Workspace Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
cluster_status
Array of strings
Items Enum: "INITIATING" "RUNNING" "STOPPING" "STOPPED" "DESTROYING" "DESTROYED" "ERROR" "RESIZING_UP" "RESIZING_DOWN"

Specifies the cluster instance statuses to be used as a filter.

job_type
string
Enum: "SPARK_JOB" "SPARK_SQL" "NOTEBOOK" "THRIFT_SQL" "YEEDU_FUNCTIONS"

Specifies the job type to filter and list the supported clusters.

enable
boolean
Enum: true false

Specifies which clusters to list.

  • If set to true, only active clusters will be listed.
  • If set to false, only disabled clusters will be listed.

Note: If unspecified, all clusters (both active and disabled) will be listed.

all
boolean
Default: false
Enum: true false

A boolean that can be set to return all the data.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search clusters by cluster name in a specific workspace

Clusters are filtered based on a specific cluster name within a Workspace ID, and the results are returned as a JSON

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Workspace Id that will be used for filter

query Parameters
cluster_name
required
string

Cluster Name that will be used for filter

enable
boolean
Enum: true false

Specifies which clusters to list.

  • If set to true, only active clusters will be listed.
  • If set to false, only disabled clusters will be listed.

Note: If unspecified, all clusters (both active and disabled) will be listed.

cluster_status
Array of strings
Items Enum: "INITIATING" "RUNNING" "STOPPING" "STOPPED" "DESTROYING" "DESTROYED" "ERROR" "RESIZING_UP" "RESIZING_DOWN"

Specifies the cluster instance statuses to be used as a filter.

job_type
string
Enum: "SPARK_JOB" "SPARK_SQL" "NOTEBOOK" "THRIFT_SQL" "YEEDU_FUNCTIONS"

Specifies the job type to filter and search the supported clusters.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Map a Cluster with a Workspace

Map a Cluster with a workspace

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Workspace Id that will be used for filter

cluster_id
required
integer <int64>

Cluster Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "workspace_id": "5",
  • "cluster_id": "13",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T11:20:59.259Z",
  • "from_date": "2024-06-21T11:20:59.259Z",
  • "to_date": null
}

Delete an existing Cluster Permission for a Group

Authorizations:
bearerAuth
path Parameters
cluster_id
required
integer <int64>

Cluster Id that will be used for filter

workspace_id
required
integer <int64>

Workspace Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted Permission Successfully."
}

Workspace

Get all the workspaces.

  • All workspaces within the tenant will be listed for users with either a Platform Admin or Admin role.

  • For users with a Can Manage Cluster or User role, only the workspaces where they have at least one workspace permission will be listed.

Authorizations:
bearerAuth
query Parameters
enable
boolean
Enum: true false

Specifies which workspace to list.

  • If set to true, only active workspaces will be listed.
  • If set to false, only disabled workspaces will be listed.

Note: If unspecified, all workspaces (both active and disabled) will be listed.

cluster_id
integer <int64>

Filter workspaces by cluster_id. Requires both cluster_id and is_attached to apply the filter.

is_attached
boolean
Enum: true false

Filter workspaces by cluster attachment status. Requires both cluster_id and is_attached to apply the filter.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search workspaces based on workspace name.

  • All workspaces within the tenant can be searched by users with either a Platform Admin or Admin role.

  • For users with a Can Manage Cluster or User role, only the workspaces where they have at least one workspace permission can be searched.

Authorizations:
bearerAuth
query Parameters
workspace_name
required
string

Specifies the name of the workspace to search.

enable
boolean
Enum: true false

Specifies which workspace to search.

  • If set to true, only active workspaces will be searched.
  • If set to false, only disabled workspaces will be searched.

Note: If unspecified, all workspaces (both active and disabled) will be searched.

cluster_id
integer <int64>

Filter workspaces by cluster_id. Requires both cluster_id and is_attached to apply the filter.

is_attached
boolean
Enum: true false

Filter workspaces by cluster attachment status. Requires both cluster_id and is_attached to apply the filter.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new Workspace

Creates a new workspace with the provided workspace details.

Authorizations:
bearerAuth
Request Body schema: application/json
required

The Workspace details to be added

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "test_workspace",
  • "description": "Workspace for test environment"
}

Response samples

Content type
application/json
{
  • "workspace_id": "6",
  • "name": "spark_jobs_test",
  • "description": "Test Spark Jobs",
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T11:29:36.685Z",
  • "from_date": "2024-06-21T11:29:36.685Z",
  • "to_date": null
}

Get details of a specific workspace.

  • Workspace details within the tenant can be retrieved by users with either a Platform Admin or Admin role.

  • For users with a Can Manage Cluster or User role, only the workspace details where they have at least one workspace permission can be retrieved.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace to retrieve details.

workspace_name
string

Specifies the name of the workspace to retrieve details.

Responses

Response samples

Content type
application/json
{
  • "workspace_id": 6,
  • "name": "spark_jobs_test",
  • "description": "Test Spark Jobs",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "last_update_date": "2024-06-21T11:29:36.685681+00:00",
  • "from_date": "2024-06-21T11:29:36.685681+00:00",
  • "to_date": "infinity"
}

Update details of a specific workspace.

  • All workspaces within the tenant can be modified by users with either a Platform Admin or Admin role.

  • For users with a Can Manage Cluster or User role, only the workspaces where they have at least one workspace permission can be modified.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace to update details.

workspace_name
string

Specifies the name of the workspace to update details.

Request Body schema: application/json
required

The Workspace details to be modified

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "spark_jobs_test",
  • "description": "Test Spark Curation Jobs"
}

Response samples

Content type
application/json
{
  • "workspace_id": "6",
  • "name": "spark_jobs_test",
  • "description": "Test Spark Jobs",
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T11:29:36.685Z",
  • "from_date": "2024-06-21T11:29:36.685Z",
  • "to_date": null
}

Enable a specific workspace.

  • All workspaces within the tenant can be enabled by users with either a Platform Admin or Admin role.

  • For users with a Can Manage Cluster or User role, only the workspaces where they have at least one workspace permission can be enabled.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace Id that will be used for filter

workspace_name
string

Workspace Name that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "workspace_id": "6",
  • "name": "spark_jobs_test",
  • "description": "Test Spark Jobs",
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T11:29:36.685Z",
  • "from_date": "2024-06-21T11:29:36.685Z",
  • "to_date": null
}

Disable a specific workspace.

  • All workspaces within the tenant can be disabled by users with either a Platform Admin or Admin role.

  • For users with a Can Manage Cluster or User role, only the workspaces where they have at least one workspace permission can be disabled.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace Id that will be used for filter

workspace_name
string

Workspace Name that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "workspace_id": "6",
  • "name": "spark_jobs_test",
  • "description": "Test Spark Curation Jobs",
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T11:35:38.174Z",
  • "from_date": "2024-06-21T11:29:36.685Z",
  • "to_date": "2024-06-21T11:35:38.174Z"
}

Get Spark job statistics of a workspace.

Retrieve Spark job statistics for a specific workspace by its ID or Name.

  • Workspace statistics within the tenant can be retrieved by users with either a Platform Admin or Admin role.

  • For users with a Can Manage Cluster or User role, only the workspace statistics where they have at least one workspace permission can be retrieved.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace to retrieve stats.

workspace_name
string

Specifies the name of the workspace to retrieve stats.

Responses

Response samples

Content type
application/json
{
  • "SUBMITTED": 0,
  • "RUNNING": 0,
  • "DONE": 511607,
  • "ERROR": 0,
  • "TERMINATED": 0,
  • "STOPPING": 0,
  • "STOPPED": 0,
  • "TOTAL_JOB_COUNT": 511607
}

Export job and notebook configurations of a specified workspace.

Export job and notebook configurations of a specified workspace.

  • The user must have at least one permission in the workspace from which the jobs or notebooks are being exported.

Note- If the workspace consists of Notebooks, then the workspace will be exported as a zip file with the notebook files and the job and notebook configurations, else for jobs it will be exported as a file.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace to export job and notebook configurations from.

workspace_name
string

Specifies the name of the workspace to export job and notebook configurations from.

enable
boolean
Enum: true false

Specifies which job and notebook configurations to export.

  • If set to true, only active configurations will be exported.
  • If set to false, only disabled configurations will be exported.

Note: If unspecified, all configurations (both active and disabled) will be exported.

Responses

Response samples

Content type
application/json
{
  • "jobs": [
    ],
  • "notebooks": [
    ]
}

Import job and notebook configurations into a specified workspace.

Import job and notebook configurations into a specified workspace.

  1. The user must have either the MANAGE or EDIT permission in the workspace where the job or notebook will be imported.

  2. The cluster specified in the parameter takes precedence over the cluster specified in the import JSON, if present.

  3. The Spark parameters (driver_memory, driver_cores, executor_memory, executor_cores, num_executors, total_executor_cores) are ignored if the cluster types do not match:

    • Between the cluster provided in the query parameter and the cluster specified in the import JSON, provided both clusters are present and not destroyed.

    • If the cluster specified in the import JSON has a different type from the cluster with the same name or if the cluster has been destroyed.

  4. The cluster is not attached to the job or notebook configuration if:

    • The cluster provided in the query parameter is not found or has been destroyed.

    • No cluster is provided in the query parameter, and:

      • The cluster specified in the import JSON is not found or has been destroyed.

      • The cluster information in the import JSON is null.

  5. The workspace provided must have access to use the cluster found according to the above rules.

  6. The job or notebook is configuration overwritten if the overwrite parameter is set to true and an existing job or notebook with the same name is found.

  7. By default, max_concurrency for a notebook configuration will always be 1.

  8. The behavior of the import process depends on the permissive parameter:

    • If set to true:

      • Any error encountered while importing either a job or a notebook is ignored.

      • The remaining jobs or notebooks are imported successfully despite the error.

    • If set to false (default):

      • Any error encountered while importing either a job or a notebook results in a rollback.

      • None of the jobs or notebooks are imported.

To import exported notebooks, follow these steps:

  1. Extract the ZIP file:

    • Unzip the exported folder.
  2. Upload the Notebooks Folder (if applicable):

    • If the unzipped folder contains a notebooks directory, upload it to the target workspace where the notebooks should be imported.
  3. Import Using the .yeedu File:

    • Utilize the JSON content inside the name.yeedu file to import the notebook(s).
  4. Handling Non-Zipped Exports (A Warning Message will be given in the API response in this case):

    • If the exported notebook(s) were not provided in a ZIP file, directly use the JSON inside the name.yeedu file for import. No file or folder needs to be uploaded to the workspace.

    • In this case, no actual notebook files are associated with the imported notebooks, only their configurations are imported.

    • When the notebook is opened via the UI, a new notebook file will be automatically created based on the imported configuration.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace for importing job and notebook configurations.

workspace_name
string

Specifies the name of the workspace for importing job and notebook configurations.

cluster_id
integer <int64>

Specifies the cluster ID to which all imported job and notebook configurations will be attached.

cluster_name
string

Specifies the cluster name to which all imported job and notebook configurations will be attached.

permissive
boolean
Default: false
Enum: true false

Specifies if the import should be permissive, allowing for partial imports when encountering errors.

overwrite
boolean
Default: false
Enum: true false

Specifies whether to overwrite existing configurations with the same job or notebook name.

Request Body schema: application/json
required
Array of objects or null (ImportSparkJobConfig)
Array of objects or null (ImportNotebookConfig)

Responses

Request samples

Content type
application/json
{
  • "jobs": [
    ],
  • "notebooks": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "job_conf_details": {
    },
  • "notebook_conf_details": {
    }
}

Workspace Files

Get all the workspace files.

Retrieves a list of files or directories present in a specific workspace ID or name.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

workspace ID used for filtering.

workspace_name
string

workspace name used for filtering.

file_id
integer <int64>

workspace file ID used for filtering.

file_path
string

workspace file path used for filtering.

is_dir
boolean or null
Enum: true false

is_dir parameter used for filtering directories or files.

recursive
boolean
Default: false
Enum: true false

Boolean flag to indicate whether to list files recursively.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Upload file to an workspace.

Upload a file to a specified Workspace ID or name.

  1. overwrite: A boolean parameter indicating whether the file should overwrite any existing file in the workspace. The default value is false.
  2. is_dir: A boolean parameter indicating whether to create a directory or upload a file.
  3. path: The path used to specify the file location when uploading a directory. It indicates the directory structure where the file will be stored.
  4. target_dir: The target directory, used as a prefix, for the destination when uploading a directory or file to the workspace.
Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

overwrite
boolean
Default: false
Enum: true false

Boolean flag to indicate whether to overwrite existing files.

is_dir
boolean
Default: false
Enum: true false

A boolean flag indicating whether the uploaded file is part of a directory upload.

path
required
string non-empty

The path used to specify the file location when uploading a directory.

target_dir
string

The target directory, used as a prefix, for the destination when uploading a directory or file.

header Parameters
x-file-size
number

The header for file size

Request Body schema: application/octet-stream

File to upload to an workspace.

string <binary>

The file content being uploaded in chunks.

Responses

Response samples

Content type
application/json
{
  • "workspace_file_id": "13",
  • "file_name": "sub-file1.txt",
  • "full_file_path": "file:///files/parent/sub-parent-1/sub-file1.txt",
  • "file_size_bytes": "0",
  • "file_type": "txt",
  • "is_dir": false,
  • "parent_id": "4",
  • "tenant_id": "eb535243-3747-40ae-b75b-bbaef9bc944b",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2025-01-02T16:28:20.201Z",
  • "from_date": "2025-01-02T11:22:31.076Z",
  • "to_date": null
}

Search workspace files based on file name.

Retrieve a list of files and directories based on file name search in a specific workspace ID or name.

Authorizations:
bearerAuth
query Parameters
file_name
required
string

workspace file name used for filtering.

workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

file_id
integer <int64>

workspace file ID used for filtering.

file_path
string

workspace file path used for filtering.

is_dir
boolean or null
Enum: true false

is_dir parameter used for filtering directories or files.

recursive
boolean
Default: false
Enum: true false

Boolean flag to indicate whether to search files recursively.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get details of a specific workspace file or a directory.

Retrieve details of an workspace file filtered by its ID or name, along with file ID or name.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

file_id
integer <int64>

workspace file ID used for filtering.

file_path
string

workspace file path used for filtering.

Responses

Response samples

Content type
application/json
{
  • "workspace_file_id": 9,
  • "workspace": {
    },
  • "file_name": "file5.txt",
  • "full_file_path": "file:///files/file5.txt",
  • "file_size_bytes": "0",
  • "file_type": "txt",
  • "is_dir": false,
  • "parent_id": null,
  • "tenant_id": "eb535243-3747-40ae-b75b-bbaef9bc944b",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2025-01-02T09:37:00.82327+00:00",
  • "from_date": "2025-01-02T09:37:00.82327+00:00",
  • "to_date": "infinity"
}

Delete a specific workspace file.

Delete an workspace file filtered by its ID or name, along with the file ID or file path.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

file_id
integer <int64>

workspace file ID used for deletion.

file_path
string

workspace file path used for deletion.

Responses

Response samples

Content type
application/json
{
  • "message": "The File '/yeedu/files/8cee6100-7086-4138-92fd-712046174e91/1/spark-sql_2.12-3.2.0.jar' has been deleted."
}

Download workspace files or directories.

Download workspcae files filtered by ID or name.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

file_id
integer <int64>

workspace file ID used for filtering.

file_path
string

workspace file path used for filtering.

Responses

Response samples

Content type
application/json
{
  • "error_code": "string",
  • "error_message": "string"
}

Rename workspace file or directory.

Rename workspace file/directory filtered by ID or name.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

file_id
integer <int64>

workspace file ID used for renaming.

file_path
string non-empty

workspace file path used for filtering.

file_name
required
string [ 1 .. 1000 ] characters

new name for the file/directory

Responses

Response samples

Content type
application/json
{
  • "message": "Renamed /home/user/documents/report.csv to /workspace/shared/report.csv in Workspace Id: 123"
}

Move workspace file or directory from one path to another path.

Move workspace file/directory from one path to another path.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

source_file_id
integer <int64>

workspace file ID of source file/directory used for moving.

source_file_path
string non-empty

workspace file path of source file/directory used for moving.

destination_file_path
required
string [ 1 .. 1000 ] characters

workspace file path of destination file/directory used for moving

overwrite
boolean
Default: false
Enum: true false

Boolean flag to indicate whether to overwrite existing files.

Responses

Response samples

Content type
application/json
{
  • "message": "Moved /home/user/documents/report.csv to /workspace/shared/report.csv in Workspace Id: 123"
}

Copy workspace file or directory from one path to another path.

Copy workspace file/directory from one path to another path.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

source_file_id
integer <int64>

workspace file ID of source file/directory used for copy.

source_file_path
string non-empty

workspace file path of source file/directory used for copy.

destination_file_path
required
string [ 1 .. 1000 ] characters

workspace file path of destination file/directory used for copy.

overwrite
boolean
Default: false
Enum: true false

Boolean flag to indicate whether to overwrite existing files.

Responses

Response samples

Content type
application/json
{
  • "message": "Copied /home/user/documents/report.csv to /workspace/shared/report.csv in Workspace Id: 123"
}

Get workspace files usage details of a specific Workspace.

Retrieve workspace files usage details of an workspace filtered by its ID or name.

  • workspace_files_maxiumum_upload_limit: Maximum number of files that can be uploaded per workspace is 10000.
Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Workspace ID used for filtering.

workspace_name
string

Workspace name used for filtering.

Responses

Response samples

Content type
application/json
{
  • "workspace_id": 1,
  • "workspace_name": "test",
  • "workspace_files_usage_in_bytes": 4675074494.19,
  • "workspace_files_available_usage_in_bytes": 49012016705.81,
  • "workspace_files_maximum_allowed_usage_in_bytes": 53687091200,
  • "workspace_files_uploaded": 1736,
  • "workspace_files_maximum_upload_limit": 10000
}

Workspace Secrets

Get all the workspace secrets.

Retrieves a list of workspace secrets for the specified workspace.

Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace for filtering.

workspace_name
string

Specifies the name of the workspace for filtering.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of secret to filter the secrets.

workspace_secret_id
string

Filter secrets by a specific workspace secret ID.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new workspace secret.

Creates a new secret for the specified workspace.

  • Users with Platform Admin role, Admin role within a tenant, or with MANAGE permission in a workspace, are authorized to create workspace secrets for a specified workspace_id.
  • The name of the secret should always be unique.
Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace for filtering.

workspace_name
string

Specifies the name of the workspace for filtering.

Request Body schema: application/json
required

Workspace secret to be created.

One of
secret_type
required
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of authentication secret.

name
required
string non-empty

Secret identifier.

description
string or null non-empty

Optional secret details.

principal
required
string non-empty

Kerberos principal.

keytab
required
string non-empty

Keytab file path.

Responses

Request samples

Content type
application/json
{
  • "secret_type": "AWS ACCESS SECRET KEY PAIR",
  • "name": "aws_secret",
  • "description": "AWS credentials for accessing S3",
  • "type": "string",
  • "project_id": "string",
  • "private_key_id": "string",
  • "private_key": "string",
  • "client_email": "string",
  • "client_id": "string",
  • "auth_uri": "string",
  • "token_uri": "string",
  • "auth_provider_x509_cert_url": "string",
  • "client_x509_cert_url": "string",
  • "access_key": "string",
  • "secret_key": "string",
  • "aws_access_key_id": "AKIAXXXXXXX",
  • "aws_secret_access_key": "abcd1234XXXX",
  • "aws_default_region": "us-west-2"
}

Response samples

Content type
application/json
{
  • "workspace_secret_id": "1",
  • "description": "Neo4j crdentials",
  • "workspace_id": "1",
  • "name": "key",
  • "secret_type": "ENVIRONMENT VARIABLE",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2025-03-04T06:42:27.002Z",
  • "from_date": "2025-03-04T06:42:27.002Z",
  • "to_date": null
}

Update an existing workspace secret.

Updates the specified secret for the specified workspace.

  • Users with Platform Admin role, Admin role within a tenant, or with MANAGE permission in a workspace, are authorized to update workspace secrets for a specified workspace_id.
  • The name of the secret should always be unique.
Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace for filtering.

workspace_name
string

Specifies the name of the workspace for filtering.

workspace_secret_id
required
integer <int64>

The ID of the workspace secret to be updated.

Request Body schema: application/json
required

Workspace secret details to be updated.

One of
secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of authentication secret.

description
string or null non-empty

Optional secret details.

principal
string non-empty

Kerberos principal.

keytab
string non-empty

Keytab file path.

Responses

Request samples

Content type
application/json
{
  • "secret_type": "AWS ACCESS SECRET KEY PAIR",
  • "description": "AWS credentials for accessing S3",
  • "type": "string",
  • "project_id": "string",
  • "private_key_id": "string",
  • "private_key": "string",
  • "client_email": "string",
  • "client_id": "string",
  • "auth_uri": "string",
  • "token_uri": "string",
  • "auth_provider_x509_cert_url": "string",
  • "client_x509_cert_url": "string",
  • "access_key": "string",
  • "secret_key": "string",
  • "aws_access_key_id": "AKIAXXXXXXX",
  • "aws_secret_access_key": "abcd1234XXXX",
  • "aws_default_region": "us-west-2"
}

Response samples

Content type
application/json
{
  • "workspace_secret_id": "1",
  • "description": "Neo4j crdentials",
  • "workspace_id": "1",
  • "name": "key",
  • "secret_type": "ENVIRONMENT VARIABLE",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2025-03-04T06:42:27.002Z",
  • "from_date": "2025-03-04T06:42:27.002Z",
  • "to_date": null
}

Delete an existing workspace secret.

  • Deletes the specified secret for the specified workspace.
  • Users with Platform Admin role, Admin role within a tenant, or with MANAGE permission in a workspace, are authorized to delete workspace secrets for a specified workspace_id.
Authorizations:
bearerAuth
query Parameters
workspace_id
integer <int64>

Specifies the ID of the workspace for filtering.

workspace_name
string

Specifies the name of the workspace for filtering.

workspace_secret_id
required
integer <int64>

The ID of the workspace secret to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted workspace secret id: 1."
}

Search all the workspace secrets of the specified workspace based on secret name.

Retrieves a list of searched workspace secrets from the specified workspace by secret name.

Authorizations:
bearerAuth
query Parameters
secret_name
required
string

Secret name that will be used for filter

workspace_id
integer <int64>

Specifies the ID of the workspace for filtering.

workspace_name
string

Specifies the name of the workspace for filtering.

secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of secret to filter the secrets.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Workspace Access Control

Get all users having a specific permission in a workspace.

Users having a specific permission in a workspace are listed by workspace ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace to retrieve users from.

query Parameters
permission_id
integer <int64>

Specifies the ID of the permission to retrieve users.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Search all users having a specific permission in a workspace.

Users having a specific permission in a workspace are searched by username.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace to search users from.

query Parameters
username
required
string

Specifies username to retrieve users.

permission_id
integer <int64>

Specifies the ID of the permission to retrieve users.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Get users for a specific Workspace ID.

List users who have no permissions in a workspace.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Search users by Workspace ID and Username.

Search for users by username who have no permissions in a workspace.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
username
required
string

Specifies the username for searching.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Match username for a specific Workspace ID.

Match username for a specific Workspace ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

username
required
string

Specifies the username to get an exact match.

Responses

Response samples

Content type
application/json
{
  • "user_id": 12,
  • "username": "ru0001-yeedu@yeedu.io",
  • "display_name": "RU0001",
  • "email": "ru0001-yeedu@yeedu.io",
  • "from_date": "2024-06-20T10:38:48.746144+00:00",
  • "to_date": "infinity"
}

Get user's workspace permission.

Retrieve workspace permission of a user by a specific Workspace ID and User ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

user_id
required
integer <int64>

Specifies the ID of the user for filtering.

Responses

Response samples

Content type
application/json
{
  • "user_id": "12",
  • "username": "ru0001-yeedu@yeedu.io",
  • "workspace": {
    },
  • "tenant_id": "9d6d3054-a5f6-4dbf-86f9-26989eb73ed3",
  • "user_permission": {
    },
  • "group_permission": null
}

Get all groups having a specific permission in a workspace.

Groups having a specific permission in a workspace are listed by workspace ID and permission ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace to retrieve groups from.

query Parameters
permission_id
integer <int64>

Specifies the ID of the permission to retrieve groups.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Search groups having a specific permission in a workspace.

Groups having a specific permission in a workspace are searched by groupname.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace to search groups from.

query Parameters
groupname
required
string

Specifies groupname to retrieve groups.

permission_id
integer <int64>

Specifies the ID of the permission to retrieve groups.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Get groups for a specific Workspace ID.

List groups who have no permissions in a workspace.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Search groups by Workspace ID and Group name.

Search for groups by groupname who have no permissions in a workspace.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
groupname
required
string

Specifies the group name for searching.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Match groupname for a specific Workspace ID.

Match groupname for a specific Workspace ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

groupname
required
string

Specifies the group name to get an exact match.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get group's workspace permission.

Retrieve workspace permission of a group by a specific Workspace ID and group ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

group_id
required
integer <int64>

Specifies the ID of the group for filtering.

Responses

Response samples

Content type
application/json
{
  • "group_id": "75",
  • "group_name": "G_Yeedu_Analyst",
  • "workspace": {
    },
  • "tenant_id": "9d6d3054-a5f6-4dbf-86f9-26989eb73ed3",
  • "group_permission": {
    }
}

Assign a permission to a user for a specific workspace.

Provide access to a user for a workspace with a specific permission.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace where the permission will be granted.

Request Body schema: application/json
required

The workspace permission for the user to be added.

user_id
required
integer <int64>
permission_id
required
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "user_id": 1,
  • "permission_id": 1
}

Response samples

Content type
application/json
{
  • "auth_workspace_user_id": "36",
  • "workspace_id": "1",
  • "auth_workspace_perm_id": 2,
  • "user_id": "1",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T18:25:19.905Z",
  • "from_date": "2024-06-21T18:25:19.905Z",
  • "to_date": null
}

Assign a permission to a group for a specific workspace.

Provide access to a group for a workspace with a specific permission.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace where the permission will be granted.

Request Body schema: application/json
required

The workspace permission for the group to be added.

group_id
required
integer <int64>
permission_id
required
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "group_id": 1,
  • "permission_id": 1
}

Response samples

Content type
application/json
{
  • "auth_workspace_group_id": "9",
  • "workspace_id": "1",
  • "auth_workspace_perm_id": 2,
  • "group_id": "1",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T18:27:27.518Z",
  • "from_date": "2024-06-21T18:27:27.518Z",
  • "to_date": null
}

Revoke a workspace permission for a user.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace from which the permission will be revoked.

user_id
required
integer <int64>

Specifies the ID of the user for whom the permission will be revoked.

permission_id
required
integer <int64>

Specifies the ID of the permission to be revoked from the user.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted Permission Successfully."
}

Revoke a workspace permission for a group.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace from which the permission will be revoked.

group_id
required
integer <int64>

Specifies the ID of the group for whom the permission will be revoked.

permission_id
required
integer <int64>

Specifies the ID of the permission to be revoked from the group.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted Permission Successfully."
}

Spark Job Configuration

Get all Spark job configurations.

Retrieves a list of Spark job configurations.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
enable
boolean
Enum: true false

Specifies which Spark job configurations to list.

  • If set to true, only active Spark job configurations will be listed.
  • If set to false, only disabled Spark job configurations will be listed.

Note: If unspecified, all Spark job configurations (both active and disabled) will be listed.

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

job_type
Array of strings
Items Enum: "SPARK_JOB" "SPARK_SQL" "THRIFT_SQL" "YEEDU_FUNCTIONS"

An optional set of Spark job types to filter Spark job configurations.

job_type_langs
Array of strings
Items Enum: "RAW_SCALA" "Jar" "Python3" "SQL"

Specifies the languages of the Spark job configuration for filtering.

last_run_status
Array of strings (JobStatus)
Items Enum: "SUBMITTED" "RUNNING" "DONE" "ERROR" "TERMINATED" "STOPPING" "STOPPED"

Specifies the last run status of the Spark job configuration for filtering.

created_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of created by user IDs to filter on.

modified_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of modified by user IDs to filter on.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Search Spark job configurations by configuration name.

Retrieves a list of Spark job configurations based on a search by configuration name.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
job_conf_name
required
string

Specifies the name of the Spark job configuration to search for.

enable
boolean
Enum: true false

Specifies which Spark job configurations to search.

  • If set to true, only active Spark job configurations will be searched.
  • If set to false, only disabled Spark job configurations will be searched.

Note: If unspecified, all Spark job configurations (both active and disabled) will be searched.

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

job_type
Array of strings
Items Enum: "SPARK_JOB" "SPARK_SQL" "THRIFT_SQL" "YEEDU_FUNCTIONS"

An optional set of Spark job types to filter Spark job configurations.

job_type_langs
Array of strings
Items Enum: "RAW_SCALA" "Jar" "Python3" "SQL"

Specifies the languages of the Spark job configuration for filtering.

last_run_status
Array of strings (JobStatus)
Items Enum: "SUBMITTED" "RUNNING" "DONE" "ERROR" "TERMINATED" "STOPPING" "STOPPED"

Specifies the last run status of the Spark job configuration for filtering.

created_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of created by user IDs to filter on.

modified_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of modified by user IDs to filter on.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create a new Spark job configuration.

Creates a Spark job configuration with the provided configurations.

  • max_concurrency: Specifies the maximum number of concurrent Spark job instances allowed for a particular Spark job configuration.

    • If max_concurrency is set to 0, an unlimited number of Spark job instances can be submitted using the same configuration.

    • If max_concurrency is greater than 0, the number of job instances that can be submitted is limited to the specified max_concurrency value.

    • If the job type is THRIFT_SQL then max_concurrency of 1 is only allowed

  • YEEDU_FUNCTIONS: If job type is YEEDU_FUNCTIONS:

    • yeedu_functions_max_request_concurrency: The value must be between 1 and 512.

    • yeedu_functions_request_timeout_sec: The value must be between 1 second and 900 seconds (1 second to 15 minutes).

    • yeedu_functions_idle_timeout_sec: The value must be between 300 seconds and 172800 seconds (5 minutes to 48 hours).

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

Request Body schema: application/json
required

The Spark job configuration to be added.

cluster_id
integer <int64>
cluster_name
string non-empty
max_concurrency
integer <int64>
Default: 0
name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
files
Array of strings unique [ items non-empty ]
properties_file
Array of strings unique [ items non-empty ]
conf
Array of strings unique [ items non-empty ]
packages
Array of strings unique [ items non-empty ]
repositories
Array of strings unique [ items non-empty ]
jars
Array of strings unique [ items non-empty ]
archives
Array of strings unique [ items non-empty ]
driver_memory
string or null^(?=.*[1-9])\d+(?![\d.])(?=\D)

The memory cannot be negative and decimal.

driver_java_options
string or null non-empty
driver_library_path
string or null non-empty
driver_class_path
string or null non-empty
executor_memory
string or null^(?=.*[1-9])\d+(?![\d.])(?=\D)

The memory cannot be negative and decimal.

principal
string or null non-empty
keytab
string or null non-empty
queue
string or null non-empty
job_class_name
string or null non-empty
job_command
string or null non-empty
job_arguments
string or null non-empty
job_rawScalaCode
string or null non-empty
job_type
required
string
Enum: "RAW_SCALA" "Jar" "Python3" "SQL" "THRIFT_SQL" "YEEDU_FUNCTIONS"
job_timeout_min
integer or null <int64> >= 1
extra_info
object
driver_cores
integer or null <int32> >= 1
total_executor_cores
integer or null <int64> >= 1
executor_cores
integer or null <int32> >= 1
num_executors
integer or null <int32> >= 1
yeedu_functions_project_path
string or null [ 1 .. 5000 ] characters
yeedu_functions_script_path
string or null <= 5000 characters
yeedu_functions_function_name
string or null [ 1 .. 5000 ] characters
yeedu_functions_requirements
string or null [ 1 .. 5000 ] characters
yeedu_functions_max_request_concurrency
integer or null <int64> [ 1 .. 512 ]
yeedu_functions_idle_timeout_sec
integer or null <int64> [ 300 .. 172800 ]
yeedu_functions_request_timeout_sec
integer or null <int64> [ 1 .. 900 ]
yeedu_functions_example_request_body
string or null non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "spark_job_examples",
  • "cluster_id": 81,
  • "max_concurrency": 100,
  • "job_class_name": "org.apache.spark.examples.SparkPi",
  • "job_command": "file:///yeedu/object-storage-manager/spark-examples_2.12-3.2.2.jar",
  • "job_arguments": "500",
  • "job_rawScalaCode": null,
  • "job_type": "Jar",
  • "job_timeout_min": null,
  • "files": [ ],
  • "properties_file": [ ],
  • "conf": [ ],
  • "packages": [ ],
  • "repositories": [ ],
  • "jars": [ ],
  • "archives": [ ],
  • "driver_memory": null,
  • "driver_java_options": null,
  • "driver_library_path": null,
  • "driver_class_path": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "principal": null,
  • "keytab": null,
  • "queue": null
}

Response samples

Content type
application/json
{
  • "job_conf_id": "1",
  • "name": "spark_examples",
  • "cluster_id": "1",
  • "workspace_id": "1",
  • "spark_job_type_lang_id": 1,
  • "max_concurrency": "100",
  • "job_class_name": "org.apache.spark.examples.SparkPi",
  • "job_command": "file:///yeedu/object-storage-manager/spark-examples_2.12-3.2.2.jar",
  • "job_arguments": "500",
  • "job_rawScalaCode": null,
  • "files": null,
  • "properties_file": null,
  • "conf": null,
  • "packages": null,
  • "repositories": null,
  • "jars": null,
  • "archives": null,
  • "driver_memory": null,
  • "driver_java_options": null,
  • "driver_library_path": null,
  • "driver_class_path": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "principal": null,
  • "keytab": null,
  • "queue": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-14T06:36:57.297Z",
  • "from_date": "2024-06-14T06:29:47.214Z",
  • "to_date": null
}

Get details of a specific Spark job configuration.

Retrieve Spark job configuration details filtered by ID or name.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
job_conf_id
integer <int64>

Specifies the ID of the Spark job configuration for filtering.

job_conf_name
string

Specifies the name of the Spark job configuration for filtering.

Responses

Response samples

Content type
application/json
{
  • "job_conf_id": 23,
  • "name": "spark_example",
  • "cluster_info": {
    },
  • "spark_job_type": {
    },
  • "max_concurrency": 0,
  • "job_class_name": "org.apache.spark.examples.SparkPi",
  • "job_command": "file:///yeedu/object-storage-manager/spark-examples_2.12-3.2.2.jar",
  • "job_arguments": "1000",
  • "job_rawScalaCode": null,
  • "job_timeout_min": null,
  • "files": null,
  • "properties_file": null,
  • "conf": null,
  • "packages": null,
  • "repositories": null,
  • "jars": null,
  • "archives": null,
  • "driver_memory": null,
  • "driver_java_options": null,
  • "driver_library_path": null,
  • "driver_class_path": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "principal": null,
  • "keytab": null,
  • "queue": null,
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-06-20T17:36:11.084+00:00",
  • "from_date": "2024-06-20T17:24:19.782774+00:00",
  • "to_date": "infinity"
}

Update details of a specific Spark job configuration.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
job_conf_id
integer <int64>

Specifies the ID of the Spark job configuration for modification.

job_conf_name
string

Specifies the name of the Spark job configuration for modification.

Request Body schema: application/json
required

Spark job configuration details to be modified.

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
cluster_id
integer <int64>
cluster_name
string
max_concurrency
integer <int64>
files
Array of strings or null unique
properties_file
Array of strings or null unique
conf
Array of strings or null unique
packages
Array of strings or null unique
repositories
Array of strings or null unique
jars
Array of strings or null unique
archives
Array of strings or null unique
driver_memory
string or null^(?=.*[1-9])\d+(?![\d.])(?=\D)

The memory cannot be negative and decimal.

driver_java_options
string or null non-empty
driver_library_path
string or null non-empty
driver_class_path
string or null non-empty
executor_memory
string or null^(?=.*[1-9])\d+(?![\d.])(?=\D)

The memory cannot be negative and decimal.

principal
string or null non-empty
keytab
string or null non-empty
queue
string or null non-empty
job_class_name
string or null non-empty
job_command
string or null non-empty
job_arguments
string or null non-empty
job_rawScalaCode
string or null non-empty
job_timeout_min
integer or null <int64> >= 1
driver_cores
integer or null <int32> >= 1
total_executor_cores
integer or null <int64> >= 1
executor_cores
integer or null <int32> >= 1
num_executors
integer or null <int32> >= 1
yeedu_functions_project_path
string or null [ 1 .. 5000 ] characters
yeedu_functions_script_path
string or null <= 5000 characters
yeedu_functions_function_name
string or null [ 1 .. 5000 ] characters
yeedu_functions_requirements
string or null [ 1 .. 5000 ] characters
yeedu_functions_max_request_concurrency
integer or null <int64> [ 1 .. 512 ]
yeedu_functions_idle_timeout_sec
integer or null <int64> [ 300 .. 172800 ]
yeedu_functions_request_timeout_sec
integer or null <int64> [ 1 .. 900 ]
yeedu_functions_example_request_body
string or null non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "spark_examples",
  • "cluster_id": "13",
  • "max_concurrency": 1,
  • "job_class_name": "org.apache.spark.examples.SparkPi",
  • "job_command": "file:///yeedu/object-storage-manager/spark-examples_2.11-2.4.8.jar",
  • "job_arguments": "1000",
  • "job_rawScalaCode": null,
  • "job_timeout_min": null,
  • "files": [
    ],
  • "properties_file": null,
  • "conf": [
    ],
  • "packages": [
    ],
  • "repositories": null,
  • "jars": [
    ],
  • "archives": null,
  • "driver_memory": null,
  • "driver_java_options": "-Dderby.system.home=/yeedu/spark_metastores/$(date +%s)-${RANDOM}",
  • "driver_library_path": null,
  • "driver_class_path": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "principal": null,
  • "keytab": null,
  • "queue": null
}

Response samples

Content type
application/json
{
  • "job_conf_id": "1",
  • "name": "spark_examples",
  • "cluster_id": "1",
  • "workspace_id": "1",
  • "spark_job_type_lang_id": 1,
  • "max_concurrency": "100",
  • "job_class_name": "org.apache.spark.examples.SparkPi",
  • "job_command": "file:///yeedu/object-storage-manager/spark-examples_2.12-3.2.2.jar",
  • "job_arguments": "500",
  • "job_rawScalaCode": null,
  • "files": null,
  • "properties_file": null,
  • "conf": null,
  • "packages": null,
  • "repositories": null,
  • "jars": null,
  • "archives": null,
  • "driver_memory": null,
  • "driver_java_options": null,
  • "driver_library_path": null,
  • "driver_class_path": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "principal": null,
  • "keytab": null,
  • "queue": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-14T06:36:57.297Z",
  • "from_date": "2024-06-14T06:29:47.214Z",
  • "to_date": null
}

Enable a specific Spark job configuration.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
job_conf_id
integer <int64>

Specifies the ID of the Spark job configuration to enable.

job_conf_name
string

Specifies the name of the Spark job configuration to enable.

Responses

Response samples

Content type
application/json
{
  • "job_conf_id": "1",
  • "name": "spark_examples",
  • "cluster_id": "1",
  • "workspace_id": "1",
  • "spark_job_type_lang_id": 1,
  • "max_concurrency": "100",
  • "job_class_name": "org.apache.spark.examples.SparkPi",
  • "job_command": "file:///yeedu/object-storage-manager/spark-examples_2.12-3.2.2.jar",
  • "job_arguments": "500",
  • "job_rawScalaCode": null,
  • "files": null,
  • "properties_file": null,
  • "conf": null,
  • "packages": null,
  • "repositories": null,
  • "jars": null,
  • "archives": null,
  • "driver_memory": null,
  • "driver_java_options": null,
  • "driver_library_path": null,
  • "driver_class_path": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "principal": null,
  • "keytab": null,
  • "queue": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-14T06:36:57.297Z",
  • "from_date": "2024-06-14T06:29:47.214Z",
  • "to_date": null
}

Disable a specific Spark job configuration.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
job_conf_id
integer <int64>

Specifies the ID of the Spark job configuration to disable.

job_conf_name
string

Specifies the name of the Spark job configuration to disable.

Responses

Response samples

Content type
application/json
{
  • "job_conf_id": "1",
  • "name": "spark_examples",
  • "cluster_id": "1",
  • "workspace_id": "1",
  • "spark_job_type_lang_id": 1,
  • "max_concurrency": "100",
  • "job_class_name": "org.apache.spark.examples.SparkPi",
  • "job_command": "file:///yeedu/object-storage-manager/spark-examples_2.12-3.2.2.jar",
  • "job_arguments": "1000",
  • "job_rawScalaCode": null,
  • "files": null,
  • "properties_file": null,
  • "conf": null,
  • "packages": null,
  • "repositories": null,
  • "jars": null,
  • "archives": null,
  • "driver_memory": null,
  • "driver_java_options": null,
  • "driver_library_path": null,
  • "driver_class_path": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "principal": null,
  • "keytab": null,
  • "queue": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-14T06:36:57.297Z",
  • "from_date": "2024-06-14T06:29:47.214Z",
  • "to_date": "2024-06-14T06:36:57.297Z"
}

Get all filter data for Spark job configurations within a workspace.

Retrieves a list of:

  • Engine cluster instances used by Spark job configurations within a workspace.
  • Users who created the Spark job configurations.
  • Users who modified the Spark job configurations.
Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
filter_type
required
string
Enum: "cluster" "created_by_user" "modified_by_user"

Specifies the filter type for the data to retrieve. Choose one of the following:

  • cluster to get engine cluster instances.
  • created_by_user to get the list of users who created the Spark job configurations.
  • modified_by_user to get the list of users who modified the Spark job configurations.
name
string

Specifies the name to filter by, applicable to the chosen filter type.

Responses

Response samples

Content type
application/json
Example
{
  • "data": [
    ]
}

Export Spark Job Configuration details for a specific Spark Job Configuration Id

The details of a Spark Job Configuration are exported for a specific Spark Job Configuration ID or name.

  • The user must have at least one permission in the workspace from which the job is being exported.
  • The exported job will be of type "SPARK_JOB", "SPARK_SQL", or "YEEDU_FUNCTIONS".
Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
job_conf_id
integer <int64>

Specifies the ID of the Spark job configuration for filtering.

job_conf_name
string

Specifies the name of the Spark job configuration for filtering.

Responses

Response samples

Content type
application/json
{
  • "jobs": [
    ]
}

Spark Job Instance

Get all Spark job instances.

Retrieves a list of Spark job instances.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

job_conf_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of Spark Job Configuration IDs to filter on.

job_status
Array of strings (JobStatus)
Items Enum: "SUBMITTED" "RUNNING" "DONE" "ERROR" "TERMINATED" "STOPPING" "STOPPED"

Specifies the status of Spark job instance for filtering.

job_type
Array of strings
Items Enum: "SPARK_JOB" "SPARK_SQL" "NOTEBOOK" "THRIFT_SQL" "YEEDU_FUNCTIONS"

Specifies the job type of the Spark job instance for filtering.

job_type_langs
Array of strings
Items Enum: "RAW_SCALA" "Jar" "Python3" "Scala" "SQL"

An optional set of language filter for Spark job instances.

created_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of created by user IDs to filter on.

modified_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of modified by user IDs to filter on.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Search Spark job instances by job configuration name.

Retrieves a list of Spark job instances based on a search by job configuration name.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

job_conf_name
required
string

Specifies the name of the Spark job configuration to search for.

job_conf_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of Spark Job Configuration IDs to filter on.

job_status
Array of strings (JobStatus)
Items Enum: "SUBMITTED" "RUNNING" "DONE" "ERROR" "TERMINATED" "STOPPING" "STOPPED"

Specifies the status of Spark job instance for filtering.

job_type
Array of strings
Items Enum: "SPARK_JOB" "SPARK_SQL" "NOTEBOOK" "THRIFT_SQL" "YEEDU_FUNCTIONS"

Specifies the job type of the Spark job instance for filtering.

job_type_langs
Array of strings
Items Enum: "RAW_SCALA" "Jar" "Python3" "Scala" "SQL"

An optional set of language filter for Spark job instances.

created_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of created by user IDs to filter on.

modified_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of modified by user IDs to filter on.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create a new Spark job instance.

A Spark job instance for a specific configuration can only be created if the attached cluster instance is not in ERROR, DESTROYING states or is Disabled.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

Request Body schema: application/json
required

The Spark job configuration to be used.

job_conf_id
integer <int64>
job_conf_name
string non-empty
arguments
string or null non-empty
conf
Array of strings unique [ items non-empty ]

Responses

Request samples

Content type
application/json
{
  • "job_conf_id": 1,
  • "arguments": 1000,
  • "conf": [
    ]
}

Response samples

Content type
application/json
{
  • "job_id": "297",
  • "job_conf_id": "23",
  • "cluster_id": "13",
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by_user_id": "3",
  • "modified_by_user_id": "3",
  • "last_update_date": "2024-06-21T08:47:55.301Z",
  • "from_date": "2024-06-21T08:47:55.301Z",
  • "to_date": null
}

Get details of a specific Spark job instance.

Retrieve Spark job instance configuration details by ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

job_id
required
integer <int64>

Specifies the ID of the Spark job instance for filtering.

Responses

Response samples

Content type
application/json
{
  • "job_id": 298,
  • "job_application_id": "local-1718959721329",
  • "job_status": "DONE",
  • "job_execution_time_sec": 6.300996,
  • "total_job_time_sec": 8.105467,
  • "job_conf": {
    },
  • "workflow_job_instance_details": {
    },
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-06-21T08:48:37.459181+00:00",
  • "from_date": "2024-06-21T08:48:37.459181+00:00",
  • "to_date": "2024-06-21T08:48:45.564648+00:00"
}

Get Spark job instance status details.

Retrieve Spark job instance run details in the sequential order of state transitions during execution.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

job_id
required
integer <int64>

Specifies the ID of the Spark job instance for filtering.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Stop a Spark job instance.

A Spark job instance can only be stopped if its status is SUBMITTED or RUNNING.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

job_id
required
integer <int64>

Specifies the ID of the Spark job instance to stop.

Responses

Response samples

Content type
application/json
{
  • "SparkKill": {
    }
}

Create a thrift server proxy for a spark job instance.

Creates a proxy to establish a connection to thrift server for a specific job instance, provided the instance is in the RUNNING state.

Authorizations:
basicAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

job_id
required
integer <int64>

Specifies the ID of the Spark job instance to create proxy for.

Responses

Response samples

Content type
application/json
{
  • "message": "Created Proxy for Spark job instance Id: 108."
}

Get workflow job execution details of a Spark job instance.

Retrieve workflow job execution details for a specific Spark job application ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

job_application_id
required
string

Specifies the application ID of the Spark job instance for filtering.

Responses

Response samples

Content type
application/json
{
  • "job_id": 298,
  • "job_application_id": "local-1718959721329",
  • "job_status": "DONE",
  • "compute_engine": 13,
  • "cluster_id": "13",
  • "workflow_job_instance_details": {
    },
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-06-21T08:48:37.459181+00:00",
  • "from_date": "2024-06-21T08:48:37.459181+00:00",
  • "to_date": "2024-06-21T08:48:45.564648+00:00"
}

Download Spark job instance logs.

Retrieve stdout or stderr log files of a Spark job instance.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

job_id
required
integer <int64>

Specifies the ID of the Spark job instance for filtering.

log_type
required
string
Enum: "stdout" "stderr"

The type of log file to filter.

Responses

Response samples

Content type
application/json
{
  • "error_code": "string",
  • "error_message": "string"
}

Get workflow errors of a Spark job instance.

Retrieve workflow errors for a specific Spark job instance.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

job_id
required
integer <int64>

Specifies the ID of the Spark job instance for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get all filter data for Spark job instances within a workspace.

Retrieves Spark job instance data, including:

  • Engine cluster instances used by Spark jobs in the workspace.
  • Spark job configurations executed within the workspace.
  • Users who created the Spark job instances.
  • Users who modified the Spark job instances.
Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
filter_type
required
string
Enum: "cluster" "job_conf" "created_by_user" "modified_by_user"

Specifies the filter type for the data to retrieve. Choose one of the following:

  • cluster to get engine cluster instances.
  • job_conf to get job configurations.
  • created_by_user to get the list of users who created the Spark jobs.
  • modified_by_user to get the list of users who modified the Spark jobs.
job_conf_id
integer <int64>

Specifies the ID of the Spark job configuration for filtering.

name
string

Specifies the name to filter by, applicable to the chosen filter type.

Responses

Response samples

Content type
application/json
Example
{
  • "data": [
    ]
}

Notebook Configuration

Get all notebook configurations.

Retrieves a list of notebook configurations.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
enable
boolean
Enum: true false

Specifies which notebook configurations to list.

  • If set to true, only active notebook configurations will be listed.
  • If set to false, only disabled notebook configurations will be listed.

Note: If unspecified, all notebook configurations (both active and disabled) will be listed.

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

job_type_langs
Array of strings
Items Enum: "Python3" "Scala" "SQL"

Specifies the languages of the notebook configuration for filtering.

last_run_status
Array of strings (JobStatus)
Items Enum: "SUBMITTED" "RUNNING" "DONE" "ERROR" "TERMINATED" "STOPPING" "STOPPED"

Specifies the last run status of the notebook configuration for filtering.

created_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of created by user IDs to filter on.

modified_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of modified by user IDs to filter on.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Search notebook configurations by configuration name.

Retrieves a list of notebook configurations based on a search by configuration name.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
notebook_name
required
string

Specifies the name of the notebook configuration to search for.

enable
boolean
Enum: true false

Specifies which notebook configurations to search.

  • If set to true, only active notebook configurations will be searched.
  • If set to false, only disabled notebook configurations will be searched.

Note: If unspecified, all notebook configurations (both active and disabled) will be searched.

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

job_type_langs
Array of strings
Items Enum: "Python3" "Scala" "SQL"

Specifies the languages of the notebook configuration for filtering.

last_run_status
Array of strings (JobStatus)
Items Enum: "SUBMITTED" "RUNNING" "DONE" "ERROR" "TERMINATED" "STOPPING" "STOPPED"

Specifies the last run status of the notebook configuration for filtering.

created_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of created by user IDs to filter on.

modified_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of modified by user IDs to filter on.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create a new notebook configuration.

Creates a notebook configuration with the provided configurations.

  • max_concurrency: Specifies the maximum number of concurrent notebook instances allowed for the configuration.

    • By default, max_concurrency is set to 1 and is non-editable for a notebook configuration.
Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

Request Body schema: application/json
required

The notebook configuration to be added.

cluster_id
integer <int64>
cluster_name
string non-empty
notebook_name
required
string non-empty
notebook_type
required
string
Enum: "python3" "scala" "sql"
notebook_path
string non-empty
conf
Array of strings unique [ items non-empty ]
packages
Array of strings unique [ items non-empty ]
jars
Array of strings unique [ items non-empty ]
files
Array of strings unique [ items non-empty ]
driver_memory
string or null^(?=.*[1-9])\d+(?![\d.])(?=\D)

The memory cannot be negative and decimal.

executor_memory
string or null^(?=.*[1-9])\d+(?![\d.])(?=\D)

The memory cannot be negative and decimal.

driver_cores
integer or null <int32> >= 1
total_executor_cores
integer or null <int64> >= 1
executor_cores
integer or null <int32> >= 1
num_executors
integer or null <int32> >= 1

Responses

Request samples

Content type
application/json
{
  • "notebook_name": "test_notebook",
  • "cluster_name": "yeedu_instance",
  • "notebook_type": "python3",
  • "notebook_path": "/foo/bar",
  • "conf": [
    ],
  • "packages": [
    ],
  • "jars": [
    ]
}

Response samples

Content type
application/json
{
  • "notebook_conf_id": "27",
  • "notebook_name": "test_notebook",
  • "cluster_id": "13",
  • "workspace_id": "5",
  • "spark_job_type_lang_id": 3,
  • "max_concurrency": "1",
  • "notebook_file_id": "1",
  • "conf": null,
  • "packages": null,
  • "jars": null,
  • "files": null,
  • "driver_memory": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T09:09:30.277Z",
  • "from_date": "2024-06-21T09:09:30.277Z",
  • "to_date": null
}

Get details of a specific notebook configuration.

Retrieve notebook configuration details filtered by ID or name.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
notebook_conf_id
integer <int64>

Specifies the ID of the notebook configuration for filtering.

notebook_name
string

Specifies the name of the notebook configuration for filtering.

Responses

Response samples

Content type
application/json
{
  • "notebook_conf_id": 27,
  • "notebook_name": "test_notebook",
  • "cluster_info": {
    },
  • "spark_job_type": {
    },
  • "max_concurrency": 1,
  • "notebook_file_id": "1",
  • "files": null,
  • "conf": null,
  • "packages": null,
  • "jars": null,
  • "driver_memory": null,
  • "driver_java_options": null,
  • "driver_library_path": null,
  • "driver_class_path": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-06-21T09:09:30.277914+00:00",
  • "from_date": "2024-06-21T09:09:30.277914+00:00",
  • "to_date": "infinity"
}

Update details of a specific notebook configuration.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
notebook_conf_id
integer <int64>

Specifies the ID of the notebook configuration for modification.

notebook_name
string

Specifies the name of the notebook configuration for modification.

Request Body schema: application/json
required

Notebook configuration details to be modified.

non-empty
notebook_name
string non-empty
cluster_name
string non-empty
cluster_id
integer <int64>
conf
Array of strings or null unique
packages
Array of strings or null unique
jars
Array of strings or null unique
files
Array of strings or null unique
driver_memory
string or null^(?=.*[1-9])\d+(?![\d.])(?=\D)

The memory cannot be negative and decimal.

executor_memory
string or null^(?=.*[1-9])\d+(?![\d.])(?=\D)

The memory cannot be negative and decimal.

driver_cores
integer or null <int32> >= 1
total_executor_cores
integer or null <int64> >= 1
executor_cores
integer or null <int32> >= 1
num_executors
integer or null <int32> >= 1

Responses

Request samples

Content type
application/json
{
  • "notebook_name": "test_notebook",
  • "cluster_id": "13",
  • "conf": null,
  • "packages": null,
  • "jars": null,
  • "files": null,
  • "driver_memory": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null
}

Response samples

Content type
application/json
{
  • "notebook_conf_id": "27",
  • "notebook_name": "test_notebook",
  • "cluster_id": "13",
  • "workspace_id": "5",
  • "spark_job_type_lang_id": 3,
  • "max_concurrency": "1",
  • "notebook_file_id": "1",
  • "conf": null,
  • "packages": null,
  • "jars": null,
  • "files": null,
  • "driver_memory": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T09:09:30.277Z",
  • "from_date": "2024-06-21T09:09:30.277Z",
  • "to_date": null
}

Enable a specific notebook configuration.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
notebook_conf_id
integer <int64>

Specifies the ID of the notebook configuration to enable.

notebook_name
string

Specifies the name of the notebook configuration to enable.

Responses

Response samples

Content type
application/json
{
  • "notebook_conf_id": "27",
  • "notebook_name": "test_notebook",
  • "cluster_id": "13",
  • "workspace_id": "5",
  • "spark_job_type_lang_id": 3,
  • "max_concurrency": "1",
  • "notebook_file_id": "1",
  • "conf": null,
  • "packages": null,
  • "jars": null,
  • "files": null,
  • "driver_memory": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T09:09:30.277Z",
  • "from_date": "2024-06-21T09:09:30.277Z",
  • "to_date": null
}

Disable a specific notebook configuration.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
notebook_conf_id
integer <int64>

Specifies the ID of the notebook configuration to disable.

notebook_name
string

Specifies the name of the notebook configuration to disable.

Responses

Response samples

Content type
application/json
{
  • "notebook_conf_id": "26",
  • "notebook_name": "test_notebook",
  • "cluster_id": "13",
  • "workspace_id": "5",
  • "spark_job_type_lang_id": 3,
  • "max_concurrency": "1",
  • "notebook_file_id": "1",
  • "conf": null,
  • "packages": null,
  • "jars": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T09:25:58.823Z",
  • "from_date": "2024-06-21T09:09:11.436Z",
  • "to_date": "2024-06-21T09:25:58.823Z"
}

Update notebook cell data for a specific notebook configuration.

Updates the cell data within a notebook configuration.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_conf_id
required
integer <int64>

Specifies the ID of the notebook configuration for modification.

query Parameters
notebook_directory_path
string non-empty

Specifies the path of the directory where the notebook should be saved

Request Body schema: application/json
required

Notebook configuration cell data to be updated.

required
object
nbformat
required
integer
Value: 4

Notebook format version

nbformat_minor
required
integer
Enum: 0 1 2 3 4 5 6 7

Minor version of the notebook format

required
Array of objects

List of cells in the notebook

Responses

Request samples

Content type
application/json
{
  • "metadata": {
    },
  • "nbformat": 4,
  • "nbformat_minor": 0,
  • "cells": [
    ]
}

Response samples

Content type
application/json
{
  • "notebook_conf_id": "27",
  • "notebook_name": "test_notebook",
  • "cluster_id": "13",
  • "workspace_id": "5",
  • "spark_job_type_lang_id": 3,
  • "max_concurrency": "1",
  • "notebook_file_id": "1",
  • "conf": null,
  • "packages": null,
  • "jars": null,
  • "files": null,
  • "driver_memory": null,
  • "executor_memory": null,
  • "driver_cores": null,
  • "total_executor_cores": null,
  • "executor_cores": null,
  • "num_executors": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T09:09:30.277Z",
  • "from_date": "2024-06-21T09:09:30.277Z",
  • "to_date": null
}

Get all filter data for notebook configurations within a workspace.

Retrieves a list of:

  • Engine cluster instances used by notebook configurations within a workspace.
  • Users who created the notebook configurations.
  • Users who modified the notebook configurations.
Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
filter_type
required
string
Enum: "cluster" "created_by_user" "modified_by_user"

Specifies the filter type for the data to retrieve. Choose one of the following:

  • cluster to get engine cluster instances.
  • created_by_user to get the list of users who created the notebook configurations.
  • modified_by_user to get the list of users who modified the notebook configurations.
name
string

Specifies the name to filter by, applicable to the chosen filter type.

Responses

Response samples

Content type
application/json
Example
{
  • "data": [
    ]
}

Export Notebook Configuration details for a specific Notebook Configuration Id

Notebook Configuration details are exported for a specific Notebook Configuration Id and returned in the form of JSON

  • The user needs to have at least one permission in the workspace from which the notebook is being exported.
Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
notebook_conf_id
integer <int64>

Specifies the ID of the notebook configuration for filtering.

notebook_name
string

Specifies the name of the notebook configuration for filtering.

Responses

Response samples

Content type
application/json
{
  • "notebooks": [
    ]
}

Notebook Instance

Get all notebook instances.

Retrieves a list of notebook instances.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

notebook_conf_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of Notebook Configuration IDs to filter on.

notebook_status
Array of strings (JobStatus)
Items Enum: "SUBMITTED" "RUNNING" "DONE" "ERROR" "TERMINATED" "STOPPING" "STOPPED"

Specifies the status of Notebook instance for filtering.

job_type_langs
Array of strings
Items Enum: "Python3" "Scala" "SQL"

Specifies the languages of the notebook configuration for filtering.

created_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of created by user IDs to filter on.

modified_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of modified by user IDs to filter on.

isActive
boolean
Enum: true false

Specifies whether to list only active notebook instances that are in the RUNNING or SUBMITTED state.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Search notebook instances by notebook configuration name.

Retrieves a list of notebook instances based on a search by notebook configuration name.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
notebook_name
required
string

Notebook Name that will be used for filter

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

notebook_conf_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of Notebook Configuration IDs to filter on.

notebook_status
Array of strings (JobStatus)
Items Enum: "SUBMITTED" "RUNNING" "DONE" "ERROR" "TERMINATED" "STOPPING" "STOPPED"

Specifies the status of Notebook instance for filtering.

job_type_langs
Array of strings
Items Enum: "Python3" "Scala" "SQL"

Specifies the languages of the notebook configuration for filtering.

created_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of created by user IDs to filter on.

modified_by_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of modified by user IDs to filter on.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ]
}

Create a new notebook instance.

A notebook instance for a specific configuration can only be created if the attached cluster instance is not in ERROR, DESTROYING, or DESTROYED states.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

Request Body schema: application/json
required

The notebook configuration to be used.

notebook_conf_id
integer <int64>
notebook_name
string non-empty

Responses

Request samples

Content type
application/json
{
  • "notebook_conf_id": 1
}

Response samples

Content type
application/json
{
  • "notebook_id": "301",
  • "notebook_conf_id": "27",
  • "cluster_id": "13",
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T10:27:43.768Z",
  • "from_date": "2024-06-21T10:27:43.768Z",
  • "to_date": null
}

Get details of a specific notebook instance.

Retrieve notebook instance configuration details by ID.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance for filtering.

Responses

Response samples

Content type
application/json
{
  • "notebook_id": 299,
  • "notebook_status": "STOPPED",
  • "job_execution_time_sec": 397.906651,
  • "total_job_time_sec": 398.777538,
  • "notebook_conf": {
    },
  • "workflow_job_instance_details": {
    },
  • "tenant_id": "49a8817e-8b8e-4d76-a717-c33db6f7e018",
  • "created_by": {
    },
  • "modified_by": {
    },
  • "last_update_date": "2024-06-21T09:13:47.789222+00:00",
  • "from_date": "2024-06-21T09:13:47.789222+00:00",
  • "to_date": "2024-06-21T09:20:26.56676+00:00"
}

Start or get the kernel status of a notebook instance.

Start or retrieve the kernel status for a notebook instance, provided the instance is in the RUNNING state.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance for filtering.

Responses

Response samples

Content type
application/json
{
  • "notebook_id": 301,
  • "kernel_info": {
    }
}

Create a WebSocket proxy for a notebook instance.

Creates a proxy to establish a WebSocket connection for a specific notebook instance, provided the instance is in the RUNNING state.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance for filtering.

query Parameters
yeedu_session
required
string

Specifies the session token for Yeedu authentication.

Responses

Response samples

Content type
application/json
{
  • "message": "Created Proxy for Notebook Instance Id: 108."
}

Get the kernel status for a specific notebook instance.

Retrieves the kernel status of a notebook instance, provided the instance is in the RUNNING state.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance for filtering.

Responses

Response samples

Content type
application/json
{
  • "kernel_id": "86d10c83-95a6-4fa7-9402-0bc752b925fe",
  • "language_name": "python3",
  • "kernel_status": "starting",
  • "active_connections": 0,
  • "last_activity": "2023-08-17T08:02:33.518253Z"
}

Interrupt a notebook instance kernel.

Interrupts the kernel for a specific notebook instance, provided the instance is in the RUNNING state.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance for filtering.

Responses

Response samples

Content type
application/json
{
  • "notebook_id": 301,
  • "kernel_info": {
    }
}

Restart a notebook instance kernel.

Restarts the kernel for a specific notebook instance, provided the instance is in the RUNNING state.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance for filtering.

Responses

Response samples

Content type
application/json
{
  • "notebook_id": 301,
  • "kernel_info": {
    }
}

Stop a notebook instance.

A notebook instance can only be stopped if its status is SUBMITTED or RUNNING.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance to stop.

Responses

Response samples

Content type
application/json
{
  • "SparkKill": {
    }
}

Download notebook instance logs.

Retrieve stdout or stderr log files of a notebook instance.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance for filtering.

log_type
required
string
Enum: "stdout" "stderr"

The type of log file to filter.

Responses

Response samples

Content type
application/json
{
  • "error_code": "string",
  • "error_message": "string"
}

Get workflow errors of a notebook instance.

Retrieve workflow errors for a specific notebook instance.

Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

notebook_id
required
integer <int64>

Specifies the ID of the notebook instance for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get all filter data for Notebook instances within a workspace.

Retrieves Notebook instance data, including:

  • Engine cluster instances used by Notebooks in the workspace.
  • Notebook configurations executed within the workspace.
  • Users who created the Notebook instances.
  • Users who modified the Notebook instances.
Authorizations:
bearerAuth
path Parameters
workspace_id
required
integer <int64>

Specifies the ID of the workspace for filtering.

query Parameters
filter_type
required
string
Enum: "cluster" "notebook_conf" "created_by_user" "modified_by_user"

Specifies the filter type for the data to retrieve. Choose one of the following:

  • cluster to get engine cluster instances.
  • notebook_conf to get notebook configurations.
  • created_by_user to get the list of users who created the Notebooks.
  • modified_by_user to get the list of users who modified the Notebooks.
notebook_conf_id
integer <int64>

Specifies the ID of the notebook configuration.

name
string

Specifies the name to filter by, applicable to the chosen filter type.

Responses

Response samples

Content type
application/json
Example
{
  • "data": [
    ]
}

Billing

Get all the billed tenants.

Retrieves a list of billed tenants.

Authorizations:
bearerAuth
query Parameters
billing
required
string
Default: "invoice"
Enum: "invoice" "usage"

Specifies the billing type to be used as a filter.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the billed date range.

Retrieves a list of billed date range.

Authorizations:
bearerAuth
query Parameters
billing
required
string
Default: "invoice"
Enum: "invoice" "usage"

Specifies the billing type to be used as a filter.

tenant_ids
Array of strings <uuid> [ items <uuid > ]

Specifies the tenant IDs to be used as a filter.

Responses

Response samples

Content type
application/json
{
  • "months": [
    ]
}

Get all the billed clusters.

Retrieves a list of billed clusters.

Authorizations:
bearerAuth
query Parameters
billing
required
string
Default: "invoice"
Enum: "invoice" "usage"

Specifies the billing type to be used as a filter.

tenant_ids
Array of strings <uuid> [ items <uuid > ]

Specifies the tenant IDs to be used as a filter.

cloud_providers
Array of strings
Items Enum: "GCP" "AWS" "Azure"

Specifies the cloud providers to be used as a filter.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the billed machine types.

Retrieves a list of billed machine types.

Authorizations:
bearerAuth
query Parameters
billing
required
string
Default: "invoice"
Enum: "invoice" "usage"

Specifies the billing type to be used as a filter.

tenant_ids
Array of strings <uuid> [ items <uuid > ]

Specifies the tenant IDs to be used as a filter.

cloud_providers
Array of strings
Items Enum: "GCP" "AWS" "Azure"

Specifies the cloud providers to be used as a filter.

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the cluster labels for billing.

Retrieves a list of billed cluster labels.

Authorizations:
bearerAuth
query Parameters
billing
required
string
Default: "invoice"
Enum: "invoice" "usage"

Specifies the billing type to be used as a filter.

tenant_ids
Array of strings <uuid> [ items <uuid > ]

Specifies the tenant IDs to be used as a filter.

cloud_providers
Array of strings
Items Enum: "GCP" "AWS" "Azure"

Specifies the cloud providers to be used as a filter.

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

Responses

Response samples

Content type
application/json
{
  • "key1": [
    ],
  • "key2": [
    ]
}

Get the billing invoice data

Retrieves a list of billed invoices for a specified period.

Authorizations:
bearerAuth
query Parameters
tenant_ids
Array of strings <uuid> [ items <uuid > ]

Specifies the tenant IDs to be used as a filter.

start_month_year
required
string <date>

Specifies the starting month & year (YYYY-MM-DD) to be used as a filter.

end_month_year
required
string <date>

Specifies the ending month & year (YYYY-MM-DD) to be used as a filter.

cloud_providers
Array of strings
Items Enum: "GCP" "AWS" "Azure"

Specifies the cloud providers to be used as a filter.

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

machine_type_ids
Array of integers <int64> unique [ items <int64 > ]

Specifies the machine type IDs to be used as a filter.

labels
object

Specifies the labels to be used as a filter.

Responses

Response samples

Content type
application/json
{
  • "invoice": [
    ],
  • "invoice_overview": {
    }
}

Get the billing usage data

Retrieves a list of billed usage data for a specified period.

Authorizations:
bearerAuth
query Parameters
tenant_ids
Array of strings <uuid> [ items <uuid > ]

Specifies the tenant IDs to be used as a filter.

start_date
required
string <date>

Specifies the starting date (YYYY-MM-DD) to be used as a filter.

end_date
required
string <date>

Specifies the ending date (YYYY-MM-DD) to be used as a filter.

cloud_providers
Array of strings
Items Enum: "GCP" "AWS" "Azure"

Specifies the cloud providers to be used as a filter.

cluster_ids
Array of integers <int64> unique [ items <int64 > ]

An optional set of cluster instance IDs to filter on.

machine_type_ids
Array of integers <int64> unique [ items <int64 > ]

Specifies the machine type IDs to be used as a filter.

labels
object

Specifies the labels to be used as a filter.

Responses

Response samples

Content type
application/json
{
  • "usage": [
    ],
  • "usage_overview": {
    }
}

Login

Get the authentication type.

Retrieves the supported authentication type used for system login.

Responses

Response samples

Content type
application/json
{
  • "auth_type": "AAD"
}

Generate yeedu session token

Generates a yeedu session token based on the provided login details to access the resources

Request Body schema: application/json
required

Login details to generate session token

username
string non-empty

Required for 'LDAP' or 'AAD' auth_type.

password
string <password> non-empty

Required for 'LDAP' or 'AAD' auth_type.

timeout
string non-empty
Default: "48h"

Defaults to 48 hours if not provided.

auth_type
required
string
Enum: "LDAP" "AAD" "AZURE_SSO"

Use the '/login/auth_type/' API to get the supported auth_type.

redirect_url
string or null non-empty

Optional. Used when the client requires a successful 'AZURE_SSO' login callback to a specified redirection URL.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJIuZI1nIIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6InVzMjYxMCIsImlhdCI6MTY2NDc4NjQ2OSwiZXhwIjoxnJy0OdCyODy5fQ.WsBh8n_u-Y88edEZiMfWswviEEsgiL4_2Eu_5ZCGuOQ"
}

Callback URL for Azure AD user authentication.

This endpoint serves as the callback URL invoked by Azure Active Directory (Azure AD) after a successful user login.

Responses

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJIuZI1nIIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6InVzMjYxMCIsImlhdCI6MTY2NDc4NjQ2OSwiZXhwIjoxnJy0OdCyODy5fQ.WsBh8n_u-Y88edEZiMfWswviEEsgiL4_2Eu_5ZCGuOQ"
}

Logout

Delete yeedu session token

Delete the session from yeedu

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "message": "Successfully logged out"
}

User

Get all the User Tenants

All Tenant Ids available for a specific user are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search tenant across the user tenants

All Tenant available for a specific user are returned based on the tenant name

Authorizations:
bearerAuth
query Parameters
tenant_name
required
string

The tenant name that will be used for filtering

pageNumber
integer <int32>
Default: 1

The page number from which items will return

limit
integer <int32>
Default: 100

The numbers of items to return

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Associate a tenant Id with the current session.

Associate the tenant Id with the session token.

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Tenant Id that will be used to associate

Responses

Response samples

Content type
application/json
{
  • "message": "Successfully associated Tenant"
}

Dissociate a tenant from a current session.

Dissociate the tenant from the current session token.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "message": "Successfully dissociated a tenant."
}

Get all the User Information

User information for a specific user are returned in the form of JSON

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "user_id": "2",
  • "tenant_id": "be7da193-7c44-429a-8631-8a60567ae6a2",
  • "username": "USER",
  • "email": "user@yeedu.io",
  • "group_info": [
    ],
  • "from_date": "2024-06-14T10:11:02.278Z",
  • "to_date": null
}

Get User Roles for a specific session

User roles are returned across all tenants if the tenant_id is not provided.

Authorizations:
bearerAuth
query Parameters
tenant_id
string <uuid>

Tenant ID that will be used to get the user roles within it.

Responses

Response samples

Content type
application/json
{
  • "user_id": 4,
  • "username": "ru0000-yeedu@yeedu.io",
  • "email": "ru0000-yeedu@yeedu.io",
  • "user_roles": [
    ],
  • "group_roles": null,
  • "from_date": "2024-06-14T10:11:02.278675+00:00",
  • "to_date": "infinity"
}

List all user tokens

Lists all tokens generated by the logged-in user.

Authorizations:
bearerAuth
query Parameters
pageNumber
integer <int32>
Default: 1

The page number from which items will return

limit
integer <int32>
Default: 100

The numbers of items to return

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Generate a new user token

Generate a new token for the user with a specific tenant.

Authorizations:
bearerAuth
Request Body schema: application/json
required
description
string
timeout
string non-empty
Default: "30 days"

Defaults to 30 days if not provided.

Responses

Request samples

Content type
application/json
{
  • "description": "string",
  • "timeout": "30 days"
}

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJIuZI1nIIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6InVzMjYxMCIsImlhdCI6MTY2NDc4NjQ2OSwiZXhwIjoxnJy0OdCyODy5fQ.WsBh8n_u-Y88edEZiMfWswviEEsgiL4_2Eu_5ZCGuOQ"
}

Revoke a user token

Revoke a specific user token.

Authorizations:
bearerAuth
path Parameters
token_id
required
integer <int64>

Responses

Response samples

Content type
application/json
{
  • "error_code": "string",
  • "error_message": "string"
}

User Secrets

Get all the user secrets.

Retrieves a list of user secrets created by the user of the current session.

Authorizations:
bearerAuth
query Parameters
secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of secret to filter the secrets.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

user_secret_id
string

Filter secrets by a specific user secret ID.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search all the user secrets created by a user based on secret name.

Retrieves a list of searched user secrets created by the user of the current session by secret name.

Authorizations:
bearerAuth
query Parameters
secret_name
required
string

Secret name that will be used for filter

secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of secret to filter the secrets.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a secret

Creates a new secret associated with the authenticated user.

  • Only the user who created the secret can access the secret.
  • The user must have at least one role assigned in at least one tenant.
  • Each secret name must be unique.
Authorizations:
bearerAuth
Request Body schema: application/json
required

User secret to be created.

One of
secret_type
required
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of authentication secret.

name
required
string non-empty

Secret identifier.

description
string or null non-empty

Optional secret details.

principal
required
string non-empty

Kerberos principal.

keytab
required
string non-empty

Keytab file path.

Responses

Request samples

Content type
application/json
{
  • "secret_type": "AWS ACCESS SECRET KEY PAIR",
  • "name": "aws_secret",
  • "description": "AWS credentials for accessing S3",
  • "type": "string",
  • "project_id": "string",
  • "private_key_id": "string",
  • "private_key": "string",
  • "client_email": "string",
  • "client_id": "string",
  • "auth_uri": "string",
  • "token_uri": "string",
  • "auth_provider_x509_cert_url": "string",
  • "client_x509_cert_url": "string",
  • "access_key": "string",
  • "secret_key": "string",
  • "aws_access_key_id": "AKIAXXXXXXX",
  • "aws_secret_access_key": "abcd1234XXXX",
  • "aws_default_region": "us-west-2"
}

Response samples

Content type
application/json
{
  • "user_secret_id": "1",
  • "description": "Neo4j crdentials",
  • "env_var_secret": "secretKeyName",
  • "created_by_user_id": "1",
  • "last_update_date": "2025-03-04T06:42:27.002Z",
  • "from_date": "2025-03-04T06:42:27.002Z",
  • "to_date": null
}

Edit a secret

Authorizations:
bearerAuth
query Parameters
user_secret_id
required
integer <int64>

The ID of the user secret to be edited.

Request Body schema: application/json
required

User secret to be updated.

One of
secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of authentication secret.

description
string or null non-empty

Optional secret details.

principal
string non-empty

Kerberos principal.

keytab
string non-empty

Keytab file path.

Responses

Request samples

Content type
application/json
{
  • "secret_type": "AWS ACCESS SECRET KEY PAIR",
  • "description": "AWS credentials for accessing S3",
  • "type": "string",
  • "project_id": "string",
  • "private_key_id": "string",
  • "private_key": "string",
  • "client_email": "string",
  • "client_id": "string",
  • "auth_uri": "string",
  • "token_uri": "string",
  • "auth_provider_x509_cert_url": "string",
  • "client_x509_cert_url": "string",
  • "access_key": "string",
  • "secret_key": "string",
  • "aws_access_key_id": "AKIAXXXXXXX",
  • "aws_secret_access_key": "abcd1234XXXX",
  • "aws_default_region": "us-west-2"
}

Response samples

Content type
application/json
{
  • "user_secret_id": "1",
  • "description": "Neo4j crdentials",
  • "env_var_secret": "secretKeyName",
  • "created_by_user_id": "1",
  • "last_update_date": "2025-03-04T06:42:27.002Z",
  • "from_date": "2025-03-04T06:42:27.002Z",
  • "to_date": null
}

Delete an existing user secret.

Deletes a user secret created by the user of the current session.

Authorizations:
bearerAuth
query Parameters
user_secret_id
required
integer <int64>

The ID of the user secret to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted user secret id: 1."
}

Admin

Get all the Users in a tenant

All the users present in a tenant are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search all the Users by username in a tenant

Search all the users present in a tenant by username

Authorizations:
bearerAuth
query Parameters
username
required
string

Username that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get User Details for a specific User Id

User details are filtered for a specific User Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
user_id
required
integer <int64>

User Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "user_id": 12,
  • "username": "ru0001-yeedu@yeedu.io",
  • "display_name": "RU0001",
  • "email": "ru0001-yeedu@yeedu.io",
  • "from_date": "2024-06-20T10:38:48.746144+00:00",
  • "to_date": "infinity"
}

Get all the User Roles for a specific User Id

User roles are filtered for a specific User Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
user_id
required
integer <int64>

User Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "user_id": 11,
  • "username": "ysu0002-yeedu@yeedu.io",
  • "email": "ysu0002-yeedu@yeedu.io",
  • "user_roles": null,
  • "group_roles": [
    ],
  • "from_date": "2024-06-20T10:27:04.892889+00:00",
  • "to_date": "infinity"
}

Get all the Users and it's respective roles in a tenant

All the Users and it's respective roles in a tenant are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get all the Users for a specific Role Id

Users are filtered for a specific Role Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
role_id
required
integer <int64>

Role Id that will be used for filter

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Get all the Groups in a tenant

All the groups present in a tenant are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search all the Groups by groupname in a tenant

Search all the Groups by groupname in a tenant

Authorizations:
bearerAuth
query Parameters
groupname
required
string

Group name that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get Group Details for a specific Group Id

Group details are filtered for a specific Group Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
group_id
required
integer <int64>

Group Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "group_id": 602,
  • "group_name": "G_Yeedu_Auditor",
  • "group_object_id": "ba7d4601-57-a055-953d800",
  • "group_type": null,
  • "from_date": "2024-06-20T11:25:39.573594+00:00",
  • "to_date": "infinity"
}

Get all the Group Roles for a specific Group Id

Group Roles are filtered for a specific Group Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
group_id
required
integer <int64>

Group Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "group_id": 602,
  • "group_name": "G_Yeedu_Auditor",
  • "group_type": null,
  • "roles": [
    ]
}

Get all the Groups and it's respective roles

Groups and it's respective roles are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get all the Groups for a specific Role Id

Groups are filtered for a specific Role Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
role_id
required
integer <int64>

Role Id that will be used for filter

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Create a new User Role

Rules to assign a role to an user

  1. Platform Admin Role cannot be assigned to any user.
  2. Can assign all other roles to an user.
Authorizations:
bearerAuth
path Parameters
user_id
required
integer <int64>

User Id that will be used for adding role

role_id
required
integer <int64>

Role Id that will be used for adding role

Responses

Response samples

Content type
application/json
{
  • "user_roles_id": "36",
  • "tenant_id": "9d6d3054-a5f6-4dbf-86f9-26989eb73ed3",
  • "user_id": "9",
  • "role_id": 2,
  • "created_by_user_id": "2",
  • "modified_by_user_id": "2",
  • "last_update_date": "2024-06-21T17:03:17.197Z",
  • "from_date": "2024-06-21T17:03:17.197Z",
  • "to_date": null
}

Delete an existing User Role for a specific User Id and Role Id

Rules to delete a role of an user

  1. Cannot delete a Platform Admin Role of any user.
  2. Cannot delete an Admin Role for itself.
  3. But can delete an Admin Role for other Admin users.
  4. Can delete all the other roles for a user.
Authorizations:
bearerAuth
path Parameters
user_id
required
integer <int64>

User Id that will be used for deleting role

role_id
required
integer <int64>

Role Id that will be used for deleting role

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted User Roles for the provided User Id: 9 and Role Id: 2"
}

Create a new Group Role

Rules to assign a role to a group

  1. Platform Admin Role cannot be assigned to any group.
  2. Can assign all other roles to a group.
Authorizations:
bearerAuth
path Parameters
group_id
required
integer <int64>

Group Id that will be used for adding role

role_id
required
integer <int64>

Role Id that will be used for adding role

Responses

Response samples

Content type
application/json
{
  • "group_roles_id": "11",
  • "tenant_id": "9d6d3054-a5f6-4dbf-86f9-26989eb73ed3",
  • "group_id": "117",
  • "role_id": 2,
  • "created_by_user_id": "2",
  • "modified_by_user_id": "2",
  • "last_update_date": "2024-06-21T17:06:23.498Z",
  • "from_date": "2024-06-21T17:06:23.498Z",
  • "to_date": null
}

Delete an existing Group Role for a specific Group Id and Role Id

Rules to delete a role of a group

  1. Cannot delete a Platform Admin Role of any group.
  2. Cannot delete an Admin Role for its own group.
  3. But can delete an Admin Role for other Admin groups.
  4. Can delete all the other roles for a group.
Authorizations:
bearerAuth
path Parameters
group_id
required
integer <int64>

Group Id that will be used for deleting role

role_id
required
integer <int64>

Role Id that will be used for deleting role

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted Group Role for the provided group ID: 117, and role ID: 2"
}

Shared Platform and Admin Resources

Get User details for a specifc Username

User details are filtered for a specific username and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
username
required
string

Username that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "user_id": 12,
  • "username": "ru0001-yeedu@yeedu.io",
  • "display_name": "RU0001",
  • "email": "ru0001-yeedu@yeedu.io",
  • "from_date": "2024-06-20T10:38:48.746144+00:00",
  • "to_date": "infinity"
}

Get Group details for a specific Group Name

Group details are filtered for a specific Group Name and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
groupname
required
string

Group Name that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "group_id": 602,
  • "group_name": "G_Yeedu_Auditor",
  • "group_object_id": "ba7d4601-57-a055-953d800",
  • "group_type": null,
  • "from_date": "2024-06-20T11:25:39.573594+00:00",
  • "to_date": "infinity"
}

Get all the Groups for a specific User Id

User groups are filtered for a specific User Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
user_id
required
integer <int64>

User Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "user_id": 1,
  • "username": "RU0000",
  • "groups": [
    ]
}

Get all the synced Users

All the synced users are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
group_id
integer <int64>

Group Id that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the synced Groups

All the synced groups are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
user_id
integer <int64>

User Id that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the users which are matching with input username pattern

All the users which are matching with input username pattern are returned in the form of JSON list.

Authorizations:
bearerAuth
query Parameters
username
required
string

Username that will be used for filter

group_id
integer <int64>

Group Id that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Match username exactly with input username if exists.

Match username exactly with input username and return in the form of JSON.

Authorizations:
bearerAuth
path Parameters
username
required
string

Username that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "user_id": 12,
  • "username": "ru0001-yeedu@yeedu.io",
  • "display_name": "RU0001",
  • "email": "ru0001-yeedu@yeedu.io",
  • "from_date": "2024-06-20T10:38:48.746144+00:00",
  • "to_date": "infinity"
}

Get all the groups which are matching with input groupname pattern

All the groups which are matching with input groupname pattern are returned in the form of JSON list.

Authorizations:
bearerAuth
query Parameters
groupname
required
string

Groupname that will be used for filter

user_id
integer <int64>

User Id that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Match groupname exactly with input groupname if exists.

Match groupname exactly with input groupname and return in the form of JSON.

Authorizations:
bearerAuth
path Parameters
groupname
required
string

Groupname that will be used to match

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Tenant Secrets

Get all the Tenant Secrets matching with the Secret name

Tenant Secret details matching with the secret name are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
secret_name
required
string

Secret name that will be used for filter

secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of secret to filter the secrets.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the tenant secrets.

Retrieves a list of tenant secrets for the tenant associated to the current user session.

Authorizations:
bearerAuth
query Parameters
secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of secret to filter the secrets.

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

tenant_secret_id
string

Filter secrets by a specific tenant secret ID.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Create a new tenant secret.

Creates a new tenant secret for the tenant associated with the current user session.

  • Only users with the Platform Admin role or Admin role within a tenant are authorized to create tenant secrets for the associated tenant.
  • Each secret name must be unique within the tenant.
Authorizations:
bearerAuth
Request Body schema: application/json
required

Tenant secret to be created.

One of
secret_type
required
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of authentication secret.

name
required
string non-empty

Secret identifier.

description
string or null non-empty

Optional secret details.

principal
required
string non-empty

Kerberos principal.

keytab
required
string non-empty

Keytab file path.

Responses

Request samples

Content type
application/json
{
  • "secret_type": "AWS ACCESS SECRET KEY PAIR",
  • "name": "aws_secret",
  • "description": "AWS credentials for accessing S3",
  • "type": "string",
  • "project_id": "string",
  • "private_key_id": "string",
  • "private_key": "string",
  • "client_email": "string",
  • "client_id": "string",
  • "auth_uri": "string",
  • "token_uri": "string",
  • "auth_provider_x509_cert_url": "string",
  • "client_x509_cert_url": "string",
  • "access_key": "string",
  • "secret_key": "string",
  • "aws_access_key_id": "AKIAXXXXXXX",
  • "aws_secret_access_key": "abcd1234XXXX",
  • "aws_default_region": "us-west-2"
}

Response samples

Content type
application/json
{
  • "tenant_secret_id": 789,
  • "tenant_name": "aws_secret",
  • "description": "AWS credentials for accessing S3",
  • "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
  • "lookup_secret_type_id": 6,
  • "created_by_user_id": 301,
  • "modified_by_user_id": 302,
  • "last_update_date": "2025-03-18T15:30:00Z",
  • "from_date": "2025-03-10T00:00:00Z",
  • "to_date": "9999-12-31T23:59:59Z",
  • "secret_type": "AWS ACCESS SECRET KEY PAIR",
  • "aws_access_key_id": "AKIAXXXXXXX",
  • "aws_secret_access_key": "abcd1234XXXX",
  • "region": "us-west-2"
}

Update an existing tenant secret.

Updates the details of an existing tenant secret for the tenant associated with the current user session.

Authorizations:
bearerAuth
query Parameters
tenant_secret_id
required
integer <int64>

The ID of the tenant secret to be updated.

Request Body schema: application/json
required

Tenant secret details to be updated.

One of
secret_type
string
Enum: "HIVE KERBEROS" "HIVE BASIC" "DATABRICKS UNITY TOKEN" "ENVIRONMENT VARIABLE" "AWS ACCESS SECRET KEY PAIR" "AZURE SERVICE PRINCIPAL" "GOOGLE SERVICE ACCOUNT"

Type of authentication secret.

description
string or null non-empty

Optional secret details.

principal
string non-empty

Kerberos principal.

keytab
string non-empty

Keytab file path.

Responses

Request samples

Content type
application/json
{
  • "secret_type": "AWS ACCESS SECRET KEY PAIR",
  • "description": "AWS credentials for accessing S3",
  • "type": "string",
  • "project_id": "string",
  • "private_key_id": "string",
  • "private_key": "string",
  • "client_email": "string",
  • "client_id": "string",
  • "auth_uri": "string",
  • "token_uri": "string",
  • "auth_provider_x509_cert_url": "string",
  • "client_x509_cert_url": "string",
  • "access_key": "string",
  • "secret_key": "string",
  • "aws_access_key_id": "AKIAXXXXXXX",
  • "aws_secret_access_key": "abcd1234XXXX",
  • "aws_default_region": "us-west-2"
}

Response samples

Content type
application/json
{
  • "tenant_secret_id": 789,
  • "tenant_name": "aws_secret",
  • "description": "AWS credentials for accessing S3",
  • "tenant_id": "123e4567-e89b-12d3-a456-426614174000",
  • "lookup_secret_type_id": 6,
  • "created_by_user_id": 301,
  • "modified_by_user_id": 302,
  • "last_update_date": "2025-03-18T15:30:00Z",
  • "from_date": "2025-03-10T00:00:00Z",
  • "to_date": "9999-12-31T23:59:59Z",
  • "secret_type": "AWS ACCESS SECRET KEY PAIR",
  • "aws_access_key_id": "AKIAXXXXXXX",
  • "aws_secret_access_key": "abcd1234XXXX",
  • "region": "us-west-2"
}

Delete an existing tenant secret.

Deletes a tenant secret for the tenant associated to the current user session.

Authorizations:
bearerAuth
query Parameters
tenant_secret_id
required
integer <int64>

The ID of the tenant secret to be deleted.

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted tenant secret id: 1."
}

Platform Admin

Get all the Tenants

Tenant details are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Tenants matching with the tenant name

Tenant details matching with the tenant name are returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
tenant_name
required
string

Tenant name that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a new Tenant

Creates a new Tenant with provided Tenant Configuration

Authorizations:
bearerAuth
Request Body schema: application/json
required

The Tenant to be added

name
required
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "tenant",
  • "description": "Tenant description"
}

Response samples

Content type
application/json
{
  • "tenant_id": "a6ca4076-575a-45b0-a6e9-9e54e1940d23",
  • "name": "test",
  • "description": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T17:18:54.215Z",
  • "from_date": "2024-06-21T17:18:54.215Z",
  • "to_date": null
}

Get Tenant Details for a specific Tenant Id or Name

Tenant details are filtered for a specific Tenant Id or Name and returned in the form of JSON

Authorizations:
bearerAuth
query Parameters
tenant_id
string <uuid>

Tenant Id that will be used for filter

tenant_name
string

Tenant Name that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": null,
  • "current_page": 1,
  • "total_objects": 1,
  • "total_pages": 1,
  • "limit": 100
}

Update an existing Tenant for a specific Tenant Id or Name

Authorizations:
bearerAuth
query Parameters
tenant_id
string <uuid>

Tenant Id that will be used for Modification

tenant_name
string

Tenant Name that will be used for Modification

Request Body schema: application/json
required

The Tenant to be modified

non-empty
name
string non-empty

The name field must meet the following criteria:

  • Can include lowercase letters (a-z), digits (0-9), dots (.), at signs (@), underscores (_), and hyphens (-).
  • Must be between 1 and 64 characters in length.
description
string or null non-empty

Responses

Request samples

Content type
application/json
{
  • "name": "test_2",
  • "description": "test_tenant"
}

Response samples

Content type
application/json
{
  • "tenant_id": "a6ca4076-575a-45b0-a6e9-9e54e1940d23",
  • "name": "test",
  • "description": null,
  • "created_by_user_id": "1",
  • "modified_by_user_id": "1",
  • "last_update_date": "2024-06-21T17:18:54.215Z",
  • "from_date": "2024-06-21T17:18:54.215Z",
  • "to_date": null
}

Delete an existing Tenant for a specific Tenant Id or Name

Authorizations:
bearerAuth
query Parameters
tenant_id
string <uuid>

Tenant Id that will be used for Deletion

tenant_name
string

Tenant Name that will be used for Deletion

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted tenant id: a6ca4076-575a-45b0-a6e9-9e54e1940d23."
}

Get all the Users in a Tenant

All the users present in a tenant are returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search all the users by username in a Tenant

Search all the users by username present in a tenant

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

query Parameters
username
required
string

Username that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get all the Groups in a Tenant

All the groups present in a tenant are returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Search all the Groups by groupname in a Tenant

Search all the Groups by groupname in a Tenant are returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

query Parameters
groupname
required
string

Group name that will be used for filter

limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get User Details for a specific Tenant Id and User Id

User details are filtered for a specific Tenant Id along with User Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

user_id
required
integer <int64>

User Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "user_id": 12,
  • "username": "ru0001-yeedu@yeedu.io",
  • "display_name": "RU0001",
  • "email": "ru0001-yeedu@yeedu.io",
  • "from_date": "2024-06-20T10:38:48.746144+00:00",
  • "to_date": "infinity"
}

Get Group Details for a specific Tenant Id and Group Id

Group details are filtered for a specific Tenant Id along with Group Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

group_id
required
integer <int64>

Group Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "group_id": 602,
  • "group_name": "G_Yeedu_Auditor",
  • "group_object_id": "ba7d4601-57-a055-953d800",
  • "group_type": null,
  • "from_date": "2024-06-20T11:25:39.573594+00:00",
  • "to_date": "infinity"
}

Get all the Users and it's respective roles in a tenant

All the Users and it's respective roles in a tenant are returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get User Roles for a specific Tenant Id and User Id

User roles are filtered for a specific Tenant Id along with User Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

user_id
required
integer <int64>

User Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "user_id": 11,
  • "username": "ysu0002-yeedu@yeedu.io",
  • "email": "ysu0002-yeedu@yeedu.io",
  • "user_roles": null,
  • "group_roles": [
    ],
  • "from_date": "2024-06-20T10:27:04.892889+00:00",
  • "to_date": "infinity"
}

Get Tenants for a specific User Id

Tenants are filtered for a specific User Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
user_id
required
integer <int64>

User Id that will be used for filter

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get all the Groups and it's respective roles

Groups and it's respective roles are returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "result_set": {
    }
}

Get Group Roles for a specific Tenant and Group Id

Group Roles are filtered for a specific Tenant Id along with Group Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

group_id
required
integer <int64>

Group Id that will be used for filter

Responses

Response samples

Content type
application/json
{
  • "group_id": 602,
  • "group_name": "G_Yeedu_Auditor",
  • "group_type": null,
  • "roles": [
    ]
}

Get Users for a specific Tenant Id and Role Id

Users are filtered for a specific Tenant Id along with Role Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

role_id
required
integer <int64>

Role Id that will be used for filter

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Get Groups for a specific Tenant Id and Role Id

Groups are filtered for a specific Tenant Id along with Role Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
tenant_id
required
string <uuid>

Specifies the ID of the tenant for filtering.

role_id
required
integer <int64>

Role Id that will be used for filter

query Parameters
limit
integer <int32>
Default: 100

The numbers of items to return.

pageNumber
integer <int32>
Default: 1

The page number for the items to return.

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "result_set": {
    }
}

Create a new User Role

Rules to assign a role to an user

  1. If the role_id provided is of platform Admin and tenant_id is NULL then allow to create the role.
  2. If the role_id provided is of platform Admin and tenant_id is not NULL then do not allow to create the role otherwise the user will be bound to a specific tenant.
  3. For other role_id the tenant_id will be required.
Authorizations:
bearerAuth
path Parameters
user_id
required
integer <int64>

User Id that will be used for adding role

role_id
required
integer <int64>

Role Id that will be used for adding role

query Parameters
tenant_id
string <uuid>

Tenant Id that will be used for adding role

Responses

Response samples

Content type
application/json
{
  • "user_roles_id": "36",
  • "tenant_id": "9d6d3054-a5f6-4dbf-86f9-26989eb73ed3",
  • "user_id": "9",
  • "role_id": 2,
  • "created_by_user_id": "2",
  • "modified_by_user_id": "2",
  • "last_update_date": "2024-06-21T17:03:17.197Z",
  • "from_date": "2024-06-21T17:03:17.197Z",
  • "to_date": null
}

Delete an existing User Role for a specific Tenant, User and Role Id

Rules to delete a role of an user

  1. Cannot delete a Platform Admin Role for itself.
  2. But can delete the Platform Admin Role of other Platform Admin users.
Authorizations:
bearerAuth
path Parameters
user_id
required
integer <int64>

User Id that will be used for deleting role

role_id
required
integer <int64>

Role Id that will be used for deleting role

query Parameters
tenant_id
string <uuid>

Tenant Id that will be used for deleting role

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted User Role for the provided Tenant Id: '83d9056b-a3b3-4eb3-80db-1ed364428b0e', User Id: 2, and Role Id: 1"
}

Create a new Group Role

Rules to assign a role to a group

  1. Platform Admin Role cannot be assigned to any group.
  2. Can assign all other roles to a group across tenants.
Authorizations:
bearerAuth
path Parameters
group_id
required
integer <int64>

Group Id that will be used for adding role

role_id
required
integer <int64>

Role Id that will be used for adding role

query Parameters
tenant_id
string <uuid>

Tenant Id that will be used for adding role

Responses

Response samples

Content type
application/json
{
  • "group_roles_id": "11",
  • "tenant_id": "9d6d3054-a5f6-4dbf-86f9-26989eb73ed3",
  • "group_id": "117",
  • "role_id": 2,
  • "created_by_user_id": "2",
  • "modified_by_user_id": "2",
  • "last_update_date": "2024-06-21T17:06:23.498Z",
  • "from_date": "2024-06-21T17:06:23.498Z",
  • "to_date": null
}

Delete an existing Group Role for a specific Tenant, Group and Role Id

Rules to delete a role of a group

  1. Cannot delete a Platform Admin Role for its own group.
  2. But can delete the Platform Admin Role of other Platform Admin groups.
Authorizations:
bearerAuth
path Parameters
group_id
required
integer <int64>

Group Id that will be used for deleting role

role_id
required
integer <int64>

Role Id that will be used for deleting role

query Parameters
tenant_id
string <uuid>

Tenant Id that will be used for deleting role

Responses

Response samples

Content type
application/json
{
  • "message": "Deleted Group Role for the provided Tenant Id: '83d9056b-a3b3-4eb3-80db-1ed364428b0e', Group Id: 1, and Role Id: 1"
}

IAM Lookup

Get all the Resources

Resources are returned in the form of JSON list

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get Resource details for a specific Resource Id

Resource details are filtered for a specific resource Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64>

Resource Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Permission types

Permission types are returned in the form of JSON list

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get Permission type details for a specific Permission type Id

Permission type details are filtered for a specifc Permission type Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64>

Permission type Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Roles

Roles are returned in the form of JSON list

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get Role details for a specific Role Id

Role details are filtered for a specific Role Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64>

Role Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Rules

Rules are returned in the form of JSON list

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get Rule details for a specific Rule Id

Rule details are filtered for a specific Rule Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64>

Rule Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Workspace Access Control Permissions

Workspace Access Control Permissions are returned in the form of JSON list

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get a Workspace Access Control Permission by Permission Id

Workspace Access Control Permission are returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
permission_id
required
integer <int64>

Permission Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Rules for a specific Permission type Id

Rule details are filtered for a specific permission type Id and returned in the form of JSON list

Authorizations:
bearerAuth
path Parameters
auth_permissions_type_id
required
integer <int64>

Permission type Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get Rule details for a specific Rule Id and Permission type Id

Rule details are filtered for a specific Rule Id along with Permission type Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64>

Rule Id that will be used for filter

auth_permissions_type_id
required
integer <int64>

Permission type Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Rules for a specific Resource Id

Rule details are filtered for a specific Resource Id and returned in the form of JSON list

Authorizations:
bearerAuth
path Parameters
auth_resources_id
required
integer <int64>

Resource Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get Rule details for a specific Resource Id and Rule Id

Rules details are filtered for a specific Resources Id along with Rule Id and returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64>

Rule Id will be used for filter

auth_resources_id
required
integer <int64>

Resource Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the Rules for a specific Permission type Id and Resource Id

Rule details are filtered for a specific Permission type Id along with Resource Id and returned in the form of JSON list

Authorizations:
bearerAuth
path Parameters
auth_resources_id
required
integer <int64>

Resource Id that will be used for filter

auth_permissions_type_id
required
integer <int64>

Permission type Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • [
    ]
]

Get Rule details for a specific Rule Id, Permission type Id, and Resource Id

Rule details are filtered for a specific Rule Id, Permission type Id and Resource Id is returned in the form of JSON

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64>

Rule Id that will be used for filter

auth_resources_id
required
integer <int64>

Resource Id that will be used for filter

auth_permissions_type_id
required
integer <int64>

Permission type Id that will be used for filter

Responses

Response samples

Content type
application/json
[
  • {
    }
]