Skip to content

POST/users

Create user

Create a new user. Fields `id`, `createdAt`, `updatedAt` are auto-generated. Triggers `users.created` webhook.

ReturnsUser

AcceptsUserInput

Bearer token required

Response examples

201User created

application/json example derived from schema

{
  "id": 1,
  "firstName": "Demo",
  "lastName": "User",
  "email": "demo@example.com",
  "username": "demo",
  "avatar": "https://i.pravatar.cc/150?u=demo",
  "phone": "+1-555-000-0001",
  "address": {
    "street": "1 Demo Way",
    "city": "Austin",
    "state": "TX",
    "zipCode": "78701",
    "country": "US",
    "geo": {
      "lat": 30.2672,
      "lng": -97.7431
    }
  },
  "company": {
    "name": "Demo Corp",
    "catchPhrase": "Seeded for docs and testing."
  },
  "website": "https://example.com/demo",
  "role": "admin",
  "age": 30,
  "bio": "Seeded demo account. Log in with any password.",
  "isActive": true,
  "createdAt": "2024-01-01T00:00:00.000Z",
  "updatedAt": "2026-04-21T00:00:00.000Z"
}
400400 — invalid input or malformed JSON

application/json

{
  "error": {
    "status": 400,
    "message": "Request body required"
  }
}
413413 — body exceeds 64 KB

application/json

{
  "error": {
    "status": 413,
    "message": "Request body too large",
    "details": {
      "maxSize": "64 KB"
    }
  }
}
429429 — rate limit exceeded (120/60s)

application/json

{
  "error": {
    "status": 429,
    "message": "Too many requests",
    "details": {
      "retryAfter": 45
    }
  }
}

Released under the MIT License.