---
title: "List User Websites"
method: GET
path: "/api/v1/users/{user_id}/websites"
tags: ["Team Management"]
---

# List User Websites

`GET /api/v1/users/{user_id}/websites`

Returns the websites that a user has access to within your organization, either via organization membership (implicit access to all websites in the org) or via explicit website membership. Organization membership takes precedence — if the user is an org member, all non-paused websites in your organization are returned with `access_type: "organization"`. Otherwise, only websites the user has an explicit `website_members` row for are returned. Returns `404` if the `user_id` does not match any AthenaHQ user. Returns `200` with an empty `websites` array if the user exists but has no access within your organization (this intentionally does not distinguish "user is in a different org" from "user is in your org but has no access"). Requires a global API key.

## Response `200`

Successful response with the list of websites (may be empty)

- object
  - `websites` UserWebsite[], required
    - `id` string, uuid, required — Unique identifier of the website
    - `website_name` string, required — Display name of the website
    - `website_url` string, required — The domain of the website (without protocol)
    - `access_type` 'organization' | 'website', required — How the user has access to this website. `organization` means they are an organization member and have implicit access to every website in the org. `website` means they have an explicit website_members row for this specific website.
    - `role` string, required — The user's role. For `access_type: "organization"`, this is the organization role. For `access_type: "website"`, this is the per-website role. Each role is its slug — the role's normalized name (lowercase, no spaces): `admin`, `viewer`, `editor`, `billing`, or a custom role's id (e.g. `contentmanager`). `admin` and `viewer` are unchanged from prior versions.

## Other responses

- `400` — Bad request - Invalid user ID format
- `401` — Unauthorized - Invalid or missing API key
- `403` — Forbidden - Global API key required
- `404` — Not found - No AthenaHQ user exists for this user_id
- `500` — Internal server error

---

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