---
title: "Start linking a Google identity onto the signed-in user"
method: POST
path: "/api/v1/me/identities/google"
tags: ["Account"]
---

# Start linking a Google identity onto the signed-in user

`POST /api/v1/me/identities/google`

## Request

- Base URL: `https://api.uptimemonitoring.com`
- URL: `https://api.uptimemonitoring.com/api/v1/me/identities/google`
- Auth: HTTP bearer

Session-only (`403 {"error":"session_required"}` for an API key or
an OAuth JWT). Mints a single-use ticket and returns the
`POST /oauth/google/link` form target plus the raw ticket — the SPA
submits these as a top-level form POST (never a redirect carrying
the ticket in a query string: it is a live bearer credential for 10
minutes and must never appear in a URL or request log). The user
then completes Google's consent screen, and the callback links the
resulting identity onto this session's user.

Not mounted at all unless Google sign-in is configured — `404`
otherwise (distinct from this handler's own `503`, which covers the
case where `GET /api/v1/me` and the email-link endpoints are
mounted but Google specifically is not).

## Response `201`

Ticket minted.

- object
  - `link_url` string, uri
  - `link_ticket` string

## Other responses

- `403`: Caller did not authenticate via a dashboard session.
- `404`: Google sign-in not configured.
- `503`: Google sign-in is not configured.

---

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