# Quizbowlpackets — 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.

> Search and browse thousands of quizbowl question sets across all competition levels, then access detailed metadata like difficulty, subjects, and download links for each packet. Find the perfect practice materials for High School, Collegiate, Middle School, or Pop Culture quizbowl competitions.

**Category:** Education | **Website:** [quizbowlpackets.com/](https://quizbowlpackets.com/) | **Docs:** [parse.bot/marketplace/7ff7b6e8-e9e8-4909-97ac-63ec76d69531/quizbowlpackets-com-api](https://parse.bot/marketplace/7ff7b6e8-e9e8-4909-97ac-63ec76d69531/quizbowlpackets-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/quizbowlpackets/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get set details

Get detailed information about a specific quizbowl set including its full packet list with file names, download URLs, and file sizes. Includes set metadata like difficulty, subjects, season, and comments. The set_id comes from list_sets or search_sets results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `section` | string | No | Section the set belongs to. Accepted values: hs, college, ms, popculture |
| `set_id` | integer | Yes | The numeric set ID to retrieve details for (from list_sets or search_sets results) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/quizbowlpackets/get-set-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"section":"<string>","set_id":"<integer>"}'
```

### List sets

List all quizbowl question sets for a given section with optional filtering by difficulty, set type, subject, and year. Returns paginated results sorted by most recently posted. Each section (hs, college, ms, popculture) maps to a separate subdomain. The full dataset for a section is fetched server-side and filtered client-side, so total reflects post-filter count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `difficulty` | string | No | Filter by difficulty level. Accepted values: 1 (Novice), 2 (Regular), 3 (Regular-Plus), 4 (Nationals), or label names: novice, regular, regular-plus, nationals |
| `limit` | integer | No | Maximum number of results to return |
| `offset` | integer | No | Number of results to skip for pagination |
| `section` | string | No | Section to list sets from. Accepted values: hs, college, ms, popculture |
| `set_type` | string | No | Filter by set type. Accepted values: 1 (Tournament), 2 (Side Event), 3 (One-off Packet), 4 (Theme Tournament), or label names: tournament, side event, one-off packet, theme tournament |
| `subject` | string | No | Filter by subject keyword matched against the subjects field (e.g., 'History', 'Literature', 'All-Subject') |
| `year` | string | No | Filter by year substring in the date field (e.g., '2024', '2025') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/quizbowlpackets/list-sets \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"difficulty":"<string>","limit":"<integer>","offset":"<integer>","section":"<string>","set_type":"<string>","subject":"<string>","year":"<string>"}'
```

### Search sets

Search for quizbowl sets by name, comments, or brief notes across one or all sections. Returns matching sets with full metadata. When section is specified, only that section is searched; when omitted, all four sections (hs, college, ms, popculture) are searched. Uses case-insensitive substring matching.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Maximum number of results to return |
| `query` | string | Yes | Search query to match against set names, comments, and brief notes (case-insensitive substring match) |
| `section` | string | No | Limit search to a specific section. Accepted values: hs, college, ms, popculture. If omitted, searches all sections. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/quizbowlpackets/search-sets \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","query":"<string>","section":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.