Meta Branded Content Partnerships Scraper avatar

Meta Branded Content Partnerships Scraper

Pricing

from $2.40 / 1,000 partnership records

Go to Apify Store
Meta Branded Content Partnerships Scraper

Meta Branded Content Partnerships Scraper

Export public Instagram creator-brand partnerships from Meta Branded Content Library by selected business or creator and date range, with handles, publication dates, content types and source links.

Pricing

from $2.40 / 1,000 partnership records

Rating

0.0

(0)

Developer

Automation Lab

Automation Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Export meta branded content partnerships for a selected Instagram business or creator from Meta Branded Content Library. Get creator and brand handles, publication dates, content types, Instagram links and the Library source URL in structured records for recurring sponsorship research.

Who is it for?

Designed for influencer researchers, agency analysts and brand teams who already know which business or creator they want to monitor. This Actor exports public Library relationships, not inferred sponsors from hashtags or tagged posts.

What does this Actor do?

You supply one selected-entity Library URL, optionally override publication dates, and set a run-wide result cap. The Actor returns deduplicated Instagram partnership records in the default dataset. Each content record retains every listed brand partner.

It does not support Facebook partnerships, ordinary Instagram profile URLs, keyword-only entity discovery, private accounts, follower metrics, media downloads or engagement enrichment. Choose the business or creator in Meta's Library before copying the URL.

Why use this Actor?

  • Keep explicit creator-to-brand relationships rather than guessing sponsorship from mentions.
  • Preserve source links so an analyst can verify each record.
  • Compare repeated exports by contentId in your own spreadsheet or database.
  • Treat unavailable content and anonymous pagination limitations honestly instead of presenting the source header count as complete coverage.

There is no built-in schedule, database of past sponsorships, alert service or automatic change detector. Apify schedules and your downstream comparison logic can provide those workflows.

Getting started

  1. Open Meta Branded Content Library.
  2. Choose Instagram, select a business or creator, and set a date range.
  3. Copy the URL. It must contain a numeric id, target=instagram, start_date and end_date, unless dates are supplied as overrides.
  4. Paste it into libraryUrl, choose maxItems, and start the Actor.
  5. Download the default dataset as JSON, CSV, Excel or another Apify-supported format.

The source URL's query is a display label; its numeric id identifies the selected entity. Changing only the label does not select a new business.

Input example

{
"libraryUrl": "https://www.facebook.com/ads/library/branded_content/?id=17841400602400210&query=Nike&target=instagram&start_date=2026-03-01&end_date=2026-04-01",
"maxItems": 5
}

This requests records published in March 2026 for the selected Library entity. Meta's URL end_date is exclusive. If you instead set endDate: "2026-03-31", the Actor treats that override as inclusive, requesting the same interval.

Input parameters

ParameterMeaning
libraryUrlRequired HTTPS selected-entity Library URL. Numeric id and Instagram target are required.
startDateOptional inclusive YYYY-MM-DD override for URL start_date.
endDateOptional inclusive YYYY-MM-DD override; the URL's own end_date remains exclusive when no override is supplied.
maxItemsGlobal accepted-record cap, default 100, minimum 1, maximum 1,000. Zero/unlimited are rejected.

Dates must be real calendar dates and span no more than 366 days. Override precedence is applied before extraction and all returned records are checked against the effective range. Missing dates, reversed dates and unsupported URLs fail before the start event.

The Actor uses company-paid Apify datacenter proxies automatically. No proxy credentials, Facebook account or cookies are requested from you. US residential access was evaluated during development but is not enabled as an automatic fallback.

Extracted data

FieldMeaning
contentIdSource content ID; stable key for deduplication and comparisons.
publicationDateLibrary publication date, YYYY-MM-DD.
creatorInstagram handle and canonical profile URL.
brandPartnersArray of Instagram brand handles and profile URLs.
contentTypepost, reel or story as reported by the source.
contentUrlInstagram post, Reel or Story link.
platformAlways instagram.
sourceUrlSelected Library entity and effective date range.

These are source-reported relationships, not estimates of contract value, paid-ad spend, audience size or campaign effectiveness.

Output example

A public record observed in the Library during development:

{
"contentId": "18574970662003190",
"publicationDate": "2026-03-27",
"creator": {"handle": "oemerpa", "profileUrl": "https://www.instagram.com/oemerpa/"},
"brandPartners": [{"handle": "nike", "profileUrl": "https://www.instagram.com/nike/"}],
"contentType": "reel",
"contentUrl": "https://www.instagram.com/reel/DWZOqqYgBf2/",
"platform": "instagram",
"sourceUrl": "https://www.facebook.com/ads/library/branded_content/?id=17841400602400210&query=Nike&target=instagram&start_date=2026-03-01&end_date=2026-04-01"
}

The SUMMARY key-value record reports count, date boundaries and whether the cap was reached. A successful export has fewer records than maxItems when the available Library pages are exhausted. Historical content links may expire.

How much does it cost to export Instagram branded content partnerships?

Pay-per-event pricing includes a one-time $0.002 start fee per valid run and a per-record event. The BRONZE rate is $0.004 per partnership record. One record with multiple partners still has one item event. Duplicates, excluded Facebook records and unsuccessful extraction attempts do not produce item charges.

Useful recordsEstimated BRONZE Actor charge
10.006 USD estimated total
50.022 USD estimated total
250.102 USD estimated total
1000.402 USD estimated total

Spend-tier discounts depend on your qualifying aggregate monthly Apify Store spend, not the number of records in this Actor alone. See the Pricing tab for active tier rates. These are estimated Actor charges, not guarantees of invoices or earnings; billing corrections, refunds, disputes and taxes may affect final amounts. Required runtime/proxy services are paid by the company, not an undisclosed external API subscription.

A valid no-result run still incurs the start event. A failed upstream run may retain that start charge; no item event is emitted unless extraction finishes with accepted records.

Coverage and limits

Meta sometimes displays a header count larger than the accessible records. For example, the tested March window displayed 16 while its complete public items page returned 14. Do not equate that header with an export guarantee.

Anonymous GraphQL pagination may be unauthorized. This Actor reads structured server-rendered results and splits date windows when necessary, reusing its anonymous browser session. It allows at most 64 windows and one fresh-session retry only for an immediate network failure within five seconds, before any records are collected. Long timeouts and schema/coverage errors fail without an automatic restart. It does not silently claim completeness when a single day has more than one page and the requested cap cannot be met: that case fails with guidance to narrow the job or lower the cap.

Meta can mix Facebook links into an Instagram-target result page; these are excluded. No inference is made to replace a missing partnership. The output is sorted by publication date after extraction, but a capped run is not a guarantee of the globally newest N records across every inaccessible source page.

Integrations

  • Google Sheets / Excel: append exports keyed by contentId; compare creator and partner handles between runs.
  • CRM / research database: store source URLs alongside relationships for analyst review; one record can reference multiple partners.
  • Apify schedules: rerun a recent date window and deduplicate in your destination; the Actor itself does not maintain cross-run state.
  • Webhooks / Make / Zapier: process successful runs, then retrieve the default dataset. Handle failed coverage jobs separately instead of treating them as empty sponsorship activity.

API usage

Replace APIFY_TOKEN with an environment variable containing your own Apify API token. Never paste credentials into input or published datasets.

cURL

curl -X POST 'https://api.apify.com/v2/acts/automation-lab~meta-branded-content-partnerships/run-sync-get-dataset-items' \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"libraryUrl":"https://www.facebook.com/ads/library/branded_content/?id=17841400602400210&query=Nike&target=instagram&start_date=2026-03-01&end_date=2026-04-01","maxItems":5}'

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/meta-branded-content-partnerships').call({
libraryUrl: 'https://www.facebook.com/ads/library/branded_content/?id=17841400602400210&query=Nike&target=instagram&start_date=2026-03-01&end_date=2026-04-01',
maxItems: 5,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/meta-branded-content-partnerships').call(run_input={
'libraryUrl': 'https://www.facebook.com/ads/library/branded_content/?id=17841400602400210&query=Nike&target=instagram&start_date=2026-03-01&end_date=2026-04-01',
'maxItems': 5,
})
print(client.dataset(run['defaultDatasetId']).list_items().items)

MCP and AI clients

The Actor does not use AI or send input/output to a model provider. You may separately choose to connect it to your own AI client through Apify MCP once it is available to your account.

Claude Code

claude mcp add --transport http apify \
"https://mcp.apify.com?tools=automation-lab/meta-branded-content-partnerships"

Claude Desktop, Cursor, and VS Code

Use the client's HTTP MCP configuration; configure your own authentication separately:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/meta-branded-content-partnerships"
}
}
}

Example prompt: “Export five Instagram partnerships from this selected Meta Library URL for March 2026, then show creator handles and partner links.” Supply the selected Library URL explicitly. Do not ask the tool to discover entities from an ordinary profile URL or infer missing sponsorships.

Legality and data handling

Only public Library content IDs, publication dates, creator/brand handles and public URLs are exported. No account passwords, user cookies, private messages or sensitive profile attributes are requested. Browser sessions and cookies are ephemeral and discarded when the browser closes; no cross-run cache is written.

Apify processes and stores your input, dataset, summary and operational logs under your account's storage settings. The Actor does not impose a separate retention timer or delete stored results automatically. Delete run datasets, key-value records and logs through Apify when no longer needed; downstream exports require separate deletion. Company-paid Apify proxy infrastructure receives source requests. Meta receives the selected public entity/date query. No AI provider receives runtime data.

Use public records responsibly, comply with applicable privacy and platform rules, and retain only information needed for your legitimate research. Public availability does not waive privacy obligations. This is an independent automation-lab tool, not endorsed by or affiliated with Meta, Instagram, Facebook or Apify. It uses Apify's standard user terms, without additional custom restrictions.

FAQ and troubleshooting

Why is a normal Instagram profile URL rejected? The current input contract requires Meta's selected-entity numeric ID. Select the profile or business in the Library and copy that URL.

Why do I get fewer rows than Meta's count? The header can include unavailable content. Only recognized accessible Instagram records are exported. Facebook links in mixed pages are excluded.

Why did the run fail instead of returning some rows? A challenge timeout, changed source schema, overfull single-day page or 64-window ceiling is not a verified empty result. Retry a narrower range when coverage is the problem. Contact us through the Actor's Apify Issues tab with a run link and sanitized input when the problem persists.

Does an empty export mean no sponsorships happened? No. It means no accessible matching Library records were returned for that entity and period. It does not prove that offline or undisclosed partnerships did not exist.