---
title: "Find users the caller is allowed to see"
method: GET
path: "/profiles/search"
tags: ["Users"]
---

# Find users the caller is allowed to see

`GET /profiles/search`

## Request

- Base URL: `https://whatareyoudo.ing/api/v1`
- URL: `https://whatareyoudo.ing/api/v1/profiles/search`
- Auth: HTTP bearer

Matches the text against username and display name. The privacy boundary is not the filter: it is can_see_profile(), the same predicate the `profiles` SELECT policy calls, so a caller who widens the text still sees no row they could not already see.

## Query parameters

- `q` string, required

## Response `200`

OK

- object
  - `data` ProfileHit[], required
    - `id` string, uuid, required
    - `username` string, nullable, required
    - `displayName` string, nullable, required
    - `avatarUrl` string, nullable, required
    - `bio` string, nullable, required
  - `meta` object, required
    - `requestId` string, required

---

[API](https://skmtc.dev/whatareyoudo/apis/whatcha-api.md) · [All operations](https://skmtc.dev/whatareyoudo/apis/whatcha-api/llms.txt) · [OpenAPI document](https://skmtc.dev/whatareyoudo/apis/whatcha-api/revisions/48dd8a54abea?raw)
