Manager API
API definitions for manager nodes, accessed via manager Docs service and admin tools.
CreateDatasetMetadata
POST /slack.proto.astra.ManagerApiService/CreateDatasetMetadata
CreateDataset initializes a new dataset in the metadata store with no initial allocated capacity
| Parameter | In | Type | Description |
|---|---|---|---|
name | query | string | Name of the dataset, must be unique |
owner | query | string | Owner information, maybe be any string |
serviceNamePattern | query | string | The service name pattern that the dataset is indexing |
Request
{
"name": "indexName",
"owner": "Index owner",
"serviceNamePattern": "_all"
}
Response (200)
{
"name": "indexName",
"owner": "Index owner",
"serviceNamePattern": "_all"
}
GetDatasetMetadata
POST /slack.proto.astra.ManagerApiService/GetDatasetMetadata
GetDataset returns a single dataset metadata by name
| Parameter | In | Type | Description |
|---|---|---|---|
name | query | string | Must be an exact string name match |
Request
{
"name": "indexName"
}
Response (200)
{
"name": "indexName",
"owner": "Index owner",
"throughputBytes": "12000000",
"partitionConfigs": [
{
"startTimeEpochMs": "1706646163791",
"endTimeEpochMs": "1706646250152",
"partitions": [
"0",
"1"
]
},
{
"startTimeEpochMs": "1706646250153",
"endTimeEpochMs": "9223372036854775807",
"partitions": [
"0",
"1",
"2"
]
}
],
"serviceNamePattern": "_all"
}
ListDatasetMetadata
POST /slack.proto.astra.ManagerApiService/ListDatasetMetadata
ListDatasets returns all available datasets from the metadata store
Response (200)
{
"datasetMetadata": [
{
"name": "example",
"owner": "example",
"throughputBytes": "4000000",
"partitionConfigs": [
{
"startTimeEpochMs": "1698967727980",
"endTimeEpochMs": "1698969132808",
"partitions": [
"0"
]
},
{
"startTimeEpochMs": "1698969132809",
"endTimeEpochMs": "1699035709531",
"partitions": [
"0"
]
},
{
"startTimeEpochMs": "1699035709532",
"endTimeEpochMs": "9223372036854775807",
"partitions": [
"0",
"1"
]
}
],
"serviceNamePattern": "_all"
}
]
}
RestoreReplica
POST /slack.proto.astra.ManagerApiService/RestoreReplica
experimental Restores replicas matching provided query parameters.
| Parameter | In | Type | Description |
|---|---|---|---|
serviceName | query | string | |
startTimeEpochMs | query | string | |
endTimeEpochMs | query | string |
Request
{
"serviceName": "example",
"startTimeEpochMs": "1713375159221",
"endTimeEpochMs": "1713378759221"
}
Response (200)
{
"status": "success"
}
POST /slack.proto.astra.ManagerApiService/RestoreReplicaIds
POST /slack.proto.astra.ManagerApiService/RestoreReplicaIds
| Parameter | In | Type | Description |
|---|---|---|---|
idsToRestore | query | array |
Request
{
"idsToRestore": [
"f3a94795-71a1-4735-9eb1-60968fbae196"
]
}
Response (200)
{
"status": "success"
}
UpdateDatasetMetadata
POST /slack.proto.astra.ManagerApiService/UpdateDatasetMetadata
UpdateDataset updates an existing dataset with new metadata
| Parameter | In | Type | Description |
|---|---|---|---|
name | query | string | Unique name of the existing dataset |
owner | query | string | Owner information, maybe be any string |
serviceNamePattern | query | string | The service name pattern that the dataset is indexing |
Request
{
"name": "example",
"owner": "Updated owner",
"serviceNamePattern": "_all"
}
Response (200)
{
"name": "example",
"owner": "Updated owner",
"serviceNamePattern": "_all"
}
UpdatePartitionAssignment
POST /slack.proto.astra.ManagerApiService/UpdatePartitionAssignment
UpdatePartitionAssignment allocates a new partition assignment for a dataset. If a rate and a list of partition_ids are provided, it will use it use the list of partition ids as the current allocation and invalidates the existing assignment.
| Parameter | In | Type | Description |
|---|---|---|---|
name | query | string | Must be an exact string name match |
throughputBytes | query | string | Optional maximum throughput of the dataset - if set to -1 the existing value will not be updated |
partitionIds | query | array | Optional desired partition IDs - if empty will be automatically assigned |
Request
Complete update
{
"name": "example",
"throughputBytes": "4000000",
"partitionIds": [
"0"
]
}
Throughput only
{
"name": "example",
"throughputBytes": "4000000",
"partitionIds": []
}
Response (200)
{
"assignedPartitionIds": [
"0"
]
}