SDK Configurations (V2)

Evaluate configuration with context

Changed on

Evaluate a configuration with rich identity and context. Recommended equivalent of the evaluated GET when custom properties are non-trivial. Returns the merged configuration with experiment metadata. Supports knownHash for application-level 304 change detection.

post/sdk/v2/configurations/evaluate

Request

  • Base URL
    https://api.gamebeast.gg
  • Auth
    API key in header authorization

Headers

environment'production' | 'development'

Environment alias. Defaults to development when omitted; studio is accepted as a synonym for it. Any alias outside the calling key's environment scope is rejected with 403.

project-idinteger

Request body

configurationstring
knownHashstring

Example request

{
  "configuration": "game-settings",
  "unit": {
    "type": "user",
    "distinctId": "69935436"
  }
}

Response

Default Response

hashstring required
configurationIdnumber required
namestring nullable required
configurationunknown required
updatedAtstring date-time required
requiredPropertiesstring[] required

Example response

{
  "hash": "9f2c4e1ab7d0c3e58f6a2b1d4c7e9f0a3b5d8c1e2f4a6b8d0c2e4f6a8b0d2c4e",
  "configurationId": 12,
  "name": "Game Settings",
  "configuration": {
    "PlayerSpeed": 16,
    "NPCs": {
      "Spider": {
        "Health": 120
      }
    }
  },
  "privacy": [],
  "updatedAt": "2026-09-24T17:00:00.000Z",
  "experiments": [
    {
      "experimentId": 7,
      "groupId": 21,
      "assignmentVersion": 1,
      "source": "weightedHash",
      "exposureProxyRecorded": true
    }
  ],
  "requiredProperties": []
}

Changes

    • info

      added the new optional request property /

    • breaking

      request property //// was restricted to a list of enum values

    • breaking

      the request property //// became not nullable

    • breaking

      the request property //// became not nullable

    • breaking

      the request property //// became not nullable

    • breaking

      the request property //// became not nullable

    • breaking

      the request property //// became not nullable

    • breaking

      the request property //// became not nullable

    • breaking

      the request property //// became not nullable

    • breaking

      the //// request property type changed from null to string null

    • breaking

      the //// request property type changed from no type to string null

    • breaking

      the //// request property type changed from no type to string null

    • breaking

      the //// request property type changed from no type to string null

    • breaking

      the //// request property type changed from no type to string null

    • breaking

      the //// request property type changed from no type to string null

    • breaking

      the //// request property type changed from no type to string null

    • breaking

      the //// request property type changed from no type to string null

    • breaking

      the response property became nullable for the status

    • breaking

      the response's property type changed from no type to string null for status

    • info

      for the header request parameter project-id, the exclusiveMinimum was decreased from true to 0.00

    • info

      added the new undefined enum value to the request property ////

    • info

      added the media type application/json for the response with the status

    • info

      removed subschema #1 subschema #2 from the response property anyOf list for the response status

    • info

      the response's property pattern was changed from ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$ to ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$ for the status