Integration
⭐ Matchmaking
Each matchmaker manages their own private API, separate from your organization's Edgegap API.
Import API specification to Scalar API Web Client or Swagger Editor to inspect details.
Swagger Web UI: deploying your managed service generates an openAPI specification and a convenient web UI, useful for testing edge cases or validating payload shapes.
🧭 Server Browser
Each matchmaker manages their own private API, separate from your organization's Edgegap API.
Swagger Web UI: deploying your managed service generates an openAPI specification and a convenient web UI, useful for testing edge cases or validating payload shapes.
🗺️ Locations
List all locations available for cloud deployment. Optionally specify an app version to remove locations with insufficient capacity to deploy at this time.
Custom identifier.
my-game-serverCustom version identifier, often a timestamp or a build ID.
2024.01.30-16.23.00-UTC220*/*application/jsonSuccess
Additional information regarding locations.
[""]100Bad Request
Unauthorized
Internal Server Error
GET /v1/locations HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
{
"locations": [
{
"city": "Montreal",
"country": "Canada",
"continent": "North America",
"administrative_division": "Quebec",
"timezone": "Eastern Time",
"latitude": 45.508888,
"longitude": -73.561668
}
],
"messages": [
""
],
"total_count": 100,
"pagination": {
"number": 1,
"next_page_number": 2,
"previous_page_number": 1,
"paginator": {
"num_pages": 10
},
"has_next": true,
"has_previous": false
}
}🗼 Beacons
List all active ping beacons.
220*/*application/jsonSuccess
Count of returned active ping beacons.
17Internal Server Error
GET /v1/locations/beacons HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
{
"locations": [
{
"host": "172.235.110.137",
"fqdn": "b-51bfc6ad1864.pr.edgegap.net",
"udp_port": 32167,
"tcp_port": 32561,
"location": {
"city": "Montreal",
"country": "Canada",
"continent": "North America",
"administrative_division": "Quebec",
"timezone": "Eastern Time",
"latitude": 45.508888,
"longitude": -73.561668
}
}
],
"count": 17
}🗒️ Log Storage
Create an endpoint storage to store your container logs at the end of a deployment.
*/*application/jsonName of the Endpoint Storage
my-s3-bucketv1 (default, legacy) stores 1 file per deployment. v2 (enhanced) streams chunks of logs in real time.
v1Example: v2Possible values: Your access key ID to connect to your S3 Bucket.
my-access-key-idFull URL to your S3 Bucket with https or http. It's recommended to not include your bucket name as a subdomain
https://us-east-1.your-s3-provider.comYour secret access key to connect to your S3 Bucket. Will be encrypted.
my-bucketThe format how the logs will be exported to the bucket.
TEXTExample: NDJSONPossible values: Your secret access key to connect to your S3 Bucket. Will be encrypted.
my-secret-accessSuccess
Name of the Endpoint Storage
my-s3-bucketv1 (default, legacy) stores 1 file per deployment. v2 (enhanced) streams chunks of logs in real time.
v1Example: v2Possible values: Your access key ID to connect to your S3 Bucket.
my-access-key-idFull URL to your S3 Bucket with https or http. It's recommended to not include your bucket name as a subdomain
https://us-east-1.your-s3-provider.comYour secret access key to connect to your S3 Bucket. Will be encrypted.
my-bucketThe format how the logs will be exported to the bucket.
TEXTExample: NDJSONPossible values: UTC time of endpoint creation
2022-01-01 00:00:00.000000UTC time of endpoint last update
2022-01-01 00:00:00.000000Bad Request
Unauthorized
Internal Server Error
POST /v1/storage/endpoint HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 224
{
"name": "my-s3-bucket",
"container_log_version": "v2",
"access_key_id": "my-access-key-id",
"endpoint": "https://us-east-1.your-s3-provider.com",
"bucket": "my-bucket",
"output_format": "NDJSON",
"secret_access_key": "my-secret-access"
}{
"name": "my-s3-bucket",
"container_log_version": "v2",
"access_key_id": "my-access-key-id",
"endpoint": "https://us-east-1.your-s3-provider.com",
"bucket": "my-bucket",
"output_format": "NDJSON",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}Retrieve an endpoint storage. The secret_access_key won't be displayed.
*/*application/jsonSuccess
Name of the Endpoint Storage
my-s3-endpointv1 (default, legacy) stores 1 file per deployment. v2 (enhanced) streams chunks of logs in real time.
v1Example: v2Possible values: Your access key ID to connect to your S3 Bucket.
my-access-key-idFull URL to your S3 Bucket with https or http. It's recommended to not include your bucket name as a subdomain
https://us-east-1.your-s3-provider.comYour secret access key to connect to your S3 Bucket. Will be encrypted.
my-bucketThe format how the logs will be exported to the bucket.
TEXTExample: NDJSONPossible values: UTC time of endpoint storage creation
2022-01-01 00:00:00.000000UTC time of endpoint storage last update
2022-01-01 00:00:00.000000Bad Request
Unauthorized
Not Found
Internal Server Error
GET /v1/storage/endpoint/{endpoint_name} HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
{
"name": "my-s3-endpoint",
"container_log_version": "v2",
"access_key_id": "my-access-key-id",
"endpoint": "https://us-east-1.your-s3-provider.com",
"bucket": "my-bucket",
"output_format": "NDJSON",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}List all endpoint storage.
220An optional fields mask
*/*application/jsonSuccess
Bad Request
Unauthorized
Internal Server Error
GET /v1/storage/endpoints HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
{
"endpoints": [
{
"name": "my-s3-endpoint",
"container_log_version": "v2",
"access_key_id": "my-access-key-id",
"endpoint": "https://us-east-1.your-s3-provider.com",
"bucket": "my-bucket",
"output_format": "NDJSON",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}
],
"pagination": null
}Update an Endpoint Storage with new specifications.
*/*application/jsonName of the Endpoint Storage
my-s3-endpointv1 (default, legacy) stores 1 file per deployment. v2 (enhanced) streams chunks of logs in real time.
v1Example: v2Possible values: Your access key ID to connect to your S3 Bucket.
my-access-key-idYour secret access key to connect to your S3 Bucket. Will be encrypted.
my-secret-accessFull URL to your S3 Bucket with https or http. It's recommended to not include your bucket name as a subdomain
https://us-east-1.your-s3-provider.comYour secret access key to connect to your S3 Bucket. Will be encrypted.
my-bucketThe format how the logs will be exported to the bucket.
TEXTExample: NDJSONPossible values: Success
Name of the Endpoint Storage
my-s3-endpointv1 (default, legacy) stores 1 file per deployment. v2 (enhanced) streams chunks of logs in real time.
v1Example: v2Possible values: Your access key ID to connect to your S3 Bucket.
my-access-key-idFull URL to your S3 Bucket with https or http. It's recommended to not include your bucket name as a subdomain
https://us-east-1.your-s3-provider.comYour secret access key to connect to your S3 Bucket. Will be encrypted.
my-bucketThe format how the logs will be exported to the bucket.
TEXTExample: NDJSONPossible values: UTC time of endpoint storage creation
2022-01-01 00:00:00.000000UTC time of endpoint storage last update
2022-01-01 00:00:00.000000Bad Request
Unauthorized
Not Found
Internal Server Error
PATCH /v1/storage/endpoint/{endpoint_name} HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 226
{
"name": "my-s3-endpoint",
"container_log_version": "v2",
"access_key_id": "my-access-key-id",
"secret_access_key": "my-secret-access",
"endpoint": "https://us-east-1.your-s3-provider.com",
"bucket": "my-bucket",
"output_format": "NDJSON"
}{
"name": "my-s3-endpoint",
"container_log_version": "v2",
"access_key_id": "my-access-key-id",
"endpoint": "https://us-east-1.your-s3-provider.com",
"bucket": "my-bucket",
"output_format": "NDJSON",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}Delete an endpoint storage. All the application versions linked to it won't be able to store logs anymore.
*/*application/jsonNo Content
No content
Unauthorized
Not Found
Internal Server Error
DELETE /v1/storage/endpoint/{endpoint_name} HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
No content
Create a pull profile. Pull profile will upload data from an endpoint storage to a deployment container on boot. You must link the application version to the pull profile first.
*/*application/jsonName of the pull profile
pull_profile_nameSource in the S3 bucket to fetch from
/my-bucket/config.cfgIf the source is a File or a Directory
FilePossible values: Destination path where your source will be uploaded in your container. Make sure to avoid protected destinations, such as /etc/, as this will prevent the files from being copied to your deployment, and will make your deployment fail. Make sure a normal user can write to the destination folder.
/usr/share/configsSuccess
Name of the pull profile
pull_profile_nameSource in the S3 bucket to fetch from
/my-bucket/config.cfgIf the source is a File or a Directory
FilePossible values: Destination path where your source will be uploaded in your container. Make sure to avoid protected destinations, such as /etc/, as this will prevent the files from being copied to your deployment, and will make your deployment fail. Make sure a normal user can write to the destination folder.
/usr/share/configsUTC time of pull profile creation
2022-01-01 00:00:00.000000UTC time of pull profile last update
2022-01-01 00:00:00.000000Bad Request
Unauthorized
Not Found
Internal Server Error
POST /v1/storage/endpoint/{endpoint_name}/pull-profile HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 117
{
"name": "pull_profile_name",
"source": "/my-bucket/config.cfg",
"source_type": "File",
"destination": "/usr/share/configs"
}{
"name": "pull_profile_name",
"source": "/my-bucket/config.cfg",
"source_type": "File",
"destination": "/usr/share/configs",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}Retrieve a pull profile and its specifications.
*/*application/jsonSuccess
Name of the pull profile
pull_profile_nameSource in the S3 bucket to fetch from
/my-bucket/config.cfgIf the source is a File or a Directory
FilePossible values: Destination path where your source will be uploaded in your container. Make sure to avoid protected destinations, such as /etc/, as this will prevent the files from being copied to your deployment, and will make your deployment fail. Make sure a normal user can write to the destination folder.
/usr/share/configsUTC time of pull profile creation
2022-01-01 00:00:00.000000UTC time of pull profile last update
2022-01-01 00:00:00.000000Bad Request
Unauthorized
Not Found
Internal Server Error
GET /v1/storage/endpoint/{endpoint_name}/pull-profile/{pull_profile_name} HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
{
"name": "pull_profile_name",
"source": "/my-bucket/config.cfg",
"source_type": "File",
"destination": "/usr/share/configs",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}List all pull profiles of an endpoint storage.
220*/*application/jsonSuccess
100Bad Request
Unauthorized
Not Found
Internal Server Error
GET /v1/storage/endpoint/{endpoint_name}/pull-profiles HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
{
"pull_profiles": [
{
"name": "pull_profile_name",
"source": "/my-bucket/config.cfg",
"source_type": "File",
"destination": "/usr/share/configs",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}
],
"total_count": 100,
"pagination": {
"number": 1,
"next_page_number": 2,
"previous_page_number": 1,
"paginator": {
"num_pages": 10
},
"has_next": true,
"has_previous": false
}
}Link a pull profile to an app version. Without a link, the pull profile by itself will do nothing.
*/*application/jsonSuccess
Name of the linked app of the linked version
app_nameName of the linked app version.
version_nameName of the endpoint storage
endpoint_nameName of the pull profile the app version is linked to.
pull_profile_nameUTC time of link creation
2022-01-01 00:00:00.000000UTC time of link last update
2022-01-01 00:00:00.000000Bad Request
Unauthorized
Not Found
Internal Server Error
PUT /v1/storage/endpoint/{endpoint_name}/pull-profile/{pull_profile_name}/app/{app_name}/version/{version_name} HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
{
"app": "app_name",
"app_version": "version_name",
"endpoint": "endpoint_name",
"pull_profile": "pull_profile_name",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}Update a pull profile with new specifications.
*/*application/jsonSuccess
Name of the pull profile
pull_profile_nameSource in the S3 bucket to fetch from
/my-bucket/config.cfgIf the source is a File or a Directory
FilePossible values: Destination path where your source will be uploaded in your container. Make sure to avoid protected destinations, such as /etc/, as this will prevent the files from being copied to your deployment, and will make your deployment fail. Make sure a normal user can write to the destination folder.
/usr/share/configsUTC time of pull profile creation
2022-01-01 00:00:00.000000UTC time of pull profile last update
2022-01-01 00:00:00.000000Bad Request
Unauthorized
Not Found
Internal Server Error
PATCH /v1/storage/endpoint/{endpoint_name}/pull-profile/{pull_profile_name} HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
{
"name": "pull_profile_name",
"source": "/my-bucket/config.cfg",
"source_type": "File",
"destination": "/usr/share/configs",
"create_time": "2022-01-01 00:00:00.000000",
"last_updated": "2022-01-01 00:00:00.000000"
}Unlink a pull profile from an app version. It will not delete the pull profile.
*/*application/jsonSuccess
No content
Bad Request
Unauthorized
Not Found
Internal Server Error
DELETE /v1/storage/endpoint/{endpoint_name}/pull-profile/{pull_profile_name}/app/{app_name}/version/{version_name} HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
No content
Delete a pull profile. All the application versions linked won't receive the data upload anymore. It will not delete your endpoint storage.
*/*application/jsonNo Content
No content
Bad Request
Unauthorized
Not Found
Internal Server Error
DELETE /v1/storage/endpoint/{endpoint_name}/pull-profile/{pull_profile_name} HTTP/1.1
Host: api.edgegap.com
Authorization: YOUR_API_KEY
Content-Type: text
Accept: */*
No content
Last updated
Was this helpful?

