Skip to main content
A local Mesh SDK session requires no portal account or API key. OfflineID and Proof of Location need the public App ID and a signed-in user’s session, not an API key. An app API key is needed only for hosted MCP, Mesh SDK telemetry and CLI use in CI. Hosted OfflineID endpoints use a user JWT; do not substitute an API key for that token. The developer portal supports scoped app API keys, organization keys, telemetry controls, Proof of Location and self-service billing.

Create an application

Sign in with an email code at dev.offlineprotocol.com. Create or select an organization, then choose Create application. In the application’s API keys tab, copy the App ID (app_...). Pass this value as appId to React 0.2.0, React Native 0.3.3 or Proof of Location. It is not the Mesh SDK’s mesh app identifier. It is not a secret and is not a device’s off1… address.

Create a key

Only organization Owners and Admins can create or delete keys. In the application’s API keys tab:
  1. Choose Create key and name the credential.
  2. Choose a product: OfflineID, Mesh SDK, Proof of Location or All products.
  3. Choose Full access, Read & write or Read only for the required operation.
  4. Copy the secret immediately. Offline Protocol stores only a hash of it, so it cannot be shown again or recovered; the list shows a masked preview such as ••••xxxx. Replace a lost key with a new one.
Keep server credentials in a secret manager. Do not embed broad organization credentials in browser or mobile apps.

Enable SDK telemetry

Telemetry is the client-side credential exception:
  1. Create a dedicated application key scoped to Mesh SDK only, used for nothing else. Do not use an All products key or your CLI key. The key ships inside your app, so treat it as extractable: anyone holding it can send telemetry that counts toward your usage. The permission level does not restrict telemetry ingest. Set a billing limit for telemetry, and rotate the key in the portal if you see unexpected events.
  2. Enable telemetry in the application’s Mesh SDK tab. If it is off, ingest returns 403 telemetry_disabled.
  3. Pass the key and App ID to enableTelemetry.
Use Mesh SDK v0.30.0 or later for telemetry. In 0.26.0 to 0.29.0 the telemetry uploader trusted a wider set of certificate roots than the telemetry endpoint needs; v0.30.0 trusts only the roots that issue its certificate. See upgrade from v0.29. The key ships in the application binary and can be extracted. Scope it to this application, monitor usage, and delete it if exposed or abused. Telemetry events are metered; local peer-to-peer traffic is never metered on any plan. Disabling telemetry does not turn off local mesh operation.

Replace or delete a key

Create a replacement, update the consuming deployment, and verify requests before removing the old key. Choose Delete key and enter the key’s name to confirm. Deletion revokes hosted access; it does not erase local device identity or application records.

Organization keys and roles

Organization keys are under Settings → Advanced → Organization keys. Use an app API key for an application-specific integration; do not distribute an organization key in a client. Organization keys are not accepted by the CLI or hosted MCP. Both require an app API key. Roles are Owner, Admin, Developer, Billing, Analyst and Viewer. Developer and Viewer members can be restricted to selected applications; the other roles have access to every application in the organization.

CLI credentials

offline login opens the portal’s CLI approval page, where you confirm the code shown in the terminal. Each approved login creates a new app API key for that terminal. offline logout clears local credentials and revokes that key; keys created in the portal stay active until you delete them. See CLI login.

Portal sessions and account deletion

A portal sign-in lasts 30 days and renews while you use the portal, up to 90 days after sign-in. Signing out ends that session. To delete your developer account, first transfer or delete each organization you own, then delete the account from Your account in the portal sidebar. The request signs you out everywhere and revokes keys created by CLI logins; the account is deleted 30 days later, and signing in before then cancels the deletion.