---
title: "Complete Login"
method: GET
path: "/api/auth/complete-login"
tags: ["auth"]
---

# Complete Login

`GET /api/auth/complete-login`

## Request

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

Step 2 of the Google Sign-In redirect flow.

This is a same-origin GET, so the browser sends both the
``sim_session`` cookie (anonymous session) and the ``grl_credential``
cookie (verified JWT from step 1).  We delegate to the existing
``login()`` handler for full attribution, analytics, and anonymous
session promotion.

## Response `200`

Successful Response

- unknown

---

[API](https://skmtc.dev/retirementlab/apis/income-simulator-api.md) · [All operations](https://skmtc.dev/retirementlab/apis/income-simulator-api/llms.txt) · [OpenAPI document](https://skmtc.dev/retirementlab/apis/income-simulator-api/revisions/b0f00a0333fd?raw)
