SDK · No UI · Infrastructure

@socialseed/agent — Agent SDK Reference

Hire an autonomous ADK multi-agent campaign runner for TikTok & TikTok Shop social-seeding. Three lines of code. Billed at $0.01 per verified view, hard budget cap enforced server-side.

There is no SocialSeed dashboard. Shopify-app vendors, headless-commerce platforms and DTC OS startups embed this SDK and decorate the events in their own UI. SocialSeed.ing is plumbing, not a product you log into.

Install

# Node 20+, ESM
npm i @socialseed/agent
# peer: nothing. zero UI deps. ~14 kB gzip.

Quickstart — hire a campaign

One call turns a product + a budget into a fully-run seeding campaign: strategy → creator sourcing → AI briefs (with mandatory #ad disclosure) → scheduled publishing → measurement → kill-and-scale reallocation. The agent stops when verified-views × $0.01 hits the deposit.

import { SocialSeed } from '@socialseed/agent';

const client = new SocialSeed({ apiKey: process.env.SOCIALSEED_KEY });

const campaign = await client.campaigns.hire({
  budget:  { deposit_usd: 500, hard_cap: true },        // → 50,000 verified views max
  product: { name: 'Cloud Slides', url: 'https://shop.example/slides',
             tiktok_shop_id: 'ts_88213', price_usd: 34 },
  market:  { regions: ['US'], creator_tier: 'micro' },     // 10k–100k followers
  guardrails: { disclosure: '#ad', community_guidelines: true }
});

console.log(campaign.id);          // "cmp_2f9a..." — A2A-addressable
console.log(campaign.status);      // "planning"
console.log(campaign.a2a_url);     // "https://a2a.socialseed.ing/agents/cmp_2f9a..."
hire() StrategyAgent CreatorSourcingAgent BriefAgent (Gemini/Vertex) PublishAgent (mock TikTok) MeasureReallocAgent budget.exhausted

Webhooks — verified-view event stream

Register one endpoint; the host app renders the rest. Every view passes a fraud filter (dedup, watch-time threshold, source-anomaly, attribution) before it bills.

// POST {your_webhook}  —  event: campaign.view.verified
{
  "event": "campaign.view.verified",
  "campaign_id": "cmp_2f9a3c",
  "post_id": "mocktt_post_5512",
  "creator": { "handle": "@reefwalks", "tier": "micro" },
  "view": {
    "dedup_id": "v_9f1c0a2e",
    "watch_time_s": 7.8,            // ≥ 5.0s threshold → counts
    "source": "fyp",
    "fraud_filter": { "verdict": "pass", "checks": ["dedup","watch_time","source_anomaly","attribution"] }
  },
  "billing": { "unit_usd": 0.01, "campaign_spent_usd": 312.47, "deposit_usd": 500.00 },
  "shop_click": true,                  // attributed click-through to TikTok Shop
  "ts": "2026-05-12T14:02:11Z"
}

// event: campaign.budget.exhausted  — agent halts all spend
{ "event": "campaign.budget.exhausted", "campaign_id": "cmp_2f9a3c",
  "verified_views": 50000, "spent_usd": 500.00, "gmv_attributed_usd": 6140.00 }

A2A agent card

Each hired campaign exposes itself as an A2A agent so the host's own orchestrator (or another vendor's agent) can converse with it directly.

// GET https://a2a.socialseed.ing/agents/cmp_2f9a3c/.well-known/agent.json
{
  "name": "socialseed-campaign-runner",
  "description": "Autonomous TikTok / TikTok Shop social-seeding campaign agent",
  "protocol": "a2a/0.2",
  "provider": { "organization": "SocialSeed.ing", "runtime": "Vertex AI Agent Engine" },
  "skills": [
    { "id": "strategy",          "name": "Plan seeding strategy from product + budget" },
    { "id": "source_creators",   "name": "Source & rank micro-creators" },
    { "id": "generate_briefs",   "name": "AI briefs/captions/storyboards w/ #ad disclosure" },
    { "id": "publish",           "name": "Schedule + publish (mock TikTok endpoint)" },
    { "id": "measure_reallocate","name": "Kill underperformers, scale winners" },
    { "id": "report_roi",        "name": "CPV / clicks / GMV report" }
  ],
  "capabilities": { "streaming": true, "pushNotifications": true },
  "authentication": { "schemes": ["bearer"], "scope": "campaign:cmp_2f9a3c" }
}

MCP tool manifest

Drop SocialSeed into your agent via MCP — the host's ADK agent calls these tools directly. No SocialSeed UI ever appears.

ToolArgsReturns
campaigns.hirebudget, product, market, guardrailscampaign handle + a2a_url
campaigns.statuscampaign_idstate, verified_views, spent_usd, posts[]
campaigns.pausecampaign_idok — halts spend immediately
creators.searchregion, tier, nicheranked creator list (synthetic pool)
ledger.readcampaign_id, since?line items @ $0.01/verified view
report.roicampaign_idCPV, shop_clicks, gmv_attributed_usd
# mcp.json (host app)
{ "mcpServers": { "socialseed": {
    "command": "npx", "args": ["-y","@socialseed/mcp"],
    "env": { "SOCIALSEED_KEY": "${SOCIALSEED_KEY}" } } } }

Billing — usage / ledger endpoint

// GET /v1/campaigns/cmp_2f9a3c/ledger
{
  "campaign_id": "cmp_2f9a3c", "unit_usd": 0.01, "deposit_usd": 500.00,
  "lines": [
    { "date": "2026-05-10", "verified_views": 8120,  "amount_usd": 81.20 },
    { "date": "2026-05-11", "verified_views": 14955, "amount_usd": 149.55 },
    { "date": "2026-05-12", "verified_views": 8172,  "amount_usd": 81.72 }
  ],
  "rejected_views": 2310,   // failed fraud filter — never billed
  "running": { "verified_views": 31247, "spent_usd": 312.47, "remaining_usd": 187.53 }
}
cmp_2f9a3c · 31,247 verified views · 2,310 rejected (fraud filter) $312.47 / $500.00

Embed examples

Shopify embedded app

App Bridge UI calls client.campaigns.hire() on the merchant's behalf; renders the verified-view stream in the merchant's admin. SocialSeed stays invisible.

Headless Next.js storefront

Server action wraps campaigns.hire; webhook → your DB → your charts. Pure API, no iframe, no script tag.

Internal Slack ops bot

Your agent loads the @socialseed/mcp server; "hire a $1k campaign for the new SKU" → A2A handshake → ledger posted to #growth.

DTC OS dashboard (white-label)

Resold under your brand. We provide the agents, the fraud filter, the $0.01 ledger — you provide every pixel the customer sees.

Constraints baked in

ADK multi-agentA2A coordinationMCP tool surfaceGemini on Vertex AIAgent Engine runtimemock TikTok + metrics simulatorsynthetic creator pool$0.01/verified viewfraud filter: dedup · watch-time · source-anomaly · attributionhard budget cap (server-enforced)mandatory #ad disclosure in every briefno paid-ads / legal advice framing