From e041bae89efd992c7083d28b3f61542430bbc70f Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Wed, 23 Oct 2024 00:30:24 +0000 Subject: [PATCH] ci: regenerated with Speakeasy CLI v1.420.0 --- .speakeasy/workflow.lock | 25 + .speakeasy/workflow.yaml | 3 + openapi-with-code-samples.json | 13336 +++++++++++++++++++++++++++++++ 3 files changed, 13364 insertions(+) create mode 100644 .speakeasy/workflow.lock create mode 100644 openapi-with-code-samples.json diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock new file mode 100644 index 0000000..428f031 --- /dev/null +++ b/.speakeasy/workflow.lock @@ -0,0 +1,25 @@ +speakeasyVersion: 1.420.0 +sources: + merge-code-samples-into-spec: + sourceNamespace: merge-code-samples-into-spec + sourceRevisionDigest: sha256:ebacbae07c2e56744d731db7485ca9b0318708bffbe2591c460afadcb5696210 + sourceBlobDigest: sha256:1c73467c5ec9f135931c753b01e0f6b92780cd3a3fddcb3ccfe34c183ba709ee + tags: + - latest + - main +targets: {} +workflow: + workflowVersion: 1.0.0 + speakeasyVersion: latest + sources: + merge-code-samples-into-spec: + inputs: + - location: registry.speakeasyapi.dev/hathora/hathora/my-source + overlays: + - location: registry.speakeasyapi.dev/hathora/hathora/code-samples-unity-cloud-sdk-unity:main + - location: registry.speakeasyapi.dev/hathora/hathora/code-samples-typescript-hathora-typescript:main + - location: registry.speakeasyapi.dev/hathora/hathora/code-samples-java-hathora-java:main + output: openapi-with-code-samples.json + registry: + location: registry.speakeasyapi.dev/hathora/hathora/merge-code-samples-into-spec + targets: {} diff --git a/.speakeasy/workflow.yaml b/.speakeasy/workflow.yaml index 97d8f65..920cea9 100644 --- a/.speakeasy/workflow.yaml +++ b/.speakeasy/workflow.yaml @@ -1,4 +1,5 @@ workflowVersion: 1.0.0 +speakeasyVersion: latest sources: merge-code-samples-into-spec: inputs: @@ -8,4 +9,6 @@ sources: - location: registry.speakeasyapi.dev/hathora/hathora/code-samples-typescript-hathora-typescript:main - location: registry.speakeasyapi.dev/hathora/hathora/code-samples-java-hathora-java:main output: openapi-with-code-samples.json + registry: + location: registry.speakeasyapi.dev/hathora/hathora/merge-code-samples-into-spec targets: {} diff --git a/openapi-with-code-samples.json b/openapi-with-code-samples.json new file mode 100644 index 0000000..1243f43 --- /dev/null +++ b/openapi-with-code-samples.json @@ -0,0 +1,13336 @@ +{ + "openapi": "3.0.0", + "components": { + "examples": {}, + "headers": {}, + "parameters": {}, + "requestBodies": {}, + "responses": {}, + "schemas": { + "OrgTokenId": { + "type": "string", + "example": "org-token-af469a92-5b45-4565-b3c4-b79878de67d2", + "description": "System generated unique identifier for an organization token." + }, + "OrgTokenName": { + "type": "string", + "example": "ci-token", + "description": "Readable name for a token. Must be unique within an organization.", + "maxLength": 64 + }, + "OrgTokenStatus": { + "type": "string", + "enum": [ + "active", + "revoked" + ], + "x-speakeasy-unknown-values": "allow" + }, + "UserEmail": { + "type": "string", + "example": "noreply@hathora.dev", + "description": "A user's email." + }, + "AttributionId": { + "oneOf": [ + { + "$ref": "#/components/schemas/UserEmail" + }, + { + "$ref": "#/components/schemas/OrgTokenId" + } + ] + }, + "OrgToken": { + "properties": { + "createdAt": { + "type": "string", + "format": "date-time" + }, + "createdBy": { + "$ref": "#/components/schemas/AttributionId", + "description": "The email address or token id for the user that created the token.", + "example": "noreply@hathora.dev" + }, + "lastFourCharsOfKey": { + "type": "string" + }, + "status": { + "$ref": "#/components/schemas/OrgTokenStatus" + }, + "name": { + "$ref": "#/components/schemas/OrgTokenName" + }, + "orgId": { + "type": "string" + }, + "orgTokenId": { + "$ref": "#/components/schemas/OrgTokenId" + } + }, + "required": [ + "createdAt", + "createdBy", + "lastFourCharsOfKey", + "status", + "name", + "orgId", + "orgTokenId" + ], + "type": "object" + }, + "ListOrgTokens": { + "properties": { + "tokens": { + "items": { + "$ref": "#/components/schemas/OrgToken" + }, + "type": "array" + } + }, + "required": [ + "tokens" + ], + "type": "object" + }, + "OrgId": { + "type": "string", + "example": "org-6f706e83-0ec1-437a-9a46-7d4281eb2f39", + "description": "System generated unique identifier for an organization. Not guaranteed to have a specific format." + }, + "ApiError": { + "properties": { + "message": { + "type": "string" + } + }, + "required": [ + "message" + ], + "type": "object" + }, + "CreatedOrgToken": { + "properties": { + "plainTextToken": { + "type": "string" + }, + "orgToken": { + "$ref": "#/components/schemas/OrgToken" + } + }, + "required": [ + "plainTextToken", + "orgToken" + ], + "type": "object" + }, + "CreateOrgToken": { + "properties": { + "name": { + "$ref": "#/components/schemas/OrgTokenName" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "RoomId": { + "type": "string", + "example": "2swovpy1fnunu", + "description": "Unique identifier to a game session or match. Use the default system generated ID or overwrite it with your own.\nNote: error will be returned if `roomId` is not globally unique.", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z0-9_-]*$" + }, + "AppId": { + "type": "string", + "example": "app-af469a92-5b45-4565-b3c4-b79878de67d2", + "description": "System generated unique identifier for an application." + }, + "Region": { + "type": "string", + "enum": [ + "Seattle", + "Los_Angeles", + "Washington_DC", + "Chicago", + "London", + "Frankfurt", + "Mumbai", + "Singapore", + "Tokyo", + "Sydney", + "Sao_Paulo", + "Dallas", + "Johannesburg", + "Dubai" + ], + "x-speakeasy-unknown-values": "allow" + }, + "RoomConfig": { + "type": "string", + "example": "{\"name\":\"my-room\"}", + "description": "Optional configuration parameters for the room. Can be any string including stringified JSON. It is accessible from the room via [`GetRoomInfo()`](https://hathora.dev/api#tag/RoomV2/operation/GetRoomInfo).", + "maxLength": 10000 + }, + "ClientIP": { + "type": "string", + "example": "123.123.123.123", + "pattern": "^((25[0-5]|(2[0-4]|1\\d|[1-9]|)\\d)\\.?\\b){4}$" + }, + "GlobalDeploymentId": { + "type": "string", + "example": "dep-6d4c6a71-2d75-4b42-94e1-f312f57f33c5", + "description": "System generated id for a deployment." + }, + "CreateRoomParams": { + "properties": { + "deploymentId": { + "$ref": "#/components/schemas/GlobalDeploymentId" + }, + "clientIPs": { + "items": { + "$ref": "#/components/schemas/ClientIP" + }, + "type": "array", + "maxItems": 100 + }, + "roomConfig": { + "$ref": "#/components/schemas/RoomConfig" + }, + "region": { + "$ref": "#/components/schemas/Region" + } + }, + "required": [ + "region" + ], + "type": "object" + }, + "RoomAllocationId": { + "type": "string", + "example": "e3a0aa32-1711-4036-acfa-008b96061a78", + "description": "System generated unique identifier to an allocated instance of a room." + }, + "ProcessId": { + "type": "string", + "example": "cbfcddd2-0006-43ae-996c-995fff7bed2e", + "description": "System generated unique identifier to a runtime instance of your game server." + }, + "RoomAllocation": { + "properties": { + "unscheduledAt": { + "type": "string", + "format": "date-time", + "nullable": true + }, + "scheduledAt": { + "type": "string", + "format": "date-time" + }, + "processId": { + "$ref": "#/components/schemas/ProcessId" + }, + "roomAllocationId": { + "$ref": "#/components/schemas/RoomAllocationId" + } + }, + "required": [ + "unscheduledAt", + "scheduledAt", + "processId", + "roomAllocationId" + ], + "type": "object", + "description": "Metadata on an allocated instance of a room." + }, + "RoomStatus": { + "type": "string", + "enum": [ + "scheduling", + "active", + "destroyed" + ], + "example": "active", + "description": "The allocation status of a room.\n\n`scheduling`: a process is not allocated yet and the room is waiting to be scheduled\n\n`active`: ready to accept connections\n\n`destroyed`: all associated metadata is deleted", + "x-speakeasy-unknown-values": "allow" + }, + "Room": { + "properties": { + "currentAllocation": { + "allOf": [ + { + "$ref": "#/components/schemas/RoomAllocation" + } + ], + "nullable": true + }, + "status": { + "$ref": "#/components/schemas/RoomStatus" + }, + "allocations": { + "items": { + "$ref": "#/components/schemas/RoomAllocation" + }, + "type": "array" + }, + "roomConfig": { + "allOf": [ + { + "$ref": "#/components/schemas/RoomConfig" + } + ], + "nullable": true + }, + "roomId": { + "$ref": "#/components/schemas/RoomId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "currentAllocation", + "status", + "allocations", + "roomId", + "appId" + ], + "type": "object", + "description": "A room object represents a game session or match." + }, + "RoomWithoutAllocations": { + "properties": { + "currentAllocation": { + "allOf": [ + { + "$ref": "#/components/schemas/RoomAllocation" + } + ], + "nullable": true + }, + "status": { + "$ref": "#/components/schemas/RoomStatus" + }, + "roomConfig": { + "allOf": [ + { + "$ref": "#/components/schemas/RoomConfig" + } + ], + "nullable": true + }, + "roomId": { + "$ref": "#/components/schemas/RoomId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "currentAllocation", + "status", + "roomId", + "appId" + ], + "type": "object" + }, + "StartingConnectionInfo": { + "properties": { + "status": { + "type": "string", + "enum": [ + "starting" + ], + "nullable": false, + "x-speakeasy-unknown-values": "allow" + }, + "roomId": { + "$ref": "#/components/schemas/RoomId" + } + }, + "required": [ + "status", + "roomId" + ], + "type": "object" + }, + "TransportType": { + "type": "string", + "enum": [ + "tcp", + "udp", + "tls" + ], + "description": "Transport type specifies the underlying communication protocol to the exposed port.", + "x-speakeasy-unknown-values": "allow" + }, + "ActiveConnectionInfo": { + "properties": { + "status": { + "type": "string", + "enum": [ + "active" + ], + "nullable": false, + "x-speakeasy-unknown-values": "allow" + }, + "transportType": { + "$ref": "#/components/schemas/TransportType" + }, + "port": { + "type": "number", + "format": "double" + }, + "host": { + "type": "string" + }, + "roomId": { + "$ref": "#/components/schemas/RoomId" + } + }, + "required": [ + "status", + "transportType", + "port", + "host", + "roomId" + ], + "type": "object" + }, + "ConnectionInfo": { + "oneOf": [ + { + "$ref": "#/components/schemas/StartingConnectionInfo" + }, + { + "$ref": "#/components/schemas/ActiveConnectionInfo" + } + ], + "description": "Connection information to the default port." + }, + "RoomReadyStatus": { + "type": "string", + "enum": [ + "active", + "starting" + ], + "x-speakeasy-unknown-values": "allow" + }, + "ExposedPort": { + "properties": { + "transportType": { + "$ref": "#/components/schemas/TransportType" + }, + "port": { + "type": "integer", + "format": "int32" + }, + "host": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "transportType", + "port", + "host", + "name" + ], + "type": "object", + "example": { + "host": "1.proxy.hathora.dev", + "name": "default", + "port": 34567, + "transportType": "tcp" + }, + "description": "Connection details for an active process." + }, + "ConnectionInfoV2": { + "properties": { + "additionalExposedPorts": { + "items": { + "$ref": "#/components/schemas/ExposedPort" + }, + "type": "array", + "example": [ + { + "host": "1.proxy.hathora.dev", + "name": "debug", + "port": 72941, + "transportType": "tcp" + } + ], + "maxItems": 2 + }, + "exposedPort": { + "$ref": "#/components/schemas/ExposedPort" + }, + "status": { + "$ref": "#/components/schemas/RoomReadyStatus", + "description": "`exposedPort` will only be available when the `status` of a room is \"active\".", + "example": "active" + }, + "roomId": { + "$ref": "#/components/schemas/RoomId" + } + }, + "required": [ + "additionalExposedPorts", + "status", + "roomId" + ], + "type": "object", + "description": "Connection information for the default and additional ports." + }, + "RoomConnectionData": { + "allOf": [ + { + "$ref": "#/components/schemas/ConnectionInfoV2" + }, + { + "properties": { + "processId": { + "$ref": "#/components/schemas/ProcessId" + } + }, + "required": [ + "processId" + ], + "type": "object" + } + ] + }, + "UpdateRoomConfigParams": { + "properties": { + "roomConfig": { + "$ref": "#/components/schemas/RoomConfig" + } + }, + "required": [ + "roomConfig" + ], + "type": "object" + }, + "DeploymentId": { + "type": "integer", + "format": "int32", + "example": 1, + "description": "System generated id for a deployment. Increments by 1." + }, + "NumRoomsPerProcess": { + "type": "integer", + "format": "int32", + "example": 3, + "description": "Governs how many [rooms](https://hathora.dev/docs/concepts/hathora-entities#room) can be scheduled in a process.", + "minimum": 1, + "maximum": 10000 + }, + "Process": { + "properties": { + "egressedBytes": { + "type": "integer", + "format": "int32", + "description": "Measures network traffic leaving the process in bytes.", + "example": 435 + }, + "idleSince": { + "type": "string", + "format": "date-time", + "nullable": true, + "deprecated": true + }, + "activeConnectionsUpdatedAt": { + "type": "string", + "format": "date-time", + "deprecated": true + }, + "activeConnections": { + "type": "integer", + "format": "int32", + "description": "Tracks the number of active connections to a process.", + "example": 10, + "deprecated": true + }, + "roomsAllocatedUpdatedAt": { + "type": "string", + "format": "date-time" + }, + "roomsAllocated": { + "type": "integer", + "format": "int32", + "description": "Tracks the number of rooms that have been allocated to the process.", + "example": 1 + }, + "roomSlotsAvailableUpdatedAt": { + "type": "string", + "format": "date-time", + "deprecated": true + }, + "roomSlotsAvailable": { + "type": "number", + "format": "double", + "deprecated": true + }, + "draining": { + "type": "boolean", + "description": "Process in drain will not accept any new rooms." + }, + "terminatedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process has been terminated." + }, + "stoppingAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process is issued to stop. We use this to determine when we should stop billing." + }, + "startedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process bound to the specified port. We use this to determine when we should start billing." + }, + "startingAt": { + "type": "string", + "format": "date-time", + "description": "When the process started being provisioned." + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "additionalExposedPorts": { + "items": { + "$ref": "#/components/schemas/ExposedPort" + }, + "type": "array", + "example": [ + { + "host": "1.proxy.hathora.dev", + "name": "debug", + "port": 72941, + "transportType": "tcp" + } + ], + "maxItems": 2 + }, + "exposedPort": { + "allOf": [ + { + "$ref": "#/components/schemas/ExposedPort" + } + ], + "nullable": true + }, + "port": { + "type": "number", + "format": "double", + "deprecated": true + }, + "host": { + "type": "string", + "deprecated": true + }, + "region": { + "$ref": "#/components/schemas/Region" + }, + "processId": { + "$ref": "#/components/schemas/ProcessId" + }, + "deploymentId": { + "$ref": "#/components/schemas/DeploymentId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "egressedBytes", + "idleSince", + "activeConnectionsUpdatedAt", + "activeConnections", + "roomsAllocatedUpdatedAt", + "roomsAllocated", + "roomSlotsAvailableUpdatedAt", + "roomSlotsAvailable", + "draining", + "terminatedAt", + "stoppingAt", + "startedAt", + "startingAt", + "roomsPerProcess", + "additionalExposedPorts", + "exposedPort", + "port", + "host", + "region", + "processId", + "deploymentId", + "appId" + ], + "type": "object", + "description": "A process object represents a runtime instance of your game server and its metadata." + }, + "ProcessWithRooms": { + "allOf": [ + { + "$ref": "#/components/schemas/Process" + }, + { + "properties": { + "rooms": { + "items": { + "$ref": "#/components/schemas/RoomWithoutAllocations" + }, + "type": "array" + }, + "totalRooms": { + "type": "integer", + "format": "int32" + } + }, + "required": [ + "rooms", + "totalRooms" + ], + "type": "object" + } + ] + }, + "ProcessStatus": { + "type": "string", + "enum": [ + "starting", + "running", + "draining", + "stopping", + "stopped", + "failed" + ], + "x-speakeasy-unknown-values": "allow" + }, + "ProcessV2": { + "properties": { + "status": { + "$ref": "#/components/schemas/ProcessStatus", + "description": "Process in drain will not accept any new rooms." + }, + "roomsAllocated": { + "type": "integer", + "format": "int32", + "description": "Tracks the number of rooms that have been allocated to the process.", + "example": 1 + }, + "terminatedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process has been terminated." + }, + "stoppingAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process is issued to stop. We use this to determine when we should stop billing." + }, + "startedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process bound to the specified port. We use this to determine when we should start billing." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When the process started being provisioned." + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "additionalExposedPorts": { + "items": { + "$ref": "#/components/schemas/ExposedPort" + }, + "type": "array", + "example": [ + { + "host": "1.proxy.hathora.dev", + "name": "debug", + "port": 72941, + "transportType": "tcp" + } + ], + "maxItems": 2 + }, + "exposedPort": { + "allOf": [ + { + "$ref": "#/components/schemas/ExposedPort" + } + ], + "nullable": true + }, + "region": { + "$ref": "#/components/schemas/Region" + }, + "processId": { + "$ref": "#/components/schemas/ProcessId" + }, + "deploymentId": { + "$ref": "#/components/schemas/DeploymentId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "status", + "roomsAllocated", + "terminatedAt", + "stoppingAt", + "startedAt", + "createdAt", + "roomsPerProcess", + "additionalExposedPorts", + "exposedPort", + "region", + "processId", + "deploymentId", + "appId" + ], + "type": "object" + }, + "ProcessV3": { + "properties": { + "status": { + "$ref": "#/components/schemas/ProcessStatus", + "description": "Process in drain will not accept any new rooms." + }, + "roomsAllocated": { + "type": "integer", + "format": "int32", + "description": "Tracks the number of rooms that have been allocated to the process.", + "example": 1 + }, + "terminatedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process has been terminated." + }, + "stoppingAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process is issued to stop. We use this to determine when we should stop billing." + }, + "startedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the process bound to the specified port. We use this to determine when we should start billing." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When the process started being provisioned." + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "additionalExposedPorts": { + "items": { + "$ref": "#/components/schemas/ExposedPort" + }, + "type": "array", + "example": [ + { + "host": "1.proxy.hathora.dev", + "name": "debug", + "port": 72941, + "transportType": "tcp" + } + ], + "maxItems": 2 + }, + "exposedPort": { + "allOf": [ + { + "$ref": "#/components/schemas/ExposedPort" + } + ], + "nullable": true + }, + "region": { + "$ref": "#/components/schemas/Region" + }, + "processId": { + "$ref": "#/components/schemas/ProcessId" + }, + "deploymentId": { + "$ref": "#/components/schemas/GlobalDeploymentId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "status", + "roomsAllocated", + "terminatedAt", + "stoppingAt", + "startedAt", + "createdAt", + "roomsPerProcess", + "additionalExposedPorts", + "exposedPort", + "region", + "processId", + "deploymentId", + "appId" + ], + "type": "object" + }, + "Organization": { + "properties": { + "isSingleTenant": { + "type": "boolean" + }, + "stripeCustomerId": { + "type": "string" + }, + "orgId": { + "$ref": "#/components/schemas/OrgId" + } + }, + "required": [ + "isSingleTenant", + "stripeCustomerId", + "orgId" + ], + "type": "object" + }, + "OrgsPage": { + "properties": { + "orgs": { + "items": { + "$ref": "#/components/schemas/Organization" + }, + "type": "array" + } + }, + "required": [ + "orgs" + ], + "type": "object" + }, + "PendingOrgInvite": { + "properties": { + "createdAt": { + "type": "string", + "format": "date-time" + }, + "invitedBy": { + "$ref": "#/components/schemas/AttributionId" + }, + "userEmail": { + "$ref": "#/components/schemas/UserEmail" + }, + "orgId": { + "$ref": "#/components/schemas/OrgId" + } + }, + "required": [ + "createdAt", + "invitedBy", + "userEmail", + "orgId" + ], + "type": "object" + }, + "PendingOrgInvitesPage": { + "properties": { + "invites": { + "items": { + "$ref": "#/components/schemas/PendingOrgInvite" + }, + "type": "array" + } + }, + "required": [ + "invites" + ], + "type": "object" + }, + "OrgMember": { + "properties": { + "lastLogin": { + "type": "string", + "format": "date-time" + }, + "joinedAt": { + "type": "string", + "format": "date-time" + }, + "createdAt": { + "type": "string", + "format": "date-time" + }, + "invitedBy": { + "$ref": "#/components/schemas/AttributionId" + }, + "userEmail": { + "$ref": "#/components/schemas/UserEmail" + }, + "orgId": { + "$ref": "#/components/schemas/OrgId" + } + }, + "required": [ + "joinedAt", + "createdAt", + "invitedBy", + "userEmail", + "orgId" + ], + "type": "object" + }, + "OrgMembersPage": { + "properties": { + "members": { + "items": { + "$ref": "#/components/schemas/OrgMember" + }, + "type": "array" + } + }, + "required": [ + "members" + ], + "type": "object" + }, + "CreateUserInvite": { + "properties": { + "userEmail": { + "$ref": "#/components/schemas/UserEmail" + } + }, + "required": [ + "userEmail" + ], + "type": "object" + }, + "RescindUserInvite": { + "properties": { + "userEmail": { + "$ref": "#/components/schemas/UserEmail" + } + }, + "required": [ + "userEmail" + ], + "type": "object" + }, + "MetricValue": { + "properties": { + "value": { + "type": "number", + "format": "double" + }, + "timestamp": { + "type": "number", + "format": "double" + } + }, + "required": [ + "value", + "timestamp" + ], + "type": "object" + }, + "MetricsData": { + "properties": { + "active_connections": { + "items": { + "$ref": "#/components/schemas/MetricValue" + }, + "type": "array" + }, + "total_egress": { + "items": { + "$ref": "#/components/schemas/MetricValue" + }, + "type": "array" + }, + "rate_egress": { + "items": { + "$ref": "#/components/schemas/MetricValue" + }, + "type": "array" + }, + "memory": { + "items": { + "$ref": "#/components/schemas/MetricValue" + }, + "type": "array" + }, + "cpu": { + "items": { + "$ref": "#/components/schemas/MetricValue" + }, + "type": "array" + } + }, + "type": "object" + }, + "MetricName": { + "type": "string", + "enum": [ + "cpu", + "memory", + "rate_egress", + "total_egress", + "active_connections" + ], + "description": "Available metrics to query over time.", + "x-speakeasy-unknown-values": "allow" + }, + "MetricsStep": { + "type": "integer", + "format": "int32", + "default": 60, + "description": "Width of time in seconds to group data." + }, + "VerificationEmailSuccess": { + "type": "string", + "enum": [ + "success" + ], + "nullable": false, + "x-speakeasy-unknown-values": "allow" + }, + "VerificationEmailRequest": { + "properties": { + "userId": { + "type": "string" + } + }, + "required": [ + "userId" + ], + "type": "object" + }, + "UserId": { + "type": "string", + "example": "auth0|646bdf96f7fb73d04c8c84db", + "description": "System generated unique identifier for a user. Not guaranteed to have a specific format." + }, + "NewUserInfo": { + "properties": { + "email": { + "$ref": "#/components/schemas/UserEmail" + }, + "user_id": { + "$ref": "#/components/schemas/UserId" + } + }, + "required": [ + "email", + "user_id" + ], + "type": "object" + }, + "LogsFollow": { + "type": "boolean", + "description": "Stream logs in realtime." + }, + "TailLines": { + "type": "integer", + "format": "int32", + "default": 100, + "example": 100, + "description": "Number of lines to return from most recent logs history.", + "minimum": 1, + "maximum": 5000 + }, + "LobbyVisibility": { + "type": "string", + "enum": [ + "private", + "public", + "local" + ], + "example": "private", + "description": "Types of lobbies a player can create.\n\n`private`: the player who created the room must share the roomId with their friends\n\n`public`: visible in the public lobby list, anyone can join\n\n`local`: for testing with a server running locally", + "x-speakeasy-unknown-values": "allow" + }, + "LobbyInitialConfig": { + "description": "User input to initialize the game state. Object must be smaller than 64KB." + }, + "ShortCode": { + "type": "string", + "example": "LFG4", + "description": "User-defined identifier for a lobby.", + "maxLength": 100 + }, + "Lobby": { + "properties": { + "shortCode": { + "allOf": [ + { + "$ref": "#/components/schemas/ShortCode" + } + ], + "nullable": true + }, + "state": { + "nullable": true, + "description": "JSON blob to store metadata for a room. Must be smaller than 1MB." + }, + "initialConfig": { + "$ref": "#/components/schemas/LobbyInitialConfig" + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When the lobby was created." + }, + "createdBy": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "number", + "format": "double" + } + ], + "description": "UserId or email address for the user that created the lobby.", + "example": "google-oauth2|107030234048588177467" + }, + "local": { + "type": "boolean", + "deprecated": true + }, + "visibility": { + "$ref": "#/components/schemas/LobbyVisibility" + }, + "region": { + "$ref": "#/components/schemas/Region" + }, + "roomId": { + "$ref": "#/components/schemas/RoomId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "shortCode", + "initialConfig", + "createdAt", + "createdBy", + "local", + "visibility", + "region", + "roomId", + "appId" + ], + "type": "object", + "description": "A lobby object allows you to store and manage metadata for your rooms." + }, + "CreateLobbyParams": { + "properties": { + "visibility": { + "$ref": "#/components/schemas/LobbyVisibility" + }, + "initialConfig": { + "$ref": "#/components/schemas/LobbyInitialConfig" + }, + "region": { + "$ref": "#/components/schemas/Region" + } + }, + "required": [ + "visibility", + "initialConfig", + "region" + ], + "type": "object" + }, + "SetLobbyStateParams": { + "properties": { + "state": { + "description": "JSON blob to store metadata for a room. Must be smaller than 1MB." + } + }, + "required": [ + "state" + ], + "type": "object" + }, + "LobbyV3": { + "properties": { + "shortCode": { + "$ref": "#/components/schemas/ShortCode", + "description": "User defined identifier for a lobby, defaults to `roomId`" + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When the lobby was created." + }, + "createdBy": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "number", + "format": "double" + } + ], + "description": "UserId or email address for the user that created the lobby.", + "example": "google-oauth2|107030234048588177467" + }, + "roomConfig": { + "allOf": [ + { + "$ref": "#/components/schemas/RoomConfig" + } + ], + "nullable": true + }, + "visibility": { + "$ref": "#/components/schemas/LobbyVisibility" + }, + "region": { + "$ref": "#/components/schemas/Region" + }, + "roomId": { + "$ref": "#/components/schemas/RoomId", + "description": "Hathora generated identifier for a room, unique for a given application (including stopped rooms)" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "shortCode", + "createdAt", + "createdBy", + "visibility", + "region", + "roomId", + "appId" + ], + "type": "object", + "description": "A lobby object allows you to store and manage metadata for your rooms." + }, + "CreateLobbyV3Params": { + "properties": { + "visibility": { + "$ref": "#/components/schemas/LobbyVisibility" + }, + "roomConfig": { + "$ref": "#/components/schemas/RoomConfig" + }, + "region": { + "$ref": "#/components/schemas/Region" + } + }, + "required": [ + "visibility", + "region" + ], + "type": "object" + }, + "FleetId": { + "type": "string", + "description": "the id of the fleet" + }, + "Fleet": { + "properties": { + "orgId": { + "$ref": "#/components/schemas/OrgId" + }, + "fleetId": { + "$ref": "#/components/schemas/FleetId" + } + }, + "required": [ + "orgId", + "fleetId" + ], + "type": "object", + "description": "A fleet is a collection of vCPUs accross your regions that can scale up and down based on demand." + }, + "FleetsPage": { + "properties": { + "fleets": { + "items": { + "$ref": "#/components/schemas/Fleet" + }, + "type": "array" + } + }, + "required": [ + "fleets" + ], + "type": "object" + }, + "FleetRegion": { + "properties": { + "cloudMinVcpusUpdatedAt": { + "type": "string", + "format": "date-time" + }, + "cloudMinVcpus": { + "type": "integer", + "format": "int32" + }, + "scaleIncrementVcpus": { + "type": "integer", + "format": "int32" + } + }, + "required": [ + "cloudMinVcpusUpdatedAt", + "cloudMinVcpus", + "scaleIncrementVcpus" + ], + "type": "object", + "description": "A fleet region is a region in which a fleet can be deployed.\nYou can update cloudMinVcpus once every five minutes. It must be a multiple of\nscaleIncrementVcpus" + }, + "FleetRegionConfig": { + "properties": { + "cloudMinVcpus": { + "type": "integer", + "format": "int32" + } + }, + "required": [ + "cloudMinVcpus" + ], + "type": "object" + }, + "Partial_Record_Seattle-or-Los_Angeles-or-Washington_DC-or-Chicago-or-London-or-Frankfurt-or-Mumbai-or-Singapore-or-Tokyo-or-Sydney-or-Sao_Paulo-or-Dallas-or-Johannesburg-or-Dubai.number__": { + "properties": { + "Seattle": { + "type": "number", + "format": "double" + }, + "Los_Angeles": { + "type": "number", + "format": "double" + }, + "Washington_DC": { + "type": "number", + "format": "double" + }, + "Chicago": { + "type": "number", + "format": "double" + }, + "London": { + "type": "number", + "format": "double" + }, + "Frankfurt": { + "type": "number", + "format": "double" + }, + "Mumbai": { + "type": "number", + "format": "double" + }, + "Singapore": { + "type": "number", + "format": "double" + }, + "Tokyo": { + "type": "number", + "format": "double" + }, + "Sydney": { + "type": "number", + "format": "double" + }, + "Sao_Paulo": { + "type": "number", + "format": "double" + }, + "Dallas": { + "type": "number", + "format": "double" + }, + "Johannesburg": { + "type": "number", + "format": "double" + }, + "Dubai": { + "type": "number", + "format": "double" + } + }, + "type": "object", + "description": "Make all properties in T optional" + }, + "Record_OrgId.RegionalMinVcpuMap_": { + "properties": {}, + "additionalProperties": { + "$ref": "#/components/schemas/Partial_Record_Seattle-or-Los_Angeles-or-Washington_DC-or-Chicago-or-London-or-Frankfurt-or-Mumbai-or-Singapore-or-Tokyo-or-Sydney-or-Sao_Paulo-or-Dallas-or-Johannesburg-or-Dubai.number__" + }, + "type": "object", + "description": "Construct a type with a set of properties K of type T" + }, + "CloudMinVcpuMap": { + "$ref": "#/components/schemas/Record_OrgId.RegionalMinVcpuMap_" + }, + "CloudMinVcpuMapPage": { + "properties": { + "allCloudMinVcpus": { + "$ref": "#/components/schemas/CloudMinVcpuMap" + } + }, + "required": [ + "allCloudMinVcpus" + ], + "type": "object" + }, + "PingEndpoints": { + "items": { + "properties": { + "port": { + "type": "number", + "format": "double" + }, + "host": { + "type": "string" + }, + "region": { + "$ref": "#/components/schemas/Region" + } + }, + "required": [ + "port", + "host", + "region" + ], + "type": "object" + }, + "type": "array", + "example": [ + { + "region": "Seattle", + "host": "ping.hathora.dev", + "port": 2000 + } + ] + }, + "BuildId": { + "type": "integer", + "format": "int32", + "example": 1, + "description": "System generated id for a build. Increments by 1." + }, + "ContainerPort": { + "properties": { + "transportType": { + "$ref": "#/components/schemas/TransportType" + }, + "port": { + "type": "integer", + "format": "int32", + "example": 8000, + "minimum": 1, + "maximum": 65535 + }, + "name": { + "type": "string", + "description": "Readable name for the port.", + "example": "default", + "minLength": 1, + "maxLength": 10, + "pattern": "^[a-z][a-z0-9-]*$" + } + }, + "required": [ + "transportType", + "port", + "name" + ], + "type": "object", + "description": "A container port object represents the transport configruations for how your server will listen." + }, + "PlanName": { + "type": "string", + "enum": [ + "tiny", + "small", + "medium", + "large" + ], + "example": "tiny", + "description": "A plan defines how much CPU and memory is required to run an instance of your game server.\n\n`tiny`: shared core, 1gb memory\n\n`small`: 1 core, 2gb memory\n\n`medium`: 2 core, 4gb memory\n\n`large`: 4 core, 8gb memory", + "x-speakeasy-unknown-values": "allow" + }, + "DeploymentV1": { + "properties": { + "idleTimeoutEnabled": { + "type": "boolean", + "description": "Option to shut down processes that have had no new connections or rooms\nfor five minutes.", + "default": true + }, + "env": { + "items": { + "properties": { + "value": { + "type": "string", + "example": "TRUE", + "maxLength": 5000 + }, + "name": { + "type": "string", + "example": "EULA", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$" + } + }, + "required": [ + "value", + "name" + ], + "type": "object" + }, + "type": "array", + "description": "The environment variable that our process will have access to at runtime.", + "maxItems": 100 + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "planName": { + "$ref": "#/components/schemas/PlanName", + "deprecated": true + }, + "additionalContainerPorts": { + "items": { + "$ref": "#/components/schemas/ContainerPort" + }, + "type": "array", + "description": "Additional ports your server listens on.", + "example": { + "transportType": "tcp", + "port": 4000, + "name": "debug" + }, + "maxItems": 2 + }, + "defaultContainerPort": { + "$ref": "#/components/schemas/ContainerPort", + "description": "Describes the primary port your process listens on." + }, + "transportType": { + "type": "string", + "enum": [ + "tcp", + "udp", + "tls" + ], + "deprecated": true, + "x-speakeasy-unknown-values": "allow" + }, + "containerPort": { + "type": "number", + "format": "double", + "deprecated": true + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When the deployment was created." + }, + "createdBy": { + "$ref": "#/components/schemas/AttributionId", + "description": "The email address or token id for the user that created the deployment.", + "example": "noreply@hathora.dev" + }, + "requestedMemoryMB": { + "type": "integer", + "format": "int32", + "description": "The amount of memory allocated to your process.", + "example": 1024 + }, + "requestedCPU": { + "type": "number", + "format": "double", + "description": "The number of cores allocated to your process.", + "example": 0.5 + }, + "deploymentId": { + "$ref": "#/components/schemas/DeploymentId" + }, + "buildId": { + "$ref": "#/components/schemas/BuildId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "env", + "roomsPerProcess", + "planName", + "additionalContainerPorts", + "defaultContainerPort", + "transportType", + "containerPort", + "createdAt", + "createdBy", + "requestedMemoryMB", + "requestedCPU", + "deploymentId", + "buildId", + "appId" + ], + "type": "object", + "description": "Deployment is a versioned configuration for a build that describes runtime behavior." + }, + "DeploymentConfig": { + "properties": { + "idleTimeoutEnabled": { + "type": "boolean", + "description": "Option to shut down processes that have had no new connections or rooms\nfor five minutes.", + "default": true + }, + "env": { + "items": { + "properties": { + "value": { + "type": "string", + "example": "TRUE", + "maxLength": 5000 + }, + "name": { + "type": "string", + "example": "EULA", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$" + } + }, + "required": [ + "value", + "name" + ], + "type": "object" + }, + "type": "array", + "description": "The environment variable that our process will have access to at runtime.", + "maxItems": 100 + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "planName": { + "$ref": "#/components/schemas/PlanName" + }, + "additionalContainerPorts": { + "items": { + "$ref": "#/components/schemas/ContainerPort" + }, + "type": "array", + "description": "Additional ports your server listens on.", + "maxItems": 2 + }, + "transportType": { + "$ref": "#/components/schemas/TransportType" + }, + "containerPort": { + "type": "integer", + "format": "int32", + "description": "Default port the server listens on.", + "example": 4000, + "minimum": 1, + "maximum": 65535 + } + }, + "required": [ + "env", + "roomsPerProcess", + "planName", + "transportType", + "containerPort" + ], + "type": "object", + "description": "User specified deployment configuration for your application at runtime." + }, + "DeploymentV2": { + "properties": { + "idleTimeoutEnabled": { + "type": "boolean", + "description": "Option to shut down processes that have had no new connections or rooms\nfor five minutes." + }, + "env": { + "items": { + "properties": { + "value": { + "type": "string", + "example": "TRUE", + "maxLength": 5000 + }, + "name": { + "type": "string", + "example": "EULA", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$" + } + }, + "required": [ + "value", + "name" + ], + "type": "object" + }, + "type": "array", + "description": "The environment variable that our process will have access to at runtime.", + "maxItems": 100 + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "additionalContainerPorts": { + "items": { + "$ref": "#/components/schemas/ContainerPort" + }, + "type": "array", + "description": "Additional ports your server listens on.", + "example": { + "transportType": "tcp", + "port": 4000, + "name": "debug" + }, + "maxItems": 2 + }, + "defaultContainerPort": { + "$ref": "#/components/schemas/ContainerPort", + "description": "Describes the primary port your process listens on." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When the deployment was created." + }, + "createdBy": { + "$ref": "#/components/schemas/AttributionId", + "description": "The email address or token id for the user that created the deployment.", + "example": "noreply@hathora.dev" + }, + "requestedMemoryMB": { + "type": "number", + "format": "double", + "description": "The amount of memory allocated to your process.", + "example": 1024 + }, + "requestedCPU": { + "type": "number", + "format": "double", + "description": "The number of cores allocated to your process.", + "example": 0.5 + }, + "deploymentId": { + "$ref": "#/components/schemas/DeploymentId" + }, + "buildId": { + "$ref": "#/components/schemas/BuildId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "idleTimeoutEnabled", + "env", + "roomsPerProcess", + "additionalContainerPorts", + "defaultContainerPort", + "createdAt", + "createdBy", + "requestedMemoryMB", + "requestedCPU", + "deploymentId", + "buildId", + "appId" + ], + "type": "object" + }, + "DeploymentConfigV2": { + "properties": { + "idleTimeoutEnabled": { + "type": "boolean", + "description": "Option to shut down processes that have had no new connections or rooms\nfor five minutes." + }, + "env": { + "items": { + "properties": { + "value": { + "type": "string", + "example": "TRUE", + "maxLength": 5000 + }, + "name": { + "type": "string", + "example": "EULA", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$" + } + }, + "required": [ + "value", + "name" + ], + "type": "object" + }, + "type": "array", + "description": "The environment variable that our process will have access to at runtime.", + "maxItems": 100 + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "additionalContainerPorts": { + "items": { + "$ref": "#/components/schemas/ContainerPort" + }, + "type": "array", + "description": "Additional ports your server listens on.", + "maxItems": 2 + }, + "transportType": { + "$ref": "#/components/schemas/TransportType" + }, + "containerPort": { + "type": "integer", + "format": "int32", + "description": "Default port the server listens on.", + "example": 4000, + "minimum": 1, + "maximum": 65535 + }, + "requestedMemoryMB": { + "type": "number", + "format": "double", + "description": "The amount of memory allocated to your process.", + "example": 1024 + }, + "requestedCPU": { + "type": "number", + "format": "double", + "description": "The number of cores allocated to your process.", + "example": 0.5 + } + }, + "required": [ + "idleTimeoutEnabled", + "env", + "roomsPerProcess", + "transportType", + "containerPort", + "requestedMemoryMB", + "requestedCPU" + ], + "type": "object" + }, + "GlobalBuildId": { + "type": "string", + "example": "bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5", + "description": "System generated id for a build. Can also be user defined when creating a build.", + "pattern": "^[a-z0-9]([a-z0-9-]{0,38}[a-z0-9])?$" + }, + "BuildTag": { + "type": "string", + "example": "0.1.14-14c793", + "description": "Tag to associate an external version with a build. It is accessible via [`GetBuildInfo()`](https://hathora.dev/api#tag/BuildV2/operation/GetBuildInfo).", + "maxLength": 1000 + }, + "DeploymentV3": { + "properties": { + "idleTimeoutEnabled": { + "type": "boolean", + "description": "Option to shut down processes that have had no new connections or rooms\nfor five minutes." + }, + "env": { + "items": { + "properties": { + "value": { + "type": "string", + "example": "TRUE", + "maxLength": 5000 + }, + "name": { + "type": "string", + "example": "EULA", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$" + } + }, + "required": [ + "value", + "name" + ], + "type": "object" + }, + "type": "array", + "description": "The environment variable that our process will have access to at runtime.", + "maxItems": 100 + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "additionalContainerPorts": { + "items": { + "$ref": "#/components/schemas/ContainerPort" + }, + "type": "array", + "description": "Additional ports your server listens on.", + "example": { + "transportType": "tcp", + "port": 4000, + "name": "debug" + }, + "maxItems": 2 + }, + "defaultContainerPort": { + "$ref": "#/components/schemas/ContainerPort", + "description": "Describes the primary port your process listens on." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When the deployment was created." + }, + "createdBy": { + "$ref": "#/components/schemas/AttributionId", + "description": "The email address or token id for the user that created the deployment.", + "example": "noreply@hathora.dev" + }, + "requestedMemoryMB": { + "type": "number", + "format": "double", + "description": "The amount of memory allocated to your process.", + "example": 1024 + }, + "requestedCPU": { + "type": "number", + "format": "double", + "description": "The number of cores allocated to your process.", + "example": 0.5 + }, + "deploymentId": { + "$ref": "#/components/schemas/GlobalDeploymentId" + }, + "buildTag": { + "$ref": "#/components/schemas/BuildTag" + }, + "buildId": { + "$ref": "#/components/schemas/GlobalBuildId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "idleTimeoutEnabled", + "env", + "roomsPerProcess", + "additionalContainerPorts", + "defaultContainerPort", + "createdAt", + "createdBy", + "requestedMemoryMB", + "requestedCPU", + "deploymentId", + "buildId", + "appId" + ], + "type": "object" + }, + "DeploymentsV3Page": { + "properties": { + "deployments": { + "items": { + "$ref": "#/components/schemas/DeploymentV3" + }, + "type": "array" + } + }, + "required": [ + "deployments" + ], + "type": "object" + }, + "DeploymentConfigV3": { + "properties": { + "idleTimeoutEnabled": { + "type": "boolean", + "description": "Option to shut down processes that have had no new connections or rooms\nfor five minutes." + }, + "env": { + "items": { + "properties": { + "value": { + "type": "string", + "example": "TRUE", + "maxLength": 5000 + }, + "name": { + "type": "string", + "example": "EULA", + "minLength": 1, + "maxLength": 100, + "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$" + } + }, + "required": [ + "value", + "name" + ], + "type": "object" + }, + "type": "array", + "description": "The environment variable that our process will have access to at runtime.", + "maxItems": 100 + }, + "roomsPerProcess": { + "$ref": "#/components/schemas/NumRoomsPerProcess" + }, + "additionalContainerPorts": { + "items": { + "$ref": "#/components/schemas/ContainerPort" + }, + "type": "array", + "description": "Additional ports your server listens on.", + "maxItems": 2 + }, + "transportType": { + "$ref": "#/components/schemas/TransportType" + }, + "containerPort": { + "type": "integer", + "format": "int32", + "description": "Default port the server listens on.", + "example": 4000, + "minimum": 1, + "maximum": 65535 + }, + "requestedMemoryMB": { + "type": "number", + "format": "double", + "description": "The amount of memory allocated to your process.", + "example": 1024 + }, + "requestedCPU": { + "type": "number", + "format": "double", + "description": "The number of cores allocated to your process.", + "example": 0.5 + }, + "buildId": { + "$ref": "#/components/schemas/GlobalBuildId" + } + }, + "required": [ + "idleTimeoutEnabled", + "env", + "roomsPerProcess", + "transportType", + "containerPort", + "requestedMemoryMB", + "requestedCPU", + "buildId" + ], + "type": "object" + }, + "BuildStatus": { + "type": "string", + "enum": [ + "created", + "running", + "succeeded", + "failed" + ], + "x-speakeasy-unknown-values": "allow" + }, + "Build": { + "properties": { + "buildTag": { + "allOf": [ + { + "$ref": "#/components/schemas/BuildTag" + } + ], + "nullable": true + }, + "regionalContainerTags": { + "items": { + "properties": { + "containerTag": { + "type": "string" + }, + "region": { + "$ref": "#/components/schemas/Region" + } + }, + "required": [ + "containerTag", + "region" + ], + "type": "object" + }, + "type": "array", + "deprecated": true + }, + "imageSize": { + "type": "integer", + "format": "int64", + "description": "The size (in bytes) of the Docker image built by Hathora." + }, + "status": { + "$ref": "#/components/schemas/BuildStatus", + "description": "Current status of your build.\n\n`created`: a build was created but not yet run\n\n`running`: the build process is actively executing\n\n`succeeded`: the game server artifact was successfully built and stored in the Hathora registries\n\n`failed`: the build process was unsuccessful, most likely due to an error with the `Dockerfile`" + }, + "deletedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the build was deleted." + }, + "finishedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When [`RunBuild()`](https://hathora.dev/api#tag/BuildV2/operation/RunBuild) finished executing." + }, + "startedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When [`RunBuild()`](https://hathora.dev/api#tag/BuildV2/operation/RunBuild) is called." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When [`CreateBuild()`](https://hathora.dev/api#tag/BuildV2/operation/CreateBuild) is called." + }, + "createdBy": { + "$ref": "#/components/schemas/AttributionId", + "description": "The email address or token id for the user that created the build.", + "example": "noreply@hathora.dev" + }, + "buildId": { + "$ref": "#/components/schemas/BuildId" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + } + }, + "required": [ + "regionalContainerTags", + "imageSize", + "status", + "deletedAt", + "finishedAt", + "startedAt", + "createdAt", + "createdBy", + "buildId", + "appId" + ], + "type": "object", + "description": "A build represents a game server artifact and its associated metadata." + }, + "CreateBuildParams": { + "properties": { + "buildTag": { + "$ref": "#/components/schemas/BuildTag" + } + }, + "type": "object" + }, + "BuildWithUploadUrl": { + "allOf": [ + { + "$ref": "#/components/schemas/Build" + }, + { + "properties": { + "uploadBodyParams": { + "items": { + "properties": { + "value": { + "type": "string" + }, + "key": { + "type": "string" + } + }, + "required": [ + "value", + "key" + ], + "type": "object" + }, + "type": "array" + }, + "uploadUrl": { + "type": "string" + } + }, + "required": [ + "uploadBodyParams", + "uploadUrl" + ], + "type": "object" + } + ] + }, + "BuildPart": { + "properties": { + "putRequestUrl": { + "type": "string" + }, + "partNumber": { + "type": "number", + "format": "double" + } + }, + "required": [ + "putRequestUrl", + "partNumber" + ], + "type": "object" + }, + "BuildWithMultipartUrls": { + "allOf": [ + { + "$ref": "#/components/schemas/Build" + }, + { + "properties": { + "completeUploadPostRequestUrl": { + "type": "string" + }, + "maxChunkSize": { + "type": "number", + "format": "double" + }, + "uploadParts": { + "items": { + "$ref": "#/components/schemas/BuildPart" + }, + "type": "array" + } + }, + "required": [ + "completeUploadPostRequestUrl", + "maxChunkSize", + "uploadParts" + ], + "type": "object" + } + ] + }, + "CreateBuildV3Params": { + "properties": { + "buildId": { + "$ref": "#/components/schemas/GlobalBuildId", + "description": "Optionally a value to replace the default buildId. This must be unique to the organization." + }, + "buildTag": { + "$ref": "#/components/schemas/BuildTag" + } + }, + "type": "object" + }, + "CreateMultipartBuildParams": { + "allOf": [ + { + "$ref": "#/components/schemas/CreateBuildV3Params" + }, + { + "properties": { + "buildSizeInBytes": { + "type": "number", + "format": "double" + } + }, + "required": [ + "buildSizeInBytes" + ], + "type": "object" + } + ] + }, + "BuildV3": { + "properties": { + "contentHash": { + "type": "string" + }, + "buildTag": { + "$ref": "#/components/schemas/BuildTag" + }, + "imageSize": { + "type": "integer", + "format": "int64", + "description": "The size (in bytes) of the Docker image built by Hathora." + }, + "status": { + "$ref": "#/components/schemas/BuildStatus", + "description": "Current status of your build.\n\n`created`: a build was created but not yet run\n\n`running`: the build process is actively executing\n\n`succeeded`: the game server artifact was successfully built and stored in the Hathora registries\n\n`failed`: the build process was unsuccessful, most likely due to an error with the `Dockerfile`" + }, + "deletedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the build was deleted." + }, + "finishedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When [`RunBuild()`](https://hathora.dev/api#tag/BuildV2/operation/RunBuild) finished executing." + }, + "startedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When [`RunBuild()`](https://hathora.dev/api#tag/BuildV2/operation/RunBuild) is called." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When [`CreateBuild()`](https://hathora.dev/api#tag/BuildV2/operation/CreateBuild) is called." + }, + "createdBy": { + "$ref": "#/components/schemas/AttributionId", + "description": "The email address or token id for the user that created the build.", + "example": "noreply@hathora.dev" + }, + "buildId": { + "$ref": "#/components/schemas/GlobalBuildId" + }, + "orgId": { + "$ref": "#/components/schemas/OrgId" + } + }, + "required": [ + "imageSize", + "status", + "deletedAt", + "finishedAt", + "startedAt", + "createdAt", + "createdBy", + "buildId", + "orgId" + ], + "type": "object", + "description": "A build represents a game server artifact and its associated metadata." + }, + "BuildsV3Page": { + "properties": { + "builds": { + "items": { + "$ref": "#/components/schemas/BuildV3" + }, + "type": "array" + } + }, + "required": [ + "builds" + ], + "type": "object" + }, + "CreatedBuildV3WithMultipartUrls": { + "allOf": [ + { + "$ref": "#/components/schemas/BuildV3" + }, + { + "properties": { + "completeUploadPostRequestUrl": { + "type": "string" + }, + "maxChunkSize": { + "type": "number", + "format": "double" + }, + "uploadParts": { + "items": { + "$ref": "#/components/schemas/BuildPart" + }, + "type": "array" + } + }, + "required": [ + "completeUploadPostRequestUrl", + "maxChunkSize", + "uploadParts" + ], + "type": "object" + } + ] + }, + "Record_string.never_": { + "properties": {}, + "type": "object", + "description": "Construct a type with a set of properties K of type T" + }, + "DeletedBuild": { + "$ref": "#/components/schemas/Record_string.never_" + }, + "InvoiceItem": { + "properties": { + "amount": { + "type": "number", + "format": "double" + }, + "unitPrice": { + "type": "number", + "format": "double" + }, + "quantity": { + "type": "number", + "format": "double" + }, + "unit": { + "type": "string" + }, + "productName": { + "type": "string" + } + }, + "required": [ + "amount", + "unitPrice", + "quantity", + "unit", + "productName" + ], + "type": "object" + }, + "InvoiceItemPage": { + "properties": { + "invoiceItems": { + "items": { + "$ref": "#/components/schemas/InvoiceItem" + }, + "type": "array" + } + }, + "required": [ + "invoiceItems" + ], + "type": "object" + }, + "CardBrand": { + "type": "string", + "enum": [ + "amex", + "cartes_bancaires", + "diners", + "discover", + "jcb", + "mastercard", + "visa", + "unionpay", + "card" + ], + "x-speakeasy-unknown-values": "allow" + }, + "CardPaymentMethod": { + "properties": { + "last4": { + "type": "string" + }, + "brand": { + "$ref": "#/components/schemas/CardBrand" + } + }, + "required": [ + "last4", + "brand" + ], + "type": "object" + }, + "AchPaymentMethod": { + "properties": { + "last4": { + "type": "string" + }, + "bankName": { + "type": "string" + } + }, + "type": "object" + }, + "LinkPaymentMethod": { + "properties": { + "email": { + "type": "string" + } + }, + "type": "object" + }, + "Partial__card-CardPaymentMethod--ach-AchPaymentMethod--link-LinkPaymentMethod__": { + "properties": { + "card": { + "$ref": "#/components/schemas/CardPaymentMethod" + }, + "ach": { + "$ref": "#/components/schemas/AchPaymentMethod" + }, + "link": { + "$ref": "#/components/schemas/LinkPaymentMethod" + } + }, + "type": "object", + "description": "Make all properties in T optional" + }, + "PaymentMethod": { + "$ref": "#/components/schemas/Partial__card-CardPaymentMethod--ach-AchPaymentMethod--link-LinkPaymentMethod__" + }, + "CustomerPortalUrl": { + "properties": { + "returnUrl": { + "type": "string" + } + }, + "required": [ + "returnUrl" + ], + "type": "object" + }, + "InvoiceStatus": { + "type": "string", + "enum": [ + "pending", + "paid", + "overdue" + ], + "x-speakeasy-unknown-values": "allow" + }, + "Invoice": { + "properties": { + "status": { + "$ref": "#/components/schemas/InvoiceStatus" + }, + "amountDue": { + "type": "number", + "format": "double" + }, + "pdfUrl": { + "type": "string" + }, + "dueDate": { + "type": "string", + "format": "date-time" + }, + "year": { + "type": "number", + "format": "double" + }, + "month": { + "type": "number", + "format": "double" + }, + "id": { + "type": "string" + } + }, + "required": [ + "status", + "amountDue", + "pdfUrl", + "dueDate", + "year", + "month", + "id" + ], + "type": "object" + }, + "PlayerTokenObject": { + "properties": { + "token": { + "type": "string", + "description": "A unique Hathora-signed JWT player token.", + "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0eXBlIjoiYW5vbnltb3VzIiwiaWQiOiJ3aDA4eWN3eTJwOSIsIm5hbWUiOiJqaXR0ZXJ5LXNhbG1vbi1ndWxsIiwiaWF0IjoxNjg5MzQ5MTk3fQ.-LzlPhZw2tw0ycZ229IRHwwmINGKWNPFMDrXOphLjEk" + } + }, + "required": [ + "token" + ], + "type": "object" + }, + "NicknameObject": { + "properties": { + "nickname": { + "type": "string", + "description": "An alias to represent a player.", + "example": "squiddytwoshoes" + } + }, + "required": [ + "nickname" + ], + "type": "object" + }, + "GoogleIdTokenObject": { + "properties": { + "idToken": { + "type": "string", + "description": "A Google-signed OIDC ID token representing a player's authenticated identity. Learn how to get an `idToken` [here](https://cloud.google.com/docs/authentication/get-id-token).", + "example": "eyJhbGciOiJSUzI1NiIsImtpZCI6ImZkNDhhNzUxMzhkOWQ0OGYwYWE2MzVlZjU2OWM0ZTE5NmY3YWU4ZDYiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJhY2NvdW50cy5nb29nbGUuY29tIiwiYXpwIjoiODQ4NDEyODI2Nzg4LW00bXNyYjZxNDRkbTJ1ZTNrZ3Z1aTBmcTdrZGE1NWxzLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwiYXVkIjoiODQ4NDEyODI2Nzg4LW00bXNyYjZxNDRkbTJ1ZTNrZ3Z1aTBmcTdrZGE1NWxzLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwic3ViIjoiMTE0NTQyMzMwNzI3MTU2MTMzNzc2IiwiZW1haWwiOiJocGFdkeivmeuzQGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJhdF9oYXNoIjoidno1NGhhdTNxbnVR" + } + }, + "required": [ + "idToken" + ], + "type": "object" + }, + "AppName": { + "type": "string", + "example": "minecraft", + "description": "Readable name for an application. Must be unique within an organization.", + "maxLength": 64, + "pattern": "^[a-z0-9-]+$" + }, + "AppSecret": { + "type": "string", + "example": "secret-6f706e83-0ec1-437a-9a46-7d4281eb2f39", + "description": "Secret that is used for identity and access management." + }, + "AuthConfiguration": { + "properties": { + "google": { + "properties": { + "clientId": { + "type": "string", + "description": "A Google generated token representing the developer's credentials for [Google's API Console](https://console.cloud.google.com/apis/dashboard?pli=1\u0026project=discourse-login-388921). Learn how to get a `clientId` [here](https://developers.google.com/identity/gsi/web/guides/get-google-api-clientid)." + } + }, + "required": [ + "clientId" + ], + "type": "object", + "description": "Enable google auth for your application." + }, + "nickname": { + "$ref": "#/components/schemas/Record_string.never_", + "description": "Enable nickname auth for your application." + }, + "anonymous": { + "$ref": "#/components/schemas/Record_string.never_", + "description": "Enable anonymous auth for your application." + } + }, + "type": "object", + "description": "Configure [player authentication](https://hathora.dev/docs/lobbies-and-matchmaking/auth-service) for your application. Use Hathora's built-in auth providers or use your own [custom authentication](https://hathora.dev/docs/lobbies-and-matchmaking/auth-service#custom-auth-provider)." + }, + "Application": { + "properties": { + "deletedBy": { + "allOf": [ + { + "$ref": "#/components/schemas/AttributionId" + } + ], + "nullable": true, + "description": "The email address or token id for the user that deleted the application.", + "example": "noreply@hathora.dev" + }, + "deletedAt": { + "type": "string", + "format": "date-time", + "nullable": true, + "description": "When the application was deleted." + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "When the application was created." + }, + "createdBy": { + "$ref": "#/components/schemas/AttributionId", + "description": "The email address or token id for the user that created the application.", + "example": "noreply@hathora.dev" + }, + "orgId": { + "$ref": "#/components/schemas/OrgId" + }, + "authConfiguration": { + "$ref": "#/components/schemas/AuthConfiguration", + "description": "Used to authenticate player requests. Use your own authentication or Hathora's Auth Client." + }, + "appSecret": { + "$ref": "#/components/schemas/AppSecret" + }, + "appId": { + "$ref": "#/components/schemas/AppId" + }, + "appName": { + "$ref": "#/components/schemas/AppName" + } + }, + "required": [ + "deletedBy", + "deletedAt", + "createdAt", + "createdBy", + "orgId", + "authConfiguration", + "appSecret", + "appId", + "appName" + ], + "type": "object", + "description": "An application object is the top level namespace for the game server." + }, + "ApplicationWithLatestDeploymentAndBuildDeprecated": { + "allOf": [ + { + "$ref": "#/components/schemas/Application" + }, + { + "properties": { + "deployment": { + "allOf": [ + { + "$ref": "#/components/schemas/DeploymentV2" + }, + { + "properties": { + "build": { + "$ref": "#/components/schemas/Build" + } + }, + "required": [ + "build" + ], + "type": "object" + } + ] + } + }, + "type": "object" + } + ] + }, + "AppConfig": { + "properties": { + "authConfiguration": { + "$ref": "#/components/schemas/AuthConfiguration" + }, + "appName": { + "$ref": "#/components/schemas/AppName" + } + }, + "required": [ + "authConfiguration", + "appName" + ], + "type": "object" + }, + "ApplicationWithLatestDeploymentAndBuild": { + "allOf": [ + { + "$ref": "#/components/schemas/Application" + }, + { + "properties": { + "deployment": { + "allOf": [ + { + "$ref": "#/components/schemas/DeploymentV3" + }, + { + "properties": { + "build": { + "$ref": "#/components/schemas/BuildV3" + } + }, + "required": [ + "build" + ], + "type": "object" + } + ] + } + }, + "type": "object" + } + ] + }, + "ApplicationsPage": { + "properties": { + "applications": { + "items": { + "$ref": "#/components/schemas/ApplicationWithLatestDeploymentAndBuild" + }, + "type": "array" + } + }, + "required": [ + "applications" + ], + "type": "object" + } + }, + "securitySchemes": { + "hathoraDevToken": { + "type": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + }, + "playerAuth": { + "type": "http", + "scheme": "bearer", + "bearerFormat": "JWT" + } + } + }, + "info": { + "title": "Hathora Cloud API", + "version": "0.0.1", + "description": "Welcome to the Hathora Cloud API documentation! Learn how to use the Hathora Cloud APIs to build and scale your game servers globally.", + "contact": {} + }, + "servers": [ + { + "url": "https://api.hathora.dev" + }, + { + "url": "/" + } + ], + "paths": { + "/tokens/v1/orgs/{orgId}": { + "get": { + "operationId": "GetOrgTokens", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ListOrgTokens" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "List all organization tokens for a given org.", + "tags": [ + "TokensV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetOrgTokens", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetOrgTokensRequest req = new GetOrgTokensRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.TokensV1.GetOrgTokensAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetOrgTokens", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.tokensV1.getOrgTokens(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetOrgTokens", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetOrgTokensResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetOrgTokensResponse res = sdk.tokensV1().getOrgTokens()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.listOrgTokens().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/tokens/v1/orgs/{orgId}/create": { + "post": { + "operationId": "CreateOrgToken", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreatedOrgToken" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new organization token.", + "tags": [ + "TokensV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateOrgToken" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "CreateOrgToken", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nCreateOrgTokenRequest req = new CreateOrgTokenRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n CreateOrgToken = new CreateOrgToken() {\n Name = \"ci-token\",\n },\n};\n\n\nusing(var res = await sdk.TokensV1.CreateOrgTokenAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "CreateOrgToken", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.tokensV1.createOrgToken({\n name: \"ci-token\",\n }, \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "CreateOrgToken", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.CreateOrgTokenResponse;\nimport dev.hathora.cloud_sdk.models.shared.CreateOrgToken;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n CreateOrgTokenResponse res = sdk.tokensV1().createOrgToken()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .createOrgToken(CreateOrgToken.builder()\n .name(\"ci-token\")\n .build())\n .call();\n\n if (res.createdOrgToken().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/tokens/v1/orgs/{orgId}/tokens/{orgTokenId}/revoke": { + "post": { + "operationId": "RevokeOrgToken", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "type": "boolean" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Revoke an organization token.", + "tags": [ + "TokensV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + }, + { + "in": "path", + "name": "orgTokenId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgTokenId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "RevokeOrgToken", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nRevokeOrgTokenRequest req = new RevokeOrgTokenRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n OrgTokenId = \"org-token-af469a92-5b45-4565-b3c4-b79878de67d2\",\n};\n\n\nusing(var res = await sdk.TokensV1.RevokeOrgTokenAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "RevokeOrgToken", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.tokensV1.revokeOrgToken(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\", \"org-token-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "RevokeOrgToken", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.RevokeOrgTokenResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n RevokeOrgTokenResponse res = sdk.tokensV1().revokeOrgToken()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .orgTokenId(\"org-token-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .call();\n\n if (res.boolean_().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/rooms/v1/{appId}/create": { + "post": { + "operationId": "CreateRoomDeprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "RoomV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "roomId", + "required": false, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRoomParams" + } + } + } + }, + "x-speakeasy-group": "RoomsV1" + } + }, + "/rooms/v1/{appId}/info/{roomId}": { + "get": { + "operationId": "GetRoomInfoDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Room" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "RoomV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "RoomsV1" + } + }, + "/rooms/v1/{appId}/list/{processId}/active": { + "get": { + "operationId": "GetActiveRoomsForProcessDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/RoomWithoutAllocations" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "RoomV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ], + "x-speakeasy-group": "RoomsV1" + } + }, + "/rooms/v1/{appId}/list/{processId}/inactive": { + "get": { + "operationId": "GetInactiveRoomsForProcessDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/RoomWithoutAllocations" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "RoomV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ], + "x-speakeasy-group": "RoomsV1" + } + }, + "/rooms/v1/{appId}/destroy/{roomId}": { + "post": { + "operationId": "DestroyRoomDeprecated", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "RoomV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "RoomsV1" + } + }, + "/rooms/v1/{appId}/suspend/{roomId}": { + "post": { + "operationId": "SuspendRoomDeprecated", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "RoomV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "RoomsV1" + } + }, + "/rooms/v1/{appId}/connectioninfo/{roomId}": { + "get": { + "operationId": "GetConnectionInfoDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionInfo" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "RoomV1" + ], + "deprecated": true, + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "RoomsV1" + } + }, + "/rooms/v2/{appId}/create": { + "post": { + "operationId": "CreateRoom", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoomConnectionData" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new [room](https://hathora.dev/docs/concepts/hathora-entities#room) for an existing [application](https://hathora.dev/docs/concepts/hathora-entities#application). Poll the [`GetConnectionInfo()`](https://hathora.dev/api#tag/RoomV2/operation/GetConnectionInfo) endpoint to get connection details for an active room.", + "tags": [ + "RoomV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "roomId", + "required": false, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateRoomParams" + } + } + } + }, + "x-speakeasy-group": "RoomsV2", + "x-codeSamples": [ + { + "lang": "unity", + "label": "CreateRoom", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\nusing System.Collections.Generic;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nCreateRoomRequest req = new CreateRoomRequest() {\n RoomId = \"2swovpy1fnunu\",\n CreateRoomParams = new CreateRoomParams() {\n DeploymentId = \"dep-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n ClientIPs = new List\u003cstring\u003e() {\n \"123.123.123.123\",\n },\n RoomConfig = \"{\\\"name\\\":\\\"my-room\\\"}\",\n Region = Region.Dallas,\n },\n};\n\n\nusing(var res = await sdk.RoomsV2.CreateRoomAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "CreateRoom", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.roomsV2.createRoom({\n deploymentId: \"dep-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n clientIPs: [\n \"123.123.123.123\",\n ],\n roomConfig: \"{\\\"name\\\":\\\"my-room\\\"}\",\n region: \"Dallas\",\n }, \"app-af469a92-5b45-4565-b3c4-b79878de67d2\", \"2swovpy1fnunu\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "CreateRoom", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.CreateRoomResponse;\nimport dev.hathora.cloud_sdk.models.shared.CreateRoomParams;\nimport dev.hathora.cloud_sdk.models.shared.Region;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\nimport java.util.List;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n CreateRoomResponse res = sdk.roomsV2().createRoom()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .roomId(\"2swovpy1fnunu\")\n .createRoomParams(CreateRoomParams.builder()\n .region(Region.DALLAS)\n .deploymentId(\"dep-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\")\n .clientIPs(List.of(\n \"123.123.123.123\"))\n .roomConfig(\"{\\\"name\\\":\\\"my-room\\\"}\")\n .build())\n .call();\n\n if (res.roomConnectionData().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/rooms/v2/{appId}/info/{roomId}": { + "get": { + "operationId": "GetRoomInfo", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Room" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Retreive current and historical allocation data for a [room](https://hathora.dev/docs/concepts/hathora-entities#room).", + "tags": [ + "RoomV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "RoomsV2", + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetRoomInfo", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetRoomInfoRequest req = new GetRoomInfoRequest() {\n RoomId = \"2swovpy1fnunu\",\n};\n\n\nusing(var res = await sdk.RoomsV2.GetRoomInfoAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetRoomInfo", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.roomsV2.getRoomInfo(\"2swovpy1fnunu\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetRoomInfo", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetRoomInfoResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetRoomInfoResponse res = sdk.roomsV2().getRoomInfo()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .roomId(\"2swovpy1fnunu\")\n .call();\n\n if (res.room().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/rooms/v2/{appId}/list/{processId}/active": { + "get": { + "operationId": "GetActiveRoomsForProcess", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/RoomWithoutAllocations" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get all active [rooms](https://hathora.dev/docs/concepts/hathora-entities#room) for a given [process](https://hathora.dev/docs/concepts/hathora-entities#process).", + "tags": [ + "RoomV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ], + "x-speakeasy-group": "RoomsV2", + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetActiveRoomsForProcess", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetActiveRoomsForProcessRequest req = new GetActiveRoomsForProcessRequest() {\n ProcessId = \"cbfcddd2-0006-43ae-996c-995fff7bed2e\",\n};\n\n\nusing(var res = await sdk.RoomsV2.GetActiveRoomsForProcessAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetActiveRoomsForProcess", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.roomsV2.getActiveRoomsForProcess(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetActiveRoomsForProcess", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetActiveRoomsForProcessResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetActiveRoomsForProcessResponse res = sdk.roomsV2().getActiveRoomsForProcess()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .processId(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\")\n .call();\n\n if (res.roomWithoutAllocations().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/rooms/v2/{appId}/list/{processId}/inactive": { + "get": { + "operationId": "GetInactiveRoomsForProcess", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/RoomWithoutAllocations" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get all inactive [rooms](https://hathora.dev/docs/concepts/hathora-entities#room) for a given [process](https://hathora.dev/docs/concepts/hathora-entities#process).", + "tags": [ + "RoomV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ], + "x-speakeasy-group": "RoomsV2", + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetInactiveRoomsForProcess", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetInactiveRoomsForProcessRequest req = new GetInactiveRoomsForProcessRequest() {\n ProcessId = \"cbfcddd2-0006-43ae-996c-995fff7bed2e\",\n};\n\n\nusing(var res = await sdk.RoomsV2.GetInactiveRoomsForProcessAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetInactiveRoomsForProcess", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.roomsV2.getInactiveRoomsForProcess(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetInactiveRoomsForProcess", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetInactiveRoomsForProcessResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetInactiveRoomsForProcessResponse res = sdk.roomsV2().getInactiveRoomsForProcess()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .processId(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\")\n .call();\n\n if (res.roomWithoutAllocations().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/rooms/v2/{appId}/destroy/{roomId}": { + "post": { + "operationId": "DestroyRoom", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Destroy a [room](https://hathora.dev/docs/concepts/hathora-entities#room). All associated metadata is deleted.", + "tags": [ + "RoomV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "RoomsV2", + "x-codeSamples": [ + { + "lang": "unity", + "label": "DestroyRoom", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nDestroyRoomRequest req = new DestroyRoomRequest() {\n RoomId = \"2swovpy1fnunu\",\n};\n\n\nusing(var res = await sdk.RoomsV2.DestroyRoomAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "DestroyRoom", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n await hathoraCloud.roomsV2.destroyRoom(\"2swovpy1fnunu\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\n}\n\nrun();" + }, + { + "lang": "java", + "label": "DestroyRoom", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.DestroyRoomResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n DestroyRoomResponse res = sdk.roomsV2().destroyRoom()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .roomId(\"2swovpy1fnunu\")\n .call();\n\n // handle response\n }\n}" + } + ] + } + }, + "/rooms/v2/{appId}/suspend/{roomId}": { + "post": { + "operationId": "SuspendRoomV2Deprecated", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Suspend a [room](https://hathora.dev/docs/concepts/hathora-entities#room). The room is unallocated from the process but can be rescheduled later using the same `roomId`.", + "tags": [ + "RoomV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "RoomsV2" + } + }, + "/rooms/v2/{appId}/connectioninfo/{roomId}": { + "get": { + "operationId": "GetConnectionInfo", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ConnectionInfoV2" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Poll this endpoint to get connection details to a [room](https://hathora.dev/docs/concepts/hathora-entities#room). Clients can call this endpoint without authentication.", + "tags": [ + "RoomV2" + ], + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "RoomsV2", + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetConnectionInfo", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetConnectionInfoRequest req = new GetConnectionInfoRequest() {\n RoomId = \"2swovpy1fnunu\",\n};\n\n\nusing(var res = await sdk.RoomsV2.GetConnectionInfoAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetConnectionInfo", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.roomsV2.getConnectionInfo(\"2swovpy1fnunu\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetConnectionInfo", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetConnectionInfoResponse;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetConnectionInfoResponse res = sdk.roomsV2().getConnectionInfo()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .roomId(\"2swovpy1fnunu\")\n .call();\n\n if (res.connectionInfoV2().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/rooms/v2/{appId}/update/{roomId}": { + "post": { + "operationId": "UpdateRoomConfig", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "RoomV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateRoomConfigParams" + } + } + } + }, + "x-speakeasy-group": "RoomsV2", + "x-codeSamples": [ + { + "lang": "unity", + "label": "UpdateRoomConfig", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nUpdateRoomConfigRequest req = new UpdateRoomConfigRequest() {\n RoomId = \"2swovpy1fnunu\",\n UpdateRoomConfigParams = new UpdateRoomConfigParams() {\n RoomConfig = \"{\\\"name\\\":\\\"my-room\\\"}\",\n },\n};\n\n\nusing(var res = await sdk.RoomsV2.UpdateRoomConfigAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "UpdateRoomConfig", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n await hathoraCloud.roomsV2.updateRoomConfig({\n roomConfig: \"{\\\"name\\\":\\\"my-room\\\"}\",\n }, \"2swovpy1fnunu\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\n}\n\nrun();" + }, + { + "lang": "java", + "label": "UpdateRoomConfig", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.UpdateRoomConfigResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport dev.hathora.cloud_sdk.models.shared.UpdateRoomConfigParams;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n UpdateRoomConfigResponse res = sdk.roomsV2().updateRoomConfig()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .roomId(\"2swovpy1fnunu\")\n .updateRoomConfigParams(UpdateRoomConfigParams.builder()\n .roomConfig(\"{\\\"name\\\":\\\"my-room\\\"}\")\n .build())\n .call();\n\n // handle response\n }\n}" + } + ] + } + }, + "/processes/v1/{appId}/list/running": { + "get": { + "operationId": "GetRunningProcesses", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ProcessWithRooms" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Retrieve 10 most recently started [process](https://hathora.dev/docs/concepts/hathora-entities#process) objects for an [application](https://hathora.dev/docs/concepts/hathora-entities#application). Filter the array by optionally passing in a `region`.", + "tags": [ + "ProcessesV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "$ref": "#/components/schemas/Region" + } + } + ] + } + }, + "/processes/v1/{appId}/list/stopped": { + "get": { + "operationId": "GetStoppedProcesses", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/Process" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Retrieve 10 most recently stopped [process](https://hathora.dev/docs/concepts/hathora-entities#process) objects for an [application](https://hathora.dev/docs/concepts/hathora-entities#application). Filter the array by optionally passing in a `region`.", + "tags": [ + "ProcessesV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "$ref": "#/components/schemas/Region" + } + } + ] + } + }, + "/processes/v1/{appId}/info/{processId}": { + "get": { + "operationId": "GetProcessInfoDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Process" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [process](https://hathora.dev/docs/concepts/hathora-entities#process).", + "tags": [ + "ProcessesV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ] + } + }, + "/processes/v2/{appId}/info/{processId}": { + "get": { + "operationId": "GetProcessInfoV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProcessV2" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [process](https://hathora.dev/docs/concepts/hathora-entities#process).", + "tags": [ + "ProcessesV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ] + } + }, + "/processes/v2/{appId}/list/latest": { + "get": { + "operationId": "GetLatestProcessesV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ProcessV2" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Retrieve the 10 most recent [processes](https://hathora.dev/docs/concepts/hathora-entities#process) objects for an [application](https://hathora.dev/docs/concepts/hathora-entities#application). Filter the array by optionally passing in a `status` or `region`.", + "tags": [ + "ProcessesV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "status", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProcessStatus" + } + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Region" + } + } + } + ] + } + }, + "/processes/v2/{appId}/count": { + "get": { + "operationId": "GetProcessesCountExperimentalV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "properties": { + "count": { + "type": "number", + "format": "double" + } + }, + "required": [ + "count" + ], + "type": "object" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Count the number of [processes](https://hathora.dev/docs/concepts/hathora-entities#process) objects for an [application](https://hathora.dev/docs/concepts/hathora-entities#application). Filter by optionally passing in a `status` or `region`.", + "tags": [ + "ProcessesV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "status", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProcessStatus" + } + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Region" + } + } + } + ] + } + }, + "/processes/v2/{appId}/stop/{processId}": { + "post": { + "operationId": "StopProcessV2Deprecated", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Stops a [process](https://hathora.dev/docs/concepts/hathora-entities#process) immediately.", + "tags": [ + "ProcessesV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ] + } + }, + "/processes/v2/{appId}/create/{region}": { + "post": { + "operationId": "CreateProcessV2Deprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProcessV2" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Creates a [process](https://hathora.dev/docs/concepts/hathora-entities#process) without a room. Use this to pre-allocate processes ahead of time so that subsequent room assignment via [CreateRoom()](https://hathora.dev/api#tag/RoomV2/operation/CreateRoom) can be instant.", + "tags": [ + "ProcessesV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "region", + "required": true, + "schema": { + "$ref": "#/components/schemas/Region" + } + } + ] + } + }, + "/processes/v3/apps/{appId}/processes/latest": { + "get": { + "operationId": "GetLatestProcesses", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ProcessV3" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Retrieve the 10 most recent [processes](https://hathora.dev/docs/concepts/hathora-entities#process) objects for an [application](https://hathora.dev/docs/concepts/hathora-entities#application). Filter the array by optionally passing in a `status` or `region`.", + "tags": [ + "ProcessesV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "status", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProcessStatus" + } + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Region" + } + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetLatestProcesses", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\nusing System.Collections.Generic;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetLatestProcessesRequest req = new GetLatestProcessesRequest() {};\n\n\nusing(var res = await sdk.ProcessesV3.GetLatestProcessesAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetLatestProcesses", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.processesV3.getLatestProcesses(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetLatestProcesses", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetLatestProcessesResponse;\nimport dev.hathora.cloud_sdk.models.shared.ProcessStatus;\nimport dev.hathora.cloud_sdk.models.shared.Region;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\nimport java.util.List;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetLatestProcessesResponse res = sdk.processesV3().getLatestProcesses()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .status(List.of(\n ProcessStatus.STOPPED))\n .region(List.of(\n Region.FRANKFURT))\n .call();\n\n if (res.processV3s().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/processes/v3/apps/{appId}/processes/count": { + "get": { + "operationId": "GetProcessesCountExperimental", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "properties": { + "count": { + "type": "number", + "format": "double" + } + }, + "required": [ + "count" + ], + "type": "object" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Count the number of [processes](https://hathora.dev/docs/concepts/hathora-entities#process) objects for an [application](https://hathora.dev/docs/concepts/hathora-entities#application). Filter by optionally passing in a `status` or `region`.", + "tags": [ + "ProcessesV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "status", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProcessStatus" + } + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/Region" + } + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetProcessesCountExperimental", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\nusing System.Collections.Generic;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetProcessesCountExperimentalRequest req = new GetProcessesCountExperimentalRequest() {};\n\n\nusing(var res = await sdk.ProcessesV3.GetProcessesCountExperimentalAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetProcessesCountExperimental", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.processesV3.getProcessesCountExperimental(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetProcessesCountExperimental", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetProcessesCountExperimentalResponse;\nimport dev.hathora.cloud_sdk.models.shared.ProcessStatus;\nimport dev.hathora.cloud_sdk.models.shared.Region;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\nimport java.util.List;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetProcessesCountExperimentalResponse res = sdk.processesV3().getProcessesCountExperimental()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .status(List.of(\n ProcessStatus.DRAINING))\n .region(List.of(\n Region.SINGAPORE))\n .call();\n\n if (res.object().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/processes/v3/apps/{appId}/processes/regions/{region}": { + "post": { + "operationId": "CreateProcess", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProcessV3" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Creates a [process](https://hathora.dev/docs/concepts/hathora-entities#process) without a room. Use this to pre-allocate processes ahead of time so that subsequent room assignment via [CreateRoom()](https://hathora.dev/api#tag/RoomV2/operation/CreateRoom) can be instant.", + "tags": [ + "ProcessesV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "region", + "required": true, + "schema": { + "$ref": "#/components/schemas/Region" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "CreateProcess", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nCreateProcessRequest req = new CreateProcessRequest() {\n Region = Region.SaoPaulo,\n};\n\n\nusing(var res = await sdk.ProcessesV3.CreateProcessAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "CreateProcess", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.processesV3.createProcess(\"Sao_Paulo\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "CreateProcess", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.CreateProcessResponse;\nimport dev.hathora.cloud_sdk.models.shared.Region;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n CreateProcessResponse res = sdk.processesV3().createProcess()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .region(Region.SAO_PAULO)\n .call();\n\n if (res.processV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/processes/v3/apps/{appId}/processes/{processId}": { + "get": { + "operationId": "GetProcess", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProcessV3" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [process](https://hathora.dev/docs/concepts/hathora-entities#process).", + "tags": [ + "ProcessesV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetProcess", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetProcessRequest req = new GetProcessRequest() {\n ProcessId = \"cbfcddd2-0006-43ae-996c-995fff7bed2e\",\n};\n\n\nusing(var res = await sdk.ProcessesV3.GetProcessAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetProcess", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.processesV3.getProcess(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetProcess", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetProcessResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetProcessResponse res = sdk.processesV3().getProcess()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .processId(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\")\n .call();\n\n if (res.processV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/processes/v3/apps/{appId}/processes/{processId}/stop": { + "post": { + "operationId": "StopProcess", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Stops a [process](https://hathora.dev/docs/concepts/hathora-entities#process) immediately.", + "tags": [ + "ProcessesV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "StopProcess", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nStopProcessRequest req = new StopProcessRequest() {\n ProcessId = \"cbfcddd2-0006-43ae-996c-995fff7bed2e\",\n};\n\n\nusing(var res = await sdk.ProcessesV3.StopProcessAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "StopProcess", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n await hathoraCloud.processesV3.stopProcess(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\n}\n\nrun();" + }, + { + "lang": "java", + "label": "StopProcess", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.StopProcessResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n StopProcessResponse res = sdk.processesV3().stopProcess()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .processId(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\")\n .call();\n\n // handle response\n }\n}" + } + ] + } + }, + "/orgs/v1": { + "get": { + "operationId": "GetOrgs", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrgsPage" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an unsorted list of all organizations that you are a member of (an accepted membership invite). An organization is uniquely identified by an `orgId`.", + "tags": [ + "OrganizationsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetOrgs", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\nusing(var res = await sdk.OrganizationsV1.GetOrgsAsync())\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetOrgs", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.organizationsV1.getOrgs();\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetOrgs", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetOrgsResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetOrgsResponse res = sdk.organizationsV1().getOrgs()\n .call();\n\n if (res.orgsPage().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/orgs/v1/user/invites/pending": { + "get": { + "operationId": "GetUserPendingInvites", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PendingOrgInvitesPage" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "OrganizationsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetUserPendingInvites", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\nusing(var res = await sdk.OrganizationsV1.GetUserPendingInvitesAsync())\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetUserPendingInvites", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.organizationsV1.getUserPendingInvites();\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetUserPendingInvites", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetUserPendingInvitesResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetUserPendingInvitesResponse res = sdk.organizationsV1().getUserPendingInvites()\n .call();\n\n if (res.pendingOrgInvitesPage().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/orgs/v1/{orgId}/members": { + "get": { + "operationId": "GetOrgMembers", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/OrgMembersPage" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "OrganizationsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetOrgMembers", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetOrgMembersRequest req = new GetOrgMembersRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.OrganizationsV1.GetOrgMembersAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetOrgMembers", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.organizationsV1.getOrgMembers(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetOrgMembers", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetOrgMembersResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetOrgMembersResponse res = sdk.organizationsV1().getOrgMembers()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.orgMembersPage().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/orgs/v1/{orgId}/invites": { + "put": { + "operationId": "InviteUser", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PendingOrgInvite" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "OrganizationsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateUserInvite" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "InviteUser", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nInviteUserRequest req = new InviteUserRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n CreateUserInvite = new CreateUserInvite() {\n UserEmail = \"noreply@hathora.dev\",\n },\n};\n\n\nusing(var res = await sdk.OrganizationsV1.InviteUserAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "InviteUser", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.organizationsV1.inviteUser({\n userEmail: \"noreply@hathora.dev\",\n }, \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "InviteUser", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.InviteUserResponse;\nimport dev.hathora.cloud_sdk.models.shared.CreateUserInvite;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n InviteUserResponse res = sdk.organizationsV1().inviteUser()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .createUserInvite(CreateUserInvite.builder()\n .userEmail(\"noreply@hathora.dev\")\n .build())\n .call();\n\n if (res.pendingOrgInvite().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/orgs/v1/{orgId}/invites/rescind": { + "post": { + "operationId": "RescindInvite", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "OrganizationsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RescindUserInvite" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "RescindInvite", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nRescindInviteRequest req = new RescindInviteRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n RescindUserInvite = new RescindUserInvite() {\n UserEmail = \"noreply@hathora.dev\",\n },\n};\n\n\nusing(var res = await sdk.OrganizationsV1.RescindInviteAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "RescindInvite", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n await hathoraCloud.organizationsV1.rescindInvite({\n userEmail: \"noreply@hathora.dev\",\n }, \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n\n}\n\nrun();" + }, + { + "lang": "java", + "label": "RescindInvite", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.RescindInviteResponse;\nimport dev.hathora.cloud_sdk.models.shared.RescindUserInvite;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n RescindInviteResponse res = sdk.organizationsV1().rescindInvite()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .rescindUserInvite(RescindUserInvite.builder()\n .userEmail(\"noreply@hathora.dev\")\n .build())\n .call();\n\n // handle response\n }\n}" + } + ] + } + }, + "/orgs/v1/{orgId}/invites/pending": { + "get": { + "operationId": "GetOrgPendingInvites", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PendingOrgInvitesPage" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "OrganizationsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetOrgPendingInvites", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetOrgPendingInvitesRequest req = new GetOrgPendingInvitesRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.OrganizationsV1.GetOrgPendingInvitesAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetOrgPendingInvites", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.organizationsV1.getOrgPendingInvites(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetOrgPendingInvites", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetOrgPendingInvitesResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetOrgPendingInvitesResponse res = sdk.organizationsV1().getOrgPendingInvites()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.pendingOrgInvitesPage().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/orgs/v1/{orgId}/invites/accept": { + "post": { + "operationId": "AcceptInvite", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "OrganizationsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "AcceptInvite", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nAcceptInviteRequest req = new AcceptInviteRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.OrganizationsV1.AcceptInviteAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "AcceptInvite", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n await hathoraCloud.organizationsV1.acceptInvite(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n\n}\n\nrun();" + }, + { + "lang": "java", + "label": "AcceptInvite", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.AcceptInviteResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n AcceptInviteResponse res = sdk.organizationsV1().acceptInvite()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n // handle response\n }\n}" + } + ] + } + }, + "/orgs/v1/{orgId}/invites/reject": { + "post": { + "operationId": "RejectInvite", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "OrganizationsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "orgId", + "required": true, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "RejectInvite", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nRejectInviteRequest req = new RejectInviteRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.OrganizationsV1.RejectInviteAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "RejectInvite", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n await hathoraCloud.organizationsV1.rejectInvite(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n\n}\n\nrun();" + }, + { + "lang": "java", + "label": "RejectInvite", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.RejectInviteResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n RejectInviteResponse res = sdk.organizationsV1().rejectInvite()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n // handle response\n }\n}" + } + ] + } + }, + "/metrics/v1/{appId}/process/{processId}": { + "get": { + "operationId": "GetMetrics", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/MetricsData" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get metrics for a [process](https://hathora.dev/docs/concepts/hathora-entities#process) using `appId` and `processId`.", + "tags": [ + "MetricsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + }, + { + "description": "Available metrics to query over time.", + "in": "query", + "name": "metrics", + "required": false, + "schema": { + "default": [ + "cpu", + "memory", + "rate_egress" + ], + "type": "array", + "items": { + "$ref": "#/components/schemas/MetricName" + } + } + }, + { + "description": "Unix timestamp. Default is current time.", + "in": "query", + "name": "end", + "required": false, + "schema": { + "format": "double", + "type": "number" + } + }, + { + "description": "Unix timestamp. Default is -1 hour from `end`.", + "in": "query", + "name": "start", + "required": false, + "schema": { + "format": "double", + "type": "number" + } + }, + { + "in": "query", + "name": "step", + "required": false, + "schema": { + "$ref": "#/components/schemas/MetricsStep" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetMetrics", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\nusing System.Collections.Generic;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetMetricsRequest req = new GetMetricsRequest() {\n ProcessId = \"cbfcddd2-0006-43ae-996c-995fff7bed2e\",\n};\n\n\nusing(var res = await sdk.MetricsV1.GetMetricsAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetMetrics", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.metricsV1.getMetrics({\n processId: \"cbfcddd2-0006-43ae-996c-995fff7bed2e\",\n });\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetMetrics", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetMetricsRequest;\nimport dev.hathora.cloud_sdk.models.operations.GetMetricsResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetMetricsRequest req = GetMetricsRequest.builder()\n .processId(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\")\n .build();\n\n GetMetricsResponse res = sdk.metricsV1().getMetrics()\n .request(req)\n .call();\n\n if (res.metricsData().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/management/v1/sendverificationemail": { + "post": { + "operationId": "SendVerificationEmail", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VerificationEmailSuccess" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "ManagementV1" + ], + "security": [], + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/VerificationEmailRequest" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "SendVerificationEmail", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nVerificationEmailRequest req = new VerificationEmailRequest() {\n UserId = \"\u003cid\u003e\",\n};\n\n\nusing(var res = await sdk.ManagementV1.SendVerificationEmailAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "SendVerificationEmail", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.managementV1.sendVerificationEmail({\n userId: \"\u003cid\u003e\",\n });\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "SendVerificationEmail", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.SendVerificationEmailResponse;\nimport dev.hathora.cloud_sdk.models.shared.VerificationEmailRequest;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n VerificationEmailRequest req = VerificationEmailRequest.builder()\n .userId(\"\u003cid\u003e\")\n .build();\n\n SendVerificationEmailResponse res = sdk.managementV1().sendVerificationEmail()\n .request(req)\n .call();\n\n if (res.verificationEmailSuccess().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/logs/v1/{appId}/all": { + "get": { + "operationId": "GetLogsForApp", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns a stream of logs for an [application](https://hathora.dev/docs/concepts/hathora-entities#application) using `appId`.", + "tags": [ + "LogV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "follow", + "required": false, + "schema": { + "$ref": "#/components/schemas/LogsFollow" + } + }, + { + "in": "query", + "name": "tailLines", + "required": false, + "schema": { + "$ref": "#/components/schemas/TailLines" + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "$ref": "#/components/schemas/Region" + } + } + ], + "x-speakeasy-group": "LogsV1" + } + }, + "/logs/v1/{appId}/process/{processId}": { + "get": { + "operationId": "GetLogsForProcess", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "410": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns a stream of logs for a [process](https://hathora.dev/docs/concepts/hathora-entities#process) using `appId` and `processId`.", + "tags": [ + "LogV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + }, + { + "in": "query", + "name": "follow", + "required": false, + "schema": { + "$ref": "#/components/schemas/LogsFollow" + } + }, + { + "in": "query", + "name": "tailLines", + "required": false, + "schema": { + "$ref": "#/components/schemas/TailLines" + } + } + ], + "x-speakeasy-group": "LogsV1", + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetLogsForProcess", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetLogsForProcessRequest req = new GetLogsForProcessRequest() {\n ProcessId = \"cbfcddd2-0006-43ae-996c-995fff7bed2e\",\n TailLines = 100,\n};\n\n\nusing(var res = await sdk.LogsV1.GetLogsForProcessAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetLogsForProcess", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.logsV1.getLogsForProcess(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\", 100);\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetLogsForProcess", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetLogsForProcessRequest;\nimport dev.hathora.cloud_sdk.models.operations.GetLogsForProcessResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetLogsForProcessRequest req = GetLogsForProcessRequest.builder()\n .processId(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\")\n .tailLines(100)\n .build();\n\n GetLogsForProcessResponse res = sdk.logsV1().getLogsForProcess()\n .request(req)\n .call();\n\n if (res.responseStream().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/logs/v1/{appId}/process/{processId}/download": { + "get": { + "operationId": "DownloadLogForProcess", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "410": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Download entire log file for a stopped process.", + "tags": [ + "LogV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "processId", + "required": true, + "schema": { + "$ref": "#/components/schemas/ProcessId" + } + } + ], + "x-speakeasy-group": "LogsV1", + "x-codeSamples": [ + { + "lang": "unity", + "label": "DownloadLogForProcess", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nDownloadLogForProcessRequest req = new DownloadLogForProcessRequest() {\n ProcessId = \"cbfcddd2-0006-43ae-996c-995fff7bed2e\",\n};\n\n\nusing(var res = await sdk.LogsV1.DownloadLogForProcessAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "DownloadLogForProcess", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.logsV1.downloadLogForProcess(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "DownloadLogForProcess", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.DownloadLogForProcessResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n DownloadLogForProcessResponse res = sdk.logsV1().downloadLogForProcess()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .processId(\"cbfcddd2-0006-43ae-996c-995fff7bed2e\")\n .call();\n\n if (res.responseStream().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/logs/v1/{appId}/deployment/{deploymentId}": { + "get": { + "operationId": "GetLogsForDeployment", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns a stream of logs for a [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment) using `appId` and `deploymentId`.", + "tags": [ + "LogV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "deploymentId", + "required": true, + "schema": { + "$ref": "#/components/schemas/DeploymentId" + } + }, + { + "in": "query", + "name": "follow", + "required": false, + "schema": { + "$ref": "#/components/schemas/LogsFollow" + } + }, + { + "in": "query", + "name": "tailLines", + "required": false, + "schema": { + "$ref": "#/components/schemas/TailLines" + } + } + ], + "x-speakeasy-group": "LogsV1" + } + }, + "/lobby/v1/{appId}/create/private": { + "post": { + "operationId": "CreatePrivateLobbyDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "LobbyV1" + ], + "deprecated": true, + "security": [ + { + "playerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "$ref": "#/components/schemas/Region" + } + }, + { + "in": "query", + "name": "local", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + } + ], + "x-speakeasy-group": "LobbiesV1" + } + }, + "/lobby/v1/{appId}/create/public": { + "post": { + "operationId": "CreatePublicLobbyDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "LobbyV1" + ], + "deprecated": true, + "security": [ + { + "playerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "$ref": "#/components/schemas/Region" + } + }, + { + "in": "query", + "name": "local", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + } + ], + "x-speakeasy-group": "LobbiesV1" + } + }, + "/lobby/v1/{appId}/list": { + "get": { + "operationId": "ListActivePublicLobbiesDeprecatedV1", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/Lobby" + }, + "type": "array" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "LobbyV1" + ], + "deprecated": true, + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "local", + "required": false, + "schema": { + "default": false, + "type": "boolean" + } + }, + { + "in": "query", + "name": "region", + "required": false, + "schema": { + "$ref": "#/components/schemas/Region" + } + } + ], + "x-speakeasy-group": "LobbiesV1" + } + }, + "/lobby/v2/{appId}/create/private": { + "post": { + "operationId": "CreatePrivateLobby", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Lobby" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "LobbyV2" + ], + "deprecated": true, + "security": [ + { + "playerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "roomId", + "required": false, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "initialConfig": { + "$ref": "#/components/schemas/LobbyInitialConfig" + }, + "region": { + "$ref": "#/components/schemas/Region" + } + }, + "required": [ + "initialConfig", + "region" + ], + "type": "object" + } + } + } + }, + "x-speakeasy-group": "LobbiesV2" + } + }, + "/lobby/v2/{appId}/create/public": { + "post": { + "operationId": "CreatePublicLobby", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Lobby" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "LobbyV2" + ], + "deprecated": true, + "security": [ + { + "playerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "roomId", + "required": false, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "initialConfig": { + "$ref": "#/components/schemas/LobbyInitialConfig" + }, + "region": { + "$ref": "#/components/schemas/Region" + } + }, + "required": [ + "initialConfig", + "region" + ], + "type": "object" + } + } + } + }, + "x-speakeasy-group": "LobbiesV2" + } + }, + "/lobby/v2/{appId}/create/local": { + "post": { + "operationId": "CreateLocalLobby", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Lobby" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "LobbyV2" + ], + "deprecated": true, + "security": [ + { + "playerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "roomId", + "required": false, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "properties": { + "initialConfig": { + "$ref": "#/components/schemas/LobbyInitialConfig" + }, + "region": { + "$ref": "#/components/schemas/Region" + } + }, + "required": [ + "initialConfig", + "region" + ], + "type": "object" + } + } + } + }, + "x-speakeasy-group": "LobbiesV2" + } + }, + "/lobby/v2/{appId}/create": { + "post": { + "operationId": "CreateLobbyDeprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Lobby" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new lobby for an [application](https://hathora.dev/docs/concepts/hathora-entities#application). A lobby object is a wrapper around a [room](https://hathora.dev/docs/concepts/hathora-entities#room) object. With a lobby, you get additional functionality like configuring the visibility of the room, managing the state of a match, and retrieving a list of public lobbies to display to players.", + "tags": [ + "LobbyV2" + ], + "deprecated": true, + "security": [ + { + "playerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "roomId", + "required": false, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateLobbyParams" + } + } + } + }, + "x-speakeasy-group": "LobbiesV2" + } + }, + "/lobby/v2/{appId}/list/public": { + "get": { + "operationId": "ListActivePublicLobbiesDeprecatedV2", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/Lobby" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get all active lobbies for a an [application](https://hathora.dev/docs/concepts/hathora-entities#application). Filter by optionally passing in a `region`. Use this endpoint to display all public lobbies that a player can join in the game client.", + "tags": [ + "LobbyV2" + ], + "deprecated": true, + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "description": "Region to filter by. If omitted, active public lobbies in all regions will be returned.", + "in": "query", + "name": "region", + "required": false, + "schema": { + "$ref": "#/components/schemas/Region" + } + } + ], + "x-speakeasy-group": "LobbiesV2" + } + }, + "/lobby/v2/{appId}/info/{roomId}": { + "get": { + "operationId": "GetLobbyInfo", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Lobby" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a lobby.", + "tags": [ + "LobbyV2" + ], + "deprecated": true, + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "LobbiesV2" + } + }, + "/lobby/v2/{appId}/setState/{roomId}": { + "post": { + "operationId": "SetLobbyState", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Lobby" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Set the state of a lobby. State is intended to be set by the server and must be smaller than 1MB. Use this endpoint to store match data like live player count to enforce max number of clients or persist end-game data (i.e. winner or final scores).", + "tags": [ + "LobbyV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SetLobbyStateParams" + } + } + } + }, + "x-speakeasy-group": "LobbiesV2" + } + }, + "/lobby/v3/{appId}/create": { + "post": { + "operationId": "CreateLobby", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LobbyV3" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "402": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new lobby for an [application](https://hathora.dev/docs/concepts/hathora-entities#application). A lobby object is a wrapper around a [room](https://hathora.dev/docs/concepts/hathora-entities#room) object. With a lobby, you get additional functionality like configuring the visibility of the room, managing the state of a match, and retrieving a list of public lobbies to display to players.", + "tags": [ + "LobbyV3" + ], + "security": [ + { + "playerAuth": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "query", + "name": "shortCode", + "required": false, + "schema": { + "$ref": "#/components/schemas/ShortCode" + } + }, + { + "in": "query", + "name": "roomId", + "required": false, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateLobbyV3Params" + } + } + } + }, + "x-speakeasy-group": "LobbiesV3", + "x-codeSamples": [ + { + "lang": "unity", + "label": "CreateLobby", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Operations;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nCreateLobbyRequest req = new CreateLobbyRequest() {\n ShortCode = \"LFG4\",\n RoomId = \"2swovpy1fnunu\",\n CreateLobbyV3Params = new CreateLobbyV3Params() {\n Visibility = LobbyVisibility.Private,\n RoomConfig = \"{\\\"name\\\":\\\"my-room\\\"}\",\n Region = Region.Seattle,\n },\n};\n\n\nusing(var res = await sdk.LobbiesV3.CreateLobbyAsync(\n security: new CreateLobbySecurity() {\n PlayerAuth = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "CreateLobby", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.lobbiesV3.createLobby({\n playerAuth: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n }, {\n visibility: \"private\",\n roomConfig: \"{\\\"name\\\":\\\"my-room\\\"}\",\n region: \"Seattle\",\n }, \"app-af469a92-5b45-4565-b3c4-b79878de67d2\", \"LFG4\", \"2swovpy1fnunu\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "CreateLobby", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.CreateLobbyRequest;\nimport dev.hathora.cloud_sdk.models.operations.CreateLobbyResponse;\nimport dev.hathora.cloud_sdk.models.operations.CreateLobbySecurity;\nimport dev.hathora.cloud_sdk.models.shared.CreateLobbyV3Params;\nimport dev.hathora.cloud_sdk.models.shared.LobbyVisibility;\nimport dev.hathora.cloud_sdk.models.shared.Region;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n CreateLobbyRequest req = CreateLobbyRequest.builder()\n .createLobbyV3Params(CreateLobbyV3Params.builder()\n .visibility(LobbyVisibility.PRIVATE)\n .region(Region.SEATTLE)\n .roomConfig(\"{\\\"name\\\":\\\"my-room\\\"}\")\n .build())\n .shortCode(\"LFG4\")\n .roomId(\"2swovpy1fnunu\")\n .build();\n\n CreateLobbyResponse res = sdk.lobbiesV3().createLobby()\n .request(req)\n .security(CreateLobbySecurity.builder()\n .playerAuth(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .call();\n\n if (res.lobbyV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/lobby/v3/{appId}/list/public": { + "get": { + "operationId": "ListActivePublicLobbies", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/LobbyV3" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get all active lobbies for a given [application](https://hathora.dev/docs/concepts/hathora-entities#application). Filter the array by optionally passing in a `region`. Use this endpoint to display all public lobbies that a player can join in the game client.", + "tags": [ + "LobbyV3" + ], + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "description": "If omitted, active public lobbies in all regions will be returned.", + "in": "query", + "name": "region", + "required": false, + "schema": { + "$ref": "#/components/schemas/Region" + } + } + ], + "x-speakeasy-group": "LobbiesV3", + "x-codeSamples": [ + { + "lang": "unity", + "label": "ListActivePublicLobbies", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nListActivePublicLobbiesRequest req = new ListActivePublicLobbiesRequest() {};\n\n\nusing(var res = await sdk.LobbiesV3.ListActivePublicLobbiesAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "ListActivePublicLobbies", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.lobbiesV3.listActivePublicLobbies(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "ListActivePublicLobbies", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.ListActivePublicLobbiesResponse;\nimport dev.hathora.cloud_sdk.models.shared.Region;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n ListActivePublicLobbiesResponse res = sdk.lobbiesV3().listActivePublicLobbies()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .region(Region.LOS_ANGELES)\n .call();\n\n if (res.lobbyV3s().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/lobby/v3/{appId}/info/roomid/{roomId}": { + "get": { + "operationId": "GetLobbyInfoByRoomId", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LobbyV3" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a lobby.", + "tags": [ + "LobbyV3" + ], + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "roomId", + "required": true, + "schema": { + "$ref": "#/components/schemas/RoomId" + } + } + ], + "x-speakeasy-group": "LobbiesV3", + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetLobbyInfoByRoomId", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetLobbyInfoByRoomIdRequest req = new GetLobbyInfoByRoomIdRequest() {\n RoomId = \"2swovpy1fnunu\",\n};\n\n\nusing(var res = await sdk.LobbiesV3.GetLobbyInfoByRoomIdAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetLobbyInfoByRoomId", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.lobbiesV3.getLobbyInfoByRoomId(\"2swovpy1fnunu\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetLobbyInfoByRoomId", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetLobbyInfoByRoomIdResponse;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetLobbyInfoByRoomIdResponse res = sdk.lobbiesV3().getLobbyInfoByRoomId()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .roomId(\"2swovpy1fnunu\")\n .call();\n\n if (res.lobbyV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/lobby/v3/{appId}/info/shortcode/{shortCode}": { + "get": { + "operationId": "GetLobbyInfoByShortCode", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LobbyV3" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a lobby. If 2 or more lobbies have the same `shortCode`, then the most recently created lobby will be returned.", + "tags": [ + "LobbyV3" + ], + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "shortCode", + "required": true, + "schema": { + "$ref": "#/components/schemas/ShortCode" + } + } + ], + "x-speakeasy-group": "LobbiesV3", + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetLobbyInfoByShortCode", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetLobbyInfoByShortCodeRequest req = new GetLobbyInfoByShortCodeRequest() {\n ShortCode = \"LFG4\",\n};\n\n\nusing(var res = await sdk.LobbiesV3.GetLobbyInfoByShortCodeAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetLobbyInfoByShortCode", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.lobbiesV3.getLobbyInfoByShortCode(\"LFG4\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetLobbyInfoByShortCode", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetLobbyInfoByShortCodeResponse;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetLobbyInfoByShortCodeResponse res = sdk.lobbiesV3().getLobbyInfoByShortCode()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .shortCode(\"LFG4\")\n .call();\n\n if (res.lobbyV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/fleets/v1/fleets": { + "get": { + "operationId": "GetFleets", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FleetsPage" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "FleetsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetFleets", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetFleetsRequest req = new GetFleetsRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.FleetsV1.GetFleetsAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetFleets", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.fleetsV1.getFleets(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetFleets", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetFleetsResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetFleetsResponse res = sdk.fleetsV1().getFleets()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.fleetsPage().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/fleets/v1/fleets/{fleetId}/regions/{region}": { + "get": { + "operationId": "GetFleetRegion", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FleetRegion" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "FleetsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "fleetId", + "required": true, + "schema": { + "$ref": "#/components/schemas/FleetId" + } + }, + { + "in": "path", + "name": "region", + "required": true, + "schema": { + "$ref": "#/components/schemas/Region" + } + }, + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetFleetRegion", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetFleetRegionRequest req = new GetFleetRegionRequest() {\n FleetId = \"\u003cid\u003e\",\n Region = Region.SaoPaulo,\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.FleetsV1.GetFleetRegionAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetFleetRegion", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.fleetsV1.getFleetRegion(\"\u003cid\u003e\", \"Sao_Paulo\", \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetFleetRegion", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetFleetRegionResponse;\nimport dev.hathora.cloud_sdk.models.shared.Region;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetFleetRegionResponse res = sdk.fleetsV1().getFleetRegion()\n .fleetId(\"\u003cid\u003e\")\n .region(Region.SAO_PAULO)\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.fleetRegion().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + }, + "put": { + "operationId": "UpdateFleetRegion", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "FleetsV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "fleetId", + "required": true, + "schema": { + "$ref": "#/components/schemas/FleetId" + } + }, + { + "in": "path", + "name": "region", + "required": true, + "schema": { + "$ref": "#/components/schemas/Region" + } + }, + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/FleetRegionConfig" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "UpdateFleetRegion", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nUpdateFleetRegionRequest req = new UpdateFleetRegionRequest() {\n FleetId = \"\u003cid\u003e\",\n Region = Region.Singapore,\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n FleetRegionConfig = new FleetRegionConfig() {\n CloudMinVcpus = 513135,\n },\n};\n\n\nusing(var res = await sdk.FleetsV1.UpdateFleetRegionAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "UpdateFleetRegion", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n await hathoraCloud.fleetsV1.updateFleetRegion({\n cloudMinVcpus: 511402,\n }, \"\u003cid\u003e\", \"Singapore\", \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n\n}\n\nrun();" + }, + { + "lang": "java", + "label": "UpdateFleetRegion", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.UpdateFleetRegionRequest;\nimport dev.hathora.cloud_sdk.models.operations.UpdateFleetRegionResponse;\nimport dev.hathora.cloud_sdk.models.shared.FleetRegionConfig;\nimport dev.hathora.cloud_sdk.models.shared.Region;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n UpdateFleetRegionRequest req = UpdateFleetRegionRequest.builder()\n .fleetId(\"\u003cid\u003e\")\n .region(Region.SINGAPORE)\n .fleetRegionConfig(FleetRegionConfig.builder()\n .cloudMinVcpus(513135)\n .build())\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .build();\n\n UpdateFleetRegionResponse res = sdk.fleetsV1().updateFleetRegion()\n .request(req)\n .call();\n\n // handle response\n }\n}" + } + ] + } + }, + "/discovery/v1/ping": { + "get": { + "operationId": "GetPingServiceEndpointsDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PingEndpoints" + } + } + } + } + }, + "description": "Returns an array of V1 regions with a host and port that a client can directly ping. Open a websocket connection to `wss://\u003chost\u003e:\u003cport\u003e/ws` and send a packet. To calculate ping, measure the time it takes to get an echo packet back.", + "tags": [ + "DiscoveryV1" + ], + "deprecated": true, + "security": [], + "parameters": [] + } + }, + "/discovery/v2/ping": { + "get": { + "operationId": "GetPingServiceEndpoints", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PingEndpoints" + } + } + } + } + }, + "description": "Returns an array of all regions with a host and port that a client can directly ping. Open a websocket connection to `wss://\u003chost\u003e:\u003cport\u003e/ws` and send a packet. To calculate ping, measure the time it takes to get an echo packet back.", + "tags": [ + "DiscoveryV2" + ], + "security": [], + "parameters": [], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetPingServiceEndpoints", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\nusing(var res = await sdk.DiscoveryV2.GetPingServiceEndpointsAsync())\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetPingServiceEndpoints", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.discoveryV2.getPingServiceEndpoints();\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetPingServiceEndpoints", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.operations.GetPingServiceEndpointsResponse;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetPingServiceEndpointsResponse res = sdk.discoveryV2().getPingServiceEndpoints()\n .call();\n\n if (res.pingEndpoints().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/deployments/v1/{appId}/list": { + "get": { + "operationId": "GetDeploymentsV1Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/DeploymentV1" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an array of [deployments](https://hathora.dev/docs/concepts/hathora-entities#deployment) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "DeploymentV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-speakeasy-group": "DeploymentsV1" + } + }, + "/deployments/v1/{appId}/latest": { + "get": { + "operationId": "GetLatestDeploymentV1Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV1" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get the latest [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "DeploymentV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-speakeasy-group": "DeploymentsV1" + } + }, + "/deployments/v1/{appId}/info/{deploymentId}": { + "get": { + "operationId": "GetDeploymentInfoV1Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV1" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment).", + "tags": [ + "DeploymentV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "deploymentId", + "required": true, + "schema": { + "$ref": "#/components/schemas/DeploymentId" + } + } + ], + "x-speakeasy-group": "DeploymentsV1" + } + }, + "/deployments/v1/{appId}/create/{buildId}": { + "post": { + "operationId": "CreateDeploymentV1Deprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV1" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment). Creating a new deployment means all new rooms created will use the latest deployment configuration, but existing games in progress will not be affected.", + "tags": [ + "DeploymentV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/BuildId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentConfig" + } + } + } + }, + "x-speakeasy-group": "DeploymentsV1" + } + }, + "/deployments/v2/{appId}/list": { + "get": { + "operationId": "GetDeploymentsV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/DeploymentV2" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an array of [deployments](https://hathora.dev/docs/concepts/hathora-entities#deployment) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "DeploymentV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-speakeasy-group": "DeploymentsV2" + } + }, + "/deployments/v2/{appId}/latest": { + "get": { + "operationId": "GetLatestDeploymentV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV2" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get the latest [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "DeploymentV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-speakeasy-group": "DeploymentsV2" + } + }, + "/deployments/v2/{appId}/info/{deploymentId}": { + "get": { + "operationId": "GetDeploymentInfoV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV2" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment).", + "tags": [ + "DeploymentV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "deploymentId", + "required": true, + "schema": { + "$ref": "#/components/schemas/DeploymentId" + } + } + ], + "x-speakeasy-group": "DeploymentsV2" + } + }, + "/deployments/v2/{appId}/create/{buildId}": { + "post": { + "operationId": "CreateDeploymentV2Deprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV2" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment). Creating a new deployment means all new rooms created will use the latest deployment configuration, but existing games in progress will not be affected.", + "tags": [ + "DeploymentV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/BuildId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentConfigV2" + } + } + } + }, + "x-speakeasy-group": "DeploymentsV2" + } + }, + "/deployments/v3/apps/{appId}/deployments": { + "get": { + "operationId": "GetDeployments", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentsV3Page" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an array of [deployments](https://hathora.dev/docs/concepts/hathora-entities#deployment) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "DeploymentsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetDeployments", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetDeploymentsRequest req = new GetDeploymentsRequest() {};\n\n\nusing(var res = await sdk.DeploymentsV3.GetDeploymentsAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetDeployments", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.deploymentsV3.getDeployments(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetDeployments", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetDeploymentsResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetDeploymentsResponse res = sdk.deploymentsV3().getDeployments()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .call();\n\n if (res.deploymentsV3Page().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + }, + "post": { + "operationId": "CreateDeployment", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV3" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment). Creating a new deployment means all new rooms created will use the latest deployment configuration, but existing games in progress will not be affected.", + "tags": [ + "DeploymentsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentConfigV3" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "CreateDeployment", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\nusing System.Collections.Generic;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nCreateDeploymentRequest req = new CreateDeploymentRequest() {\n DeploymentConfigV3 = new DeploymentConfigV3() {\n IdleTimeoutEnabled = false,\n Env = new List\u003cDeploymentConfigV3Env\u003e() {\n new DeploymentConfigV3Env() {\n Value = \"TRUE\",\n Name = \"EULA\",\n },\n },\n RoomsPerProcess = 3,\n AdditionalContainerPorts = new List\u003cContainerPort\u003e() {\n new ContainerPort() {\n TransportType = TransportType.Udp,\n Port = 8000,\n Name = \"default\",\n },\n },\n TransportType = TransportType.Tcp,\n ContainerPort = 4000,\n RequestedMemoryMB = 1024D,\n RequestedCPU = 0.5D,\n BuildId = \"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n },\n};\n\n\nusing(var res = await sdk.DeploymentsV3.CreateDeploymentAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "CreateDeployment", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.deploymentsV3.createDeployment({\n idleTimeoutEnabled: false,\n env: [\n {\n value: \"TRUE\",\n name: \"EULA\",\n },\n ],\n roomsPerProcess: 3,\n additionalContainerPorts: [\n {\n transportType: \"udp\",\n port: 8000,\n name: \"default\",\n },\n ],\n transportType: \"tcp\",\n containerPort: 4000,\n requestedMemoryMB: 1024,\n requestedCPU: 0.5,\n buildId: \"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n }, \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "CreateDeployment", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.CreateDeploymentResponse;\nimport dev.hathora.cloud_sdk.models.shared.ContainerPort;\nimport dev.hathora.cloud_sdk.models.shared.DeploymentConfigV3;\nimport dev.hathora.cloud_sdk.models.shared.DeploymentConfigV3Env;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport dev.hathora.cloud_sdk.models.shared.TransportType;\nimport java.lang.Exception;\nimport java.util.List;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n CreateDeploymentResponse res = sdk.deploymentsV3().createDeployment()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .deploymentConfigV3(DeploymentConfigV3.builder()\n .idleTimeoutEnabled(false)\n .env(List.of(\n DeploymentConfigV3Env.builder()\n .value(\"TRUE\")\n .name(\"EULA\")\n .build()))\n .roomsPerProcess(3)\n .transportType(TransportType.UDP)\n .containerPort(4000)\n .requestedMemoryMB(1024d)\n .requestedCPU(0.5d)\n .buildId(\"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\")\n .additionalContainerPorts(List.of(\n ContainerPort.builder()\n .transportType(TransportType.TCP)\n .port(8000)\n .name(\"default\")\n .build()))\n .build())\n .call();\n\n if (res.deploymentV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/deployments/v3/apps/{appId}/deployments/latest": { + "get": { + "operationId": "GetLatestDeployment", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV3" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get the latest [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "DeploymentsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetLatestDeployment", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetLatestDeploymentRequest req = new GetLatestDeploymentRequest() {};\n\n\nusing(var res = await sdk.DeploymentsV3.GetLatestDeploymentAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetLatestDeployment", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.deploymentsV3.getLatestDeployment(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetLatestDeployment", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetLatestDeploymentResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetLatestDeploymentResponse res = sdk.deploymentsV3().getLatestDeployment()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .call();\n\n if (res.deploymentV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/deployments/v3/apps/{appId}/deployments/{deploymentId}": { + "get": { + "operationId": "GetDeployment", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeploymentV3" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [deployment](https://hathora.dev/docs/concepts/hathora-entities#deployment).", + "tags": [ + "DeploymentsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "deploymentId", + "required": true, + "schema": { + "$ref": "#/components/schemas/GlobalDeploymentId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetDeployment", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetDeploymentRequest req = new GetDeploymentRequest() {\n DeploymentId = \"dep-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n};\n\n\nusing(var res = await sdk.DeploymentsV3.GetDeploymentAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetDeployment", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.deploymentsV3.getDeployment(\"dep-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\", \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetDeployment", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetDeploymentResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetDeploymentResponse res = sdk.deploymentsV3().getDeployment()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .deploymentId(\"dep-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\")\n .call();\n\n if (res.deploymentV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/builds/v1/{appId}/list": { + "get": { + "operationId": "GetBuildsDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/Build" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an array of [builds](https://hathora.dev/docs/concepts/hathora-entities#build) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "BuildV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-speakeasy-group": "BuildsV1" + } + }, + "/builds/v1/{appId}/info/{buildId}": { + "get": { + "operationId": "GetBuildInfoDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Build" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [build](https://hathora.dev/docs/concepts/hathora-entities#build).", + "tags": [ + "BuildV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/BuildId" + } + } + ], + "x-speakeasy-group": "BuildsV1" + } + }, + "/builds/v1/{appId}/create": { + "post": { + "operationId": "CreateBuildDeprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Build" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Creates a new [build](https://hathora.dev/docs/concepts/hathora-entities#build). Responds with a `buildId` that you must pass to [`RunBuild()`](https://hathora.dev/api#tag/BuildV1/operation/RunBuild) to build the game server artifact. You can optionally pass in a `buildTag` to associate an external version with a build.", + "tags": [ + "BuildV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateBuildParams" + } + } + } + }, + "x-speakeasy-group": "BuildsV1" + } + }, + "/builds/v1/{appId}/delete/{buildId}": { + "delete": { + "operationId": "DeleteBuildDeprecated", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Delete a [build](https://hathora.dev/docs/concepts/hathora-entities#build). All associated metadata is deleted.", + "tags": [ + "BuildV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/BuildId" + } + } + ], + "x-speakeasy-group": "BuildsV1" + } + }, + "/builds/v2/{appId}/list": { + "get": { + "operationId": "GetBuildsV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/Build" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an array of [builds](https://hathora.dev/docs/concepts/hathora-entities#build) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "BuildV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-speakeasy-group": "BuildsV2" + } + }, + "/builds/v2/{appId}/info/{buildId}": { + "get": { + "operationId": "GetBuildInfoV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Build" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [build](https://hathora.dev/docs/concepts/hathora-entities#build).", + "tags": [ + "BuildV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/BuildId" + } + } + ], + "x-speakeasy-group": "BuildsV2" + } + }, + "/builds/v2/{appId}/create": { + "post": { + "operationId": "CreateBuildV2Deprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Build" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Creates a new [build](https://hathora.dev/docs/concepts/hathora-entities#build). Responds with a `buildId` that you must pass to [`RunBuild()`](https://hathora.dev/api#tag/BuildV1/operation/RunBuild) to build the game server artifact. You can optionally pass in a `buildTag` to associate an external version with a build.", + "tags": [ + "BuildV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateBuildParams" + } + } + } + }, + "x-speakeasy-group": "BuildsV2" + } + }, + "/builds/v2/{appId}/createWithUploadUrl": { + "post": { + "operationId": "CreateBuildWithUploadUrlV2Deprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BuildWithUploadUrl" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Creates a new [build](https://hathora.dev/docs/concepts/hathora-entities#build) with `uploadUrl` that can be used to upload the build to before calling `runBuild`. Responds with a `buildId` that you must pass to [`RunBuild()`](https://hathora.dev/api#tag/BuildV1/operation/RunBuild) to build the game server artifact. You can optionally pass in a `buildTag` to associate an external version with a build.", + "tags": [ + "BuildV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateBuildParams" + } + } + } + }, + "x-speakeasy-group": "BuildsV2" + } + }, + "/builds/v2/{appId}/createWithMultipartUploads": { + "post": { + "operationId": "CreateWithMultipartUploadsV2Deprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BuildWithMultipartUrls" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Creates a new [build](https://hathora.dev/docs/concepts/hathora-entities#build) with optional `multipartUploadUrls` that can be used to upload larger builds in parts before calling `runBuild`. Responds with a `buildId` that you must pass to [`RunBuild()`](https://hathora.dev/api#tag/BuildV1/operation/RunBuild) to build the game server artifact. You can optionally pass in a `buildTag` to associate an external version with a build.", + "tags": [ + "BuildV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateMultipartBuildParams" + } + } + } + }, + "x-speakeasy-group": "BuildsV2" + } + }, + "/builds/v2/{appId}/delete/{buildId}": { + "delete": { + "operationId": "DeleteBuildV2Deprecated", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Delete a [build](https://hathora.dev/docs/concepts/hathora-entities#build). All associated metadata is deleted.", + "tags": [ + "BuildV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/BuildId" + } + } + ], + "x-speakeasy-group": "BuildsV2" + } + }, + "/builds/v3/builds": { + "get": { + "operationId": "GetBuilds", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BuildsV3Page" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an array of [builds](https://hathora.dev/docs/concepts/hathora-entities#build) for an [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "BuildsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetBuilds", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetBuildsRequest req = new GetBuildsRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.BuildsV3.GetBuildsAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetBuilds", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.buildsV3.getBuilds(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetBuilds", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetBuildsResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetBuildsResponse res = sdk.buildsV3().getBuilds()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.buildsV3Page().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + }, + "post": { + "operationId": "CreateBuild", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreatedBuildV3WithMultipartUrls" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Creates a new [build](https://hathora.dev/docs/concepts/hathora-entities#build) with optional `multipartUploadUrls` that can be used to upload larger builds in parts before calling `runBuild`. Responds with a `buildId` that you must pass to [`RunBuild()`](https://hathora.dev/api#tag/BuildV1/operation/RunBuild) to build the game server artifact. You can optionally pass in a `buildTag` to associate an external version with a build.", + "tags": [ + "BuildsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateMultipartBuildParams" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "CreateBuild", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nCreateBuildRequest req = new CreateBuildRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n CreateMultipartBuildParams = new CreateMultipartBuildParams() {\n BuildId = \"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n BuildTag = \"0.1.14-14c793\",\n BuildSizeInBytes = 5387.84D,\n },\n};\n\n\nusing(var res = await sdk.BuildsV3.CreateBuildAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "CreateBuild", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.buildsV3.createBuild({\n buildId: \"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n buildTag: \"0.1.14-14c793\",\n buildSizeInBytes: 5387.84,\n }, \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "CreateBuild", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.CreateBuildResponse;\nimport dev.hathora.cloud_sdk.models.shared.CreateMultipartBuildParams;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n CreateBuildResponse res = sdk.buildsV3().createBuild()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .createMultipartBuildParams(CreateMultipartBuildParams.builder()\n .buildSizeInBytes(5387.84d)\n .buildId(\"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\")\n .buildTag(\"0.1.14-14c793\")\n .build())\n .call();\n\n if (res.createdBuildV3WithMultipartUrls().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/builds/v3/builds/{buildId}": { + "get": { + "operationId": "GetBuild", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/BuildV3" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for a [build](https://hathora.dev/docs/concepts/hathora-entities#build).", + "tags": [ + "BuildsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/GlobalBuildId" + } + }, + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetBuild", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetBuildRequest req = new GetBuildRequest() {\n BuildId = \"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.BuildsV3.GetBuildAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetBuild", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.buildsV3.getBuild(\"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\", \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetBuild", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetBuildResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetBuildResponse res = sdk.buildsV3().getBuild()\n .buildId(\"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\")\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.buildV3().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + }, + "delete": { + "operationId": "DeleteBuild", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeletedBuild" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Delete a [build](https://hathora.dev/docs/concepts/hathora-entities#build). All associated metadata is deleted.\nBe careful which builds you delete. This endpoint does not prevent you from deleting actively used builds.\nDeleting a build that is actively build used by an app's deployment will cause failures when creating rooms.", + "tags": [ + "BuildsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/GlobalBuildId" + } + }, + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "DeleteBuild", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nDeleteBuildRequest req = new DeleteBuildRequest() {\n BuildId = \"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.BuildsV3.DeleteBuildAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "DeleteBuild", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.buildsV3.deleteBuild(\"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\", \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "DeleteBuild", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.DeleteBuildResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n DeleteBuildResponse res = sdk.buildsV3().deleteBuild()\n .buildId(\"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\")\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.deletedBuild().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/builds/v3/builds/{buildId}/run": { + "post": { + "operationId": "RunBuild", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Builds a game server artifact from a tarball you provide. Pass in the `buildId` generated from [`CreateBuild()`](https://hathora.dev/api#tag/BuildV1/operation/CreateBuild).", + "tags": [ + "BuildsV3" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/GlobalBuildId" + } + }, + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "RunBuild", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nRunBuildRequest req = new RunBuildRequest() {\n BuildId = \"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\",\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.BuildsV3.RunBuildAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "RunBuild", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.buildsV3.runBuild(\"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\", \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "RunBuild", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.RunBuildResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n RunBuildResponse res = sdk.buildsV3().runBuild()\n .buildId(\"bld-6d4c6a71-2d75-4b42-94e1-f312f57f33c5\")\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.responseStream().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/billing/v1/balance": { + "get": { + "operationId": "GetBalance", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "type": "number", + "format": "double" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "BillingV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetBalance", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\nusing(var res = await sdk.BillingV1.GetBalanceAsync())\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetBalance", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.billingV1.getBalance();\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetBalance", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetBalanceResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetBalanceResponse res = sdk.billingV1().getBalance()\n .call();\n\n if (res.number().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/billing/v1/upcoming/items": { + "get": { + "operationId": "GetUpcomingInvoiceItems", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InvoiceItemPage" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "BillingV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetUpcomingInvoiceItems", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\nusing(var res = await sdk.BillingV1.GetUpcomingInvoiceItemsAsync())\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetUpcomingInvoiceItems", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.billingV1.getUpcomingInvoiceItems();\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetUpcomingInvoiceItems", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetUpcomingInvoiceItemsResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetUpcomingInvoiceItemsResponse res = sdk.billingV1().getUpcomingInvoiceItems()\n .call();\n\n if (res.invoiceItemPage().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/billing/v1/upcoming/total": { + "get": { + "operationId": "GetUpcomingInvoiceTotal", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "properties": { + "value": { + "type": "number", + "format": "double" + } + }, + "required": [ + "value" + ], + "type": "object" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "BillingV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetUpcomingInvoiceTotal", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\nusing(var res = await sdk.BillingV1.GetUpcomingInvoiceTotalAsync())\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetUpcomingInvoiceTotal", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.billingV1.getUpcomingInvoiceTotal();\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetUpcomingInvoiceTotal", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetUpcomingInvoiceTotalResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetUpcomingInvoiceTotalResponse res = sdk.billingV1().getUpcomingInvoiceTotal()\n .call();\n\n if (res.object().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/billing/v1/paymentmethod": { + "get": { + "operationId": "GetPaymentMethod", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PaymentMethod" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "BillingV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetPaymentMethod", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\nusing(var res = await sdk.BillingV1.GetPaymentMethodAsync())\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetPaymentMethod", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.billingV1.getPaymentMethod();\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetPaymentMethod", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetPaymentMethodResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetPaymentMethodResponse res = sdk.billingV1().getPaymentMethod()\n .call();\n\n if (res.paymentMethod().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/billing/v1/customerportalurl": { + "post": { + "operationId": "InitStripeCustomerPortalUrl", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "type": "string" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "BillingV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CustomerPortalUrl" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "InitStripeCustomerPortalUrl", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nCustomerPortalUrl req = new CustomerPortalUrl() {\n ReturnUrl = \"https://smart-puppet.biz/\",\n};\n\n\nusing(var res = await sdk.BillingV1.InitStripeCustomerPortalUrlAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "InitStripeCustomerPortalUrl", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.billingV1.initStripeCustomerPortalUrl({\n returnUrl: \"https://smart-puppet.biz/\",\n });\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "InitStripeCustomerPortalUrl", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.InitStripeCustomerPortalUrlResponse;\nimport dev.hathora.cloud_sdk.models.shared.CustomerPortalUrl;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n CustomerPortalUrl req = CustomerPortalUrl.builder()\n .returnUrl(\"https://smart-puppet.biz/\")\n .build();\n\n InitStripeCustomerPortalUrlResponse res = sdk.billingV1().initStripeCustomerPortalUrl()\n .request(req)\n .call();\n\n if (res.string().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/billing/v1/invoices": { + "get": { + "operationId": "GetInvoices", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/Invoice" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "tags": [ + "BillingV1" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetInvoices", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\nusing(var res = await sdk.BillingV1.GetInvoicesAsync())\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetInvoices", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.billingV1.getInvoices();\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetInvoices", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetInvoicesResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetInvoicesResponse res = sdk.billingV1().getInvoices()\n .call();\n\n if (res.invoices().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/auth/v1/{appId}/login/anonymous": { + "post": { + "operationId": "LoginAnonymous", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PlayerTokenObject" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns a unique player token for an anonymous user.", + "tags": [ + "AuthV1" + ], + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "LoginAnonymous", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nLoginAnonymousRequest req = new LoginAnonymousRequest() {};\n\n\nusing(var res = await sdk.AuthV1.LoginAnonymousAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "LoginAnonymous", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.authV1.loginAnonymous(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "LoginAnonymous", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.LoginAnonymousResponse;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n LoginAnonymousResponse res = sdk.authV1().loginAnonymous()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .call();\n\n if (res.playerTokenObject().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/auth/v1/{appId}/login/nickname": { + "post": { + "operationId": "LoginNickname", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PlayerTokenObject" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns a unique player token with a specified nickname for a user.", + "tags": [ + "AuthV1" + ], + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/NicknameObject" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "LoginNickname", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nLoginNicknameRequest req = new LoginNicknameRequest() {\n NicknameObject = new NicknameObject() {\n Nickname = \"squiddytwoshoes\",\n },\n};\n\n\nusing(var res = await sdk.AuthV1.LoginNicknameAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "LoginNickname", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.authV1.loginNickname({\n nickname: \"squiddytwoshoes\",\n }, \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "LoginNickname", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.LoginNicknameResponse;\nimport dev.hathora.cloud_sdk.models.shared.NicknameObject;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n LoginNicknameResponse res = sdk.authV1().loginNickname()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .nicknameObject(NicknameObject.builder()\n .nickname(\"squiddytwoshoes\")\n .build())\n .call();\n\n if (res.playerTokenObject().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/auth/v1/{appId}/login/google": { + "post": { + "operationId": "LoginGoogle", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PlayerTokenObject" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns a unique player token using a Google-signed OIDC `idToken`.", + "tags": [ + "AuthV1" + ], + "security": [], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GoogleIdTokenObject" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "LoginGoogle", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nLoginGoogleRequest req = new LoginGoogleRequest() {\n GoogleIdTokenObject = new GoogleIdTokenObject() {\n IdToken = \"eyJhbGciOiJSUzI1NiIsImtpZCI6ImZkNDhhNzUxMzhkOWQ0OGYwYWE2MzVlZjU2OWM0ZTE5NmY3YWU4ZDYiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJhY2NvdW50cy5nb29nbGUuY29tIiwiYXpwIjoiODQ4NDEyODI2Nzg4LW00bXNyYjZxNDRkbTJ1ZTNrZ3Z1aTBmcTdrZGE1NWxzLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwiYXVkIjoiODQ4NDEyODI2Nzg4LW00bXNyYjZxNDRkbTJ1ZTNrZ3Z1aTBmcTdrZGE1NWxzLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwic3ViIjoiMTE0NTQyMzMwNzI3MTU2MTMzNzc2IiwiZW1haWwiOiJocGFdkeivmeuzQGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJhdF9oYXNoIjoidno1NGhhdTNxbnVR\",\n },\n};\n\n\nusing(var res = await sdk.AuthV1.LoginGoogleAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "LoginGoogle", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.authV1.loginGoogle({\n idToken: \"eyJhbGciOiJSUzI1NiIsImtpZCI6ImZkNDhhNzUxMzhkOWQ0OGYwYWE2MzVlZjU2OWM0ZTE5NmY3YWU4ZDYiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJhY2NvdW50cy5nb29nbGUuY29tIiwiYXpwIjoiODQ4NDEyODI2Nzg4LW00bXNyYjZxNDRkbTJ1ZTNrZ3Z1aTBmcTdrZGE1NWxzLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwiYXVkIjoiODQ4NDEyODI2Nzg4LW00bXNyYjZxNDRkbTJ1ZTNrZ3Z1aTBmcTdrZGE1NWxzLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwic3ViIjoiMTE0NTQyMzMwNzI3MTU2MTMzNzc2IiwiZW1haWwiOiJocGFdkeivmeuzQGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJhdF9oYXNoIjoidno1NGhhdTNxbnVR\",\n }, \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "LoginGoogle", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.LoginGoogleResponse;\nimport dev.hathora.cloud_sdk.models.shared.GoogleIdTokenObject;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n LoginGoogleResponse res = sdk.authV1().loginGoogle()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .googleIdTokenObject(GoogleIdTokenObject.builder()\n .idToken(\"eyJhbGciOiJSUzI1NiIsImtpZCI6ImZkNDhhNzUxMzhkOWQ0OGYwYWE2MzVlZjU2OWM0ZTE5NmY3YWU4ZDYiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJhY2NvdW50cy5nb29nbGUuY29tIiwiYXpwIjoiODQ4NDEyODI2Nzg4LW00bXNyYjZxNDRkbTJ1ZTNrZ3Z1aTBmcTdrZGE1NWxzLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwiYXVkIjoiODQ4NDEyODI2Nzg4LW00bXNyYjZxNDRkbTJ1ZTNrZ3Z1aTBmcTdrZGE1NWxzLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwic3ViIjoiMTE0NTQyMzMwNzI3MTU2MTMzNzc2IiwiZW1haWwiOiJocGFdkeivmeuzQGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJhdF9oYXNoIjoidno1NGhhdTNxbnVR\")\n .build())\n .call();\n\n if (res.playerTokenObject().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/apps/v1/list": { + "get": { + "operationId": "GetAppsV1Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "items": { + "$ref": "#/components/schemas/ApplicationWithLatestDeploymentAndBuildDeprecated" + }, + "type": "array" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an unsorted list of your organization’s [applications](https://hathora.dev/docs/concepts/hathora-entities#application). An application is uniquely identified by an `appId`.", + "tags": [ + "AppV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "x-speakeasy-group": "AppsV1" + } + }, + "/apps/v1/create": { + "post": { + "operationId": "CreateAppV1Deprecated", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Application" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "AppV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AppConfig" + } + } + } + }, + "x-speakeasy-group": "AppsV1" + } + }, + "/apps/v1/update/{appId}": { + "post": { + "operationId": "UpdateAppV1Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Application" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Update data for an existing [application](https://hathora.dev/docs/concepts/hathora-entities#application) using `appId`.", + "tags": [ + "AppV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AppConfig" + } + } + } + }, + "x-speakeasy-group": "AppsV1" + } + }, + "/apps/v1/info/{appId}": { + "get": { + "operationId": "GetAppInfoV1Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Application" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for an [application](https://hathora.dev/docs/concepts/hathora-entities#application) using `appId`.", + "tags": [ + "AppV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-speakeasy-group": "AppsV1" + } + }, + "/apps/v1/delete/{appId}": { + "delete": { + "operationId": "DeleteAppV1Deprecated", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Delete an [application](https://hathora.dev/docs/concepts/hathora-entities#application) using `appId`. Your organization will lose access to this application.", + "tags": [ + "AppV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-speakeasy-group": "AppsV1" + } + }, + "/apps/v2/apps": { + "get": { + "operationId": "GetApps", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApplicationsPage" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Returns an unsorted list of your organization’s [applications](https://hathora.dev/docs/concepts/hathora-entities#application). An application is uniquely identified by an `appId`.", + "tags": [ + "AppsV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetApps", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetAppsRequest req = new GetAppsRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n};\n\n\nusing(var res = await sdk.AppsV2.GetAppsAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetApps", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.appsV2.getApps(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetApps", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetAppsResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetAppsResponse res = sdk.appsV2().getApps()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .call();\n\n if (res.applicationsPage().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + }, + "post": { + "operationId": "CreateApp", + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Application" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Create a new [application](https://hathora.dev/docs/concepts/hathora-entities#application).", + "tags": [ + "AppsV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "query", + "name": "orgId", + "required": false, + "schema": { + "$ref": "#/components/schemas/OrgId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AppConfig" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "CreateApp", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nCreateAppRequest req = new CreateAppRequest() {\n OrgId = \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\",\n AppConfig = new AppConfig() {\n AuthConfiguration = new AuthConfiguration() {},\n AppName = \"minecraft\",\n },\n};\n\n\nusing(var res = await sdk.AppsV2.CreateAppAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "CreateApp", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.appsV2.createApp({\n authConfiguration: {},\n appName: \"minecraft\",\n }, \"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "CreateApp", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.CreateAppResponse;\nimport dev.hathora.cloud_sdk.models.shared.AppConfig;\nimport dev.hathora.cloud_sdk.models.shared.AuthConfiguration;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n CreateAppResponse res = sdk.appsV2().createApp()\n .orgId(\"org-6f706e83-0ec1-437a-9a46-7d4281eb2f39\")\n .appConfig(AppConfig.builder()\n .authConfiguration(AuthConfiguration.builder()\n .build())\n .appName(\"minecraft\")\n .build())\n .call();\n\n if (res.application().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + } + }, + "/apps/v2/apps/{appId}": { + "post": { + "operationId": "UpdateApp", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Application" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "422": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Update data for an existing [application](https://hathora.dev/docs/concepts/hathora-entities#application) using `appId`.", + "tags": [ + "AppsV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AppConfig" + } + } + } + }, + "x-codeSamples": [ + { + "lang": "unity", + "label": "UpdateApp", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nUpdateAppRequest req = new UpdateAppRequest() {\n AppConfig = new AppConfig() {\n AuthConfiguration = new AuthConfiguration() {},\n AppName = \"minecraft\",\n },\n};\n\n\nusing(var res = await sdk.AppsV2.UpdateAppAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "UpdateApp", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.appsV2.updateApp({\n authConfiguration: {},\n appName: \"minecraft\",\n }, \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "UpdateApp", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.UpdateAppResponse;\nimport dev.hathora.cloud_sdk.models.shared.AppConfig;\nimport dev.hathora.cloud_sdk.models.shared.AuthConfiguration;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n UpdateAppResponse res = sdk.appsV2().updateApp()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .appConfig(AppConfig.builder()\n .authConfiguration(AuthConfiguration.builder()\n .build())\n .appName(\"minecraft\")\n .build())\n .call();\n\n if (res.application().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + }, + "get": { + "operationId": "GetApp", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/Application" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Get details for an [application](https://hathora.dev/docs/concepts/hathora-entities#application) using `appId`.", + "tags": [ + "AppsV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "GetApp", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nGetAppRequest req = new GetAppRequest() {};\n\n\nusing(var res = await sdk.AppsV2.GetAppAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "GetApp", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n const result = await hathoraCloud.appsV2.getApp(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n // Handle the result\n console.log(result);\n}\n\nrun();" + }, + { + "lang": "java", + "label": "GetApp", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.GetAppResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n GetAppResponse res = sdk.appsV2().getApp()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .call();\n\n if (res.application().isPresent()) {\n // handle response\n }\n }\n}" + } + ] + }, + "delete": { + "operationId": "DeleteApp", + "responses": { + "204": { + "description": "No content" + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Delete an [application](https://hathora.dev/docs/concepts/hathora-entities#application) using `appId`. Your organization will lose access to this application.", + "tags": [ + "AppsV2" + ], + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ], + "x-codeSamples": [ + { + "lang": "unity", + "label": "DeleteApp", + "source": "using HathoraCloud;\nusing HathoraCloud.Models.Shared;\nusing HathoraCloud.Models.Operations;\n\nvar sdk = new HathoraCloudSDK(\n security: new Security() {\n HathoraDevToken = \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n },\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\nDeleteAppRequest req = new DeleteAppRequest() {};\n\n\nusing(var res = await sdk.AppsV2.DeleteAppAsync(req))\n{\n // handle response\n}" + }, + { + "lang": "typescript", + "label": "DeleteApp", + "source": "import { HathoraCloud } from \"@hathora/cloud-sdk-typescript\";\n\nconst hathoraCloud = new HathoraCloud({\n hathoraDevToken: \"\u003cYOUR_BEARER_TOKEN_HERE\u003e\",\n appId: \"app-af469a92-5b45-4565-b3c4-b79878de67d2\",\n});\n\nasync function run() {\n await hathoraCloud.appsV2.deleteApp(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\");\n\n\n}\n\nrun();" + }, + { + "lang": "java", + "label": "DeleteApp", + "source": "package hello.world;\n\nimport dev.hathora.cloud_sdk.HathoraCloud;\nimport dev.hathora.cloud_sdk.models.errors.ApiError;\nimport dev.hathora.cloud_sdk.models.operations.DeleteAppResponse;\nimport dev.hathora.cloud_sdk.models.shared.Security;\nimport java.lang.Exception;\n\npublic class Application {\n\n public static void main(String[] args) throws ApiError, Exception {\n\n HathoraCloud sdk = HathoraCloud.builder()\n .security(Security.builder()\n .hathoraDevToken(\"\u003cYOUR_BEARER_TOKEN_HERE\u003e\")\n .build())\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .build();\n\n DeleteAppResponse res = sdk.appsV2().deleteApp()\n .appId(\"app-af469a92-5b45-4565-b3c4-b79878de67d2\")\n .call();\n\n // handle response\n }\n}" + } + ] + } + }, + "/builds/v1/{appId}/run/{buildId}": { + "post": { + "operationId": "RunBuildDeprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "text/plain": { + "schema": { + "type": "string", + "format": "byte" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Builds a game server artifact from a tarball you provide. Pass in the `buildId` generated from [`CreateBuild()`](https://hathora.dev/api#tag/BuildV1/operation/CreateBuild).", + "tags": [ + "BuildV1" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/BuildId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "binary" + } + }, + "required": [ + "file" + ] + } + } + } + }, + "x-speakeasy-group": "BuildsV1" + } + }, + "/builds/v2/{appId}/run/{buildId}": { + "post": { + "operationId": "RunBuildV2Deprecated", + "responses": { + "200": { + "description": "Ok", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + }, + "400": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "401": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "404": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "429": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + }, + "500": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiError" + } + } + } + } + }, + "description": "Builds a game server artifact from a tarball you provide. Pass in the `buildId` generated from [`CreateBuild()`](https://hathora.dev/api#tag/BuildV1/operation/CreateBuild).", + "tags": [ + "BuildV2" + ], + "deprecated": true, + "security": [ + { + "hathoraDevToken": [] + } + ], + "parameters": [ + { + "in": "path", + "name": "appId", + "required": true, + "schema": { + "$ref": "#/components/schemas/AppId" + } + }, + { + "in": "path", + "name": "buildId", + "required": true, + "schema": { + "$ref": "#/components/schemas/BuildId" + } + } + ], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "binary" + } + } + } + } + } + }, + "x-speakeasy-group": "BuildsV2" + } + } + }, + "tags": [ + { + "name": "AppsV2", + "description": "Operations that allow you manage your [applications](https://hathora.dev/docs/concepts/hathora-entities#application)." + }, + { + "name": "AppV1", + "description": "Deprecated. Use [AppsV2](https://hathora.dev/api#tag/AppsV2)." + }, + { + "name": "AuthV1", + "description": "Operations that allow you to generate a Hathora-signed [JSON web token (JWT)](https://jwt.io/) for [player authentication](https://hathora.dev/docs/lobbies-and-matchmaking/auth-service)." + }, + { + "name": "BillingV1", + "description": " " + }, + { + "name": "BuildsV3", + "description": "Operations that allow you create and manage your [builds](https://hathora.dev/docs/concepts/hathora-entities#build)." + }, + { + "name": "BuildV2", + "description": "Deprecated. Use [BuildsV3](https://hathora.dev/api#tag/BuildsV3)." + }, + { + "name": "BuildV1", + "description": "Deprecated. Use [BuildsV3](https://hathora.dev/api#tag/BuildsV3)." + }, + { + "name": "DeploymentsV3", + "description": "Operations that allow you configure and manage an application's [build](https://hathora.dev/docs/concepts/hathora-entities#build) at runtime." + }, + { + "name": "DeploymentV2", + "description": "Deprecated. Use [DeploymentsV3](https://hathora.dev/api#tag/DeploymentsV3)." + }, + { + "name": "DeploymentV1", + "description": "Deprecated. Use [DeploymentsV3](https://hathora.dev/api#tag/DeploymentsV3)." + }, + { + "name": "DiscoveryV2", + "description": "Service that allows clients to directly ping all Hathora regions to get latency information" + }, + { + "name": "DiscoveryV1", + "description": "Deprecated. Does not include latest Regions (missing Dallas region). Use [DiscoveryV2](https://hathora.dev/api#tag/DiscoveryV2)." + }, + { + "name": "LobbyV3", + "description": "Operations to create and manage lobbies using our [Lobby Service](https://hathora.dev/docs/lobbies-and-matchmaking/lobby-service)." + }, + { + "name": "LobbyV2", + "description": "Deprecated. Use [LobbyV3](https://hathora.dev/api#tag/LobbyV3)." + }, + { + "name": "LobbyV1", + "description": "Deprecated. Use [LobbyV3](https://hathora.dev/api#tag/LobbyV3)." + }, + { + "name": "LogV1", + "description": "Operations to get logs by [applications](https://hathora.dev/docs/concepts/hathora-entities#application), [processes](https://hathora.dev/docs/concepts/hathora-entities#process), and [deployments](https://hathora.dev/docs/concepts/hathora-entities#deployment). We store 20GB of logs data." + }, + { + "name": "ManagementV1", + "description": " " + }, + { + "name": "MetricsV1", + "description": "Operations to get metrics by [process](https://hathora.dev/docs/concepts/hathora-entities#process). We store 72 hours of metrics data." + }, + { + "name": "ProcessesV3", + "description": "Operations to get data on active and stopped [processes](https://hathora.dev/docs/concepts/hathora-entities#process)." + }, + { + "name": "ProcessesV2", + "description": "Deprecated. Use [ProcessesV3](https://hathora.dev/api#tag/ProcessesV3)." + }, + { + "name": "ProcessesV1", + "description": "Deprecated. Use [ProcessesV3](https://hathora.dev/api#tag/ProcessesV3)." + }, + { + "name": "RoomV2", + "description": "Operations to create, manage, and connect to [rooms](https://hathora.dev/docs/concepts/hathora-entities#room)." + }, + { + "name": "RoomV1", + "description": "Deprecated. Use [RoomV2](https://hathora.dev/api#tag/RoomV2)." + }, + { + "name": "TokensV1", + "description": " " + } + ], + "x-speakeasy-globals": { + "parameters": [ + { + "in": "path", + "name": "appId", + "schema": { + "$ref": "#/components/schemas/AppId" + } + } + ] + } +} \ No newline at end of file