# Kijiji (Canada) — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.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 Kijiji listings across categories like rentals, pets, and jobs, while viewing detailed information about specific ads along with available locations and categories. Filter through thousands of Canadian classifieds to find exactly what you're looking for in your area.

**Category:** Marketplaces | **Website:** [kijiji.ca/](https://kijiji.ca/) | **Docs:** [parse.bot/marketplace/fcad5b72-aa63-41fa-8e97-07fb85cf7ca4/kijiji-ca-api](https://parse.bot/marketplace/fcad5b72-aa63-41fa-8e97-07fb85cf7ca4/kijiji-ca-api)

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

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/kijiji-canada/`
**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 categories

Retrieve all top-level listing categories with their subcategories and IDs. Returns the full category tree in a single response. Useful for discovering valid cat_id values for search_listings.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/kijiji-canada/get-categories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get listing detail

Fetch full details of a specific classified ad by its URL path, including full description, all images at higher resolution, seller profile information, and listing attributes. The URL can be a relative path or full URL.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url` | string | Yes | Full or relative URL path of the listing (e.g. '/v-laptops/city-of-toronto/laptops-gaming-laptop/1731050620'). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/kijiji-canada/get-listing-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url":"<string>"}'
```

### Get locations

Retrieve top-level location options (provinces and territories) with their IDs. Returns all provinces/territories in a single response. Useful for discovering valid loc_id values for search_listings.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/kijiji-canada/get-locations \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Search job listings

Search job listings by keywords and location. A convenience wrapper around the general search pre-filtered to jobs. Returns up to 40 listings per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `keywords` | string | No | Job search keywords. |
| `location` | string | No | Location slug (e.g. 'montreal', 'toronto'). |
| `page` | integer | No | Page number for pagination. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/kijiji-canada/search-job-listings \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"keywords":"<string>","location":"<string>","page":"<integer>"}'
```

### Search listings

Search classified ads across all categories with filters for category, location, and keywords. Returns up to 40 listings per page with pagination metadata. The URL is constructed from category and location slugs plus optional keyword and ID filters. Pagination advances via the page parameter.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `cat_id` | integer | No | Category ID filter. Use get_categories to discover valid IDs. |
| `category_slug` | string | No | Category URL slug (e.g. 'b-all', 'b-apartments-condos', 'b-jobs'). |
| `keywords` | string | No | Search keywords to filter listings. |
| `loc_id` | integer | No | Location ID filter. Use get_locations to discover valid IDs. |
| `location_slug` | string | No | Location URL slug (e.g. 'l0' for all Canada, 'montreal', 'toronto'). |
| `page` | integer | No | Page number for pagination. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/kijiji-canada/search-listings \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"cat_id":"<integer>","category_slug":"<string>","keywords":"<string>","loc_id":"<integer>","location_slug":"<string>","page":"<integer>"}'
```

### Search pet listings

Search pet listings by subcategory, keywords, and location. A convenience wrapper around the general search pre-filtered to pets. Returns up to 40 listings per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Pet sub-category slug (e.g. 'cats-kittens', 'dogs-puppies', 'birds'). |
| `keywords` | string | No | Search keywords to filter pet listings. |
| `location` | string | No | Location slug (e.g. 'montreal', 'toronto'). |
| `page` | integer | No | Page number for pagination. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/kijiji-canada/search-pet-listings \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","keywords":"<string>","location":"<string>","page":"<integer>"}'
```

### Search rental listings

Search apartment and condo rental listings in a specified location. A convenience wrapper around the general search pre-filtered to the real estate rental category. Returns up to 40 listings per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `keywords` | string | No | Search keywords to filter rental listings. |
| `location` | string | No | Location slug (e.g. 'montreal', 'toronto', 'ottawa'). |
| `page` | integer | No | Page number for pagination. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/kijiji-canada/search-rental-listings \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"keywords":"<string>","location":"<string>","page":"<integer>"}'
```

## Next steps

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