Feedico
Awin (favicon)

Awin

Awin programmes in the same pipeline as your other affiliate sources

Awin API searches split two ways: single-network publishers, and teams that need Awin plus everyone else. Feedico targets the second: connect Awin with your approvals, then read firm and coupon lists through the same Feedico endpoints you use for CJ or Impact. Use the affiliate network API page for the multi-logo pitch, or deal feed API when merchandising language leads the sale.

Also unify

Who is this for?

Teams that monetize through Awin and need the same engineering pattern as other affiliate sources.

How data flows

What you get with Feedico

  • Aligned with CJ/Impact code paths

    Filters, pagination, and error handling stay consistent - no Awin-only router fork.

  • Schema insulation

    When Awin export shapes shift, mapping updates concentrate in Feedico - not every microservice.

  • Editorial-friendly JSON

    Merchandising can ask for “deals JSON” without naming Awin REST verbs - same contract as other sources.

  • Multi-network roadmap

    Add another network in the dashboard instead of greenfielding a new ingestion stack.

Connecting Awin: credentials, endpoints, and what syncs

Authentication: Bearer token (Awin API token) against api.awin.com. Secrets are encrypted at rest and never returned by the API.

What you enter in the dashboard

Publisher ID
Your Awin publisher account ID.
API token
Generated under Awin API credentials; stored encrypted.

Awin APIs Feedico calls

GET /publishers/{publisherId}/programmes?relationship=joined
Programmes you have joined.
POST /publisher/{publisherId}/promotions
Vouchers and promotions for joined programmes.
How Awin data maps to Feedico rows
Awin objectFeedico row
Joined programmeFirm row, provider awin_affiliate
Promotion with voucher codeCoupon row with code and validity window
Promotion without a codeOffer row with code: null (title-only deal)
  • Awin vouchers and offers share one promotions endpoint; Feedico splits them by the presence of a code.

About Awin

Awin is a global affiliate marketing network linking advertisers and publishers, with roots in the European market (headquartered in Berlin) and offices worldwide. It is part of the Axel Springer corporate group alongside institutional partners - see awin.com for official programme detail, imprint, and publisher resources. www.awin.com/. Awin is independent third-party software; trademarks belong to their owner. We summarise public positioning only - confirm policies and programme rules on the vendor site.

Hybrid catalogue note

Feedico may combine unified integration tables with snapshot-oriented programme rows depending on source - your client still sees consistent list contracts. See Documentation for availableProviders behaviour when filtering. Official policies live on awin.com.

How it works

  1. 1

    Connect Awin

    Enter your Publisher ID and API token in the dashboard - only for programmes you are approved on.

  2. 2

    Sync & normalize

    Feedico calls GET /publishers/{publisherId}/programmes?relationship=joined and POST /publisher/{publisherId}/promotions, then maps joined programme, promotion with voucher code and promotion without a code into normalized firm and coupon rows.

  3. 3

    Call one API

    Same list endpoints, pagination, and POST filters as your other connected providers.

  4. 4

    Ship product

    Websites, apps, extensions, or pipelines - one consumer path for every network.

Example row shape

Illustrative JSON - your integration uses customer OpenAPI field names. provider identifies the source (awin_affiliate).

{
  "provider": "awin_affiliate",
  "networkName": "Example Retailer DE",
  "merchant": "Example Retailer",
  "title": "15% off your order",
  "code": "SAVE15",
  "offerUrl": "https://…"
}

Get Awin coupons with code

Once your Awin account is connected, every coupon comes from one endpoint: POST /api/v1/me/coupons with "provider": "awin_affiliate". Leave providerout to get every connected network in the same format. Create a token under Account in the dashboard; each successful call counts toward your plan's monthly request quota.

curl
curl -sS -X POST "https://api.feedico.io/api/v1/me/coupons" \
  -H "Authorization: Bearer $FEEDICO_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"provider": "awin_affiliate", "page": 1, "pageSize": 50}'
Node.js
// Node 18+ (built-in fetch): every active Awin coupon, page by page.
const token = process.env.FEEDICO_TOKEN;

async function fetchCoupons() {
  const all = [];
  for (let page = 1; ; page++) {
    const res = await fetch("https://api.feedico.io/api/v1/me/coupons", {
      method: "POST",
      headers: { Authorization: `Bearer ${token}`, "Content-Type": "application/json" },
      body: JSON.stringify({ provider: "awin_affiliate", page, pageSize: 200 }),
    });
    if (res.status === 429) throw new Error("Monthly API quota reached");
    if (!res.ok) throw new Error(`HTTP ${res.status}`);
    const data = await res.json();
    all.push(...data.coupons);
    if (page * data.pageSize >= data.recordCount) break;
  }
  return all;
}

fetchCoupons().then((coupons) => {
  for (const c of coupons.filter((c) => c.code)) {
    console.log(c.networkName, c.code, c.title, c.endsAt);
  }
});
Python
# Python 3 + requests: every active Awin coupon, page by page.
import os
import requests

URL = "https://api.feedico.io/api/v1/me/coupons"
HEADERS = {"Authorization": f"Bearer {os.environ['FEEDICO_TOKEN']}"}

def fetch_coupons():
    page, rows = 1, []
    while True:
        r = requests.post(URL, headers=HEADERS, json={"provider": "awin_affiliate", "page": page, "pageSize": 200}, timeout=30)
        r.raise_for_status()
        data = r.json()
        rows += data["coupons"]
        if page * data["pageSize"] >= data["recordCount"]:
            return rows
        page += 1

for c in fetch_coupons():
    if c.get("code"):
        print(c["networkName"], c["code"], c["title"], c["endsAt"])
PHP
<?php
// PHP 7.4+ with cURL: first page of active Awin coupons.
$ch = curl_init("https://api.feedico.io/api/v1/me/coupons");
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        "Authorization: Bearer " . getenv("FEEDICO_TOKEN"),
        "Content-Type: application/json",
    ],
    CURLOPT_POSTFIELDS => json_encode(["provider" => "awin_affiliate", "page" => 1, "pageSize" => 50]),
]);
$data = json_decode(curl_exec($ch), true);
curl_close($ch);

foreach ($data["coupons"] as $c) {
    if (!empty($c["code"])) {
        echo "{$c["networkName"]}  {$c["code"]}  {$c["title"]}\n";
    }
}

Other filters: firmName (merchant name), q (search brand, title, or code), and includeInactive. Full schema in the API docs.

Native integration vs Feedico

Awin data: Feedico vs bespoke per-network client
TopicVia FeedicoOne-off native client
Schema alongside other networks✅ Shared❌ Fork per vendor
Auth & secrets in your app✅ One Feedico token⚠️ Bearer token (Awin API token) against api.awin.com.
Awin APIs to integrateHandled in the sync layer2 (GET /publishers/{publisherId}/programmes?relationship=joined; POST /publisher/{publisherId}/promotions)
Schema drift from vendor updatesAbsorbed in mapping❌ Your on-call
When native API is still right - ✅ Exclusive fields / edge workflows

Why pair Awin with a unified layer?

Awin alone needs 2 credentials and its own auth scheme (Bearer token (Awin API token) against api.awin.com). Most growth teams do not stop at one flagship programme source. When Awin is one leg of a multi-network roadmap, maintaining parallel DTOs burns velocity. Feedico lets you keep the relationships that matter while consolidating what your product consumes day to day.

Frequently asked questions

Is Feedico the same company as Awin?
No. Awin is an independent global affiliate network. Feedico is separate software: you connect Awin credentials we store per your account, and your product reads normalized list rows through Feedico's API.
Do I still need Awin programme approval?
Yes. You must stay approved for the advertisers and terms you promote. Feedico does not substitute Awin enrolment or compliance work - it delivers structured data from connections you authorize.
Why not call Awin’s APIs directly?
Direct Awin integration can be the right fit for a single-network product. Feedico targets teams that need Awin plus CJ, Impact, or others without parallel client codebases - same pagination, filters, and error vocabulary everywhere.
How do hybrid catalogue rows work?
Depending on source, Feedico may combine integration tables with snapshot-style programme metadata - your HTTP contracts stay stable. Use Documentation for availableProviders behaviour when filtering slices.
How are quotas handled on Feedico list calls?
Successful list requests count toward your monthly plan quota (UTC month). When limits are hit, responses document the error so you can cache, backoff, or upgrade.

Affiliate disclosure: some links on Feedico are affiliate links. We may earn a commission when you buy through them, at no extra cost to you. Publishers still need programme approval and compliant use at each affiliate network. Feedico provides the integration layer, not a substitute for network terms.

Related pages

Concept & comparisons