---
title: "Create an authentication session."
method: POST
path: "/xrpc/com.atproto.server.createSession"
tags: ["com.atproto.server"]
---

# Create an authentication session.

`POST /xrpc/com.atproto.server.createSession`

## Request body

- object
  - `password` string, required
  - `identifier` string, required — Handle or other identifier supported by the server for the authenticating user.
  - `allowTakendown` boolean — When true, instead of throwing error for takendown accounts, a valid response with a narrow scoped token will be returned
  - `authFactorToken` string

## Response `200`

Success

- object
  - `did` string, did, required
  - `email` string
  - `active` boolean
  - `didDoc` unknown
  - `handle` string, handle, required
  - `status` string — If active=false, this optional field indicates a possible reason for why the account is not active. If active=false and no status is supplied, then the host makes no claim for why the repository is no longer being hosted.
  - `accessJwt` string, required
  - `refreshJwt` string, required
  - `emailConfirmed` boolean
  - `emailAuthFactor` boolean

## Other responses

- `400` — Bad Request

---

[API](https://skmtc.dev/streamplace/apis/generated-lexicon-api-schema.md) · [All operations](https://skmtc.dev/streamplace/apis/generated-lexicon-api-schema/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/streamplace/generated-lexicon-api-schema/revisions/8e2ce7f5d85b/schema)
