---
title: "GET /v2/campaign/list"
method: GET
path: "/v2/campaign/list"
tags: ["v2"]
---

# GET /v2/campaign/list

`GET /v2/campaign/list`

## Request

- Base URL: `https://api.inside.ad/api`
- URL: `https://api.inside.ad/api/v2/campaign/list`
- Auth: one of:
  - OAuth 2 (authorization code, authorization URL `https://api.inside.ad/api/oauth/authorize`, token URL `https://api.inside.ad/api/oauth/token`, scopes: `ads:read`)
  - API key in header `authorization`

List the authenticated user's advertising campaigns (ads). For AI agents returns a COMPACT index (adId, campaignId, title, status, budget) — call get_campaign for full details. REST returns full objects.

## Query parameters

- `userId` number, required

## Response `200`

Default Response

- object
  - `success` boolean
  - `ads` object[]
    - `id` number, required
    - `channelId` number, required
    - `createdAt` number: Timestamp
    - `sendToModerationDate` number: Timestamp
    - `userId` number
    - `title` string, required
    - `campaignTitle` string
    - `statusUser` string, required
    - `statusUserOriginal` string: Raw statusUser column before virtual status calculation.
    - `possibleStatusString` string, required
    - `category` string, required
    - `languageCode` string, required
    - `targetCountries` string, required
    - `targetSubdivisions` string, required
    - `targetKeywords` string, required
    - `excludedKeywords` string, required
    - `targetCategories` string, required
    - `targetLanguages` string, required
    - `needTranslate` number, nullable: Разрешён ли автоперевод креатива под язык канала. null — рекламодатель галочку не трогал, 0 — снял, 1 — поставил.
    - `moderated` number, required
    - `moderatedReason` number: Причина отклонения, описание находится в словаре
    - `rejectComment` string, nullable: Free-text moderator comment left when rejecting the ad, max 100 chars
    - `moderatedDate` number: Timestamp в миллисекундах
    - `mWeeklyBudget` number: Weekly spend cap, in milli-USD ($20 = 1000) — divide by 1000 for USD; 0 = no cap
    - `mDailyBudget` number: Daily spend cap, in milli-USD ($20 = 1000) — divide by 1000 for USD; 0 = no cap
    - `statsViews` number, required
    - `statsMembers` number, required
    - `statsPosts` number
    - `statsClicks` number
    - `statsCost` number: Total spend to date, in milli-USD ($1 = 1000) — divide by 1000 for USD
    - `statsActions` number: Installs (clicks.type = action): bot opened / pixel fired
    - `statsActivations` number: Useful installs (clicks.type = activation): what counts is defined by the advertiser, e.g. VPN trial or connect
    - `statsPurchases` number: Payment events (clicks.type = purchase), refunds included
    - `statsRevenue` number: Advertiser-reported revenue from purchases, in milli-USD ($1 = 1000) — divide by 1000 for USD; refunds are negative
    - `readOnly` number
    - `unsub3D` number
    - `adType` string
    - `adMode` string
    - `costType` string
    - `sourceType` string
    - `clickGateAdIds` string
    - `clickGateCampaignIds` string
    - `body` string
    - `link` string
    - `linkParamsTemplate` string: Query-string template the redirect appends to the ad link, e.g. start=inside_{campaignId}_{clickId}. Placeholders: {clickId} {adId} {campaignId} {channelId} {country} {channelCountry} {channelLang}. Empty = default parameters.
    - `filename` string
    - `text` string
    - `entities` string
    - `caption` string
    - `captionEntities` string
    - `removed` number, required
    - `bidCPC` number: Bid per click, in milli-USD ($1 = 1000) — divide by 1000 for USD
    - `bidCPF` number: Bid per 1000 views (CPM-like), in milli-USD ($1 = 1000) — divide by 1000 for USD
    - `bidCPA` number: Bid per conversion/action, in milli-USD ($1 = 1000) — divide by 1000 for USD
    - `bidCPC_t2` number: Tier 2 CPC override, milli-USD. 0/unset = use avgBidCPC_t2 (this tier's own average), NOT base bidCPC.
    - `bidCPC_t3` number: Tier 3 CPC override, milli-USD. 0/unset = use avgBidCPC_t3 (this tier's own average), NOT base bidCPC.
    - `bidCPF_t2` number: Tier 2 CPF override, milli-USD. 0/unset = use avgBidCPF_t2 (this tier's own average), NOT base bidCPF.
    - `bidCPF_t3` number: Tier 3 CPF override, milli-USD. 0/unset = use avgBidCPF_t3 (this tier's own average), NOT base bidCPF.
    - `bidCPA_t2` number: Tier 2 CPA override, milli-USD. 0/unset = use avgBidCPA_t2 (this tier's own average), NOT base bidCPA.
    - `bidCPA_t3` number: Tier 3 CPA override, milli-USD. 0/unset = use avgBidCPA_t3 (this tier's own average), NOT base bidCPA.
    - `onlyCross` number
    - `auto` number
    - `autoMode` string
    - `isVPN` number
    - `isTrade` number
    - `bidType` string
    - `teaserAdId` number
    - `campaignId` number
    - `bidStrategy` string
    - `minBidCPC` number: Tier 1 / base CPC floor, milli-USD.
    - `avgBidCPC` number: Tier 1 / base CPC current market average, milli-USD.
    - `maxBidCPC` number: Tier 1 / base CPC ceiling, milli-USD.
    - `minBidCPF` number: Tier 1 / base CPF floor, milli-USD.
    - `avgBidCPF` number: Tier 1 / base CPF current market average, milli-USD.
    - `maxBidCPF` number: Tier 1 / base CPF ceiling, milli-USD.
    - `minBidCPA` number: Tier 1 / base CPA floor, milli-USD.
    - `avgBidCPA` number: Tier 1 / base CPA current market average, milli-USD.
    - `maxBidCPA` number: Tier 1 / base CPA ceiling, milli-USD.
    - `minBidCPC_t2` number: Tier 2 CPC floor, milli-USD.
    - `avgBidCPC_t2` number: Tier 2 CPC current market average, milli-USD — what bidCPC_t2=0/unset actually charges.
    - `maxBidCPC_t2` number: Tier 2 CPC ceiling, milli-USD.
    - `minBidCPC_t3` number: Tier 3 (budget GEO, e.g. India) CPC floor, milli-USD.
    - `avgBidCPC_t3` number: Tier 3 CPC current market average, milli-USD — what bidCPC_t3=0/unset actually charges.
    - `maxBidCPC_t3` number: Tier 3 CPC ceiling, milli-USD.
    - `minBidCPF_t2` number: Tier 2 CPF floor, milli-USD.
    - `avgBidCPF_t2` number: Tier 2 CPF current market average, milli-USD — what bidCPF_t2=0/unset actually charges.
    - `maxBidCPF_t2` number: Tier 2 CPF ceiling, milli-USD.
    - `minBidCPF_t3` number: Tier 3 CPF floor, milli-USD.
    - `avgBidCPF_t3` number: Tier 3 CPF current market average, milli-USD — what bidCPF_t3=0/unset actually charges.
    - `maxBidCPF_t3` number: Tier 3 CPF ceiling, milli-USD.
    - `minBidCPA_t2` number: Tier 2 CPA floor, milli-USD.
    - `avgBidCPA_t2` number: Tier 2 CPA current market average, milli-USD — what bidCPA_t2=0/unset actually charges.
    - `maxBidCPA_t2` number: Tier 2 CPA ceiling, milli-USD.
    - `minBidCPA_t3` number: Tier 3 CPA floor, milli-USD.
    - `avgBidCPA_t3` number: Tier 3 CPA current market average, milli-USD — what bidCPA_t3=0/unset actually charges.
    - `maxBidCPA_t3` number: Tier 3 CPA ceiling, milli-USD.
    - `sourceTitle` string
    - `sourceAvatarSmall` string
    - `newId` number
    - `oldId` number
    - `koefOfferConversion` number
    - `edited` number

---

[API](https://skmtc.dev/inside/apis/inside-ad-api-documentation-v2-ai-optimized.md) · [All operations](https://skmtc.dev/inside/apis/inside-ad-api-documentation-v2-ai-optimized/llms.txt) · [OpenAPI document](https://skmtc.dev/inside/apis/inside-ad-api-documentation-v2-ai-optimized/revisions/79912b433f7f?raw)
