---
title: "Provision a new user"
method: POST
path: "/v1/auth/provision"
tags: ["auth"]
---

# Provision a new user

`POST /v1/auth/provision`

## Request

- Base URL: `https://api.slideforge.dev`
- URL: `https://api.slideforge.dev/v1/auth/provision`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Create a SlideForge user, wallet, and API key from an OAuth user. Called by the web frontend server-side route, authenticated via X-Provision-Secret header.

## Request body

- ProvisionRequest
  - `user_id` string
  - `email` string
  - `name` string

## Response `200`

User provisioned with API key

- unknown

## Other responses

- `403`: Invalid provision secret
- `409`: User already exists (returns existing API key prefix)
- `422`: Validation Error

---

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