Endpoint

/v2/portal/spokes/

GET

List the relationship status and configuration for all spoke portals on the current cluster.

Parameters

This resource has no parameters.

Response

Codes

Code Description
200 Return value on success

Schema

{
  "description": "v2_portal_spokes",
  "type": "object",
  "properties": {
    "entries": {
      "type": "array",
      "items": {
        "description": "List of spoke portals",
        "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` - API_PORTAL_ACCEPTED,\n * `DELETING` - API_PORTAL_DELETING,\n * `PENDING` - API_PORTAL_PENDING"
          },
          "status": {
            "type": "string",
            "enum": [
              "INACTIVE",
              "ACTIVE",
              "DEGRADED"
            ],
            "description": "Status of the portal:\n * `ACTIVE` - PORTAL_ACTIVE,\n * `DEGRADED` - PORTAL_DEGRADED,\n * `INACTIVE` - PORTAL_INACTIVE"
          },
          "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"
                }
              }
            }
          }
        }
      }
    }
  }
}

POST

Create a spoke portal in the current cluster and propose a relationship between this spoke portal and a hub portal on another cluster.

Parameters

This resource has no parameters.

Request

Schema

{
  "description": "v2_portal_create_request",
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "PORTAL_READ_ONLY",
        "PORTAL_READ_WRITE"
      ],
      "description": "Whether to create a read-only or read-write spoke portal:\n * `PORTAL_READ_ONLY` - PORTAL_READ_ONLY,\n * `PORTAL_READ_WRITE` - PORTAL_READ_WRITE"
    },
    "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"
          }
        }
      }
    }
  }
}

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` - API_PORTAL_ACCEPTED,\n * `DELETING` - API_PORTAL_DELETING,\n * `PENDING` - API_PORTAL_PENDING"
    },
    "status": {
      "type": "string",
      "enum": [
        "INACTIVE",
        "ACTIVE",
        "DEGRADED"
      ],
      "description": "Status of the portal:\n * `ACTIVE` - PORTAL_ACTIVE,\n * `DEGRADED` - PORTAL_DEGRADED,\n * `INACTIVE` - PORTAL_INACTIVE"
    },
    "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"
          }
        }
      }
    }
  }
}