---
title: "Login to get authentication token"
method: POST
path: "/login"
tags: ["Authentication"]
---

# Login to get authentication token

`POST /login`

## Request body

- object
  - `username` string, required
  - `password` string, required

## Response `200`

Successful login

- Success
  - `code` integer
  - `message` string
  - `data` object

## Other responses

- `400` — Bad request
- `401` — Unauthorized

## Changes

- **2025-03-02** `526e5bdf6dee` — 2 breaking, 2 warning, 7 info
  - request body became required
  - the `data` response's property type/format changed from `array`/`` to `object`/`` for status `200`
  - removed the optional property `error` from the response with the `200` status
  - removed the optional property `status` from the response with the `200` status
  - …7 more

[Change history](https://skmtc.dev/crawlab-team/apis/crawlab-api/changes/login/post.md)

---

[API](https://skmtc.dev/crawlab-team/apis/crawlab-api.md) · [All operations](https://skmtc.dev/crawlab-team/apis/crawlab-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/crawlab-team/crawlab-api/revisions/526e5bdf6dee/schema)
