---
title: "GET /v2/users/{username}"
method: GET
path: "/v2/users/{username}"
tags: ["Social"]
---

# GET /v2/users/{username}

`GET /v2/users/{username}`

## Request

- Base URL: `https://api.arbital.xyz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.arbital.xyz/v2/users/{username}`
- Auth: HTTP bearer

Returns an active user's public profile and viewer-relative follow state.

## Path parameters

- `username` string, required

## Response `200`

Public profile

- PublicProfile
  - `bio` string, nullable, required
  - `display_name` string, nullable, required
  - `follower_count` integer, required
  - `following_count` integer, required
  - `follows_viewer` boolean, required
  - `cover_image_url` string, nullable, required: Reserved for a future moderated cover-image capability; currently null.
  - `profile_image_url` string, uri, nullable, required: Backend-owned URL for the approved profile image or the user's stable CALLD default avatar.
  - `user_id` string, uuid, required
  - `username` string, required
  - `viewer_follows` boolean, required
  - `x_account` PublicXAccount, required
    - `avatar_url` string, nullable, required
    - `display_name` string, nullable, required
    - `username` string, required

## Other responses

- `400`: Stable machine-readable private social problem
- `401`: Stable machine-readable private social problem
- `404`: Stable machine-readable private social problem
- `408`: Stable machine-readable private social problem
- `409`: Stable machine-readable private social problem
- `413`: Stable machine-readable private social problem
- `429`: Per-principal or anonymous-peer social request budget exhausted
- `503`: Stable machine-readable private social problem

---

[API](https://skmtc.dev/arbital/apis/arbital-api.md) - [All operations](https://skmtc.dev/arbital/apis/arbital-api/llms.txt) - [OpenAPI document](https://skmtc.dev/arbital/apis/arbital-api/revisions/bb0185edf43a?raw)
