> **For coding agents and LLMs:** This is one page from the Social Fetch docs (markdown export). For curated orientation and workflow guidance, start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for agent onboarding and crawl rules, use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for the full endpoint list with links to pages like this one, use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt); for one platform's parameters and curls, use [`/llms-{platform}.txt`](https://www.socialfetch.dev/llms-tiktok.txt); use [`/llms.json`](https://www.socialfetch.dev/llms.json) when you need structured JSON for tool registration.

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/docs/api/v1/lemmy/user/get>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/docs/api/v1/lemmy/user/get.mdx>

## API base URL and authentication

- **API origin (from OpenAPI `servers`):** `https://api.socialfetch.dev`
- **Authentication:** send `x-api-key: sfk_...` on `/v1/**` and `/v2/**` routes unless the operation is explicitly anonymous (check OpenAPI `security`, the [API reference hub](https://www.socialfetch.dev/docs/api.mdx), [`/llms.txt`](https://www.socialfetch.dev/llms.txt), or [`/llms.json`](https://www.socialfetch.dev/llms.json) for each route).
- **OpenAPI JSON:** <https://www.socialfetch.dev/openapi.json>

## Recommended docs entrypoints (this site)

- [Documentation overview](https://www.socialfetch.dev/docs.mdx) — top-level orientation (markdown).
- [Quickstart](https://www.socialfetch.dev/docs/quickstart.mdx) — authenticate with `x-api-key`, validate auth with `whoami`, and understand the JSON envelope.
- [SDK](https://www.socialfetch.dev/docs/sdk.mdx) — official TypeScript SDK guide, including `SocialFetchClient`, `Result`, and `unwrap()`.
- [Capability matrix](https://www.socialfetch.dev/docs/capability-matrix.mdx) — every operation with identifiers, pagination, outcomes, media download, credits, and its SDK method. Generated from OpenAPI, so use it for route selection instead of scanning individual pages.
- [Recipes](https://www.socialfetch.dev/docs/recipes.mdx) — copyable workflows (brand monitoring, transcripts, Ad Library, creator scoring, Reddit research) with credit callouts and SDK examples.
- [Integrations](https://www.socialfetch.dev/docs/integrations.mdx) — MCP for AI clients, n8n verified node, Apify Store Actors, Make custom app, SDK, and REST API connection paths.
- [MCP product page](https://www.socialfetch.dev/mcp) — hosted MCP overview, OAuth, Skills install.
- [MCP integration](https://www.socialfetch.dev/docs/integrations/mcp.mdx) — hosted `/mcp` server, OAuth, Cursor/VS Code/Claude install snippets, 910 endpoint tools, plus docs_search/docs_read for implementation help.
- [n8n integration](https://www.socialfetch.dev/docs/integrations/n8n.mdx) — install `n8n-nodes-socialfetch`, credentials, and workflow examples.
- [Apify integration](https://www.socialfetch.dev/docs/integrations/apify.mdx) — Store Actors under @social-fetch, PPE billing, dataset export, and quick start.
- [Make integration](https://www.socialfetch.dev/docs/integrations/make.mdx) — custom app modules for Make scenarios, API key credentials, and module catalog.
- [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt) — every documented operation with a direct link to that route's agent-readable markdown page (prefer this over parsing OpenAPI).
- [`/llms-{platform}.txt`](https://www.socialfetch.dev/llms-tiktok.txt) — per-platform endpoint files generated from OpenAPI (parameters, credits, curls).
- [`/agents.txt`](https://www.socialfetch.dev/agents.txt) — agent crawl/onboarding file with capabilities, auth rules, and allowlist.
- [`/llms.json`](https://www.socialfetch.dev/llms.json) — structured machine-readable operation inventory with parameter names, pagination, outcomes, credits, and SDK mapping.
- [API reference hub](https://www.socialfetch.dev/docs/api.mdx) — human-friendly index of operations with links into generated pages.
- [Errors](https://www.socialfetch.dev/docs/errors.mdx) — shared error envelope and HTTP status guidance.
- [Credits](https://www.socialfetch.dev/docs/credits.mdx) — metering, `402`, and planning batch jobs.
- Outcome semantics such as `found`, `not_found`, and `private` are documented in [Errors](https://www.socialfetch.dev/docs/errors.mdx) and on operation pages when present in the OpenAPI contract.

## Markdown docs convention

- Every docs page has a markdown twin: append **`.mdx`** to the docs pathname (for example `/docs/quickstart` → `/docs/quickstart.mdx`).
- Agents that send `Accept: text/markdown` on `/docs/**` HTML URLs may receive markdown directly (same URL, `Vary: Accept`).
- Published blog posts use the same convention: `/blog/{slug}` → `/blog/{slug}.mdx`, or `Accept: text/markdown` on the HTML URL (`Vary: Accept`).

---
# Get Lemmy user (https://www.socialfetch.dev/docs/api/v1/lemmy/user/get)

## Summary

Get one Lemmy user with counts, moderator roles and latest activity.

**Tags:** `Lemmy`

## HTTP

- **Method:** GET
- **Path:** `/v1/lemmy/user`
- **Base URL:** `https://api.socialfetch.dev`

## Capability summary

- **SDK mapping:** `client.lemmy.getUser({ instance: "lemmy.world", username: "dessalines@lemmy.ml" })`
- **Accepted identifiers:** `username` (query), `id` (query)
- **Pagination:** none
- **Business outcome field:** `data.lookupStatus` with values `found`, `not_found`, `private`, `not_compatible`

## Credits

- **Base:** 1 credit per successful lookup.
- **Maximum on success (200):** 1 credit.
- **Failed requests (`lookup_failed`, `503`):** not charged.
- **Authoritative field:** `meta.creditsCharged`.

## Authentication

- **`x-api-key`**: API key (`sfk_...`)

## Parameters

### `instance` (query)

- **Required:** yes
- **Constraints:** type `string`
- **Description:** The Lemmy instance, e.g. `lemmy.world`. A URL on the instance is also accepted. Ids and counts belong to this instance.

### `username` (query)

- **Required:** no
- **Constraints:** type `string`
- **Description:** Username, e.g. `dessalines`, or `user@lemmy.ml` to resolve a user on another instance.

### `id` (query)

- **Required:** no
- **Constraints:** type `integer`; minimum: 1; maximum: 2147483647
- **Description:** User id on the chosen instance, e.g. `34`.

## Responses (status codes)

- **200**: User.
- **400**: Invalid request
- **401**: Missing or invalid API key
- **402**: Insufficient credits
- **500**: Unexpected or billing error
- **502**: Lookup could not be completed.
- **503**: Service temporarily unavailable; safe to retry with backoff.

## Response body (200)

User.

### Field outline

- **data** (required) — type `object`. Endpoint-specific response payload.
  - **lookupStatus** (required) — type `string`; enum: found, not_found, private, not_compatible. `found`, `not_found` (the entity is missing, or the host name does not resolve), `private` (the instance does not allow public lists) or `not_compatible` (the host is not a Lemmy instance, or its version does not serve this operation). See `reason`.
  - **instance** (required) — type `string`. The instance that was asked.
  - **reason** (required) — type `object`; nullable. Why `lookupStatus` is not `found`, or null when it is `found`.
    - **code** (required) — type `string`; enum: instance_private, not_a_lemmy_instance, not_available, deleted, host_not_found. Machine-readable reason.
    - **message** (required) — type `string`. Plain-language explanation.
  - **user** (required) — type `object`; nullable. The profile when `lookupStatus` is `found`; otherwise null.
    - **id** (required) — type `integer`. User id on this instance.
    - **name** (required) — type `string`. Username without the host.
    - **displayName** (required) — type `string`; nullable. Display name.
    - **bio** (required) — type `string`; nullable. Profile text as Markdown.
    - **avatar** (required) — type `string`; nullable. Avatar URL.
    - **banner** (required) — type `string`; nullable. Banner URL.
    - **actorId** (required) — type `string`; nullable. Canonical ActivityPub id.
    - **host** (required) — type `string`; nullable. Host the account lives on.
    - **handle** (required) — type `string`; nullable. `user@host`.
    - **publishedAt** (required) — type `string`; nullable. When the account was created.
    - **updatedAt** (required) — type `string`; nullable. When the profile last changed.
    - **banned** (required) — type `boolean`; nullable. Whether the account is banned.
    - **banExpiresAt** (required) — type `string`; nullable. When the ban ends.
    - **deleted** (required) — type `boolean`; nullable. Whether the account was deleted.
    - **isBot** (required) — type `boolean`; nullable. Whether the account is a bot.
    - **isLocal** (required) — type `boolean`; nullable. Whether the account lives on the instance asked.
    - **matrixUserId** (required) — type `string`; nullable. Matrix id the user chose to publish.
    - **postCount** (required) — type `integer`; nullable. Posts the user has made.
    - **commentCount** (required) — type `integer`; nullable. Comments the user has made.
    - **postScore** (required) — type `integer`; nullable. Combined score of the user's posts, when the instance reports it.
    - **commentScore** (required) — type `integer`; nullable. Combined score of the user's comments, when the instance reports it.
    - **isAdmin** (required) — type `boolean`; nullable. Whether the user is an instance administrator.
    - **moderates** (required) — type `array`; nullable. Communities the user moderates; null when the answer did not carry them.
      - _items:_
  - **posts** (required) — type `array`. The newest post, from the user lookup. Use the user posts endpoint for more.
    - _items:_
      - **id** (required) — type `integer`. Post id on this instance.
      - **apId** (required) — type `string`; nullable. Canonical ActivityPub id.
      - **title** (required) — type `string`; nullable. Post title.
      - **url** (required) — type `string`; nullable. Link the post points at; null for a text post.
      - **urlContentType** (required) — type `string`; nullable. Content type of the link.
      - **thumbnailUrl** (required) — type `string`; nullable. Thumbnail URL.
      - **nsfw** (required) — type `boolean`; nullable. Whether the post is NSFW.
      - **locked** (required) — type `boolean`; nullable. Whether the post is locked.
      - **removed** (required) — type `boolean`; nullable. Whether a moderator removed it.
      - **deleted** (required) — type `boolean`; nullable. Whether it was deleted.
      - **publishedAt** (required) — type `string`; nullable. When it was posted.
      - **updatedAt** (required) — type `string`; nullable. When it last changed.
      - **languageId** (required) — type `integer`; nullable. Discussion language id.
      - **isLocal** (required) — type `boolean`; nullable. Whether it was posted on the instance asked.
      - **score** (required) — type `integer`; nullable. Votes up minus votes down.
      - **upvotes** (required) — type `integer`; nullable. Upvotes.
      - **downvotes** (required) — type `integer`; nullable. Downvotes.
      - **commentCount** (required) — type `integer`; nullable. Comments on the post.
      - **community** (required) — type `object`. The community it was posted in, with the counts the single-post answer carries.
      - **author** (required) — type `object`; nullable. Who posted it; null on a modlog row, which does not carry the creator.
      - **body** (required) — type `string`; nullable. Post text as Markdown.
      - **embed** (required) — type `object`; nullable. Link preview; null when the instance found none.
      - **altText** (required) — type `string`; nullable. Alt text for the image.
      - **image** (required) — type `object`; nullable. Image details; null when the post has no image.
      - **featuredInCommunity** (required) — type `boolean`; nullable. Whether it is featured in its community.
      - **featuredOnInstance** (required) — type `boolean`; nullable. Whether it is featured on the instance.
      - **newestCommentAt** (required) — type `string`; nullable. When the newest comment was made.
      - **isAdmin** (required) — type `boolean`; nullable. Whether the author is an instance administrator.
      - **isModerator** (required) — type `boolean`; nullable. Whether the author moderates the community.
      - **bannedFromCommunity** (required) — type `boolean`; nullable. Whether the author is banned from the community.
      - **crossPosts** (required) — type `array`; nullable. Posts of the same link in other communities; null on list rows.
        - _items:_
      - **moderators** (required) — type `array`; nullable. Moderators of the community; null on list rows, which do not carry them.
        - _items:_
  - **comments** (required) — type `array`. The newest comment, from the user lookup. Use the user comments endpoint for more.
    - _items:_
      - **id** (required) — type `integer`. Comment id on this instance.
      - **apId** (required) — type `string`; nullable. Canonical ActivityPub id.
      - **content** (required) — type `string`; nullable. Comment text as Markdown; empty when a moderator removed it or its author deleted it.
      - **postId** (required) — type `integer`; nullable. The post it belongs to.
      - **path** (required) — type `string`; nullable. The dotted ancestor chain, from the root post (`0.1234.5678`).
      - **depth** (required) — type `integer`; nullable. Depth in the tree, from `path`.
      - **parentId** (required) — type `integer`; nullable. The comment it replies to; null for a top-level comment.
      - **distinguished** (required) — type `boolean`; nullable. Whether a moderator marked it as a moderator comment.
      - **languageId** (required) — type `integer`; nullable. Discussion language id.
      - **isLocal** (required) — type `boolean`; nullable. Whether it was written on the instance asked.
      - **removed** (required) — type `boolean`; nullable. Whether a moderator removed it.
      - **deleted** (required) — type `boolean`; nullable. Whether its author deleted it.
      - **publishedAt** (required) — type `string`; nullable. When it was written.
      - **updatedAt** (required) — type `string`; nullable. When it last changed.
      - **score** (required) — type `integer`; nullable. Votes up minus votes down.
      - **upvotes** (required) — type `integer`; nullable. Upvotes.
      - **downvotes** (required) — type `integer`; nullable. Downvotes.
      - **replyCount** (required) — type `integer`; nullable. Direct replies.
      - **isAdmin** (required) — type `boolean`; nullable. Whether the author is an instance administrator.
      - **isModerator** (required) — type `boolean`; nullable. Whether the author moderates the community.
      - **bannedFromCommunity** (required) — type `boolean`; nullable. Whether the author is banned from the community.
      - **post** (required) — type `object`. The post it belongs to.
      - **community** (required) — type `object`. The community of the post.
      - **author** (required) — type `object`. Who wrote it.
- **meta** (required) — type `object`. Metadata describing the request and billing outcome.
  - **requestId** (required) — type `string`; minLength: 1. Unique request identifier for tracing this API call.
  - **creditsCharged** (required) — type `integer`; minimum: 0. Credits charged for this request.
  - **version** (required) — type `string`; enum: v1. Public API version that served the response.

### Example JSON (found)

```json
{
  "data": {
    "lookupStatus": "found",
    "instance": "lemmy.ml",
    "reason": null,
    "user": {
      "id": 34,
      "name": "dessalines",
      "displayName": "Dessalines",
      "bio": null,
      "avatar": "https://lemmy.ml/pictrs/image/fac94410-decc-4d55-be6d-648a3bd67aa9.webp",
      "banner": "https://lemmy.ml/pictrs/image/d69b9c2a-c1db-4483-ba34-349561a290b5.jpeg",
      "actorId": "https://lemmy.ml/u/dessalines",
      "host": "lemmy.ml",
      "handle": "dessalines@lemmy.ml",
      "publishedAt": "2019-04-17T23:34:40.912Z",
      "updatedAt": "2022-09-15T13:41:47.087Z",
      "banned": false,
      "banExpiresAt": null,
      "deleted": false,
      "isBot": false,
      "isLocal": true,
      "matrixUserId": "@happydooby:matrix.org",
      "postCount": 1123,
      "commentCount": 9066,
      "postScore": null,
      "commentScore": null,
      "isAdmin": true,
      "moderates": [
        {
          "id": 2,
          "name": "announcements",
          "title": "Announcements",
          "actorId": "https://lemmy.ml/c/announcements",
          "host": "lemmy.ml",
          "handle": "announcements@lemmy.ml",
          "icon": "https://lemmy.ml/pictrs/image/waqyZwLAy4.webp",
          "nsfw": false,
          "isLocal": true
        }
      ]
    },
    "posts": [
      {
        "id": 54938598,
        "apId": "https://lemmy.ml/post/54938598",
        "title": "Lemmy Development Update October 2026",
        "url": null,
        "urlContentType": null,
        "thumbnailUrl": null,
        "nsfw": false,
        "locked": false,
        "removed": false,
        "deleted": false,
        "publishedAt": "2026-11-05T14:14:28.802Z",
        "updatedAt": null,
        "languageId": 37,
        "isLocal": true,
        "score": 70,
        "upvotes": 70,
        "downvotes": 0,
        "commentCount": 6,
        "community": {
          "id": 2,
          "name": "announcements",
          "title": "Announcements",
          "actorId": "https://lemmy.ml/c/announcements",
          "host": "lemmy.ml",
          "handle": "announcements@lemmy.ml",
          "icon": "https://lemmy.ml/pictrs/image/waqyZwLAy4.webp",
          "nsfw": false,
          "isLocal": true,
          "description": "Official announcements from the Lemmy project. Subscribe to this community or add it to your RSS reader in order to be notified about new releases and important updates.\n\nYou can also find major news on [join-lemmy.org](https://join-lemmy.…",
          "banner": null,
          "publishedAt": "2019-06-02T16:43:50.799Z",
          "updatedAt": "2023-06-20T09:04:28.814Z",
          "removed": false,
          "deleted": false,
          "hidden": false,
          "postingRestrictedToMods": true,
          "visibility": "Public",
          "subscriberCount": null,
          "localSubscriberCount": null,
          "postCount": null,
          "commentCount": null,
          "activeUsers": null,
          "moderators": null,
          "languageIds": null
        },
        "author": {
          "id": 34,
          "name": "dessalines",
          "displayName": "Dessalines",
          "bio": null,
          "avatar": "https://lemmy.ml/pictrs/image/fac94410-decc-4d55-be6d-648a3bd67aa9.webp",
          "banner": "https://lemmy.ml/pictrs/image/d69b9c2a-c1db-4483-ba34-349561a290b5.jpeg",
          "actorId": "https://lemmy.ml/u/dessalines",
          "host": "lemmy.ml",
          "handle": "dessalines@lemmy.ml",
          "publishedAt": "2019-04-17T23:34:40.912Z",
          "updatedAt": "2022-09-15T13:41:47.087Z",
          "banned": false,
          "banExpiresAt": null,
          "deleted": false,
          "isBot": false,
          "isLocal": true,
          "matrixUserId": "@happydooby:matrix.org"
        },
        "body": "This last month, we added [community vote settings to 1.0.0](https://github.com/LemmyNet/lemmy/pull/6603) to allow communities (and not only site admins) to set preferred voting settings. We've also added various RSS, OAuth, and security f…",
        "embed": null,
        "altText": null,
        "image": null,
        "featuredInCommunity": false,
        "featuredOnInstance": false,
        "newestCommentAt": "2026-11-05T16:51:49.133Z",
        "isAdmin": true,
        "isModerator": true,
        "bannedFromCommunity": false,
        "crossPosts": null,
        "moderators": null
      }
    ],
    "comments": [
      {
        "id": 28828431,
        "apId": "https://lemmy.ml/comment/28828431",
        "content": "Maybe don't put quotes from slaveowners glorifying their imperial project under a post on Kwame Ture.",
        "postId": 54960202,
        "path": "0.28799913.28828431",
        "depth": 1,
        "parentId": 28799913,
        "distinguished": false,
        "languageId": 0,
        "isLocal": true,
        "removed": false,
        "deleted": false,
        "publishedAt": "2026-11-07T00:57:56.257Z",
        "updatedAt": "2026-11-07T00:58:40.136Z",
        "score": 7,
        "upvotes": 7,
        "downvotes": 0,
        "replyCount": 0,
        "isAdmin": true,
        "isModerator": false,
        "bannedFromCommunity": false,
        "post": {
          "id": 54960202,
          "apId": "https://lemmy.ml/post/54960202",
          "title": "Kwame Ture the pitfalls of liberalism",
          "url": "https://lemmy.ml/api/v3/image_proxy?url=https%3A%2F%2Fcdn.masto.host%2Fsocialmarxistnetwork%2Fmedia_attachments%2Ffiles%2F117%2F564%2F740%2F776%2F723%2F408%2Foriginal%2F6335202d9bc02f1e.png",
          "urlContentType": "image/png",
          "thumbnailUrl": "https://lemmy.ml/api/v3/image_proxy?url=https%3A%2F%2Fcdn.masto.host%2Fsocialmarxistnetwork%2Fmedia_attachments%2Ffiles%2F117%2F564%2F740%2F776%2F723%2F408%2Foriginal%2F6335202d9bc02f1e.png",
          "nsfw": false,
          "locked": false,
          "removed": false,
          "deleted": false,
          "publishedAt": "2026-11-06T00:56:45.924Z",
          "updatedAt": null,
          "languageId": 0,
          "isLocal": true,
          "score": null,
          "upvotes": null,
          "downvotes": null,
          "commentCount": null,
          "community": {
            "id": 14920,
            "name": "quotes",
            "title": "quotes",
            "actorId": "https://lemmy.ml/c/quotes",
            "host": "lemmy.ml",
            "handle": "quotes@lemmy.ml",
            "icon": null,
            "nsfw": false,
            "isLocal": true
          },
          "author": null
        },
        "community": {
          "id": 14920,
          "name": "quotes",
          "title": "quotes",
          "actorId": "https://lemmy.ml/c/quotes",
          "host": "lemmy.ml",
          "handle": "quotes@lemmy.ml",
          "icon": null,
          "nsfw": false,
          "isLocal": true
        },
        "author": {
          "id": 34,
          "name": "dessalines",
          "displayName": "Dessalines",
          "bio": null,
          "avatar": "https://lemmy.ml/pictrs/image/fac94410-decc-4d55-be6d-648a3bd67aa9.webp",
          "banner": "https://lemmy.ml/pictrs/image/d69b9c2a-c1db-4483-ba34-349561a290b5.jpeg",
          "actorId": "https://lemmy.ml/u/dessalines",
          "host": "lemmy.ml",
          "handle": "dessalines@lemmy.ml",
          "publishedAt": "2019-04-17T23:34:40.912Z",
          "updatedAt": "2022-09-15T13:41:47.087Z",
          "banned": false,
          "banExpiresAt": null,
          "deleted": false,
          "isBot": false,
          "isLocal": true,
          "matrixUserId": "@happydooby:matrix.org"
        }
      }
    ]
  },
  "meta": {
    "requestId": "req_4b936a57-09de-43db-996f-e0e0f4848283",
    "creditsCharged": 1,
    "version": "v1"
  }
}
```

### Machine-readable error codes

When an error JSON body is returned, it may include one of these `error.code` values (derived from the OpenAPI schemas for this operation; additional codes may exist at runtime):

- `bad_request`

## Error handling & retries

Interpret HTTP status codes using the descriptions below. Do not assume a JSON body unless the OpenAPI schema defines one for that status.

- **400**: Invalid request **Retry:** Fix the request; retrying the same invalid payload will not help.
- **401**: Missing or invalid API key **Retry:** Fix the API key first; retrying without changes will not help.
- **402**: Insufficient credits **Retry:** Do not retry without resolving billing/credits (retrying the same request will not help).
- **500**: Unexpected or billing error
- **502**: Lookup could not be completed. **Retry:** May be transient; a few retries with backoff are reasonable.
- **503**: Service temporarily unavailable; safe to retry with backoff. **Retry:** Usually safe to retry with exponential backoff and jitter.

### Suggested client defaults

- Send the API key using the `x-api-key` header on every request.
- On `503` (and sometimes `502`), retry with backoff; cap retries and surface a clear error to the user.
- On `402`, surface an actionable billing message rather than blind retries.

## Examples

### TypeScript SDK

```typescript
import { SocialFetchClient } from "@socialfetch/sdk";

const client = new SocialFetchClient({
  apiKey: process.env.SOCIALFETCH_API_KEY!,
});

const result = await client.lemmy.getUser({
  instance: "lemmy.world",
  username: "dessalines@lemmy.ml",
});

if (!result.ok) {
  console.error(result.error);
} else {
  console.log(result.value.data);
}
```

### Node.js

```javascript
const response = await fetch(
  "https://api.socialfetch.dev/v1/lemmy/user?instance=lemmy.world&username=dessalines@lemmy.ml",
  {
    headers: {
      "x-api-key": "YOUR_API_KEY"
    }
  }
);

const data = await response.json();
console.log(data);
```

### cURL

```bash
curl "https://api.socialfetch.dev/v1/lemmy/user?instance=lemmy.world&username=dessalines@lemmy.ml" \
  -H "x-api-key: YOUR_API_KEY"
```

### Python

```python
import requests

response = requests.get(
    "https://api.socialfetch.dev/v1/lemmy/user?instance=lemmy.world&username=dessalines@lemmy.ml",
    headers={"x-api-key": "YOUR_API_KEY"},
)
data = response.json()
print(data)
```