---
title: "Start social authentication"
method: POST
path: "/api/auth/social/{provider}/start"
tags: ["Auth"]
---

# Start social authentication

`POST /api/auth/social/{provider}/start`

## Request

- Base URL: `https://demo.hitkeep.com`
- URL: `https://demo.hitkeep.com/api/auth/social/{provider}/start`
- Auth: none declared

Starts a login, signup, or invitation flow using authorization code, browser-bound one-time state, PKCE S256, and an OIDC nonce where applicable. Return URLs are restricted to safe local application paths.

## Path parameters

- `provider` 'google' | 'github' | 'microsoft', required

## Request body

- SocialStartRequest
  - `flow` 'login' | 'signup' | 'invite', required
  - `invite_token` string
  - `remember_me` boolean
  - `return_url` string: Optional safe local application path.

## Response `200`

Provider authorization URL

- SSOStartResponse
  - `auth_url` string, uri, required

## Other responses

- `400`: Invalid flow
- `404`: Provider or social signup unavailable
- `503`: Provider unavailable

---

[API](https://skmtc.dev/hitkeep/apis/hitkeep-rest-api.md) · [All operations](https://skmtc.dev/hitkeep/apis/hitkeep-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hitkeep/apis/hitkeep-rest-api/revisions/bb2df36ab2a4?raw)
