MISSINdevelopersLog in

API reference

CampaignPane

Get one campaign by id (rowId) with its type, dates, budget, UTM values, partners, signals and… Read access, campaigns toolset, MCP tool get_campaign.

Get one campaign by id (rowId) with its type, dates, budget, UTM values, partners, signals and incentives.

Access: Read

Variables

VariableTypeRequiredAcceptsDescription
returnsFromDatetimenoISO 8601 with a zone, e.g. 2026-01-01T00:00:00Z. Default "2020-01-01T00:00:00.000Z"Window start: the UTC day this instant falls in, inclusive. Defaults to 30 days ago.
rowIdUUID!yesEqual to the specified value.

Call it

bash
curl https://api.missin.co.uk/graphql/v1 \
  -H "Authorization: Bearer $MISSIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"operationName":"CampaignPane","variables":{"rowId":"00000000-0000-0000-0000-000000000000"},"extensions":{"persistedQuery":{"version":1,"sha256Hash":"ec0295913cc24fb90d4f0d51aaaa7027f6744e288d372d296a75ad83be74c9f1"}}}'

Document

graphql
query CampaignPane($returnsFrom: Datetime = "2020-01-01T00:00:00.000Z", $rowId: UUID!) { __typename allIncentives( first: 100 orderBy: [CREATED_AT_DESC] filter: {campaignByCampaignId: {rowId: {equalTo: $rowId}}} ) { __typename nodes { __typename icon iconColor id grants: incentiveGrantsByIncentiveId { __typename totalCount } rules: incentiveRulesByIncentiveId { __typename nodes { __typename id kindSlug } } name rowId status } totalCount } campaignByRowId(rowId: $rowId) { __typename allocatedBudget campaignDiscountsByCampaignId(first: 100) { __typename nodes { __typename discountCodeByDiscountCodeId { __typename code id rowId usageCount } id rowId } totalCount } campaignProviderRecordsByCampaignId { __typename nodes { __typename connectionByConnectionId { __typename displayName id integrationByIntegrationId { __typename displayName id logoBg logoUrl slug } rowId } externalId id metadata rowId } } campaignTypeId id managedByConnectionId marketingAdsByCampaignId(first: 200, orderBy: [STARTED_AT_DESC]) { __typename nodes { __typename adNetworkChannel creativeThumbnailUrl currencyCode id name rowId spend status trackingEnabled } totalCount } marketingSendsByCampaignId(first: 200, orderBy: [SENT_AT_DESC]) { __typename nodes { __typename delivered id name programKind revenue rowId sendChannel sent sentAt status trackingEnabled } totalCount } partnerPostsByCampaignId(first: 3, orderBy: [PUBLISHED_AT_DESC]) { __typename nodes { __typename id postUrl rowId title ... on PartnerPostFacebookPost { __typename thumbnailUrl } ... on PartnerPostInstagramPost { __typename displayUrl } ... on PartnerPostInstagramReel { __typename displayUrl } ... on PartnerPostTiktokVideo { __typename coverUrl } ... on PartnerPostYoutubeVideo { __typename thumbnailUrl } } totalCount } rowId spendReportedsByCampaignId { __typename aggregates { __typename sum { __typename reportedAmount } } groupedAggregates( groupBy: [CONVERTED, NATIVE_CURRENCY, REPORTING_CURRENCY, SOURCE, CONNECTION_ID] ) { __typename distinctCount { __typename spendDay } keys sum { __typename nativeAmount reportedAmount } } } } returns: campaignReturns(campaignId: $rowId, from: $returnsFrom, first: 1) { __typename campaigns { __typename attributedRevenue campaignId revenue { __typename convertedCount crossCurrencyCount reportingCurrency total unconverted { __typename amount count currency } } roas roasAbsenceReason spendReported { __typename convertedCount crossCurrencyCount reportingCurrency total unconverted { __typename amount count currency } } } } }

For AI agents: a markdown index of this site is at /llms.txt, and every page is available as markdown by adding .md to its URL.