HydraCore
API by router

Shared hosting

GET
/v1/shared-hosting/customers/{customer_id}/config

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

customer_id*Customer Id
Formatuuid

Query Parameters

instance_id*Instance Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Response Body

Successful Response

application/json
  1. response
config_overlay*
created_at*Created At
Formatdate-time
customer_id*Customer Id
Formatuuid
instance_id*Instance Id
Formatuuid
updated_at*Updated At
Formatdate-time
Example Request
curl -X GET 'https://example.com/v1/shared-hosting/customers/497f6eca-6276-4993-bfeb-53cbbbba6f08/config?instance_id=497f6eca-6276-4993-bfeb-53cbbbba6f08'
Example Response
{  "config_overlay": {},  "created_at": "2019-08-24T14:15:22Z",  "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e",  "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",  "updated_at": "2019-08-24T14:15:22Z"}

Remove Customer

DELETE
/v1/shared-hosting/customers/{customer_id}/instances/{instance_id}

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

customer_id*Customer Id
Formatuuid
instance_id*Instance Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Response Body

Successful Response

Example Request
curl -X DELETE 'https://example.com/v1/shared-hosting/customers/497f6eca-6276-4993-bfeb-53cbbbba6f08/instances/497f6eca-6276-4993-bfeb-53cbbbba6f08'
Example Response
Empty
PUT
/v1/shared-hosting/customers/{customer_id}/instances/{instance_id}/config

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

customer_id*Customer Id
Formatuuid
instance_id*Instance Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
config_overlay*

Response Body

Successful Response

application/json
  1. response
config_overlay*
created_at*Created At
Formatdate-time
customer_id*Customer Id
Formatuuid
instance_id*Instance Id
Formatuuid
updated_at*Updated At
Formatdate-time
Example Request
curl -X PUT 'https://example.com/v1/shared-hosting/customers/497f6eca-6276-4993-bfeb-53cbbbba6f08/instances/497f6eca-6276-4993-bfeb-53cbbbba6f08/config' \  -H 'Content-Type: application/json' \  -d '{  "config_overlay": {}}'
Example Response
{  "config_overlay": {},  "created_at": "2019-08-24T14:15:22Z",  "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e",  "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",  "updated_at": "2019-08-24T14:15:22Z"}

List Agent Host Nodes

GET
/v1/shared-hosting/nodes

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Header Parameters

X-Api-Key?string|null

Response Body

Successful Response

application/json
  1. response
[index: integer]?
Example Request
curl -X GET 'https://example.com/v1/shared-hosting/nodes'
Example Response
[  {    "capacity": 0,    "created_at": "2019-08-24T14:15:22Z",    "current_load": 0,    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",    "status": "string",    "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0"  }]

Create Agent Host Node

POST
/v1/shared-hosting/nodes

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
capacity?Capacity
Range1 <= value <= 500
Default50
instance_id*Instance Id
Formatuuid

Response Body

Successful Response

application/json
  1. response
capacity*Capacity
created_at*Created At
Formatdate-time
current_load*Current Load
id*Id
Formatuuid
instance_id*Instance Id
Formatuuid
status*Status
tenant_id*Tenant Id
Formatuuid
Example Request
curl -X POST 'https://example.com/v1/shared-hosting/nodes' \  -H 'Content-Type: application/json' \  -d '{  "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366"}'
Example Response
{  "capacity": 0,  "created_at": "2019-08-24T14:15:22Z",  "current_load": 0,  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",  "status": "string",  "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0"}

Update Agent Host Node

PATCH
/v1/shared-hosting/nodes/{node_id}

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

node_id*Node Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
capacity?|null
status?|null

Response Body

Successful Response

application/json
  1. response
capacity*Capacity
created_at*Created At
Formatdate-time
current_load*Current Load
id*Id
Formatuuid
instance_id*Instance Id
Formatuuid
status*Status
tenant_id*Tenant Id
Formatuuid
Example Request
curl -X PATCH 'https://example.com/v1/shared-hosting/nodes/497f6eca-6276-4993-bfeb-53cbbbba6f08' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "capacity": 0,  "created_at": "2019-08-24T14:15:22Z",  "current_load": 0,  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",  "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",  "status": "string",  "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0"}

List Node Customers

GET
/v1/shared-hosting/nodes/{node_id}/customers

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

node_id*Node Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Response Body

Successful Response

application/json
  1. response
[index: integer]?
Example Request
curl -X GET 'https://example.com/v1/shared-hosting/nodes/497f6eca-6276-4993-bfeb-53cbbbba6f08/customers'
Example Response
[  {    "customer_email": "string",    "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e",    "customer_name": "string",    "placed_at": "2019-08-24T14:15:22Z",    "status": "active"  }]

Place Customer

POST
/v1/shared-hosting/place

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
config_overlay?
customer_id*Customer Id
Formatuuid
node_id?|null

Response Body

Successful Response

application/json
  1. response
config_id*Config Id
Formatuuid
customer_id*Customer Id
Formatuuid
instance_id*Instance Id
Formatuuid
node_id*Node Id
Formatuuid
Example Request
curl -X POST 'https://example.com/v1/shared-hosting/place' \  -H 'Content-Type: application/json' \  -d '{  "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e"}'
Example Response
{  "config_id": "d1d31429-d888-4f1c-b9c1-4e842f9bce5b",  "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e",  "instance_id": "06587974-2dbe-4e10-8bf9-38cce0f5a366",  "node_id": "6e0bdcac-9717-4a6f-972e-97489dffeb0c"}