How to register your own PostHog OAuth app
Register an OAuth app with PostHog and connect it to Tenklo
This guide shows you how to register your own app with PostHog to obtain OAuth credentials. These are required to let your users authorize your app to access their PostHog account.
PostHog supports two approaches to OAuth client registration:
- CIMD (Client ID Metadata Document) — no pre-registration with PostHog needed. Your
client_idis a URL on a domain you control that hosts a JSON metadata document. PostHog fetches this document during the OAuth flow. - Standard registration — contact PostHog's growth team at [email protected] to register an official OAuth integration.
The CIMD approach is the fastest way to get started.
On a domain you control, publish a JSON document at a stable URL (e.g. https://yourapp.example.com/posthog-oauth-client):
{
"client_id": "https://yourapp.example.com/posthog-oauth-client",
"client_name": "Your App Name",
"logo_uri": "https://yourapp.example.com/logo.png",
"redirect_uris": [
"https://api.tenklo.dev/oauth/callback"
]
}The client_id must exactly match the URL where you host this document. The redirect_uris must include https://api.tenklo.dev/oauth/callback.
Configure the integration in Tenklo
In Tenklo, go to Integrations -> PostHog (OAuth) and enter:
- Client ID — the full URL of your metadata document (e.g.
https://yourapp.example.com/posthog-oauth-client) - Client Secret — enter any placeholder value (e.g.
placeholder); PostHog uses PKCE and does not issue a client secret
Tenklo requires a value in the Client Secret field to save the integration, but it is never sent to PostHog. Any non-empty string works.
Follow the Quickstart to connect your first account.
For more details, see PostHog's OAuth documentation.