{"id":"competitor-battlecard","title":"SaaS Pricing & Competitor Battlecard Spy","description":"Reads up to 3 competitor sites (homepage and pricing page, fetched in parallel) and returns a deal battlecard in under a minute: a verdict headline with confidence, pricing tiers whose amounts are checked against the page text, a scenario cost comparison computed in code, hidden fees and limits, landmine questions, objection handling, wedge features and a talk track. If a site or model step fails you get a signed partial result that names what is missing. Pricing is only as current as the public pages; unverified prices are flagged.","roi":"A live battlecard before a competitive deal replaces hours of analyst research and arms reps with questions that expose the rival's limits.","audience":"business","channels":["x402","mcp","rapidapi","apify"],"endpoint":{"method":"POST","url":"https://agents.writerslogic.com/api/v1/competitor-battlecard","path":"/api/v1/competitor-battlecard","contentType":"application/json"},"price":{"amount":"1.50","currency":"USDC","network":"base","perCall":true,"failedCallsCharged":false},"inputSchema":{"type":"object","additionalProperties":false,"required":["ourProductDescription","competitorUrls"],"properties":{"ourProductDescription":{"type":"string","minLength":20,"maxLength":4000},"competitorUrls":{"type":"array","minItems":1,"maxItems":3,"items":{"type":"string","minLength":3,"maxLength":2048},"description":"Competitor homepage or pricing URLs. A same-site pricing page is discovered automatically."},"scenario":{"type":"object","additionalProperties":false,"description":"Optional deal size used to compute monthly and annual cost per verified tier: seats for per-seat prices, monthlyVolume for usage prices.","properties":{"seats":{"type":"integer","minimum":1,"maximum":100000},"monthlyVolume":{"type":"integer","minimum":0,"maximum":1000000000}}}}},"resultSchema":{"type":"object","additionalProperties":false,"required":["our_positioning","competitors","talk_track","evidence_gaps","status","headline","confidence","next_steps","missing","elapsedMs","pricing_comparison","pricing_scenario","priceVerification","pricingEvidence","pagesScraped","fetchFailures","generatedAt"],"properties":{"our_positioning":{"type":"string"},"competitors":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["name","url","positioning","target_segment","pricing_model","pricing_tiers","hidden_fees_and_limits","enterprise_upsell_triggers","strengths","weaknesses","landmine_questions","objection_handling","wedge_features"],"properties":{"name":{"type":"string"},"url":{"type":"string"},"positioning":{"type":"string","description":"Their core claim, paraphrasing their own copy."},"target_segment":{"type":"string"},"pricing_model":{"type":"string","description":"e.g. per seat, usage-based, flat tiers, contact sales. \"not published\" if absent."},"pricing_tiers":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["tier","price","billing","key_limits","notable_features"],"properties":{"tier":{"type":"string"},"price":{"type":"string","description":"One amount exactly as shown on the page (e.g. \"$55 per agent/month\"), or \"not listed\". Put discounts, annual-vs-monthly differences and other amounts in notable_features, not here."},"billing":{"type":"string"},"key_limits":{"type":"array","items":{"type":"string"}},"notable_features":{"type":"array","items":{"type":"string"}}}}},"hidden_fees_and_limits":{"type":"array","items":{"type":"string"}},"enterprise_upsell_triggers":{"type":"array","items":{"type":"string"},"description":"Features or limits that force an upgrade (SSO, audit logs, seat caps...)."},"strengths":{"type":"array","items":{"type":"string"}},"weaknesses":{"type":"array","items":{"type":"string"}},"landmine_questions":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["question","exposes"],"properties":{"question":{"type":"string"},"exposes":{"type":"string"}}}},"objection_handling":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["objection","response"],"properties":{"objection":{"type":"string"},"response":{"type":"string"}}}},"wedge_features":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["feature","why_we_win"],"properties":{"feature":{"type":"string"},"why_we_win":{"type":"string"}}}}}}},"talk_track":{"type":"string","description":"A 3-5 sentence opener for a live deal against these competitors."},"evidence_gaps":{"type":"array","items":{"type":"string"},"description":"What could not be verified from the scraped pages."},"pricing_comparison":{"type":"string","description":"Computed in code from prices verified on the scraped pages; the model does not write it."},"pricing_scenario":{"type":"object","description":"Monthly and annual cost per verified tier at the scenario. assumed is true when no scenario was given and 10 seats / 1,000 monthly units were used."},"status":{"type":"string","enum":["complete","partial"],"description":"partial when a fetch or model step failed; missing lists what."},"headline":{"type":"string","description":"One-paragraph verdict: competitors analyzed, pricing published, verified-tier count, lowest verified cost at the scenario."},"confidence":{"type":"string","enum":["high","medium","low"],"description":"high only when every priced tier was verified against the page and nothing is missing."},"next_steps":{"type":"array","items":{"type":"string"}},"missing":{"type":"array","items":{"type":"string"},"description":"Sections that could not be produced (failed fetches or model steps); empty when status is complete."},"elapsedMs":{"type":"integer"},"priceVerification":{"type":"array","items":{"type":"object"},"description":"Per model-written tier: verified | unverified | no_amount against the scraped text."},"pricingEvidence":{"type":"array","items":{"type":"object"},"description":"Per competitor: whether any price or structured offer was found (pricingPublished)."},"pagesScraped":{"type":"array","items":{"type":"string"}},"fetchFailures":{"type":"array","items":{"type":"object"}},"generatedAt":{"type":"string"}}},"outputSchema":{"type":"object","properties":{"data":{"type":"object","additionalProperties":false,"required":["our_positioning","competitors","talk_track","evidence_gaps","status","headline","confidence","next_steps","missing","elapsedMs","pricing_comparison","pricing_scenario","priceVerification","pricingEvidence","pagesScraped","fetchFailures","generatedAt"],"properties":{"our_positioning":{"type":"string"},"competitors":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["name","url","positioning","target_segment","pricing_model","pricing_tiers","hidden_fees_and_limits","enterprise_upsell_triggers","strengths","weaknesses","landmine_questions","objection_handling","wedge_features"],"properties":{"name":{"type":"string"},"url":{"type":"string"},"positioning":{"type":"string","description":"Their core claim, paraphrasing their own copy."},"target_segment":{"type":"string"},"pricing_model":{"type":"string","description":"e.g. per seat, usage-based, flat tiers, contact sales. \"not published\" if absent."},"pricing_tiers":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["tier","price","billing","key_limits","notable_features"],"properties":{"tier":{"type":"string"},"price":{"type":"string","description":"One amount exactly as shown on the page (e.g. \"$55 per agent/month\"), or \"not listed\". Put discounts, annual-vs-monthly differences and other amounts in notable_features, not here."},"billing":{"type":"string"},"key_limits":{"type":"array","items":{"type":"string"}},"notable_features":{"type":"array","items":{"type":"string"}}}}},"hidden_fees_and_limits":{"type":"array","items":{"type":"string"}},"enterprise_upsell_triggers":{"type":"array","items":{"type":"string"},"description":"Features or limits that force an upgrade (SSO, audit logs, seat caps...)."},"strengths":{"type":"array","items":{"type":"string"}},"weaknesses":{"type":"array","items":{"type":"string"}},"landmine_questions":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["question","exposes"],"properties":{"question":{"type":"string"},"exposes":{"type":"string"}}}},"objection_handling":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["objection","response"],"properties":{"objection":{"type":"string"},"response":{"type":"string"}}}},"wedge_features":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["feature","why_we_win"],"properties":{"feature":{"type":"string"},"why_we_win":{"type":"string"}}}}}}},"talk_track":{"type":"string","description":"A 3-5 sentence opener for a live deal against these competitors."},"evidence_gaps":{"type":"array","items":{"type":"string"},"description":"What could not be verified from the scraped pages."},"pricing_comparison":{"type":"string","description":"Computed in code from prices verified on the scraped pages; the model does not write it."},"pricing_scenario":{"type":"object","description":"Monthly and annual cost per verified tier at the scenario. assumed is true when no scenario was given and 10 seats / 1,000 monthly units were used."},"status":{"type":"string","enum":["complete","partial"],"description":"partial when a fetch or model step failed; missing lists what."},"headline":{"type":"string","description":"One-paragraph verdict: competitors analyzed, pricing published, verified-tier count, lowest verified cost at the scenario."},"confidence":{"type":"string","enum":["high","medium","low"],"description":"high only when every priced tier was verified against the page and nothing is missing."},"next_steps":{"type":"array","items":{"type":"string"}},"missing":{"type":"array","items":{"type":"string"},"description":"Sections that could not be produced (failed fetches or model steps); empty when status is complete."},"elapsedMs":{"type":"integer"},"priceVerification":{"type":"array","items":{"type":"object"},"description":"Per model-written tier: verified | unverified | no_amount against the scraped text."},"pricingEvidence":{"type":"array","items":{"type":"object"},"description":"Per competitor: whether any price or structured offer was found (pricingPublished)."},"pagesScraped":{"type":"array","items":{"type":"string"}},"fetchFailures":{"type":"array","items":{"type":"object"}},"generatedAt":{"type":"string"}}},"_provenance":{"type":"object","description":"C2PA-aligned manifest and W3C VC 2.0 (eddsa-jcs-2022) issued by the hub DID; verify at POST /api/v1/verify-provenance"}},"required":["data","_provenance"]},"example":{"ourProductDescription":"Acme Support is an AI-first help desk with usage-based pricing ($0.40 per resolved ticket), SSO on every plan, and native Slack and Shopify integrations.","competitorUrls":["https://www.zendesk.com","https://www.intercom.com","https://www.freshworks.com/freshdesk/"]},"openapiOperation":{"operationId":"competitor_battlecard","summary":"SaaS Pricing & Competitor Battlecard Spy","description":"Reads up to 3 competitor sites (homepage and pricing page, fetched in parallel) and returns a deal battlecard in under a minute: a verdict headline with confidence, pricing tiers whose amounts are checked against the page text, a scenario cost comparison computed in code, hidden fees and limits, landmine questions, objection handling, wedge features and a talk track. If a site or model step fails you get a signed partial result that names what is missing. Pricing is only as current as the public pages; unverified prices are flagged.\n\nPrice: 1.50 USDC on Base (x402).","x-x402-price-usdc":"1.50","x-x402-amount":"1500000","x-audience":"business","x-sample-url":"https://agents.writerslogic.com/api/v1/samples/competitor-battlecard","security":[{"x402":[]},{"apiKey":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["ourProductDescription","competitorUrls"],"properties":{"ourProductDescription":{"type":"string","minLength":20,"maxLength":4000},"competitorUrls":{"type":"array","minItems":1,"maxItems":3,"items":{"type":"string","minLength":3,"maxLength":2048},"description":"Competitor homepage or pricing URLs. A same-site pricing page is discovered automatically."},"scenario":{"type":"object","additionalProperties":false,"description":"Optional deal size used to compute monthly and annual cost per verified tier: seats for per-seat prices, monthlyVolume for usage prices.","properties":{"seats":{"type":"integer","minimum":1,"maximum":100000},"monthlyVolume":{"type":"integer","minimum":0,"maximum":1000000000}}}}},"example":{"ourProductDescription":"Acme Support is an AI-first help desk with usage-based pricing ($0.40 per resolved ticket), SSO on every plan, and native Slack and Shopify integrations.","competitorUrls":["https://www.zendesk.com","https://www.intercom.com","https://www.freshworks.com/freshdesk/"]}}}},"responses":{"200":{"description":"Paid result with provenance","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","additionalProperties":false,"required":["our_positioning","competitors","talk_track","evidence_gaps","status","headline","confidence","next_steps","missing","elapsedMs","pricing_comparison","pricing_scenario","priceVerification","pricingEvidence","pagesScraped","fetchFailures","generatedAt"],"properties":{"our_positioning":{"type":"string"},"competitors":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["name","url","positioning","target_segment","pricing_model","pricing_tiers","hidden_fees_and_limits","enterprise_upsell_triggers","strengths","weaknesses","landmine_questions","objection_handling","wedge_features"],"properties":{"name":{"type":"string"},"url":{"type":"string"},"positioning":{"type":"string","description":"Their core claim, paraphrasing their own copy."},"target_segment":{"type":"string"},"pricing_model":{"type":"string","description":"e.g. per seat, usage-based, flat tiers, contact sales. \"not published\" if absent."},"pricing_tiers":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["tier","price","billing","key_limits","notable_features"],"properties":{"tier":{"type":"string"},"price":{"type":"string","description":"One amount exactly as shown on the page (e.g. \"$55 per agent/month\"), or \"not listed\". Put discounts, annual-vs-monthly differences and other amounts in notable_features, not here."},"billing":{"type":"string"},"key_limits":{"type":"array","items":{"type":"string"}},"notable_features":{"type":"array","items":{"type":"string"}}}}},"hidden_fees_and_limits":{"type":"array","items":{"type":"string"}},"enterprise_upsell_triggers":{"type":"array","items":{"type":"string"},"description":"Features or limits that force an upgrade (SSO, audit logs, seat caps...)."},"strengths":{"type":"array","items":{"type":"string"}},"weaknesses":{"type":"array","items":{"type":"string"}},"landmine_questions":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["question","exposes"],"properties":{"question":{"type":"string"},"exposes":{"type":"string"}}}},"objection_handling":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["objection","response"],"properties":{"objection":{"type":"string"},"response":{"type":"string"}}}},"wedge_features":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["feature","why_we_win"],"properties":{"feature":{"type":"string"},"why_we_win":{"type":"string"}}}}}}},"talk_track":{"type":"string","description":"A 3-5 sentence opener for a live deal against these competitors."},"evidence_gaps":{"type":"array","items":{"type":"string"},"description":"What could not be verified from the scraped pages."},"pricing_comparison":{"type":"string","description":"Computed in code from prices verified on the scraped pages; the model does not write it."},"pricing_scenario":{"type":"object","description":"Monthly and annual cost per verified tier at the scenario. assumed is true when no scenario was given and 10 seats / 1,000 monthly units were used."},"status":{"type":"string","enum":["complete","partial"],"description":"partial when a fetch or model step failed; missing lists what."},"headline":{"type":"string","description":"One-paragraph verdict: competitors analyzed, pricing published, verified-tier count, lowest verified cost at the scenario."},"confidence":{"type":"string","enum":["high","medium","low"],"description":"high only when every priced tier was verified against the page and nothing is missing."},"next_steps":{"type":"array","items":{"type":"string"}},"missing":{"type":"array","items":{"type":"string"},"description":"Sections that could not be produced (failed fetches or model steps); empty when status is complete."},"elapsedMs":{"type":"integer"},"priceVerification":{"type":"array","items":{"type":"object"},"description":"Per model-written tier: verified | unverified | no_amount against the scraped text."},"pricingEvidence":{"type":"array","items":{"type":"object"},"description":"Per competitor: whether any price or structured offer was found (pricingPublished)."},"pagesScraped":{"type":"array","items":{"type":"string"}},"fetchFailures":{"type":"array","items":{"type":"object"}},"generatedAt":{"type":"string"}}},"_provenance":{"type":"object","description":"C2PA-aligned manifest and W3C VC 2.0 (eddsa-jcs-2022) issued by the hub DID; verify at POST /api/v1/verify-provenance"}},"required":["data","_provenance"]}}}},"400":{"description":"Invalid request (no payment consumed)","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string"}}}}}},"401":{"description":"Invalid X-API-KEY","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string"}}}}}},"402":{"description":"Payment required or invalid","content":{"application/json":{"schema":{"type":"object","description":"x402 v2 PaymentRequired (also base64 in the PAYMENT-REQUIRED header)","properties":{"x402Version":{"type":"integer"},"error":{"type":"string"},"code":{"type":"string"},"resource":{"type":"object"},"accepts":{"type":"array","items":{"type":"object"}},"extensions":{"type":"object"}}}}}},"502":{"description":"Upstream failure; the payment is released or not settled","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"string"}}}}}}}},"links":{"docs":"https://writerslogic.com/agents/competitor-battlecard/","docsJson":"https://writerslogic.com/agents/competitor-battlecard.json","sample":"https://agents.writerslogic.com/api/v1/samples/competitor-battlecard","openapi":"https://agents.writerslogic.com/openapi.json","catalog":"https://agents.writerslogic.com/api/v1/catalog","verifyProvenance":"https://agents.writerslogic.com/api/v1/verify-provenance","index":"https://writerslogic.com/agents/index.json"}}