Applications

An Application (also referred to as a Game) represents a product you support through Keme. Each application belongs to an organisation and maps to one or more workspaces. Applications hold SDK keys that authenticate your client SDKs (Android, iOS, Unity, Unreal, JavaScript, and more) when they communicate with the Keme ingestion pipeline.

A typical setup looks like this: one organisation owns several applications — one per published title — and each application has separate SDK keys per platform so you can rotate them independently without affecting other platforms.

Note:All endpoints below require a valid Bearer token in the Authorization header. SDK key endpoints additionally require the caller to hold the applications:write scope within their organisation role.

List applications

Returns a paginated list of all applications belonging to the specified organisation. Results are ordered by creation date descending (newest first).

GET/v1/applications🔒 Auth required

List all applications for an organisation.

Query Parameters
ParameterTypeRequiredDescription
organizationIdstringRequiredThe unique identifier of the organisation whose applications you want to list.
limitnumberOptionalMaximum number of results to return per page. Default: 20. Max: 100.
offsetnumberOptionalZero-based offset for pagination. Default: 0.
Response
200
json
1{
2 "total": 3,
3 "data": [
4 {
5 "id": "app_01hx7k2n9qzpfv3rwtce8ybmjd",
6 "name": "Galaxy Racer",
7 "slug": "galaxy-racer",
8 "platforms": [
9 "android",
10 "ios"
11 ],
12 "sdkKeyCount": 2,
13 "createdAt": "2026-01-14T09: 22: 00.000Z"
14 },
15 {
16 "id": "app_01hx7k2n9qzpfv3rwtce8ybmje",
17 "name": "Neon Drift Online",
18 "slug": "neon-drift-online",
19 "platforms": [
20 "unity",
21 "unreal"
22 ],
23 "sdkKeyCount": 4,
24 "createdAt": "2025-11-03T16: 45: 00.000Z"
25 },
26 {
27 "id": "app_01hx7k2n9qzpfv3rwtce8ybmjf",
28 "name": "Starfall Tactics",
29 "slug": "starfall-tactics",
30 "platforms": [
31 "javascript"
32 ],
33 "sdkKeyCount": 1,
34 "createdAt": "2025-08-19T11: 00: 00.000Z"
35 }
36 ]
37}

Create application

Creates a new application within the specified organisation. The slug must be URL-safe, lowercase, and unique within the organisation. It cannot be changed after creation.

POST/v1/applications🔒 Auth required

Create a new application (game) inside an organisation.

Request Body
ParameterTypeRequiredDescription
organizationIdstringRequiredThe organisation that will own this application.
namestringRequiredHuman-readable display name for the application. Max 120 characters.
slugstringRequiredURL-safe, lowercase identifier (letters, numbers, hyphens). Immutable after creation.
platformsstring[]OptionalArray of target platforms. Accepted values: android, ios, unity, unreal, javascript, other.
descriptionstringOptionalShort description of the game shown in the Keme dashboard. Max 500 characters.
Response
201
json
1{
2 "id": "app_01hx7k2n9qzpfv3rwtce8ybmjd",
3 "name": "Galaxy Racer",
4 "slug": "galaxy-racer",
5 "platforms": [
6 "android",
7 "ios"
8 ],
9 "description": "High-speed competitive racing game for mobile platforms.",
10 "sdkKeys": [],
11 "createdAt": "2026-06-15T08: 00: 00.000Z"
12}

Get application

Retrieves a single application by its unique identifier. The response includes the application metadata but not the full SDK key values (use the SDK keys endpoint to list those).

GET/v1/applications/:id🔒 Auth required

Fetch a single application by ID.

Path Parameters
ParameterTypeRequiredDescription
idstringRequiredThe unique application identifier (prefixed with app_).
Response
200
json
1{
2 "id": "app_01hx7k2n9qzpfv3rwtce8ybmjd",
3 "name": "Galaxy Racer",
4 "slug": "galaxy-racer",
5 "platforms": [
6 "android",
7 "ios"
8 ],
9 "description": "High-speed competitive racing game for mobile platforms.",
10 "logoUrl": "https://cdn.kemegames.com/logos/galaxy-racer.png",
11 "sdkKeyCount": 2,
12 "createdAt": "2026-01-14T09: 22: 00.000Z",
13 "updatedAt": "2026-05-20T14: 10: 00.000Z"
14}

Update application

Partially updates an application. Only the fields you include in the request body are modified — all others remain unchanged. The slug and organizationId fields are immutable and cannot be changed after creation.

PATCH/v1/applications/:id🔒 Auth required

Partially update an application's metadata.

Path Parameters
ParameterTypeRequiredDescription
idstringRequiredThe unique application identifier.
Request Body
ParameterTypeRequiredDescription
namestringOptionalNew display name for the application. Max 120 characters.
platformsstring[]OptionalReplaces the full platforms list. Accepted values: android, ios, unity, unreal, javascript, other.
descriptionstringOptionalUpdated description. Pass an empty string to clear it.
logoUrlstringOptionalPublicly accessible URL to the application logo image. Recommended size: 256×256 px.
Response
200
json
1{
2 "id": "app_01hx7k2n9qzpfv3rwtce8ybmjd",
3 "name": "Galaxy Racer: Overdrive",
4 "slug": "galaxy-racer",
5 "platforms": [
6 "android",
7 "ios",
8 "unity"
9 ],
10 "description": "Rebranded edition of the high-speed competitive racing game.",
11 "logoUrl": "https://cdn.kemegames.com/logos/galaxy-racer-overdrive.png",
12 "sdkKeyCount": 2,
13 "updatedAt": "2026-06-15T09: 00: 00.000Z"
14}

List SDK keys

Returns all SDK keys issued for an application. Key values are masked in list responses — only the last four characters are visible. The full key is only returned once, at the moment of creation.

GET/v1/applications/:id/sdk-keys🔒 Auth required

List all SDK keys belonging to an application.

Path Parameters
ParameterTypeRequiredDescription
idstringRequiredThe unique application identifier.
Response
200
json
1{
2 "data": [
3 {
4 "id": "key_01hx7k2n9qzpfv3rwtce8ybmjd",
5 "key": "kem_sdk_live_••••••••••••jd",
6 "name": "Production Android",
7 "platform": "android",
8 "createdAt": "2026-01-14T09: 30: 00.000Z"
9 },
10 {
11 "id": "key_01hx7k2n9qzpfv3rwtce8ybmje",
12 "key": "kem_sdk_live_••••••••••••je",
13 "name": "Production iOS",
14 "platform": "ios",
15 "createdAt": "2026-01-14T09: 31: 00.000Z"
16 }
17 ]
18}

Create SDK key

Issues a new SDK key for the specified application. Use a descriptive name so you can identify the key later (e.g. Production Android or QA Unity Build). Each key is scoped to a single platform.

POST/v1/applications/:id/sdk-keys🔒 Auth required

Generate a new SDK key for an application.

Path Parameters
ParameterTypeRequiredDescription
idstringRequiredThe unique application identifier.
Request Body
ParameterTypeRequiredDescription
namestringRequiredHuman-readable label for this key, e.g. "Production Android". Max 80 characters.
platformstringRequiredTarget platform for this key. Must be one of: android, ios, unity, unreal, javascript, other.
Response
201
json
1{
2 "id": "key_01hx7k2n9qzpfv3rwtce8ybmjd",
3 "key": "kem_sdk_live_01hx7k2n9qzpfv3rwtce8ybmjd",
4 "name": "Production Android",
5 "platform": "android",
6 "createdAt": "2026-06-15T09: 00: 00.000Z"
7}
Warning:The full SDK key value (key) is returned only once at creation time and cannot be retrieved again. Store it immediately in a secure secrets manager. If lost, you must revoke the key and issue a new one.

SDK key format

All Keme SDK keys follow a structured prefix convention so you can identify their environment at a glance:

  • kem_sdk_live_ — production key; charges apply for events ingested.
  • kem_sdk_test_ — sandbox key; events are processed but not billed and do not appear in production dashboards.
Example: initialise the Android SDK with a live key
1# Pass the key as an environment variable — never hard-code it in source
2export KEME_SDK_KEY="kem_sdk_live_01hx7k2n9qzpfv3rwtce8ybmjd"
3
4# The Android SDK reads KEME_SDK_KEY automatically at runtime
5./gradlew assembleRelease

Object reference

Application object

Application
1{
2 "id": "app_01hx7k2n9qzpfv3rwtce8ybmjd",
3 "name": "Galaxy Racer",
4 "slug": "galaxy-racer",
5 "platforms": [
6 "android",
7 "ios"
8 ],
9 "description": "High-speed competitive racing game for mobile.",
10 "logoUrl": "https://cdn.kemegames.com/logos/galaxy-racer.png",
11 "sdkKeyCount": 2,
12 "organizationId": "org_01hx7k2n9qzpfv3rwtce8ybmja",
13 "createdAt": "2026-01-14T09: 22: 00.000Z",
14 "updatedAt": "2026-05-20T14: 10: 00.000Z"
15}

SDK key object

SDK key (creation response — full key visible)
1{
2 "id": "key_01hx7k2n9qzpfv3rwtce8ybmjd",
3 "key": "kem_sdk_live_01hx7k2n9qzpfv3rwtce8ybmjd",
4 "name": "Production Android",
5 "platform": "android",
6 "applicationId": "app_01hx7k2n9qzpfv3rwtce8ybmjd",
7 "createdAt": "2026-06-15T09: 00: 00.000Z"
8}
Last updated: June 15, 2026Edit this page