# Innovation Ised Isde Canada — 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.

> Access Canadian government grants, loans, and business support programs from the Innovation Canada Business Benefits Finder. Filter by region, industry, goal, and category to browse available programs and retrieve detailed information about eligibility, funding amounts, and application details.

**Category:** Government & Public Data | **Website:** [innovation.ised-isde.canada.ca/](https://innovation.ised-isde.canada.ca/) | **Docs:** [parse.bot/marketplace/d2b6d289-19f7-4d7f-ad40-be3ee5b3c6a8/innovation-ised-isde-canada-ca-api](https://parse.bot/marketplace/d2b6d289-19f7-4d7f-ad40-be3ee5b3c6a8/innovation-ised-isde-canada-ca-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/innovation-ised-isde-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 all grants

Retrieve the complete catalog of all 'grants and funding' programs by paginating through the entire dataset. Makes multiple API calls internally. Limited to 2000 results maximum. Useful for bulk analysis of available grant programs.

**Estimated cost:** Metered

_No parameters required._

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

### Get program details

Retrieve full details for a specific program by its Salesforce record ID. Returns comprehensive information including scope HTML, organization, funding amounts, application status, and eligibility details. Only valid program record IDs (typically starting with 'a00') are accepted.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `dov_id` | string | Yes | Salesforce program record ID, typically a 15- or 18-character alphanumeric string starting with 'a00'. Obtain from the 'id' field in list_programs or search_programs results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/innovation-ised-isde-canada/get-program-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"dov_id":"<string>"}'
```

### Get total count

Returns the total number of programs available in the Business Benefits Finder database. A lightweight call with no parameters, useful for understanding the current catalog size before paginating through results.

**Estimated cost:** Metered

_No parameters required._

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

### List programs

Retrieve a paginated list of programs filtered by category. Returns program summaries (id, title, shortDescription, programStatus, categories) along with metadata including available filter options (provinces, industries, goals) and current story configuration. Default category is 'grants and funding'.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Category to filter by. |
| `limit` | integer | No | Max number of results to return per page. |
| `offset` | integer | No | Starting result offset for pagination. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/innovation-ised-isde-canada/list-programs \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","limit":"<integer>","offset":"<integer>"}'
```

### Search programs

Search for programs with complex filters including province, industry, and goal. Creates a server-side story configuration via the Aura framework to apply filters, then returns paginated results. Filters are JSON-encoded objects using Salesforce field names. Without filters, behaves identically to list_programs.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Category to filter by. |
| `filters` | string | No | JSON-encoded object of filters. Province filters use keys like 'Province_Alberta__c': true with 'Province_With_Regions__c' set to the province name. Industry filters use 'Industry_Picklist__c'. Goal filters use 'Goal__c'. Example: '{"Province_Alberta__c": true, "Province_With_Regions__c": "Alberta"}'. |
| `limit` | integer | No | Max number of results to return per page. |
| `offset` | integer | No | Starting result offset for pagination. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/innovation-ised-isde-canada/search-programs \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>","filters":"<string>","limit":"<integer>","offset":"<integer>"}'
```

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