> ## 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.

# Register Account on Aria Compute ROUTER

> POST /v1/router/auth/register creates a new user account on Aria Compute ROUTER. Check registration status with GET /v1/router/auth/register-status.

Create a new user account on Aria Compute ROUTER. Before registering, check whether open registration is enabled by calling `GET /v1/router/auth/register-status`. This endpoint is public when registration is open.

## Endpoint

```http theme={null}
POST /v1/router/auth/register
```

## Authentication

No authentication required when open registration is enabled.

## Request Body

<ParamField body="username" type="string" required>
  Desired username for the new account.
</ParamField>

<ParamField body="password" type="string" required>
  Password for the new account.
</ParamField>

<ParamField body="email" type="string">
  Optional email address to associate with the account.
</ParamField>

## Response

<ResponseField name="id" type="string">
  Unique identifier of the newly created user.
</ResponseField>

<ResponseField name="username" type="string">
  Username of the newly created user.
</ResponseField>

<ResponseField name="email" type="string | null">
  Email address if provided, otherwise null.
</ResponseField>

<ResponseField name="role" type="string">
  Assigned role, typically `"user"`.
</ResponseField>

<ResponseField name="disabled" type="boolean">
  Whether the account is disabled. Always `false` on creation.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST https://router.example.com:8080/v1/router/auth/register \
    -H "Content-Type: application/json" \
    -d '{"username":"alice","password":"secret123","email":"alice@example.com"}'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "user-abc123",
    "username": "alice",
    "email": "alice@example.com",
    "role": "user",
    "disabled": false
  }
  ```
</ResponseExample>

## Registration Status

Use the following endpoint to check whether open registration is enabled.

```http theme={null}
GET /v1/router/auth/register-status
```

### Response

<ResponseField name="open" type="boolean">
  `true` when open registration is enabled, otherwise `false`.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl https://router.example.com:8080/v1/router/auth/register-status
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "open": true
  }
  ```
</ResponseExample>


## Related topics

- [Authenticate with Aria Compute ROUTER](/api-reference/router/authentication.md)
- [Update Aria Compute ROUTER Email Address](/api-reference/router/auth/email.md)
- [List Users on Aria Compute ROUTER](/api-reference/router/users/list.md)
- [Change Aria Compute ROUTER Password](/api-reference/router/auth/password.md)
- [Update Aria Compute ROUTER Users (Admin)](/api-reference/router/users/update.md)
