> ## Documentation Index
> Fetch the complete documentation index at: https://reach-owl.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# GET /api/v1/campaigns,  List Campaigns

> Returns a paginated list of campaigns for the authenticated user team. Accepts optional team_id, page, and per_page query parameters.

Use this endpoint to retrieve all campaigns that belong to your team. The response is paginated so you can list large campaign sets efficiently.

## Query parameters

<ParamField query="page" default="1" type="integer">
  Page number to retrieve.
</ParamField>

<ParamField query="per_page" default="15" type="integer">
  Number of campaigns to return per page.
</ParamField>

<ParamField query="team_id" type="integer">
  Team ID to scope the listing. Omit to use the default team associated with your auth token.
</ParamField>

## Example request

```bash theme={null}
curl -X GET "https://reachowl.com/api/v1/campaigns?page=1&per_page=15" \
  -H "Authorization: Bearer <token>"
```

## Example response

```json theme={null}
{
  "data": [
    {
      "id": 101,
      "name": "Q3 Outreach",
      "platform": "facebook",
      "action_type": "friend_request",
      "audience_type": "group",
      "post_url": "https://facebook.com/groups/example",
      "status": 1,
      "limit": 30,
      "created_at": "2024-01-10T08:00:00Z",
      "updated_at": "2024-01-12T10:30:00Z"
    }
  ],
  "current_page": 1,
  "per_page": 15,
  "total": 1
}
```

<ResponseField name="data" type="array">
  List of campaign objects.
</ResponseField>

<ResponseField name="current_page" type="integer">
  The current page number returned.
</ResponseField>

<ResponseField name="per_page" type="integer">
  Number of items returned per page.
</ResponseField>

<ResponseField name="total" type="integer">
  Total number of campaigns available.
</ResponseField>
