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.
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).
/v1/applications🔒 Auth requiredList all applications for an organisation.
| Parameter | Type | Required | Description |
|---|---|---|---|
| organizationId | string | Required | The unique identifier of the organisation whose applications you want to list. |
| limit | number | Optional | Maximum number of results to return per page. Default: 20. Max: 100. |
| offset | number | Optional | Zero-based offset for pagination. Default: 0. |
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.
/v1/applications🔒 Auth requiredCreate a new application (game) inside an organisation.
| Parameter | Type | Required | Description |
|---|---|---|---|
| organizationId | string | Required | The organisation that will own this application. |
| name | string | Required | Human-readable display name for the application. Max 120 characters. |
| slug | string | Required | URL-safe, lowercase identifier (letters, numbers, hyphens). Immutable after creation. |
| platforms | string[] | Optional | Array of target platforms. Accepted values: android, ios, unity, unreal, javascript, other. |
| description | string | Optional | Short description of the game shown in the Keme dashboard. Max 500 characters. |
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).
/v1/applications/:id🔒 Auth requiredFetch a single application by ID.
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | Required | The unique application identifier (prefixed with app_). |
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.
/v1/applications/:id🔒 Auth requiredPartially update an application's metadata.
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | Required | The unique application identifier. |
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Optional | New display name for the application. Max 120 characters. |
| platforms | string[] | Optional | Replaces the full platforms list. Accepted values: android, ios, unity, unreal, javascript, other. |
| description | string | Optional | Updated description. Pass an empty string to clear it. |
| logoUrl | string | Optional | Publicly accessible URL to the application logo image. Recommended size: 256×256 px. |
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.
/v1/applications/:id/sdk-keys🔒 Auth requiredList all SDK keys belonging to an application.
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | Required | The unique application identifier. |
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.
/v1/applications/:id/sdk-keys🔒 Auth requiredGenerate a new SDK key for an application.
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | string | Required | The unique application identifier. |
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Required | Human-readable label for this key, e.g. "Production Android". Max 80 characters. |
| platform | string | Required | Target platform for this key. Must be one of: android, ios, unity, unreal, javascript, other. |
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}
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.
1# Pass the key as an environment variable — never hard-code it in source2export KEME_SDK_KEY="kem_sdk_live_01hx7k2n9qzpfv3rwtce8ybmjd"34# The Android SDK reads KEME_SDK_KEY automatically at runtime5./gradlew assembleRelease
Object reference
Application object
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
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}