https://api.dev.bifrostgaming.com/v1/graphqlpartnerGetTestServers
v1Returns the current status and details of all servers created with mode "TEST" for this partner. Use this to verify your API integration is working correctly before creating LIVE servers.
Operation Type
Mutation
Rate Limit: 30 requests per minute per partner
Rate limits are applied per partner. Bulk operations should be spaced out.
Important usage notes
- This endpoint only returns servers created with mode: "TEST". LIVE servers are not included.
- No action field is needed in the encrypted payload — only timestamp and nonce are required.
- Use this endpoint to verify your integration after creating test servers, changing their status, or deleting them.
- TEST servers are excluded from billing calculations. They exist solely for integration testing.
- The response includes all server details and their current billing status, so you can verify each operation worked correctly.
Input Fields
| Field | Type | Required | Description |
|---|---|---|---|
partnerId | String! | Required | Your unique partner identifier. This was provided to you when your partner account was created. |
encryptedData | String! | Required | Your JSON payload encrypted with AES-256-GCM using your partner encryption key, then Base64 encoded. See the Encryption Guide for details. |
Encrypted Payload Fields
| Field | Type | Required | Description |
|---|---|---|---|
timestamp | Number | Required | Current time in Unix milliseconds. Must be within 5 minutes of server time. |
nonce | String | Required | A unique random string, at least 16 characters. Use a UUID or similar. |
These fields make up the JSON payload that is encrypted with AES-256-GCM before being sent as encryptedData.
Code Examples
# Step 1: Encrypt your payload (see Encryption Guide)
# Step 2: Send the encrypted payload
curl -X POST https://api.dev.bifrostgaming.com/v1/graphql \
-H "Content-Type: application/json" \
-d '{
"query": "mutation PartnerGetTestServers($input: PartnerServerActionInput!) { partnerGetTestServers(input: $input) { success statusCode message servers { serverId serverName serverGameType serverIP serverQueryPort serverRCONPort serverCountry serverTimezone serverPlatform serverActive billingStatus billingStatusChangedAt createdAt } } }",
"variables": {
"input": {
"partnerId": "your-partner-id",
"encryptedData": "BASE64_ENCRYPTED_PAYLOAD_HERE"
}
}
}'Postman Collection
Download a ready-to-use Postman collection for this endpoint. Import it into Postman to start testing immediately.
How to import into Postman
- Open Postman and click Import (top-left)
- Drag and drop the downloaded
.jsonfile, or click Upload Files and select it - Click Import to confirm
- The collection appears in your sidebar — expand it and select the request
- In the Body tab, update the placeholder values (
your-partner-id, etc.) with your actual credentials - Click Send
The collection uses Postman's GraphQL body type, which provides syntax highlighting and variable editing. Make sure your Postman version is 7.2+ for GraphQL support.
Success Response200
{
"data": {
"partnerGetTestServers": {
"success": true,
"statusCode": 200,
"message": "Found 2 test server(s)",
"servers": [
{
"serverId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"serverName": "My Test Server #1",
"serverGameType": "HLL",
"serverIP": "203.0.113.50",
"serverQueryPort": 27015,
"serverRCONPort": 27020,
"serverCountry": "US",
"serverTimezone": "America/New_York",
"serverPlatform": "PC",
"serverActive": true,
"billingStatus": "ACTIVEFREE",
"billingStatusChangedAt": "2026-03-13T10:30:00.000Z",
"createdAt": "2026-03-13T10:30:00.000Z"
},
{
"serverId": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"serverName": "My Test Server #2",
"serverGameType": "HLL",
"serverIP": "203.0.113.51",
"serverQueryPort": 27015,
"serverRCONPort": 27020,
"serverCountry": "GB",
"serverTimezone": "Europe/London",
"serverPlatform": "PC",
"serverActive": false,
"billingStatus": "CANCELLED",
"billingStatusChangedAt": "2026-03-13T12:00:00.000Z",
"createdAt": "2026-03-13T10:45:00.000Z"
}
]
}
}
}Error Responses
Response Fields
| Field | Type | Required | Description |
|---|---|---|---|
success | Boolean | Required | true if the request was processed successfully. |
statusCode | Int | Required | HTTP-style status code. 200 = ok, 400 = bad request, 401 = unauthorized, 500 = error. |
message | String | Required | A human-readable description of the result, including the number of test servers found. |
servers | [PartnerTestServer] | Optional | Array of test server objects. Only present on success. Empty array if no test servers exist. |
servers[].serverId | ID | Required | The unique server ID. Use this for Change Server Status and Delete Server actions. |
servers[].serverName | String | Required | The display name of the server. |
servers[].serverGameType | String | Required | Game type (e.g. "HLL"). |
servers[].serverIP | String | Required | Server IP address. |
servers[].serverQueryPort | Int | Required | Server query port. |
servers[].serverRCONPort | Int | Required | Server RCON port. |
servers[].serverCountry | String | Required | ISO country code. |
servers[].serverTimezone | String | Required | IANA timezone. |
servers[].serverPlatform | String | Required | Platform: "PC" or "CONSOLE". |
servers[].serverActive | Boolean | Required | Whether the server is currently active (false if cancelled). |
servers[].billingStatus | String | Required | Current billing status (e.g. ACTIVEFREE, INACTIVE, CANCELLED). |
servers[].billingStatusChangedAt | String | Required | ISO 8601 timestamp of when the billing status was last changed. |
servers[].createdAt | String | Required | ISO 8601 timestamp of when the server was created. |