{
  "data": {
    "a": {
      "slug": "linkedin-marketing-api",
      "name": "LinkedIn Marketing APIs",
      "vendor": "LinkedIn Corporation",
      "vendorUrl": "https://www.linkedin.com",
      "kind": "http-api",
      "category": "advertising",
      "summary": "LinkedIn's advertising APIs for campaign management, performance reporting, matched audiences, conversions and lead sync. Agents call versioned REST endpoints at api.linkedin.com/rest with a member's OAuth token, after LinkedIn approves the developer application.",
      "url": "https://www.anchorterminal.com/tools/linkedin-marketing-api",
      "markdownUrl": "https://www.anchorterminal.com/tools/linkedin-marketing-api.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/linkedin-marketing-api.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/linkedin-marketing-api.json",
      "license": "Proprietary service under the LinkedIn API terms of use and the Marketing API terms. The beta Python and JavaScript clients carry LinkedIn's API development software licence",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "linkedin-api-client"
        },
        {
          "registry": "npm",
          "name": "linkedin-api-client"
        }
      ],
      "auth": "oauth",
      "authNotes": "Access is by application review. A person creates a LinkedIn Page and a developer application, applies for the Advertising API and completes LinkedIn's vetting. Calls then use a member's three-legged OAuth 2.0 token with scopes such as r_ads, r_ads_reporting and rw_ads. Two-legged OAuth is not available for Marketing APIs. Access tokens last 60 days. The member also needs a role on the ad account, and Development tier limits edits to five ad accounts until LinkedIn approves Standard tier.",
      "pricing": "free",
      "pricingNotes": "No fee for API access was found in the docs or terms, and no price page exists. Ad spend is set by campaign budgets and billed to the ad account. An agent can start without a contract on Development tier, where one test ad account needs no payment details and its campaigns are never served or billed (checked 2026-10-08).",
      "priceSummary": "Free",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Marketing API documentation or the API terms (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 25354,
        "pypiWeekly": 385632,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://learn.microsoft.com/en-us/linkedin/marketing/",
      "capabilities": [
        "ads.reporting",
        "ads.campaigns",
        "ads.budgets",
        "ads.audiences",
        "ads.creatives"
      ],
      "tags": [
        "hosted",
        "free",
        "oauth",
        "app-review",
        "versioned",
        "test-account",
        "status-page",
        "bug-bounty",
        "closed-source",
        "python",
        "javascript"
      ],
      "lastRelease": "2026-09-16",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.4,
        "grade": "B",
        "agentReady": false,
        "rank": 392,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 63,
          "maintenance": 64,
          "payments": 30,
          "reliability": 66,
          "schema": 66,
          "security": 66,
          "transparency": 84
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Monthly API versions are each supported for at least a year, with dated sunsets and a changelog, and a test ad account lets an agent create campaigns that are never served or billed. Access needs LinkedIn's approval and a member's OAuth consent, standard rate limits are not published, and no OpenAPI specification was found.",
        "bestFor": "An agent that reports on and manages LinkedIn campaigns for accounts its operator administers, especially read-only reporting, which has no account limit on Development tier.",
        "strengths": [
          "Monthly versions (latest 202609) each supported for at least one year, with a sunset date per version on the migrations page",
          "A test ad account, created through the API with no payment details, holds campaigns and creatives that are never served or billed",
          "Separate read and write scopes (r_ads, r_ads_reporting, rw_ads), and the VIEWER account role stays read-only even with rw_ads",
          "Structured validation errors with a code, field path and allowed value on adAccounts, adCampaignGroups and adCampaigns",
          "Field projections and cursor pagination (pageSize up to 1,000) on campaign search, and a `fields` parameter on adAnalytics"
        ],
        "weaknesses": [
          "Standard rate limits are not published. An app sees its limit in the Developer Portal only after calling the endpoint",
          "No OpenAPI specification, llms.txt or MCP server was found. The contract is reference pages and a Postman workspace",
          "Access needs a LinkedIn Page, an approved developer application and member consent. Standard tier review can take up to 30 business days",
          "No idempotency keys or Retry-After header were found in the reviewed documentation",
          "The official Python and JavaScript clients are marked beta and were last released in 2023"
        ],
        "agentNotes": [
          "Send `Linkedin-Version: YYYYMM` and `X-Restli-Protocol-Version: 2.0.0` on every call. A missing or sunset version returns an error (426 for a deprecated one)",
          "Create one test ad account with `\"test\": true` and build there first. Its creatives are auto-rejected and never billed, and it returns no reporting data",
          "Create campaigns as DRAFT or PAUSED and check `servingStatuses` before activating. Some validation is postponed until activation",
          "Pass `fields=` on adAnalytics. Responses stop at 15,000 elements and the endpoint throttles at 45 million metric values per 5 minutes",
          "On Development tier, map each ad account to the app in the Developer Portal. Edits are limited to five accounts"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.4
          }
        ],
        "editorialScores": {
          "ergonomics": 63,
          "maintenance": 64,
          "payments": 30,
          "reliability": 66,
          "schema": 66,
          "security": 66,
          "transparency": 74
        },
        "provenanceScore": 94
      },
      "connect": {
        "http": "curl -X GET 'https://api.linkedin.com/rest/adAnalytics?accounts=List(urn%3Ali%3AsponsoredAccount%3A511183580)\u0026dateRange=(start:(day:28,month:7,year:2019))\u0026pivot=(MEMBER_COUNTRY_V2)\u0026q=analytics\u0026timeGranularity=ALL\u0026fields=impressions,pivotValues' \\\n  -H 'Authorization: Bearer {INSERT_TOKEN}' \\\n  -H 'Linkedin-Version: 202609' \\\n  -H 'X-Restli-Protocol-Version: 2.0.0'"
      },
      "letme": {
        "capability": "https://letme.dev/ads.reporting",
        "tool": "https://letme.dev/linkedin-marketing-api"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "LinkedIn Corporation",
        "domain": "linkedin.com",
        "domainRegistered": "2002-11-02",
        "endpointOnVendorDomain": true,
        "terms": "https://www.linkedin.com/legal/l/api-terms-of-use",
        "privacy": "https://www.linkedin.com/legal/privacy-policy",
        "statusPage": "https://www.linkedin-apistatus.com",
        "changelog": "https://learn.microsoft.com/en-us/linkedin/marketing/integrations/recent-changes",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The API terms of use (last revised 13 December 2022) contract with LinkedIn Corporation, 1000 West Maude Avenue, Sunnyvale, California, or with LinkedIn Ireland Unlimited Company for developers in the Designated Countries.",
          "The Marketing API terms at https://www.linkedin.com/legal/l/marketing-api-terms were last revised on 25 July 2025.",
          "API calls go to https://api.linkedin.com/rest. The documentation is hosted by Microsoft at learn.microsoft.com/en-us/linkedin.",
          "www.linkedin.com/.well-known/security.txt has two Contact lines, a Canonical line and a Policy line pointing to hackerone.com/linkedin, and no Expires field.",
          "RDAP for linkedin.com gives a registration date of 2002-11-02."
        ],
        "score": 94
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/linkedin-marketing-api.json",
      "live": {
        "slug": "linkedin-marketing-api",
        "vendorStatus": {
          "page": "https://www.linkedin-apistatus.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-09T11:39:49.208091808Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "linkedin-api-client",
            "version": "0.3.0",
            "seenAt": "2026-10-08T16:18:57.594437926Z"
          },
          {
            "registry": "pypi",
            "name": "linkedin-api-client",
            "version": "0.3.0",
            "released": "2023-06-29",
            "seenAt": "2026-10-08T16:18:55.599903721Z"
          }
        ],
        "npmWeekly": 25354,
        "pypiWeekly": 385632,
        "securityTxt": {
          "url": "https://linkedin.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:54.169049162Z"
        },
        "pages": [
          {
            "url": "https://learn.microsoft.com/en-us/linkedin/marketing/integrations/recent-changes",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:21:42.006346735Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "69c4f2489866"
          },
          {
            "url": "https://www.linkedin.com/legal/privacy-policy",
            "kind": "privacy",
            "status": 0,
            "checkedAt": "2026-10-08T18:28:44.479551534Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "blockedByRobots": true
          },
          {
            "url": "https://www.linkedin.com/legal/l/api-terms-of-use",
            "kind": "terms",
            "status": 0,
            "checkedAt": "2026-10-08T18:28:44.342938486Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "blockedByRobots": true
          }
        ],
        "updatedAt": "2026-10-09T11:39:49.208091808Z"
      }
    },
    "answer": "LinkedIn Marketing APIs scores 62.4 (B) on agent readiness against Snapchat Ads API's 50.4 (D), and leads in every scored category.",
    "b": {
      "slug": "snapchat-ads",
      "name": "Snapchat Ads API",
      "vendor": "Snap Inc.",
      "vendorUrl": "https://www.snap.com",
      "kind": "http-api",
      "category": "advertising",
      "summary": "Snap's Ads API creates and manages Snapchat campaigns, ad squads, ads, creatives and audiences and returns performance statistics. Agents call REST endpoints at adsapi.snapchat.com/v1 with a member's OAuth token, or read account data through the read-only Ads MCP server.",
      "url": "https://www.anchorterminal.com/tools/snapchat-ads",
      "markdownUrl": "https://www.anchorterminal.com/tools/snapchat-ads.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/snapchat-ads.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/snapchat-ads.json",
      "license": "Proprietary service under the Snap Developer Terms, which incorporate the Business Services Terms and the Snap Business Tools Terms",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://mcp.snapchat.com/ads",
      "packages": [],
      "auth": "oauth",
      "authNotes": "Access is self-serve. An Organisation Admin creates an OAuth app in Snap Business Manager, accepts the Snap Developer Terms and the Snap Business Tools Terms, and receives a client ID and a client secret shown once. A member then consents in a browser (authorisation code grant) with the `snapchat-marketing-api` scope, which covers reads and writes. Access tokens last 60 minutes and refresh tokens do not expire. Calls act with the member's organisation and ad account roles. The Ads MCP server uses client IDs registered by Snap, the `snapads.read` scope and an admin's approval for each agent, with no dynamic client registration.",
      "pricing": "free",
      "pricingNotes": "No fee for API access was found in the docs or the terms, and no page states a price for the API. Ad spend is set by campaign and ad squad budgets and billed to the ad account's funding source, with a published minimum of $5 a day. An agent can start without a contract. A test ad account never serves live ads, though whether a business account needs a payment method before API use was not established (checked 2026-10-08).",
      "priceSummary": "Free",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Marketing API documentation or the Snap Developer Terms (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developers.snap.com/marketing-api/Ads-API/introduction",
      "llmsTxt": "https://developers.snap.com/llms.txt",
      "capabilities": [
        "ads.reporting",
        "ads.campaigns",
        "ads.budgets",
        "ads.audiences",
        "ads.creatives"
      ],
      "tags": [
        "hosted",
        "free",
        "oauth",
        "mcp",
        "llms-txt",
        "test-account",
        "audit-log",
        "bug-bounty",
        "closed-source",
        "self-serve"
      ],
      "lastRelease": "2026-10-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 50.4,
        "grade": "D",
        "agentReady": false,
        "rank": 687,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 57,
          "maintenance": 61,
          "payments": 20,
          "reliability": 34,
          "schema": 56,
          "security": 65,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The docs are served as Markdown with an llms.txt index, rate limits are published as 20 requests a second per app and 10 per token, and test ad accounts never serve live ads. No OpenAPI specification, status page, SLA, idempotency key or Ads API SDK was found, and one OAuth scope covers both reads and writes.",
        "bestFor": "An agent that manages or reports on Snapchat campaigns for an advertiser whose admin can create an OAuth app.",
        "strengths": [
          "llms.txt at developers.snap.com indexes every Marketing API page, and each page has a Markdown twin at the same path with `.md`",
          "Rate limits are published with numbers, an average of 20 requests a second per app and 10 per access token",
          "An ad account created with `\"test\": true` can never serve live ads, and `test=true` on a stats request returns sample data",
          "Change logs for campaigns, ad squads, ads and creatives record the user, the OAuth app and the before and after values",
          "The Ads MCP server at https://mcp.snapchat.com/ads is read-only, self-service, and needs an organisation admin's approval for each agent"
        ],
        "weaknesses": [
          "No OpenAPI specification, Postman collection or Ads API SDK was found in the reviewed documentation",
          "No status page or SLA was found, and no Retry-After header, backoff schedule or idempotency key is documented",
          "The `snapchat-marketing-api` scope covers reads and writes together, and refresh tokens do not expire",
          "An update with PUT expects the whole object and resets omitted attributes to their defaults. Deleted objects cannot be restored",
          "The Snap Developer Terms forbid public statements about use of the developer programme without Snap's written approval, and the Business Services Terms forbid publishing Business Services Data"
        ],
        "agentNotes": [
          "Refresh the access token every 60 minutes with the refresh token. An expired token returns 401 with `WWW-Authenticate: Bearer error=\"invalid_token\"`",
          "Create a test ad account with `\"test\": true` and build there first, and create campaigns with `\"status\": \"PAUSED\"`",
          "Change one field with PATCH (JSON Patch). A PUT that omits attributes resets them to their defaults",
          "Send money as micro-currency, where 1.00 of the account currency is 1,000,000",
          "Page lists with `limit` (50 to 1,000) and follow `paging.next_link`. Use `async=true` for large stats pulls, since an oversized response fails with `E9001` and a retry does not help"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 50.4
          }
        ],
        "editorialScores": {
          "ergonomics": 57,
          "maintenance": 61,
          "payments": 20,
          "reliability": 34,
          "schema": 56,
          "security": 65,
          "transparency": 57
        },
        "provenanceScore": 80
      },
      "connect": {
        "http": "curl \"https://adsapi.snapchat.com/v1/me/organizations?with_ad_accounts=true\" \\\n  -H \"Authorization: Bearer {access_token}\"",
        "claudeCode": "claude mcp add --transport http --client-id claude-snap-ads snap-ads https://mcp.snapchat.com/ads\nclaude mcp login snap-ads"
      },
      "letme": {
        "capability": "https://letme.dev/ads.reporting",
        "tool": "https://letme.dev/snapchat-ads"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "Snap Inc.",
        "domain": "snapchat.com",
        "domainRegistered": "2012-02-28",
        "endpointOnVendorDomain": true,
        "terms": "https://www.snap.com/en-US/terms/developer",
        "privacy": "https://values.snap.com/privacy/privacy-policy",
        "statusPage": "",
        "changelog": "https://developers.snap.com/marketing-api/Ads-API/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The Snap Developer Terms (effective 31 January 2025) govern the developer programme and are incorporated into the Business Services Terms (effective 30 September 2024). The contracting entity is Snap Inc. for a business in the United States and Snap Group Limited elsewhere.",
          "The OAuth app setup also requires the Snap Business Tools Terms (effective 1 November 2021).",
          "The privacy policy at values.snap.com is effective 21 September 2026. A Data Processing Agreement (effective 25 July 2023) covers customer personal data Snap processes for a business.",
          "API calls go to https://adsapi.snapchat.com/v1, OAuth to accounts.snapchat.com and the MCP server to mcp.snapchat.com. The documentation is at developers.snap.com.",
          "snapchat.com/.well-known/security.txt has Contact, Policy, Acknowledgements, Canonical and Hiring lines pointing to hackerone.com/snapchat, and no Expires field. www.snap.com and developers.snap.com return 404 for the file.",
          "No status page is linked from the reviewed documentation. status.snapchat.com did not connect from our network.",
          "RDAP gives registration dates of 2012-02-28 for snapchat.com and 1997-02-20 for snap.com."
        ],
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/snapchat-ads.json",
      "live": {
        "slug": "snapchat-ads",
        "probe": {
          "target": "https://mcp.snapchat.com/ads",
          "method": "get",
          "lastAt": "2026-10-09T11:46:41.169719106Z",
          "lastOk": true,
          "lastStatus": 405,
          "lastMs": 465,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 458,
          "p95ms24h": 491,
          "samples24h": 44,
          "samples30d": 44,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 44,
              "ok": 44
            }
          ]
        },
        "updatedAt": "2026-10-09T11:46:41.169719106Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "LinkedIn Corporation",
        "b": "Snap Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://mcp.snapchat.com/ads",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the LinkedIn API terms of use and the Marketing API terms. The beta Python and JavaScript clients carry LinkedIn's API development software licence",
        "b": "Proprietary service under the Snap Developer Terms, which incorporate the Business Services Terms and the Snap Business Tools Terms",
        "name": "Licence"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-16",
        "b": "2026-10-06",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "2025-01-31",
        "name": "Terms last updated"
      },
      {
        "a": "couldn't be read",
        "b": "2026-09-21",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "25k npm/wk, 386k PyPI/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "LinkedIn Marketing APIs scores 62.4 (B) on agent readiness against Snapchat Ads API's 50.4 (D), and leads in every scored category.",
        "question": "Which is better for AI agents, LinkedIn Marketing APIs or Snapchat Ads API?"
      },
      {
        "answer": "Both use an OAuth sign-in.",
        "question": "Do LinkedIn Marketing APIs and Snapchat Ads API need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for LinkedIn Marketing APIs. Snapchat Ads API has a hosted endpoint at https://mcp.snapchat.com/ads.",
        "question": "Can an agent call LinkedIn Marketing APIs and Snapchat Ads API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 66 against 34",
          "Schema \u0026 documentation, 66 against 56",
          "Agent ergonomics, 63 against 57",
          "Payments \u0026 pricing, 30 against 20",
          "Transparency \u0026 trust, 84 against 69"
        ],
        "also": null,
        "goodFor": "An agent that reports on and manages LinkedIn campaigns for accounts its operator administers, especially read-only reporting, which has no account limit on Development tier.",
        "slug": "linkedin-marketing-api",
        "watchFor": "Standard rate limits are not published. An app sees its limit in the Developer Portal only after calling the endpoint"
      },
      {
        "aheadOn": null,
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "An agent that manages or reports on Snapchat campaigns for an advertiser whose admin can create an OAuth app.",
        "slug": "snapchat-ads",
        "watchFor": "No OpenAPI specification, Postman collection or Ads API SDK was found in the reviewed documentation"
      }
    ],
    "job": {
      "capability": "ads.reporting",
      "name": "Ads reporting"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-ads-api-vs-linkedin-marketing-api.json",
        "title": "Amazon Ads API vs LinkedIn Marketing APIs",
        "url": "https://www.anchorterminal.com/compare/amazon-ads-api-vs-linkedin-marketing-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-ads-api-vs-snapchat-ads.json",
        "title": "Amazon Ads API vs Snapchat Ads API",
        "url": "https://www.anchorterminal.com/compare/amazon-ads-api-vs-snapchat-ads"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-ads-api-vs-linkedin-marketing-api.json",
        "title": "Google Ads API vs LinkedIn Marketing APIs",
        "url": "https://www.anchorterminal.com/compare/google-ads-api-vs-linkedin-marketing-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-ads-api-vs-snapchat-ads.json",
        "title": "Google Ads API vs Snapchat Ads API",
        "url": "https://www.anchorterminal.com/compare/google-ads-api-vs-snapchat-ads"
      },
      {
        "json": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-meta-marketing-api.json",
        "title": "LinkedIn Marketing APIs vs Meta Marketing API",
        "url": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-meta-marketing-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-microsoft-advertising-api.json",
        "title": "LinkedIn Marketing APIs vs Microsoft Advertising API",
        "url": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-microsoft-advertising-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/meta-marketing-api-vs-snapchat-ads.json",
        "title": "Meta Marketing API vs Snapchat Ads API",
        "url": "https://www.anchorterminal.com/compare/meta-marketing-api-vs-snapchat-ads"
      },
      {
        "json": "https://www.anchorterminal.com/compare/microsoft-advertising-api-vs-snapchat-ads.json",
        "title": "Microsoft Advertising API vs Snapchat Ads API",
        "url": "https://www.anchorterminal.com/compare/microsoft-advertising-api-vs-snapchat-ads"
      }
    ],
    "scores": [
      {
        "by": 32,
        "edge": "linkedin-marketing-api",
        "key": "reliability",
        "linkedin-marketing-api": 66,
        "name": "Reliability",
        "snapchat-ads": 34,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 10,
        "edge": "linkedin-marketing-api",
        "key": "schema",
        "linkedin-marketing-api": 66,
        "name": "Schema \u0026 documentation",
        "snapchat-ads": 56,
        "weight": 13
      },
      {
        "by": 6,
        "edge": "linkedin-marketing-api",
        "key": "ergonomics",
        "linkedin-marketing-api": 63,
        "name": "Agent ergonomics",
        "snapchat-ads": 57,
        "weight": 13
      },
      {
        "by": 1,
        "edge": "linkedin-marketing-api",
        "key": "security",
        "linkedin-marketing-api": 66,
        "name": "Security \u0026 auth",
        "snapchat-ads": 65,
        "weight": 14
      },
      {
        "by": 10,
        "edge": "linkedin-marketing-api",
        "key": "payments",
        "linkedin-marketing-api": 30,
        "name": "Payments \u0026 pricing",
        "snapchat-ads": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 3,
        "edge": "linkedin-marketing-api",
        "key": "maintenance",
        "linkedin-marketing-api": 64,
        "name": "Maintenance \u0026 community",
        "snapchat-ads": 61,
        "weight": 7
      },
      {
        "by": 15,
        "edge": "linkedin-marketing-api",
        "key": "transparency",
        "linkedin-marketing-api": 84,
        "name": "Transparency \u0026 trust",
        "snapchat-ads": 69,
        "weight": 7
      }
    ],
    "summary": "LinkedIn Marketing APIs scores 62.4 (B) on agent readiness against Snapchat Ads API's 50.4 (D), and leads in every scored category. Both do ads reporting.",
    "verdicts": {
      "linkedin-marketing-api": "Monthly API versions are each supported for at least a year, with dated sunsets and a changelog, and a test ad account lets an agent create campaigns that are never served or billed. Access needs LinkedIn's approval and a member's OAuth consent, standard rate limits are not published, and no OpenAPI specification was found.",
      "snapchat-ads": "The docs are served as Markdown with an llms.txt index, rate limits are published as 20 requests a second per app and 10 per token, and test ad accounts never serve live ads. No OpenAPI specification, status page, SLA, idempotency key or Ads API SDK was found, and one OAuth scope covers both reads and writes."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-snapchat-ads",
    "json": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-snapchat-ads.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-snapchat-ads.md",
    "slim": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-snapchat-ads.min.md"
  },
  "markdown": "LinkedIn Marketing APIs scores 62.4 (B) on agent readiness against Snapchat Ads API's 50.4 (D), and leads in every scored category. Both do ads reporting.\n\n- LinkedIn Marketing APIs: grade B, 62.4/100, rank #392 of 842. Markdown https://www.anchorterminal.com/tools/linkedin-marketing-api.md · JSON https://www.anchorterminal.com/api/v1/tools/linkedin-marketing-api.json\n- Snapchat Ads API: grade D, 50.4/100, rank #687 of 842. Markdown https://www.anchorterminal.com/tools/snapchat-ads.md · JSON https://www.anchorterminal.com/api/v1/tools/snapchat-ads.json\n\n## Which one, for what\n\n### LinkedIn Marketing APIs (B)\n\nGood for: An agent that reports on and manages LinkedIn campaigns for accounts its operator administers, especially read-only reporting, which has no account limit on Development tier.\n\nAhead on:\n- Reliability, 66 against 34\n- Schema \u0026 documentation, 66 against 56\n- Agent ergonomics, 63 against 57\n- Payments \u0026 pricing, 30 against 20\n- Transparency \u0026 trust, 84 against 69\n\nWatch for: Standard rate limits are not published. An app sees its limit in the Developer Portal only after calling the endpoint\n\n### Snapchat Ads API (D)\n\nGood for: An agent that manages or reports on Snapchat campaigns for an advertiser whose admin can create an OAuth app.\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No OpenAPI specification, Postman collection or Ads API SDK was found in the reviewed documentation\n\n\n## Score by category\n\n| Category | Weight | LinkedIn Marketing APIs | Snapchat Ads API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 66 | 34 | LinkedIn Marketing APIs +32 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 66 | 56 | LinkedIn Marketing APIs +10 |\n| Agent ergonomics | 13% (16.2 this run) | 63 | 57 | LinkedIn Marketing APIs +6 |\n| Security \u0026 auth | 14% (17.5 this run) | 66 | 65 | LinkedIn Marketing APIs +1 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 20 | LinkedIn Marketing APIs +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 64 | 61 | LinkedIn Marketing APIs +3 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 84 | 69 | LinkedIn Marketing APIs +15 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **62.4 · B** | **50.4 · D** | |\n\n## Facts side by side\n\n| Fact | LinkedIn Marketing APIs | Snapchat Ads API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | LinkedIn Corporation | Snap Inc. |\n| Hosted endpoint | no (local only) | `https://mcp.snapchat.com/ads` |\n| Transports | HTTP | HTTP |\n| Auth | OAuth | OAuth |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Proprietary service under the LinkedIn API terms of use and the Marketing API terms. The beta Python and JavaScript clients carry LinkedIn's API development software licence | Proprietary service under the Snap Developer Terms, which incorporate the Business Services Terms and the Snap Business Tools Terms |\n| Read-only variant documented | yes | yes |\n| llms.txt | no | yes |\n| Last release | 2026-09-16 | 2026-10-06 |\n| Terms last updated | couldn't be read | 2025-01-31 |\n| Privacy policy last updated | couldn't be read | 2026-09-21 |\n| Customer content may train models | couldn't be read | yes |\n| Terms restrict automated access | couldn't be read | yes |\n| Terms restrict benchmarking | couldn't be read | yes |\n| Terms or service can change without notice | couldn't be read | not found in the text |\n| Arbitration or class-action waiver | couldn't be read | yes |\n| Popularity | 25k npm/wk, 386k PyPI/wk | none |\n\n## Verdicts\n\n**LinkedIn Marketing APIs.** Monthly API versions are each supported for at least a year, with dated sunsets and a changelog, and a test ad account lets an agent create campaigns that are never served or billed. Access needs LinkedIn's approval and a member's OAuth consent, standard rate limits are not published, and no OpenAPI specification was found.\n\n**Snapchat Ads API.** The docs are served as Markdown with an llms.txt index, rate limits are published as 20 requests a second per app and 10 per token, and test ad accounts never serve live ads. No OpenAPI specification, status page, SLA, idempotency key or Ads API SDK was found, and one OAuth scope covers both reads and writes.\n\n## Before you call either\n\n### LinkedIn Marketing APIs\n\n1. Send `Linkedin-Version: YYYYMM` and `X-Restli-Protocol-Version: 2.0.0` on every call. A missing or sunset version returns an error (426 for a deprecated one)\n2. Create one test ad account with `\"test\": true` and build there first. Its creatives are auto-rejected and never billed, and it returns no reporting data\n3. Create campaigns as DRAFT or PAUSED and check `servingStatuses` before activating. Some validation is postponed until activation\n4. Pass `fields=` on adAnalytics. Responses stop at 15,000 elements and the endpoint throttles at 45 million metric values per 5 minutes\n5. On Development tier, map each ad account to the app in the Developer Portal. Edits are limited to five accounts\n\n### Snapchat Ads API\n\n1. Refresh the access token every 60 minutes with the refresh token. An expired token returns 401 with `WWW-Authenticate: Bearer error=\"invalid_token\"`\n2. Create a test ad account with `\"test\": true` and build there first, and create campaigns with `\"status\": \"PAUSED\"`\n3. Change one field with PATCH (JSON Patch). A PUT that omits attributes resets them to their defaults\n4. Send money as micro-currency, where 1.00 of the account currency is 1,000,000\n5. Page lists with `limit` (50 to 1,000) and follow `paging.next_link`. Use `async=true` for large stats pulls, since an oversized response fails with `E9001` and a retry does not help\n\n## Questions\n\n### Which is better for AI agents, LinkedIn Marketing APIs or Snapchat Ads API?\n\nLinkedIn Marketing APIs scores 62.4 (B) on agent readiness against Snapchat Ads API's 50.4 (D), and leads in every scored category.\n\n### Do LinkedIn Marketing APIs and Snapchat Ads API need an API key?\n\nBoth use an OAuth sign-in.\n\n### Can an agent call LinkedIn Marketing APIs and Snapchat Ads API without installing anything?\n\nNo hosted endpoint is listed for LinkedIn Marketing APIs. Snapchat Ads API has a hosted endpoint at https://mcp.snapchat.com/ads.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-snapchat-ads.json, and with the fewest tokens: https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-snapchat-ads.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"linkedin-marketing-api\", \"b\": \"snapchat-ads\"}`. From a terminal: `anchor compare linkedin-marketing-api snapchat-ads`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/linkedin-marketing-api.json and https://www.anchorterminal.com/api/v1/tools/snapchat-ads.json\n\n## Other comparisons with LinkedIn Marketing APIs or Snapchat Ads API\n\n- [Amazon Ads API vs LinkedIn Marketing APIs](https://www.anchorterminal.com/compare/amazon-ads-api-vs-linkedin-marketing-api.md)\n- [Amazon Ads API vs Snapchat Ads API](https://www.anchorterminal.com/compare/amazon-ads-api-vs-snapchat-ads.md)\n- [Google Ads API vs LinkedIn Marketing APIs](https://www.anchorterminal.com/compare/google-ads-api-vs-linkedin-marketing-api.md)\n- [Google Ads API vs Snapchat Ads API](https://www.anchorterminal.com/compare/google-ads-api-vs-snapchat-ads.md)\n- [LinkedIn Marketing APIs vs Meta Marketing API](https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-meta-marketing-api.md)\n- [LinkedIn Marketing APIs vs Microsoft Advertising API](https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-microsoft-advertising-api.md)\n- [Meta Marketing API vs Snapchat Ads API](https://www.anchorterminal.com/compare/meta-marketing-api-vs-snapchat-ads.md)\n- [Microsoft Advertising API vs Snapchat Ads API](https://www.anchorterminal.com/compare/microsoft-advertising-api-vs-snapchat-ads.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "LinkedIn Marketing APIs vs Snapchat Ads API",
        "url": ""
      }
    ],
    "description": "LinkedIn Marketing APIs scores 62.4 (B) on agent readiness against Snapchat Ads API's 50.4 (D), and leads in every scored category. Both do ads reporting. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "LinkedIn Marketing APIs B 62.4",
      "Snapchat Ads API D 50.4",
      "scores"
    ],
    "h1": "LinkedIn Marketing APIs vs Snapchat Ads API",
    "image": "https://www.anchorterminal.com/assets/og/compare-linkedin-marketing-api-vs-snapchat-ads.png",
    "path": "/compare/linkedin-marketing-api-vs-snapchat-ads",
    "published": "2026-10-01",
    "section": "tools",
    "title": "LinkedIn Marketing APIs vs Snapchat Ads API for AI agents",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/linkedin-marketing-api-vs-snapchat-ads"
  },
  "tokens": {
    "markdown": 2200,
    "slim": 730
  },
  "version": 1
}
