> ## Documentation Index
> Fetch the complete documentation index at: https://docs.synheart.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Apps register & manage

> Register apps in a project, find the app workspace and credentials, and edit or remove apps on the Synheart Platform

An **App** is one mobile or web application connected to the Synheart Platform. Apps live inside a [project](/platform/projects), and each app is the unit where you configure [API keys](/platform/api-keys), [attestation](/platform/app-attestation), [policy](/platform/app-policy), [consent profiles](/platform/consent-profiles), and [Syni](/platform/syni).

This page covers registering an app, the app workspace, downloading credentials, and editing or deleting an app. For first-time onboarding context, see the [Developer portal](/platform/developer-portal).

## App identifiers

Each app carries two distinct identifiers; don't conflate them:

| Identifier                   | What it is                                                                              | Where you see it                                                |
| ---------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------- |
| Platform **`app_id`**        | A short code or UUID the platform assigns at registration (e.g. `app_focus_and_kB8mPx`) | App card subtitle, workspace header, credentials JSON, API keys |
| **Package name / bundle ID** | Your Android `packageName` or iOS bundle ID (e.g. `com.example.focus`)                  | Set in the registration form as **App ID / Package Name**       |

<Note>
  The registration form labels the store identifier field **App ID / Package Name**, but that value is your **`bundle_id`**, not the platform `app_id`. The platform `app_id` is generated for you and appears in credential downloads and support references.
</Note>

***

## The apps list

Open **Apps** from the project sidebar. The page shows all apps linked to this project.

Each app appears as a card showing its name, platform badge (OS), and its identifier line. A results line reads **`{filtered} of {total} apps`**.

* **Search**: match by name, description, or category.
* **Filters**: narrow by **Category** and **Operating system** chips; **Reset filters** clears everything.
* Clicking a card opens that app's workspace at **Sessions**.

Card hover actions include **Edit app**, **Purge analytics data**, **Delete app** (owner only), and **Remove from project**.

***

## Register an app

Apps must be created inside a project. From **Apps**, click **Add App** to open the **Add New App** drawer (*"Add a new app to this project and start tracking ingestion."*) and complete the form:

| Form field                | Description                                                                                |
| ------------------------- | ------------------------------------------------------------------------------------------ |
| **Operating System**      | `Android`, `iOS`, `macOS`, `Windows`, `Linux`, or `Web`                                    |
| **App ID / Package Name** | Your Android `packageName` or iOS bundle ID (the helper text adapts to the selected OS)    |
| **App Name**              | Display name for the app                                                                   |
| **Category**              | Health & Wellness, Communication, Gaming, Entertainment, Productivity, Education, or Other |
| **Description**           | Optional; shown in the form (max 500 characters)                                           |
| **SDK Configuration**     | Optional attestation block (see below)                                                     |

<Tip>
  Use **Auto-fill** after entering the OS and package name to pull store metadata (name, icon) automatically.
</Tip>

The optional **SDK Configuration** block pre-seeds [attestation](/platform/app-attestation) settings: **Google Project ID** and **Allow development builds** on Android, or **Apple Developer Team ID** and **Allow development builds** on iOS. You can also configure these later in app settings.

On success, the platform assigns the app a platform `app_id` and links it to the project.

<Note>
  During **early access**, registering new apps may be disabled and replaced with an early-access notice.
</Note>

***

## The app workspace

Opening an app switches the sidebar to **App** navigation and shows a header card with the app icon, name, the platform `app_id` (monospace), and the category. A breadcrumb reads `Projects / {project} / Apps / {app}`.

| App sidebar label    | Documentation                                                                                 |
| -------------------- | --------------------------------------------------------------------------------------------- |
| **Sessions**         | [Connect & view data](/platform/connect-and-view-data#step-3--view-imported-session-data)     |
| **Wearables**        | [Connect & view data](/platform/connect-and-view-data#step-2--connect-a-wearable-integration) |
| **API Keys**         | [API keys](/platform/api-keys)                                                                |
| **Consent profiles** | [Consent profiles](/platform/consent-profiles)                                                |
| **App policy**       | [App policy](/platform/app-policy)                                                            |
| **Syni**             | [Syni](/platform/syni)                                                                        |
| **App settings**     | This page                                                                                     |

The app landing route redirects to **Sessions**; there is no separate overview tab.

### Download app credentials

The workspace header has a **Download App Credentials (.json)** button. It produces an `app-credentials.json` file containing the four non-secret identifiers your SDK and tooling need:

```json theme={null}
{
  "org_id": "…",
  "tenant_id": "…",
  "project_id": "…",
  "app_id": "…"
}
```

<Note>
  This file contains **no secrets**. To download credentials that include the secret key and signing secret, generate them in the one-time dialog under [API keys](/platform/api-keys#generate-a-key).
</Note>

***

## App settings

Open **App settings** from the app sidebar. The page covers app details and SDK attestation; this section documents everything except the attestation block (see [App attestation](/platform/app-attestation) for that).

### App details

Click **Edit** to make the **App details** fields editable, then **Save changes**:

| Field                | Description                                     |
| -------------------- | ----------------------------------------------- |
| **Name**             | App display name (required, max 100 characters) |
| **Category**         | App category (max 200 characters)               |
| **Operating system** | `ios` or `android`                              |
| **Icon URL**         | URL of the app icon image                       |

<Warning>
  The **package name / bundle ID** is set at registration and is **not editable** on this page. Register a new app if you need a different store identifier. During early access, editing app details may be disabled.
</Warning>

### Danger zone

| Action                    | What it does                                                                                                                                            | Who can run it                                     |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- |
| **Purge ingestion data…** | Permanently removes ingested data (HSI v1 ingests and lab metadata/sessions) for this app only. *"App settings, API keys, and policy are not removed."* | Org/tenant admin or project admin (not developers) |
| **Delete this app**       | Removes the app from the platform and permanently deletes its analytics data. *"This cannot be undone."*                                                | App owner                                          |

After a purge, a confirmation shows approximate row counts removed (HSI, lab metadata, lab sessions). Deleting an app returns you to the project apps list.

***

## Remove vs. delete

| Action                   | Surface                  | Effect                                                    |
| ------------------------ | ------------------------ | --------------------------------------------------------- |
| **Remove from project**  | Apps list card menu      | Unlinks the app from this project                         |
| **Delete app**           | Apps list / App settings | Permanently deletes the app and its ingested data         |
| **Purge ingestion data** | Apps list / App settings | Deletes ingested data but keeps the app, keys, and policy |

***

## Next

<CardGroup cols={2}>
  <Card title="API keys" icon="key" href="/platform/api-keys">
    Generate and scope per-app keys for the SDKs and your backend.
  </Card>

  <Card title="App attestation" icon="shield-check" href="/platform/app-attestation">
    Configure Play Integrity (Android) and App Attest (iOS) for the app.
  </Card>

  <Card title="App policy" icon="shield-halved" href="/platform/app-policy">
    Set what data the app may collect and where it may be processed.
  </Card>

  <Card title="Connect & view data" icon="route" href="/platform/connect-and-view-data">
    Connect a wearable and inspect the session data the app produces.
  </Card>
</CardGroup>
