Endpoint
/v2/portal/spokes/{id}/roots/
POST
Propose a spoke root directory for the specified spoke portal. This action creates a pending hub root directory on the paired remote hub portal. Important
This preview REST API is under development. Its functionality or backwards compatibility can change without notice.
This preview REST API is under development. Its functionality or backwards compatibility can change without notice.
Parameters
| Name | Description | Required |
|---|---|---|
id |
Portal ID | Yes |
Request
Schema
{
"description": "v2_portal_root_propose_request",
"type": "object",
"properties": {
"spoke_root_path": {
"description": "Full path to the spoke portal root directory",
"type": "string"
},
"hub_root_path": {
"description": "Full path to the hub portal root directory",
"type": "string"
}
}
}Response
Codes
| Code | Description |
|---|---|
| 200 | Return value on success |
Schema
{
"description": "v2_portal_spoke",
"type": "object",
"properties": {
"id": {
"description": "Spoke portal ID",
"type": "number"
},
"type": {
"type": "string",
"enum": [
"PORTAL_READ_ONLY",
"PORTAL_READ_WRITE"
],
"description": "Type of the spoke portal (read-only or read-write):\n * `PORTAL_READ_ONLY` - PORTAL_READ_ONLY,\n * `PORTAL_READ_WRITE` - PORTAL_READ_WRITE"
},
"state": {
"type": "string",
"enum": [
"PENDING",
"ACCEPTED",
"DELETING"
],
"description": "State of the spoke portal:\n * `ACCEPTED` - A portal that is in an active relationship.,\n * `DELETING` - A portal in the process of synchronizing outstanding changes before deletion.,\n * `PENDING` - A portal not yet in an active relationship."
},
"status": {
"type": "string",
"enum": [
"INACTIVE",
"ACTIVE",
"DEGRADED"
],
"description": "Status of the portal:\n * `ACTIVE` - A fully connected portal ready for use.,\n * `DEGRADED` - A portal missing one or more connections with the other cluster in the relationship.,\n * `INACTIVE` - A portal that is not ready for use."
},
"hub_hosts": {
"type": "array",
"items": {
"description": "IP addresses and TCP ports of nodes in the remote cluster",
"type": "object",
"properties": {
"address": {
"description": "address",
"type": "string"
},
"port": {
"description": "port",
"type": "number"
}
}
}
},
"hub_id": {
"description": "Corresponding remote hub portal ID",
"type": "number"
},
"hub_cluster_uuid": {
"description": "UUID of the cluster with the hub portal",
"type": "string"
},
"roots": {
"type": "array",
"items": {
"description": "Map of spoke root directories to hub root directories",
"type": "object",
"properties": {
"local_root": {
"description": "Local spoke root directory file ID",
"type": "string"
},
"remote_root": {
"description": "Remote hub root directory file ID",
"type": "string"
},
"authorized": {
"description": "Whether the spoke portal is authorized to access the remote root",
"type": "boolean"
}
}
}
}
}
}