---
title: "Create Profile"
method: POST
path: "/api/profile/create"
tags: ["Profile"]
---

# Create Profile

`POST /api/profile/create`

Create user profile after signup. Honors account_type from onboarding; defaults to 'user'.

## Request body

- ProfileCreateRequest
  - `account_type` 'user' | 'enterprise' — Account type: determines billing mode and allowed API key scopes. - USER: Prepaid wallet billing, can create user-scope keys - ENTERPRISE: Postpaid invoice billing, can create enterprise-scope keys
  - `full_name` string, nullable — Full name from the signup form
  - `company_name` string, nullable — Company name from the signup form
  - `country` string, nullable — Country from the signup form

## Response `201`

Successful Response

- ProfileCreateResponse — Response for POST /profile/create. account_type is the STORED value; a mismatch means the request asked for a different one (no mutation — admin-only).
  - `success` boolean
  - `message` string, required
  - `already_existed` boolean
  - `account_type` 'user' | 'enterprise' — Account type: determines billing mode and allowed API key scopes. - USER: Prepaid wallet billing, can create user-scope keys - ENTERPRISE: Postpaid invoice billing, can create enterprise-scope keys
  - `account_type_mismatch` boolean

## Other responses

- `400` — Bad Request
- `422` — Validation Error
- `500` — Internal Server Error

---

[API](https://skmtc.net/compresr/apis/compresr-platform-api.md) · [All operations](https://skmtc.net/compresr/apis/compresr-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/compresr/compresr-platform-api/revisions/93ee959dfa51/schema)
