Endpoint

/v2/portal/spokes/{id}

GET

Retrieve the relationship status and configuration for the specified spoke portal.

Parameters

Name Description Required
id Portal ID Yes

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"
          }
        }
      }
    }
  }
}

DELETE

Delete the specified spoke portal from the current cluster.

Parameters

Name Description Required
id Portal ID Yes
force No

Response

Codes

Code Description
202 Return value on success

PATCH

Change configuration for the specified spoke portal.

Parameters

Name Description Required
id Portal ID Yes
If-Match ETag for expected version No

Request

Schema

{
  "description": "v2_portal_spoke_patch",
  "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"
          }
        }
      }
    }
  }
}

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"
          }
        }
      }
    }
  }
}