---
title: "API login"
method: POST
path: "/v3/login"
tags: ["authentication"]
---

# API login

`POST /v3/login`

Sign in to your BILL developer account. In the response, your API session is created and a BILL-generated `sessionId` is available. Use the `sessionId` in all subsequent API calls to confirm that you are in a signed-in session.

To create an MFA-trusted API session, set `rememberMeId` and `device` in addition to the required fields. See [MFA setup](https://developer.bill.com/reference/setup) for information about the BILL MFA process.

You can sign out with `POST /v3/logout`. If your API session is inactive for 35 minutes, the session expires and you are automatically signed out.

See [API partner login](https://developer.bill.com/reference/partnerlogin) for information about the additional permissions you get with the API partner login.

**Note**: This section is about authentication for working with the BILL v3 API. See [Authentication with Spend & Expense API token](https://developer.bill.com/docs/authentication-with-api-token) for information about authentication for the Spend & Expense API endpoints.

## Request body

- LoginRequestDto — API login
  - `devKey` string, required — Developer key sent to you by BILL when you create a developer account
  - `username` string, required — Email address used to sign in to your BILL account
  - `password` string — Password used to sign in to your BILL account
  - `consoleApiToken` string — Console API token. As a BILL Accountant Console user, use `POST /v3/login` to sign in to a client organization. * `username`: Your BILL Accountant Console email address * `consoleApiToken`: Your Console API token * `devKey`: Developer key of the client organization * `organizationId`: Organization ID of the client organization See [BILL Accountant Console operations](https://developer.bill.com/docs/bill-accountant-console-operations) for more information.
  - `organizationId` string, required — Organization ID
  - `rememberMeId` string — MFA ID. Set this field for creating an MFA-trusted API session. This MFA ID is generated when you set `rememberMe` as `true` in your `POST /v3/mfa/challenge/validate` request. This value expires in 30 days. See [Validate MFA challenge](https://developer.bill.com/reference/validatechallenge) for more information.
  - `device` string — Mobile device name. This is a nickname for your mobile device. Set this field when you set `rememberMeId`.

## Response `200`

API login response

- LoginResponseDto — Login response.
  - `sessionId` string, required — API session ID. Use this value in all subsequent API calls to confirm that you are in a signed-in session.
  - `organizationId` string, required — Organization ID associated with the signed-in user
  - `userId` string, required — BILL-generated ID of the signed-in user
  - `trusted` boolean, required — This field is set as `true` if the current API session is MFA-trusted

## Other responses

- `4XX` — List of errors.
- `5XX` — List of errors.

---

[API](https://skmtc.net/bill/apis/bill-v3-api.md) · [All operations](https://skmtc.net/bill/apis/bill-v3-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bill/bill-v3-api/versions/0483350c434e/schema)
