{"app":{"name":"BYOID","version":"0.1.0","description":"Bring Your Own Identity — self-sovereign identifiers anchored on rholo."},"publicUrl":"https://byoid.rhobot.net","chain":{"url":"https://playground.rhobot.net","shardId":null,"writes":true,"anchorPrefix":"byoid","agentName":"byoid:agent:key","faucet":true,"phloLimit":1000000},"providers":[{"id":"google","name":"Google","kind":"OpenID Connect","description":"Sign in with a Google account. Google returns an OIDC subject, email and profile.","scopes":["openid","email","profile"],"docsUrl":"https://developers.google.com/identity/protocols/oauth2/web-server","configure":{"clientIdEnv":"GOOGLE_CLIENT_ID","clientSecretEnv":"GOOGLE_CLIENT_SECRET","extraEnv":[],"redirectUri":"https://byoid.rhobot.net/auth/google/callback"},"mode":"demo","configured":false,"demoProfiles":[{"id":"google-ada","label":"Ada Demo","handle":"ada.demo","email":"ada.demo@example.com"},{"id":"google-grace","label":"Grace Demo","handle":"grace.demo","email":"grace.demo@example.com"}]},{"id":"github","name":"GitHub","kind":"OAuth 2.0","description":"Sign in with GitHub. BYOID reads the profile and the primary verified email.","scopes":["read:user","user:email"],"docsUrl":"https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps","configure":{"clientIdEnv":"GITHUB_CLIENT_ID","clientSecretEnv":"GITHUB_CLIENT_SECRET","extraEnv":[],"redirectUri":"https://byoid.rhobot.net/auth/github/callback"},"mode":"demo","configured":false,"demoProfiles":[{"id":"github-octo","label":"octo-demo","handle":"octo-demo","email":"octo.demo@example.com"},{"id":"github-rho","label":"rho-demo","handle":"rho-demo","email":"rho.demo@example.com"}]},{"id":"facebook","name":"Facebook","kind":"OAuth 2.0","description":"Sign in with Facebook. The Graph API returns the account id, name and email when granted.","scopes":["public_profile","email"],"docsUrl":"https://developers.facebook.com/docs/facebook-login/web","configure":{"clientIdEnv":"FACEBOOK_CLIENT_ID","clientSecretEnv":"FACEBOOK_CLIENT_SECRET","extraEnv":[],"redirectUri":"https://byoid.rhobot.net/auth/facebook/callback"},"mode":"demo","configured":false,"demoProfiles":[{"id":"facebook-ada","label":"Ada Demo","handle":"ada.demo","email":"ada.demo@example.com"},{"id":"facebook-grace","label":"Grace Demo","handle":"grace.demo","email":"grace.demo@example.com"}]},{"id":"apple","name":"Apple","kind":"OpenID Connect","description":"Sign in with Apple. BYOID verifies the Apple identity token and uses the stable Apple subject and optional email.","scopes":["name","email"],"docsUrl":"https://developer.apple.com/documentation/signinwithapplerestapi","configure":{"clientIdEnv":"APPLE_CLIENT_ID","clientSecretEnv":"APPLE_CLIENT_SECRET","extraEnv":["APPLE_TEAM_ID","APPLE_KEY_ID","APPLE_PRIVATE_KEY"],"redirectUri":"https://byoid.rhobot.net/auth/apple/callback"},"mode":"demo","configured":false,"demoProfiles":[{"id":"apple-ada","label":"Ada Demo","handle":"ada.demo","email":"ada.demo@example.com"},{"id":"apple-grace","label":"Grace Demo","handle":"grace.demo","email":"grace.demo@example.com"}]}],"agent":{"issuer":"byoid:agent","kid":"byoid-agent-1","publicJwk":{"kty":"EC","crv":"P-256","x":"upz_hpzSDZl-wy92sCDK8mGGYEiTlNhhuYqcnHLVkLM","y":"oMqDisgncplwsyYZS6kPlfER9kCsz4ZM2u5Dr72W2x4"},"fingerprint":"sha256:nIj0iASmHpUPoBDKx7lt7aFj5h4V94EWpsDVokaJ5pk","createdAt":"2026-11-08T20:05:15.211Z","role":"demo identity-link agent","chainAnchor":{"status":"existing","name":"byoid:agent:key","recordId":"84ESbmnMu-Wy6HNxu7vaI_Z1AAV4HOAPi_uq82UvbdA","publicJwk":{"kty":"EC","crv":"P-256","x":"upz_hpzSDZl-wy92sCDK8mGGYEiTlNhhuYqcnHLVkLM","y":"oMqDisgncplwsyYZS6kPlfER9kCsz4ZM2u5Dr72W2x4"},"blockHash":"92352fdf832db3c0f630a3b56a226cec4c6fcd5cf477ed7f9c902dcb414b45e9","blockNumber":3131}},"limits":{"anchorPerMinute":30,"maxEventBytes":16384},"demoMode":"auto"}
