Skip to content

Authentication

Authentication is handled by node1-auth-service. It supports email/password, Google OAuth, GitHub OAuth, guest login, and API keys.

Admin — users

Configured via Admin. Users register and log in with email via verification code or magic link.

  1. Create a Google OAuth client in Google Cloud Console
  2. In Google Console, add your frontend domain to Authorized JavaScript origins (e.g. https://your-domain.com) — Google uses popup mode, no redirect callback needed
  3. Log in to Admin → Projects → select your project → OAuth Providers
  4. Enable Google, paste the Client ID, save

Enable “Continue with GitHub” login:

  1. Go to GitHub Developer Settings → OAuth Apps
  2. Click New OAuth App
  3. Fill in:
    • Application name: Your app name
    • Homepage URL: Your app URL (e.g. https://app.zship.ai)
    • Authorization callback URL: https://{your-domain}/auth/callback
  4. Copy Client ID and Client Secret
  1. Log in to admin
  2. Go to Projects → select your project → OAuth Providers
  3. Enable GitHub, paste Client ID and Client Secret
  4. Save

The “Continue with GitHub” button will appear on the login page.

Users can create API keys in the dashboard. Keys are stored in node1-auth and used for programmatic access (e.g. AI gateway).

Admin — user API keys

Optional guest (anonymous) sessions for trying the product before full registration.

Admin — guest users

  • Users (/users) — User list, credit adjustments
  • Credits (/credits) — Credit management