{"openapi":"3.1.0","info":{"title":"Hivelocity (BYOK) API","version":"0.1.0","description":"Hivelocity (BYOK) lets an AI assistant read your own Hivelocity data through the Hivelocity API with a key you supply (API key). Read-only: 12 tools (list_devices, get_device, get_device_power, list_device_ips, list_device_events, get_device_hardware, list_ip_assignments, list_vlans, list_vps_instances, list_dns_domains, list_a_records, list_maintenance_events). The BYOK key travels with each...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-hivelocity.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-hivelocity/docs"},"termsOfService":"https://connectorbay.com/byok-hivelocity/terms"},"servers":[{"url":"https://byok-hivelocity.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-hivelocity/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_devices":{"post":{"operationId":"list_devices","summary":"List bare metal and virtual devices with name, hostname, primary IP, status, power state, location, plan, tags and monit","description":"List bare metal and virtual devices with name, hostname, primary IP, status, power state, location, plan, tags and monitor counts. Optionally filter by rack id. Use for \"Which Hivelocity servers do I have and are they powered on\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"rack_id":{"anyOf":[{"maximum":10000000,"minimum":0,"type":"integer"},{"type":"null"}],"default":0,"description":"Only devices in this rack id (0 means no filter).","title":"Rack Id"}},"title":"list_devicesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_device":{"post":{"operationId":"get_device","summary":"Get one device by id with status, power state, location, plan, tags, monitor counts and next billing date. Use for \"Show","description":"Get one device by id with status, power state, location, plan, tags, monitor counts and next billing date. Use for \"Show Hivelocity device 12345\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"device_id":{"description":"Numeric device id, as returned by list_devices.","title":"Device Id","type":"integer"}},"required":["device_id"],"title":"get_deviceArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_device_power":{"post":{"operationId":"get_device_power","summary":"Get the current power status of a device. Only reads the status; it does not change power. Use for \"Is Hivelocity device","description":"Get the current power status of a device. Only reads the status; it does not change power. Use for \"Is Hivelocity device 12345 powered on\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"device_id":{"description":"Numeric device id, as returned by list_devices.","title":"Device Id","type":"integer"}},"required":["device_id"],"title":"get_device_powerArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_device_ips":{"post":{"operationId":"list_device_ips","summary":"List the IP subnets assigned to a device with netmask, gateway, usable range, VLAN and facility. Use for \"Which IP addre","description":"List the IP subnets assigned to a device with netmask, gateway, usable range, VLAN and facility. Use for \"Which IP addresses are assigned to Hivelocity device 12345\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"device_id":{"description":"Numeric device id, as returned by list_devices.","title":"Device Id","type":"integer"}},"required":["device_id"],"title":"list_device_ipsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_device_events":{"post":{"operationId":"list_device_events","summary":"List recent events of a device (action text and epoch time), such as reloads and power actions. Use for \"What happened r","description":"List recent events of a device (action text and epoch time), such as reloads and power actions. Use for \"What happened recently on Hivelocity device 12345\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"device_id":{"description":"Numeric device id, as returned by list_devices.","title":"Device Id","type":"integer"}},"required":["device_id"],"title":"list_device_eventsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_device_hardware":{"post":{"operationId":"get_device_hardware","summary":"Get a hardware summary of a device: drive count and types, populated memory slots, memory sticks, RAID membership and vi","description":"Get a hardware summary of a device: drive count and types, populated memory slots, memory sticks, RAID membership and virtual disks. Use for \"How much RAM and what drives does Hivelocity device 12345 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"device_id":{"description":"Numeric device id, as returned by list_devices.","title":"Device Id","type":"integer"}},"required":["device_id"],"title":"get_device_hardwareArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_ip_assignments":{"post":{"operationId":"list_ip_assignments","summary":"List all IP assignments of the account with subnet, netmask, gateway, usable range, device, VLAN and facility. IPv6 show","description":"List all IP assignments of the account with subnet, netmask, gateway, usable range, device, VLAN and facility. IPv6 shown by default, private ranges hidden by default. Use for \"What IP blocks do I hold at Hivelocity\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"display_ipv6":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":true,"description":"Include IPv6 addresses (default true).","title":"Display Ipv6"},"display_private_networks":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":false,"description":"Include private RFC 1918 ranges (default false).","title":"Display Private Networks"}},"title":"list_ip_assignmentsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_vlans":{"post":{"operationId":"list_vlans","summary":"List VLANs with tag, facility, type, automation and QinQ flags and the attached port and IP ids. Use for \"Which VLANs ex","description":"List VLANs with tag, facility, type, automation and QinQ flags and the attached port and IP ids. Use for \"Which VLANs exist on my Hivelocity account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_vlansArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_vps_instances":{"post":{"operationId":"list_vps_instances","summary":"List VPS instances with device id, facility, vCPU, memory, status and network interfaces. Login passwords are not return","description":"List VPS instances with device id, facility, vCPU, memory, status and network interfaces. Login passwords are not returned. Use for \"Which Hivelocity VPS instances are running\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"facility_code":{"anyOf":[{"maxLength":20,"type":"string"},{"type":"null"}],"default":null,"description":"Only VPS in this facility code, for example TPA1.","title":"Facility Code"}},"title":"list_vps_instancesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_dns_domains":{"post":{"operationId":"list_dns_domains","summary":"List the DNS domains of the account with the target they direct to and a record summary. Use for \"Which DNS zones do I m","description":"List the DNS domains of the account with the target they direct to and a record summary. Use for \"Which DNS zones do I manage at Hivelocity\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_dns_domainsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_a_records":{"post":{"operationId":"list_a_records","summary":"List the A records of one DNS zone with addresses and TTL. Use for \"What A records does example.com have at Hivelocity\".","description":"List the A records of one DNS zone with addresses and TTL. Use for \"What A records does example.com have at Hivelocity\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"domain":{"description":"Zone name, for example 'example.com'.","maxLength":200,"title":"Domain","type":"string"}},"required":["domain"],"title":"list_a_recordsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_maintenance_events":{"post":{"operationId":"list_maintenance_events","summary":"List maintenance events that affect the account's devices with title, description, start, end and device ids. Use for \"I","description":"List maintenance events that affect the account's devices with title, description, start, end and device ids. Use for \"Is any Hivelocity maintenance planned for my servers\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_maintenance_eventsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}