# Merx — 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 monitor Canadian government tenders, RFPs, and contract opportunities on Merx, with the ability to filter by category and view detailed solicitation information for both open and closed opportunities. Find procurement projects that match your business needs and track their status through comprehensive tender data.

**Category:** Government & Public Data | **Website:** [merx.com/](https://merx.com/) | **Docs:** [parse.bot/marketplace/882b8ab3-541d-49b0-85e8-bb39fa005332/merx-com-api](https://parse.bot/marketplace/882b8ab3-541d-49b0-85e8-bb39fa005332/merx-com-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-merx-com-api-882b8ab3/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_filter_options

Retrieve available filter options for categories, locations, and publish dates. Returns the full set of codes accepted by the search endpoints' category, location, and publish_date parameters. One round-trip; no pagination.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-merx-com-api-882b8ab3/get_filter_options \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_solicitation_categories

Retrieve the MERX category codes and names assigned to a specific solicitation. Returns hierarchical procurement category classifications. The internal_id is obtained from search results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `internal_id` | string | Yes | The numeric internal solicitation ID (e.g., 3577773664) from search results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-merx-com-api-882b8ab3/get_solicitation_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"internal_id":"<string>"}'
```

### get_solicitation_detail

Retrieve full details of a single solicitation by its internal ID. Returns comprehensive information including description, dates, categories, issuing organization, solicitation type, and document references. The internal_id is obtained from search_open_solicitations or search_closed_solicitations results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `internal_id` | string | Yes | The numeric internal solicitation ID (e.g., 3577773664) from search results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-merx-com-api-882b8ab3/get_solicitation_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"internal_id":"<string>"}'
```

### search_closed_solicitations

Search for closed/past tender solicitations on Merx. Accepts keyword, category, and location filters with pagination. Each result carries an internal_id usable with get_solicitation_detail.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Category code from get_filter_options. |
| `keywords` | string | No | Search keywords to filter solicitations by title or content. |
| `location` | string | No | Location code from get_filter_options. |
| `page` | integer | No | Page number for pagination. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-merx-com-api-882b8ab3/search_closed_solicitations \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","keywords":"<string>","location":"<string>","page":"<integer>"}'
```

### search_open_solicitations

Search for open tender solicitations/RFPs on Merx with keyword, category, location, and publish-date filters. Returns paginated results sorted by relevance. Each result carries an internal_id usable with get_solicitation_detail and get_solicitation_categories.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Category code from get_filter_options (e.g., 10034 for EDP Hardware and Software). |
| `keywords` | string | No | Search keywords to filter solicitations by title or content. |
| `location` | string | No | Location code from get_filter_options (e.g., 355 for Ontario, 38000 for All of Canada). |
| `page` | integer | No | Page number for pagination. |
| `publish_date` | string | No | Filter by publish date. Accepted values: HOURS_24, WEEK_1. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-merx-com-api-882b8ab3/search_open_solicitations \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","keywords":"<string>","location":"<string>","page":"<integer>","publish_date":"<string>"}'
```
