> For the complete documentation index, see [llms.txt](https://docs.sparkloop.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sparkloop.app/api-v2-deprecated/endpoints/partner-network/partner-programs.md).

# Partner Programs

## Get partner programs

<mark style="color:blue;">`GET`</mark> `https://api.sparkloop.app/v2/partner_network/partner_programs`

#### Query Parameters

| Name                      | Type    | Description                                                                                                                                                                                            |
| ------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| cpa                       | integer | Limit search to partner programs with a CPA higher than a certain value                                                                                                                                |
| max\_payout               | integer | Limit search to partner programs with a Max Payout higher than a certain value                                                                                                                         |
| accepted\_countries       | string  | <p>Limit search to partner programs accepting referrals from specific countries.</p><p><br>Comma separated list of ISO3166 country codes</p><p></p><p>Example: US, CA</p>                              |
| can\_be\_recommended\_via | string  | <p>Limit search to partner programs that can be recommended via specific channels.</p><p>Comma separated list of channels.</p><p></p><p>Example: upscribe, partner\_link or magic\_link</p>            |
| sort                      | string  | <p>The criteria to sort partner programs by.</p><p></p><p>Possible values:</p><p>max\_payout - Max payout (high to low)</p><p>cpa - CPA (high to low)</p><p>max\_payout - Max payout (high to low)</p> |

{% tabs %}
{% tab title="200 Returns partner programs" %}

```json
{
  "partner_programs": [
    <Partner Program Object>,
    <Partner Program Object>,
    <Partner Program Object>,
  ],
  "meta": {
    "per_page": 2,
    "page": 1,
    "total_pages": 12,
    "total_partner_programs": 24
  }
}
```

{% endtab %}
{% endtabs %}

## Get a partner program

<mark style="color:blue;">`GET`</mark> `https://api.sparkloop.app/v2/partner_network/partner_programs/:identifier`

Returns a single partner program by UUID

#### Path Parameters

| Name                                         | Type   | Description            |
| -------------------------------------------- | ------ | ---------------------- |
| identifier<mark style="color:red;">\*</mark> | string | Partner program's UUID |

{% tabs %}
{% tab title="200 Returns partner program" %}

```json
{
  "partner_program": <Partner Program Object>
}
```

{% endtab %}
{% endtabs %}

## Join partner program

<mark style="color:green;">`POST`</mark> `https://api.sparkloop.app/v2/partner_network/partner_programs/:identifier/join`

Use this endpoint to join a partner program.

#### Path Parameters

| Name                                         | Type   | Description            |
| -------------------------------------------- | ------ | ---------------------- |
| identifier<mark style="color:red;">\*</mark> | string | Partner program's UUID |

#### Request Body

| Name                                                        | Type   | Description                                                                                        |
| ----------------------------------------------------------- | ------ | -------------------------------------------------------------------------------------------------- |
| reason\_for\_recommending<mark style="color:red;">\*</mark> | string | If the partner program requires partners to apply, the reason for recommending must be passed over |

{% tabs %}
{% tab title="200 Returns partner program" %}

```
{
    "partner_campaign": <Recommendation Object>
}
```

{% endtab %}

{% tab title="400 " %}
{% tabs %}
{% tab title="Unsupported status" %}

```
{
    "error": "Some error"
}
```

{% endtab %}

{% tab title="Empty PUT body" %}

```
{
    "error": "You have to update at least 1 field."
}
```

{% endtab %}
{% endtabs %}
{% endtab %}
{% endtabs %}
