> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ariacompute.com/llms.txt
> Use this file to discover all available pages before exploring further.

# POST /v1/auth/login: PIN User Login

> Authenticate a PIN user with username and password to receive a JWT token and expiration timestamp. No API key required.

Use this endpoint to authenticate a user and obtain a short-lived JWT token. The resulting token can be used for session-based requests, but the PIN API primarily relies on API keys for integration access.

## Endpoint

**POST** `/v1/auth/login`

Authentication: None

## Request body

<ParamField body="username" type="string" required>
  The user's registered username.
</ParamField>

<ParamField body="password" type="string" required>
  The user's password.
</ParamField>

## Response

<ResponseField name="token" type="string">
  JWT token for the session.
</ResponseField>

<ResponseField name="expires_at" type="string">
  ISO 8601 timestamp when the token expires.
</ResponseField>

## Example

```bash theme={null}
curl -X POST http://localhost:8001/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"alice","password":"secret123"}'
```

```json theme={null}
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "expires_at": "2025-02-10T14:30:00Z"
}
```


## Related topics

- [POST /v1/auth/register: PIN User Registration](/api-reference/pin/auth/register.md)
- [GET /v1/auth/me: PIN Current User](/api-reference/pin/auth/me.md)
- [Authenticate with PIN API Keys and Agent Tokens](/api-reference/pin/authentication.md)
- [Aria Compute PIN API: Post-Training & Evaluation](/api-reference/pin/introduction.md)
- [OAuth and Serve Account Linking for Router](/api-reference/router/auth/oauth.md)
