# Get profile

Fetch an Are.na user or group profile by username or profile URL.

- Platform: [Are.na](https://docs.upscrape.com/docs/platforms/arena)
- Capability ID: `arena.profile.get`
- Cost: 1 credit per request
- Maximum runtime: 10 seconds
- Execute endpoint: `POST https://data.upscrape.com/execute`

## Request

Use the exact public capability ID in the shared execute envelope.

```bash
curl --request POST \
  --url https://data.upscrape.com/execute \
  --header "Authorization: Bearer $UPSCRAPE_API_KEY" \
  --header "Content-Type: application/json" \
  --header "Prefer: wait=30" \
  --data '{
  "input": {
    "username": "laurel-schwulst"
  },
  "capability": "arena.profile.get"
}'
```

## Input


| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `username` | `string` | Yes | Are.na username or profile URL |

### Example input

```json
{
  "username": "laurel-schwulst"
}
```

## Response

Successful output is returned in `results[0].data`.

Raw platform output is intentionally open-ended and may evolve with the upstream source.

### Illustrative sample output

This example shows one response. Values and optional fields vary with the data available.

```json
{
  "avatar_url": "https://static.avatars.are.na/449/large_394b882d8af9c3ac0ae82d50d2ca27e6.png?1372882632",
  "bio": "<p><a href=\"https://laurelschwulst.com\" target=\"_blank\" rel=\"nofollow noopener\">https://laurelschwulst.com</a></p>\n\n<p>~ Talks I&#39;ve Given<br>\n** Services I&#39;m Offering<br>\n^ Person I&#39;m Curious About<br>\n` Things to Remember</p>\n\n<p><em>Index in progress, logging <a href=\"https://www.are.na/laurel-schwulst/making-an-are-na-index\" target=\"_blank\" rel=\"nofollow noopener\">here</a></em></p>",
  "class": "User",
  "counts": {
    "channels": 541,
    "followers": 4385,
    "following": 2285
  },
  "created_at": "2012-03-19T18:50:59+00:00",
  "href": "/laurel-schwulst",
  "id": 449,
  "name": "Laurel Schwulst",
  "slug": "laurel-schwulst",
  "username": "laurel-schwulst"
}
```
### Illustrative output fields

Derived from the sample above for orientation only. These fields are not a fixed response schema.

| Path | Observed type | Example |
| --- | --- | --- |
| `avatar_url` | `string` | https://static.avatars.are.na/449/large_394b882d8af9c3ac0ae82d50d2ca27e… |
| `bio` | `string` | <p><a href="https://laurelschwulst.com" target="_blank" rel="nofollow n… |
| `class` | `string` | User |
| `counts` | `object` | 3 fields |
| `counts.channels` | `integer` | 541 |
| `counts.followers` | `integer` | 4385 |
| `counts.following` | `integer` | 2285 |
| `created_at` | `string` | 2012-03-19T18:50:59+00:00 |
| `href` | `string` | /laurel-schwulst |
| `id` | `integer` | 449 |
| `name` | `string` | Laurel Schwulst |
| `slug` | `string` | laurel-schwulst |
| `username` | `string` | laurel-schwulst |

## Execution behavior

A `200` response completed inline. A `202` response was queued; poll `GET /jobs/{id}` until the job reaches `completed` or `failed`. Use an `Idempotency-Key` when retrying must not create a duplicate logical job.

## Related documentation

- [Authentication](https://docs.upscrape.com/docs/api/authentication)
- [Jobs and results](https://docs.upscrape.com/docs/api/jobs)
- [Errors and retries](https://docs.upscrape.com/docs/api/errors)
- [Idempotency](https://docs.upscrape.com/docs/api/idempotency)
