# Ketto — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Discover trending and searchable fundraisers on Ketto with detailed campaign information, updates, and community comments to find causes that matter to you. Access real-time platform statistics and browse fundraising campaigns across different categories to support or learn about active charitable initiatives.

**Category:** Other | **Website:** [ketto.org/](https://ketto.org/) | **Docs:** [parse.bot/marketplace/0e4f9e9a-a484-404b-b10d-f605f068f9a3/ketto-org-api](https://parse.bot/marketplace/0e4f9e9a-a484-404b-b10d-f605f068f9a3/ketto-org-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-ketto-org-api-0e4f9e9a/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### browse_fundraisers

Browse all fundraisers with pagination and optional category filter. Uses MeiliSearch full-text index. Returns fundraiser hits with campaign details including raised amounts, categories, media, and facet distribution for filtering. Paginate via offset parameter.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Filter by category. Accepted values: Medical, Education, Animals, Children, Community Development, Creative, Environment, Food & Hunger, Memorial, Others, Women & Girls. |
| `limit` | integer | No | Max results to return per page. |
| `offset` | integer | No | Offset for pagination (number of items to skip). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ketto-org-api-0e4f9e9a/browse_fundraisers \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","limit":"<integer>","offset":"<integer>"}'
```

### get_fundraiser_comments

Get comments left on a fundraiser page. Returns a paginated list of approved comments with commenter entity info (name, avatar, type) and any replies. Not all fundraisers have comments — returns an empty comments array if none exist.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max comments to return. |
| `slug` | string | Yes | Fundraiser slug (custom_tag from search/browse results). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ketto-org-api-0e4f9e9a/get_fundraiser_comments \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","slug":"<string>"}'
```

### get_fundraiser_detail

Get full details for a specific fundraiser by its slug. Returns comprehensive campaign data including gallery images, basic info (beneficiary, disease, hospital), campaigner details with avatar and social links, cause category, rewards, raised statistics with weekly/daily trends, and campaign settings.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | Fundraiser slug (custom_tag from search/browse results, e.g. 'my-baby-battles-for-her-life-and-we-need-your-support-to-save-her-1064511'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ketto-org-api-0e4f9e9a/get_fundraiser_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"slug":"<string>"}'
```

### get_fundraiser_updates

Get updates posted for a fundraiser. Not all fundraisers have updates — returns an empty updates array if none exist. Updates include title, text content (HTML), creation time, update type, owner info with avatar, and associated comments on each update.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max updates to return. |
| `slug` | string | Yes | Fundraiser slug (custom_tag from search/browse results). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ketto-org-api-0e4f9e9a/get_fundraiser_updates \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","slug":"<string>"}'
```

### get_homepage_stats

Get platform-wide statistics from Ketto. Returns aggregate counts including monthly donors, total monetary contributions, number of lives impacted, and count of active campaigns on the platform.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ketto-org-api-0e4f9e9a/get_homepage_stats \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_trending_fundraisers

Retrieve currently trending fundraisers from Ketto. Returns a paginated list of campaigns marked as trending, each with basic campaign info, amount requested, raised totals, campaigner details, and cause category. Results are ordered by platform priority.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ketto-org-api-0e4f9e9a/get_trending_fundraisers \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### search_fundraisers

Search for fundraisers by keyword. Uses MeiliSearch full-text index. Returns matching fundraiser hits with highlighted matches in _formatted fields and facet distribution showing result breakdown by category, tags, and address.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max results to return per page. |
| `offset` | integer | No | Offset for pagination (number of items to skip). |
| `query` | string | Yes | Search keyword to match against fundraiser titles, descriptions, and metadata. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ketto-org-api-0e4f9e9a/search_fundraisers \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>","query":"<string>"}'
```
