{ "opencollection": "1.0.0", "info": { "name": "Edgegap Arbitrium API", "version": "1.0" }, "request": { "auth": { "type": "apikey", "apikey": { "key": "Authorization", "value": "token {{authToken}}", "in": "header" } } }, "items": [ { "info": { "name": "Applications", "type": "folder" }, "items": [ { "info": { "name": "List applications", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/app", "params": [ { "name": "page", "value": "1", "type": "query" }, { "name": "limit", "value": "20", "type": "query" } ] }, "docs": "Returns a paginated list of applications for the account." }, { "info": { "name": "Create application", "type": "http" }, "http": { "method": "POST", "url": "https://api.edgegap.com/v1/app", "body": { "type": "json", "data": "{\"name\":\"my-game\",\"is_active\":true,\"is_telemetry_agent_active\":true}" } }, "docs": "Registers a new application on Edgegap." }, { "info": { "name": "Get application", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/app/:app_name", "params": [ { "name": "app_name", "value": "my-game", "type": "path" } ] }, "docs": "Retrieves a single application by name." } ] }, { "info": { "name": "App Versions", "type": "folder" }, "items": [ { "info": { "name": "List versions", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/app/:app_name/versions", "params": [ { "name": "app_name", "value": "my-game", "type": "path" } ] }, "docs": "Lists all versions for an application." }, { "info": { "name": "Create version", "type": "http" }, "http": { "method": "POST", "url": "https://api.edgegap.com/v1/app/:app_name/version", "params": [ { "name": "app_name", "value": "my-game", "type": "path" } ], "body": { "type": "json", "data": "{\"name\":\"v1\",\"docker_repository\":\"registry.edgegap.com\",\"docker_image\":\"my-game-server\",\"docker_tag\":\"latest\",\"vcpu\":1,\"memory\":1024,\"ports\":[{\"port\":7777,\"protocol\":\"UDP\",\"to_check\":true}]}" } }, "docs": "Creates a new container image version for an application." }, { "info": { "name": "Get version", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/app/:app_name/version/:version_name", "params": [ { "name": "app_name", "value": "my-game", "type": "path" }, { "name": "version_name", "value": "v1", "type": "path" } ] }, "docs": "Retrieves a specific application version." } ] }, { "info": { "name": "Deployments", "type": "folder" }, "items": [ { "info": { "name": "Create deployment", "type": "http" }, "http": { "method": "POST", "url": "https://api.edgegap.com/v2/deployments", "body": { "type": "json", "data": "{\"app_name\":\"my-game\",\"version_name\":\"v1\",\"ip_list\":[\"162.254.0.1\",\"162.254.0.2\"]}" } }, "docs": "Auto-deploys a dedicated server to the optimal edge location for the supplied players." }, { "info": { "name": "List deployments", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/deployments" }, "docs": "Lists deployments for the account." }, { "info": { "name": "Get deployment status", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/status/:deployment_id", "params": [ { "name": "deployment_id", "value": "", "type": "path" } ] }, "docs": "Retrieves the current status of a deployment." }, { "info": { "name": "Stop deployment", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.edgegap.com/v1/stop/:deployment_id", "params": [ { "name": "deployment_id", "value": "", "type": "path" } ] }, "docs": "Stops a running deployment." }, { "info": { "name": "Get container logs", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/deployment/:deployment_id/container-logs", "params": [ { "name": "deployment_id", "value": "", "type": "path" } ] }, "docs": "Retrieves container logs for a deployment." } ] }, { "info": { "name": "Sessions", "type": "folder" }, "items": [ { "info": { "name": "Create session", "type": "http" }, "http": { "method": "POST", "url": "https://api.edgegap.com/v1/session", "body": { "type": "json", "data": "{\"app_name\":\"my-game\",\"version_name\":\"v1\",\"ip_list\":[\"162.254.0.1\"]}" } }, "docs": "Creates a session with users, linked to a deployment." }, { "info": { "name": "Get session", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/session/:session_id", "params": [ { "name": "session_id", "value": "", "type": "path" } ] }, "docs": "Retrieves a session by ID." }, { "info": { "name": "Delete session", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.edgegap.com/v1/session/:session_id", "params": [ { "name": "session_id", "value": "", "type": "path" } ] }, "docs": "Deletes a session." } ] }, { "info": { "name": "Matchmaking", "type": "folder" }, "items": [ { "info": { "name": "Create ticket", "type": "http" }, "http": { "method": "POST", "url": "{{matchmakerUrl}}/tickets", "body": { "type": "json", "data": "{\"profile\":\"default\",\"attributes\":{\"skill\":1200,\"mode\":\"ranked\"}}" } }, "docs": "Creates a new matchmaking ticket on a deployed matchmaker service." }, { "info": { "name": "Poll ticket", "type": "http" }, "http": { "method": "GET", "url": "{{matchmakerUrl}}/tickets/:ticket_id", "params": [ { "name": "ticket_id", "value": "", "type": "path" } ] }, "docs": "Polls a matchmaking ticket by ID." } ] }, { "info": { "name": "Relays", "type": "folder" }, "items": [ { "info": { "name": "Create relay session", "type": "http" }, "http": { "method": "POST", "url": "https://api.edgegap.com/v1/relays/sessions", "body": { "type": "json", "data": "{\"webhook_url\":\"https://example.com/webhook\",\"users\":[{\"ip\":\"162.254.0.1\"},{\"ip\":\"162.254.0.2\"}]}" } }, "docs": "Creates a distributed relay session with users and an optional webhook_url." }, { "info": { "name": "Get relay session", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/relays/sessions/:session_id", "params": [ { "name": "session_id", "value": "", "type": "path" } ] }, "docs": "Retrieves a relay session by ID." }, { "info": { "name": "Delete relay session", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.edgegap.com/v1/relays/sessions/:session_id", "params": [ { "name": "session_id", "value": "", "type": "path" } ] }, "docs": "Terminates a relay session." } ] }, { "info": { "name": "Metrics", "type": "folder" }, "items": [ { "info": { "name": "Get deployment metrics", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v1/metrics/deployment/:deployment_id", "params": [ { "name": "deployment_id", "value": "", "type": "path" } ] }, "docs": "Returns monitoring telemetry (CPU, memory, network) for a deployment." } ] }, { "info": { "name": "Fleets", "type": "folder" }, "items": [ { "info": { "name": "Create private fleet deployment", "type": "http" }, "http": { "method": "POST", "url": "https://api.edgegap.com/v2/private-fleets/deployments", "body": { "type": "json", "data": "{\"app_name\":\"my-game\",\"version_name\":\"v1\"}" } }, "docs": "Deploys onto self-managed hosts registered in a private fleet." }, { "info": { "name": "List private fleet hosts", "type": "http" }, "http": { "method": "GET", "url": "https://api.edgegap.com/v2/private-fleets/:fleet_name/hosts", "params": [ { "name": "fleet_name", "value": "", "type": "path" } ] }, "docs": "Enumerates hosts registered in a private fleet." } ] } ], "bundled": true }