---
title: "Authenticated \"last step\" of the two-step signup — submit application fields"
method: POST
path: "/api/me/signup"
tags: ["me"]
---

# Authenticated "last step" of the two-step signup — submit application fields

`POST /api/me/signup`

## Request

- Base URL: `https://api.signalraven.ai`
- URL: `https://api.signalraven.ai/api/me/signup`
- Auth: none declared

The OAuth path of the auth-first two-step signup: the provider proved the email at step 1; this submits the four application fields from /signup/apply. Same validation/rate-limit/dedup core as POST /api/public/signup (the email path). Guarded to incomplete users and expired-application re-signups.

## Request body

- MeSignupBody
  - `contactName` string, required
  - `contactTitle` string, required
  - `websiteUrl` string, required
  - `linkedinUrl` string, required
  - `referralCode` string

## Response `201`

Application created and queued for review

- MeSignupResponse
  - `id` string, uuid, required
  - `status` string, required

## Other responses

- `400`: Validation error
- `401`: Not authenticated
- `409`: Already submitted
- `429`: Rate limited

---

[API](https://skmtc.dev/signalraven/apis/zygnal-api.md) · [All operations](https://skmtc.dev/signalraven/apis/zygnal-api/llms.txt) · [OpenAPI document](https://skmtc.dev/signalraven/apis/zygnal-api/revisions/36e1d9b9d604?raw)
