{"openapi":"3.1.0","info":{"title":"SwiftSignQuote Agent API","version":"1.0.0","description":"Public read-only API for AI agents and integrations. No authentication required. Covers company information, product categories, pricing tiers, FAQs, and blog posts. Quoting and ordering APIs are not yet public - contact us via /contact or book a demo to discuss early access.","contact":{"name":"SwiftSignQuote","url":"https://swiftsignquote.com/contact"}},"servers":[{"url":"https://swiftsignquote.com"}],"security":[],"paths":{"/api/agent/v1/info":{"get":{"operationId":"getInfo","summary":"Company information and agent endpoint discovery","description":"Returns company details (name, URL, description, founding story, pricing model) and the paths of all agent-facing resources (OpenAPI spec, MCP server, agent skills, llms.txt).","responses":{"200":{"description":"Company information and agent endpoints","content":{"application/json":{"schema":{"type":"object","required":["company","agentEndpoints"],"properties":{"company":{"$ref":"#/components/schemas/Company"},"agentEndpoints":{"type":"object","required":["openapi","mcp","skills","llms"],"properties":{"openapi":{"type":"string","description":"Path to this OpenAPI document"},"mcp":{"type":"string","description":"Path to the MCP server endpoint"},"skills":{"type":"string","description":"Path to the agent skills index"},"llms":{"type":"string","description":"Path to llms.txt"}}}}}}}}}}},"/api/agent/v1/products":{"get":{"operationId":"listProductCategories","summary":"Product categories SwiftSignQuote can quote","description":"Returns the sign product categories supported by the Engineered Pricing Engine, each with a short description of example products.","responses":{"200":{"description":"List of product categories","content":{"application/json":{"schema":{"type":"object","required":["categories"],"properties":{"categories":{"type":"array","items":{"$ref":"#/components/schemas/ProductCategory"}}}}}}}}}},"/api/agent/v1/pricing":{"get":{"operationId":"getPricing","summary":"Subscription pricing tiers","description":"Returns SwiftSignQuote subscription tiers in AUD with per-tier feature lists, plus a link to book a demo for exact pricing.","responses":{"200":{"description":"Pricing tiers and billing model","content":{"application/json":{"schema":{"type":"object","required":["currency","billing","tiers","bookDemo"],"properties":{"currency":{"type":"string","enum":["AUD"]},"billing":{"type":"string","description":"Plain-language billing model summary"},"tiers":{"type":"array","items":{"$ref":"#/components/schemas/PricingTier"}},"bookDemo":{"type":"string","description":"URL to book a demo"}}}}}}}}},"/api/agent/v1/faqs":{"get":{"operationId":"listFaqs","summary":"Frequently asked questions","description":"Returns all FAQs, optionally filtered by topic. An unknown topic returns an empty array with status 200.","parameters":[{"name":"topic","in":"query","required":false,"description":"Filter FAQs to a single topic","schema":{"type":"string","enum":["general","pricing","products","features","about","integrations"]}}],"responses":{"200":{"description":"List of FAQs (filtered by topic when provided)","content":{"application/json":{"schema":{"type":"object","required":["faqs"],"properties":{"faqs":{"type":"array","items":{"$ref":"#/components/schemas/Faq"}}}}}}}}}},"/api/agent/v1/posts":{"get":{"operationId":"listPosts","summary":"Blog post index","description":"Returns metadata for all published blog posts. Use /api/agent/v1/posts/{slug} to fetch the full markdown content of a post.","responses":{"200":{"description":"List of blog post summaries","content":{"application/json":{"schema":{"type":"object","required":["posts"],"properties":{"posts":{"type":"array","items":{"$ref":"#/components/schemas/PostSummary"}}}}}}}}}},"/api/agent/v1/posts/{slug}":{"get":{"operationId":"getPost","summary":"Full blog post by slug","description":"Returns a single blog post including its full markdown content.","parameters":[{"name":"slug","in":"path","required":true,"description":"Blog post slug as returned by /api/agent/v1/posts","schema":{"type":"string"}}],"responses":{"200":{"description":"Blog post with full markdown content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Post"}}}},"404":{"description":"No post exists with the given slug","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","enum":["not found"]}}}}}}}}}},"components":{"schemas":{"Company":{"type":"object","required":["name","url","description","country","bookDemoUrl","contactPath","founding","pricingModel"],"properties":{"name":{"type":"string"},"url":{"type":"string"},"description":{"type":"string"},"country":{"type":"string","description":"ISO 3166-1 alpha-2 country code"},"bookDemoUrl":{"type":"string","description":"URL to book a demo"},"contactPath":{"type":"string","description":"Path to the contact page"},"founding":{"type":"string","description":"Company founding story"},"pricingModel":{"type":"string","description":"Plain-language pricing model summary"}}},"ProductCategory":{"type":"object","required":["name","description"],"properties":{"name":{"type":"string"},"description":{"type":"string","description":"Example products within the category"}}},"PricingTier":{"type":"object","required":["name","tagline","features"],"properties":{"name":{"type":"string"},"tagline":{"type":"string"},"features":{"type":"array","items":{"type":"object","required":["text","included"],"properties":{"text":{"type":"string"},"included":{"type":"boolean"}}}}}},"Faq":{"type":"object","required":["topic","question","answer"],"properties":{"topic":{"type":"string","enum":["general","pricing","products","features","about","integrations"]},"question":{"type":"string"},"answer":{"type":"string"}}},"PostSummary":{"type":"object","required":["slug","title","description","category","tags","datePublished","readingTime","url"],"properties":{"slug":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"category":{"type":"string"},"tags":{"type":"array","items":{"type":"string"}},"datePublished":{"type":"string","description":"ISO 8601 date"},"readingTime":{"type":"string","description":"Human-readable reading time"},"url":{"type":"string","description":"Canonical URL of the post"}}},"Post":{"allOf":[{"$ref":"#/components/schemas/PostSummary"},{"type":"object","required":["content"],"properties":{"content":{"type":"string","description":"Full post body as markdown"}}}]}}}}