# Get profile

Fetch a public Linktree profile with bio, contact and social links, grouped content links with per-link gate status, verification, tier, and related profiles.

- Platform: [Linktree](https://docs.upscrape.com/docs/platforms/linktree)
- Capability ID: `linktree.profile.get`
- Cost: 1 credit per request
- Maximum runtime: 30 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": "linktree"
  },
  "capability": "linktree.profile.get"
}'
```

## Input


| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `username` | `string` | Yes | Linktree handle or full profile URL (for example, nike or https://linktr.ee/nike). |

### Example input

```json
{
  "username": "linktree"
}
```

## 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
{
  "access_restricted": false,
  "avatar_url": "https://ugc.production.linktr.ee/[redacted:token].png",
  "country": "AU",
  "created_at": "2021-08-25",
  "display_name": "Linktree",
  "links": [
    {
      "gated": false,
      "title": "Linktree's Linktree",
      "type": "CLASSIC",
      "url": "https://linktr.ee/linktr.ee"
    },
    {
      "gated": false,
      "title": "Homepage",
      "type": "CLASSIC",
      "url": "http://linktr.ee/linktr.ee"
    }
  ],
  "links_count": 2,
  "profile_url": "https://linktr.ee/linktree",
  "related_profiles": [
    {
      "display_name": "Guy Raz",
      "profile_url": "https://linktr.ee/guy.raz",
      "username": "guy.raz"
    },
    {
      "display_name": "Charli Andrea",
      "profile_url": "https://linktr.ee/charliandrea",
      "username": "charliandrea"
    },
    {
      "display_name": "morepurposepod",
      "profile_url": "https://linktr.ee/morepurposepod",
      "username": "morepurposepod"
    }
  ],
  "tier": "pro",
  "timezone": "Australia/Melbourne",
  "username": "linktree",
  "verified": false
}
```
### Illustrative output fields

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

| Path | Observed type | Example |
| --- | --- | --- |
| `access_restricted` | `boolean` | false |
| `avatar_url` | `string` | https://ugc.production.linktr.ee/[redacted:token].png |
| `country` | `string` | AU |
| `created_at` | `string` | 2021-08-25 |
| `display_name` | `string` | Linktree |
| `links` | `array` | 2 items |
| `links` | `array` | 2 items |
| `links_count` | `integer` | 2 |
| `profile_url` | `string` | https://linktr.ee/linktree |
| `related_profiles` | `array` | 3 items |
| `related_profiles` | `array` | 3 items |
| `tier` | `string` | pro |
| `timezone` | `string` | Australia/Melbourne |
| `username` | `string` | linktree |
| `verified` | `boolean` | false |

## 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)
