OpenAPI Türkçe gyrohosting.com ↗

Panel users

Sub-users: extra panel logins with limited permissions (accountant, technical staff). Scope users.

#GET/cloud/users

List sub-usersScope: userslistPanelUsersOpenAPI for this operation

Responses

200Users — data: array<object>
401Missing, invalid or revoked key
404Not found — also returned for objects owned by someone else
422Validation or business rule failure (confirm_required, invalid_image, tool_action_failed ...)

Examples

curl -s 'https://www.gyrohosting.com/api/v1/client/cloud/users' \
  -H "Authorization: Bearer $GYRO_TOKEN"
gyro user list
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.get("https://www.gyrohosting.com/api/v1/client/cloud/users", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
const res = await fetch("https://www.gyrohosting.com/api/v1/client/cloud/users", {
  method: "GET",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);

#POST/cloud/users

Invite a sub-userScope: userscreatePanelUserOpenAPI for this operation

Request body

FieldTypeDescription
email requiredstring
labelstring
permissionsarray<string>e.g. view_services, view_invoices, pay_invoices, view_tickets, open_tickets ...
send_inviteboolean

Responses

201Created — data: object
401Missing, invalid or revoked key
404Not found — also returned for objects owned by someone else
422Validation or business rule failure (confirm_required, invalid_image, tool_action_failed ...)

Examples

curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/cloud/users' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"email": "string", "label": "string", "permissions": ["string"], "send_invite": true}'
gyro user create --help    # all flags
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/cloud/users", headers=h, json={"email": "string", "label": "string", "permissions": ["string"], "send_invite": True}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
const res = await fetch("https://www.gyrohosting.com/api/v1/client/cloud/users", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"email": "string", "label": "string", "permissions": ["string"], "send_invite": true}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);

#PATCH/cloud/users/{id}

Update a sub-user (label, status, permissions)Scope: usersupdatePanelUserOpenAPI for this operation

Parameters

FieldinTypeDescription
id requiredpathinteger

Request body

FieldTypeDescription
labelstring
statusstring (active, inactive)
permissionsarray<string>

Responses

200Updated — data: object
401Missing, invalid or revoked key
404Not found — also returned for objects owned by someone else
422Validation or business rule failure (confirm_required, invalid_image, tool_action_failed ...)

Examples

curl -s -X PATCH 'https://www.gyrohosting.com/api/v1/client/cloud/users/12345' \
  -H "Authorization: Bearer $GYRO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"label": "string", "status": "active", "permissions": ["string"]}'
gyro user update 12345 --help    # all flags
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.patch("https://www.gyrohosting.com/api/v1/client/cloud/users/12345", headers=h, json={"label": "string", "status": "active", "permissions": ["string"]}, timeout=60)
r.raise_for_status()
print(r.json()["data"])
const res = await fetch("https://www.gyrohosting.com/api/v1/client/cloud/users/12345", {
  method: "PATCH",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({"label": "string", "status": "active", "permissions": ["string"]}),
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);

#DELETE/cloud/users/{id}

Remove a sub-userScope: usersdeletePanelUserOpenAPI for this operation

Parameters

FieldinTypeDescription
id requiredpathinteger

Responses

200Deleted — data: object
401Missing, invalid or revoked key
404Not found — also returned for objects owned by someone else
422Validation or business rule failure (confirm_required, invalid_image, tool_action_failed ...)

Examples

curl -s -X DELETE 'https://www.gyrohosting.com/api/v1/client/cloud/users/12345' \
  -H "Authorization: Bearer $GYRO_TOKEN"
gyro user delete 12345
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.delete("https://www.gyrohosting.com/api/v1/client/cloud/users/12345", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
const res = await fetch("https://www.gyrohosting.com/api/v1/client/cloud/users/12345", {
  method: "DELETE",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);

#POST/cloud/users/{id}/resend-invite

Resend the invitation e-mailScope: usersresendPanelUserInviteOpenAPI for this operation

Parameters

FieldinTypeDescription
id requiredpathinteger

Responses

200Sent — data: object
401Missing, invalid or revoked key
404Not found — also returned for objects owned by someone else
422Validation or business rule failure (confirm_required, invalid_image, tool_action_failed ...)

Examples

curl -s -X POST 'https://www.gyrohosting.com/api/v1/client/cloud/users/12345/resend-invite' \
  -H "Authorization: Bearer $GYRO_TOKEN"
gyro user resend-invite 12345
import os, uuid, requests

h = {"Authorization": "Bearer " + os.environ["GYRO_TOKEN"]}
r = requests.post("https://www.gyrohosting.com/api/v1/client/cloud/users/12345/resend-invite", headers=h, timeout=60)
r.raise_for_status()
print(r.json()["data"])
const res = await fetch("https://www.gyrohosting.com/api/v1/client/cloud/users/12345/resend-invite", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.GYRO_TOKEN}`,
  },
});
const { data, error } = await res.json();
if (!res.ok) throw new Error(`${error.code}: ${error.message}`);