---
title: "Sign in with Google"
method: POST
path: "/auth/google"
tags: ["auth"]
---

# Sign in with Google

`POST /auth/google`

## Request

- Base URL: `https://api.sytecheck.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.sytecheck.app/auth/google`
- Auth: none declared

Exchange a Google ID token for access and refresh tokens, creating an account if needed.

## Request body

- GoogleAuthRequest
  - `credential` string, required
  - `attribution` SignupAttribution: What the browser saw on the visit that led to sign-up. Captured by the SPA on landing (``frontend/src/utils/attribution.ts``) and sent with the registration request. Every field is optional: a direct visit has no referrer and most links carry no UTM tags.
    - `referrer_host` string, nullable
    - `utm_source` string, nullable
    - `utm_medium` string, nullable
    - `utm_campaign` string, nullable
    - `landing_path` string, nullable
  - `offer_code` string, nullable

## Response `200`

Successful Response

- TokenResponse
  - `access_token` string, required
  - `refresh_token` string, required
  - `token_type` string
  - `offer_status` 'claimed' | 'invalid', nullable

## Other responses

- `422`: Validation Error

---

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