catena-tools-core (v1)

How To Use The API Explorer

On the right hand side of this page, you will see a list of "Servers".

  • Mock server: This server will return mock responses to all requests. It is best used when evaluating the shape of the Catena API.
  • Localhost: This server will point at a locally running version of Catena. It is best used when you want to make real requests or to validate that Catena is properly running on your machine.
  • Custom Domain: This server will point at any domain you specify with the domain variable. It is best used when you have a version of Catena deployed to a live environment and you want to make real requests against it.

To configure which server is shown in example requests:

  1. Select the "Try it" button on any API operation within the API explorer
  1. Select your environment
  1. If you want to point the API explorer to an instance of Catena you have deployed, select "Custom Domain" and configure the domain environment variable.
  1. You're all set! This setting will be cached across all API operations exposed in these docs.
Languages
Servers
Mock server
https://docs.catenatools.com/_mock/apis/catena-tools-core/
Localhost
http://localhost:5000/
Custom Domain
https://{domain}/

CatenaApiKeys

CatenaApiKeys

Operations

CatenaAccounts

CatenaAccounts

Operations

CatenaServerManager

The server manager service portion of the integrated broker. This is what game servers interact with to handle matches.

Operations

CatenaAuthentication

CatenaAuthentication

Operations

CatenaSessions

A service that can be used to probe the session store directly for development or diagnostics. Not intended for regular production use!

Operations

CatenaTitles

CatenaTitles

Operations

GeneratePresignedUrl Generates a presigned S3 URL for a given object key

Request

Bodyapplication/json
objectKeystring
curl -i -X POST \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/generate_presigned_url \
  -H 'Content-Type: application/json' \
  -d '{
    "objectKey": "string"
  }'

Responses

Success

Bodyapplication/json
presignedHeadUrlstring
presignedGetUrlstring
Response
application/json
{ "presignedHeadUrl": "string", "presignedGetUrl": "string" }

GeneratePresignedUrlFromUri Generates a presigned URL for a given URL

Request

Bodyapplication/json
uristring
curl -i -X POST \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/generate_presigned_url_from_uri \
  -H 'Content-Type: application/json' \
  -d '{
    "uri": "string"
  }'

Responses

Success

Bodyapplication/json
presignedHeadUrlstring
presignedGetUrlstring
Response
application/json
{ "presignedHeadUrl": "string", "presignedGetUrl": "string" }

GetTitles Returns a list of game titles that are supported via this instance of Catena

Request

curl -i -X GET \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/titles

Responses

Success

Bodyapplication/json
titlesArray of objects(Services.CatenaTitles.GameTitle)
Response
application/json
{ "titles": [ { … } ] }

GetTitleManifest Returns a manifest for releases and patches that are required to play the game

Request

Path
titleIdstringrequired
Query
platformstring
curl -i -X GET \
  'https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/titles/{titleId}/manifest?platform=string'

Responses

Success

Bodyapplication/json
titleNamestring
releasesArray of objects(Services.CatenaTitles.TitleRelease)
Response
application/json
{ "titleName": "string", "releases": [ { … } ] }

AdminCreateTitle Creates a game title

Request

Bodyapplication/json
namestring
curl -i -X POST \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/create \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string"
  }'

Responses

Success

Bodyapplication/json
idstring
namestring
Response
application/json
{ "id": "string", "name": "string" }

AdminUpdateTitle Updates a game title

Request

Bodyapplication/json
idstring
namestring
curl -i -X PUT \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/update \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string",
    "name": "string"
  }'

Responses

Success

Bodyapplication/json
idstring
namestring
Response
application/json
{ "id": "string", "name": "string" }

AdminDeleteTitle Deletes a game title

Request

Bodyapplication/json
idstring
curl -i -X DELETE \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/delete \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string"
  }'

Responses

Success

Bodyapplication/json
titleDeletedboolean
Response
application/json
{ "titleDeleted": true }

AdminCreateTitleRelease Creates a game title release

Request

Bodyapplication/json
idstring

game title id

uristring
bytesinteger(int64)

subject to change: possibly protobuf.bytes type / cant use long, have to use int64 in .proto files

checksumstring

StringValue allows for a field to be nullable

checksumAlgstring

StringValue allows for a field to be nullable

platformstring
curl -i -X POST \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/create_title_release \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string",
    "uri": "string",
    "bytes": 0,
    "checksum": "string",
    "checksumAlg": "string",
    "platform": "string"
  }'

Responses

Success

Bodyapplication/json
idstring

release id

namestring

name of title

Response
application/json
{ "id": "string", "name": "string" }

AdminUpdateTitleRelease Updates a game title release

Request

Bodyapplication/json
idstring

game title release id

gameTitleIdstring

game title id

uristring
bytesinteger(int64)
checksumstring

StringValue allows for a field to be nullable

checksumAlgstring

StringValue allows for a field to be nullable

platformstring
curl -i -X PUT \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/update_title_release \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string",
    "gameTitleId": "string",
    "uri": "string",
    "bytes": 0,
    "checksum": "string",
    "checksumAlg": "string",
    "platform": "string"
  }'

Responses

Success

Bodyapplication/json
idstring

game title release id

namestring

game title name

Response
application/json
{ "id": "string", "name": "string" }

AdminDeleteTitleRelease Deletes a game title release

Request

Bodyapplication/json
idstring

release id

curl -i -X DELETE \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/delete_title_release \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string"
  }'

Responses

Success

Bodyapplication/json
titleDeletedboolean
Response
application/json
{ "titleDeleted": true }

AdminCreateTitlePatch Creates a game title patch

Request

Bodyapplication/json
idstring

game title release id

uristring
bytesinteger(int64)

subject to change: possibly protobuf.bytes type / cant use long, have to use int64 in .proto files

checksumstring

StringValue allows for a field to be nullable

checksumAlgstring

StringValue allows for a field to be nullable

curl -i -X POST \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/create_title_patch \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string",
    "uri": "string",
    "bytes": 0,
    "checksum": "string",
    "checksumAlg": "string"
  }'

Responses

Success

Bodyapplication/json
idstring

patch id

namestring

name of title

Response
application/json
{ "id": "string", "name": "string" }

AdminUpdateTitlePatch Updates a game title patch

Request

Bodyapplication/json
idstring

game patch id

gameTitleReleaseIdstring

game title release id

uristring
bytesinteger(int64)
checksumstring

StringValue allows for a field to be nullable

checksumAlgstring

StringValue allows for a field to be nullable

curl -i -X PUT \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/update_title_patch \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string",
    "gameTitleReleaseId": "string",
    "uri": "string",
    "bytes": 0,
    "checksum": "string",
    "checksumAlg": "string"
  }'

Responses

Success

Bodyapplication/json
idstring

game patch id

namestring

game title name

Response
application/json
{ "id": "string", "name": "string" }

AdminDeleteTitlePatch deletes a game title patch

Request

Bodyapplication/json
idstring

patch id

curl -i -X DELETE \
  https://docs.catenatools.com/_mock/apis/catena-tools-core/api/v1/titles/delete_title_patch \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string"
  }'

Responses

Success

Bodyapplication/json
titleDeletedboolean
Response
application/json
{ "titleDeleted": true }

CatenaServerReleases

CatenaServerManagement

Operations

CatenaPlatformAuth

A service for managing Catena-authoritative functionality with regards to validation and authentication. Used by validators in the Authentication service that log the user into the Catena platform.

Operations

CatenaParties

CatenaParties

Operations

CatenaNodeInspection

A service that can be used inspect the Catena node.

Operations

CatenaNodeControl

A service that can be used control the Catena node.

Operations

CatenaMatchBroker

An integrated match broker service which sits between the matchmaker, clients, and game servers/hosting to coordinate capacity and notify clients when servers are ready to accept connections. This implementation integrates the broker and capacity/server manager roles.

Operations

CatenaFriends

CatenaFriends

Operations

Events

Events

Operations

CatenaEntitlements

Operations

CatenaLeaderboards

Operations

CatenaMatchmaking

Operations

CatenaServerCatalog

Operations

CatenaSteamDiag

Operations