changedOutput schema / anyOf
Previous value: -[
- {
- "properties": {
- "answer": {
- "description": "One sentence that opens the answer: the cheapest checked plan (or plan of the same product) that meets every required condition with its link, or, when none does, the closest checked plan with what it does not meet or what is unknown, and its link. The plan is written as a markdown link, [Provider Plan](visit link), at the end of the sentence.",
- "type": "string"
- },
- "as_of": {
- "type": "string"
- },
- "assumptions": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "link_notes": {
- "additionalProperties": {
- "type": "string"
- },
- "description": "The note of each link level (link.link_level) of the plans in this result, stated once.",
- "type": "object"
- },
- "needs_input": {
- "items": {
- "properties": {
- "field": {
- "type": "string"
- },
- "reason": {
- "type": "string"
- }
- },
- "required": [
- "field",
- "reason"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "notes": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "request": {
- "type": "object"
- },
- "resolution": {
- "description": "How each entry of plans was read.",
- "items": {
- "properties": {
- "candidates": {
- "items": {
- "properties": {
- "listed": {
- "type": "boolean"
- },
- "offer_id": {
- "type": "string"
- },
- "offer_name": {
- "type": "string"
- },
- "product_name": {
- "type": "string"
- },
- "provider_name": {
- "type": "string"
- }
- },
- "required": [
- "offer_id",
- "offer_name",
- "provider_name"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "candidates_total": {
- "type": "integer"
- },
- "input": {
- "type": "string"
- },
- "matched_by": {
- "enum": [
- "id",
- "name",
- "url",
- null
- ]
- },
- "note": {
- "type": [
- "string",
- "null"
- ]
- },
- "offer_id": {
- "type": [
- "string",
- "null"
- ]
- },
- "status": {
- "description": "resolved: one plan, checked in results; ambiguous: several plans fit, listed in candidates and not checked; not_found: no plan in the catalog fits.",
- "enum": [
- "resolved",
- "ambiguous",
- "not_found"
- ]
- }
- },
- "required": [
- "input",
- "status",
- "offer_id",
- "candidates"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "results": {
- "items": {
- "properties": {
- "assumptions": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "at_limit": {
- "description": "Present for a plan with no automatic extra usage: what the official page says happens at the limit (kind no_extra_usage or restart_by_hand), with its sentence. With a workload that needs restarts, restarts gives their count, the price of each and the total, the numbers of monthly_cost.explanation.",
- "properties": {
- "evidence": {
- "properties": {
- "quote": {
- "type": "string"
- },
- "source": {
- "type": "string"
- }
- },
- "type": "object"
- },
- "kind": {
- "enum": [
- "no_extra_usage",
- "restart_by_hand"
- ]
- },
- "restarts": {
- "properties": {
- "count": {
- "properties": {
- "high": {
- "type": "integer"
- },
- "low": {
- "type": "integer"
- }
- },
- "type": "object"
- },
- "total_usd": {
- "properties": {
- "high": {
- "type": "number"
- },
- "low": {
- "type": "number"
- }
- },
- "type": "object"
- },
- "usd_each": {
- "type": "number"
- }
- },
- "type": "object"
- },
- "text": {
- "type": "string"
- }
- },
- "required": [
- "kind",
- "text",
- "evidence"
- ],
- "type": "object"
- },
- "billing": {
- "type": "string"
- },
- "billing_options": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "cheapest_in_product": {
- "description": "The cheapest listed plan of the same product that meets every required condition of this call; is_this_plan is true when that is the checked plan. null when no plan of the product meets them all.",
- "properties": {
- "billing": {
- "type": "string"
- },
- "is_this_plan": {
- "type": "boolean"
- },
- "monthly_cost": {
- "type": "object"
- },
- "offer_id": {
- "type": "string"
- },
- "offer_name": {
- "type": "string"
- },
- "page_url": {
- "type": "string"
- }
- },
- "required": [
- "offer_id",
- "offer_name",
- "billing",
- "monthly_cost",
- "is_this_plan"
- ],
- "type": [
- "object",
- "null"
- ]
- },
- "checked_at": {
- "type": [
- "string",
- "null"
- ]
- },
- "conditions": {
- "items": {
- "properties": {
- "condition": {
- "type": "string"
- },
- "facts": {
- "description": "Facts the verdict was judged from. The monthly budget is judged from monthly_cost; its price facts are listed there only.",
- "items": {
- "properties": {
- "also_stated_in": {
- "description": "get_details only: other official machine-readable documents of the provider (llms.txt, llms-full.txt, OpenAPI files, MCP tool listings) that contain the same quoted sentences.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "applies_to": {
- "description": "get_details only: billing options (billing) or search engines (search_engines) the fact is limited to.",
- "type": [
- "object",
- "null"
- ]
- },
- "at_limit": {
- "description": "Present for a plan with no automatic extra usage: what the official page says happens at the limit (kind no_extra_usage or restart_by_hand), with its sentence. With a workload that needs restarts, restarts gives their count, the price of each and the total, the numbers of monthly_cost.explanation.",
- "properties": {
- "evidence": {
- "properties": {
- "quote": {
- "type": "string"
- },
- "source": {
- "type": "string"
- }
- },
- "type": "object"
- },
- "kind": {
- "enum": [
- "no_extra_usage",
- "restart_by_hand"
- ]
- },
- "restarts": {
- "properties": {
- "count": {
- "properties": {
- "high": {
- "type": "integer"
- },
- "low": {
- "type": "integer"
- }
- },
- "type": "object"
- },
- "total_usd": {
- "properties": {
- "high": {
- "type": "number"
- },
- "low": {
- "type": "number"
- }
- },
- "type": "object"
- },
- "usd_each": {
- "type": "number"
- }
- },
- "type": "object"
- },
- "text": {
- "type": "string"
- }
- },
- "required": [
- "kind",
- "text",
- "evidence"
- ],
- "type": "object"
- },
- "checked_at": {
- "type": [
- "string",
- "null"
- ]
- },
- "concurrency_unit": {
- "description": "get_details, concurrency only: the unit the page states the value in (unit, text such as \"100 threads\"). Against concurrent requests: equals_requests (value, text and the official line of the unit rule) when the unit rule counts this unit as requests, else note \"not the same unit as concurrent requests\"; \"unit not stated\" when the page names none.",
- "type": "object"
- },
- "derived": {
- "description": "How the value follows from the quoted sentence when it is not literal.",
- "type": "string"
- },
- "evidence": {
- "items": {
- "properties": {
- "quote": {
- "description": "The sentence as it appears on that page.",
- "type": "string"
- },
- "retrieved_at": {
- "description": "Date the page was read (YYYY-MM-DD). Only with detail=full.",
- "type": "string"
- },
- "source": {
- "description": "Official page the sentence was found on.",
- "type": "string"
- },
- "source_type": {
- "description": "Only with detail=full.",
- "enum": [
- "official_pricing",
- "official_docs",
- "third_party"
- ]
- }
- },
- "required": [
- "source",
- "quote"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "exceptions": {
- "description": "get_details only: plans with a different value.",
- "type": "array"
- },
- "key": {
- "type": "string"
- },
- "label": {
- "type": "string"
- },
- "level": {
- "description": "Where the fact is recorded: offer (the plan), product or provider.",
- "type": [
- "string",
- "null"
- ]
- },
- "note": {
- "type": "string"
- },
- "stale": {
- "type": "boolean"
- },
- "status": {
- "description": "TRUE: stated with the value; FALSE / NOT_SUPPORTED: stated as unavailable; UNKNOWN: not stated; CONFLICT: official pages disagree (value lists each version); STALE: past its recheck date; MISSING: not recorded.",
- "enum": [
- "TRUE",
- "FALSE",
- "NOT_SUPPORTED",
- "UNKNOWN",
- "CONFLICT",
- "STALE",
- "MISSING"
- ]
- },
- "value": {},
- "via_exception": {
- "description": "Present and true when a plan-specific exception replaced the general value.",
- "type": "boolean"
- }
- },
- "required": [
- "key",
- "status",
- "value",
- "level",
- "evidence",
- "checked_at"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "label": {
- "type": "string"
- },
- "reason": {
- "type": "string"
- },
- "required": {
- "type": "boolean"
- },
- "verdict": {
- "enum": [
- "MET",
- "UNMET",
- "UNKNOWN",
- "UNIT_MISMATCH",
- "UNIT_UNKNOWN"
- ]
- }
- },
- "required": [
- "condition",
- "label",
- "required",
- "verdict",
- "reason",
- "facts"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "facts_omitted": {
- "description": "search only: present and true when the source sentences under the conditions were left out so that the response fits one response; the verdicts, reasons and costs are unchanged. Ask check_conditions with the offer_id or get_details for the sentences.",
- "type": "boolean"
- },
- "link": {
- "properties": {
- "affiliate": {
- "properties": {
- "disclosure": {
- "type": [
- "string",
- "null"
- ]
- },
- "program": {
- "type": [
- "string",
- "null"
- ]
- },
- "status": {
- "type": "string"
- }
- },
- "required": [
- "status"
- ],
- "type": "object"
- },
- "landing": {
- "type": "string"
- },
- "link_level": {
- "type": "string"
- },
- "provider_url": {
- "description": "The provider page itself. Only in a page made for a browser, where url is this service's address that forwards to it; MCP and REST results do not carry it.",
- "type": "string"
- },
- "url": {
- "description": "The only address to visit the plan: this service's /go/<offer_id>?r=<token> address, which forwards to the provider page. The token is made for this response and holds nothing about you.",
- "type": "string"
- }
- },
- "required": [
- "url",
- "landing",
- "link_level",
- "affiliate"
- ],
- "type": "object"
- },
- "listed": {
- "type": "boolean"
- },
- "match": {
- "enum": [
- "FULL_MATCH",
- "PARTIAL_MATCH",
- "NO_MATCH"
- ]
- },
- "meets_all": {
- "description": "Judged against the required conditions of this call only: true when every one is met, false when one is not met, \"unknown\" when none fails and one is not stated on the official pages.",
- "enum": [
- true,
- false,
- "unknown"
- ]
- },
- "monthly_cost": {
- "properties": {
- "explanation": {
- "type": "string"
- },
- "facts": {
- "description": "Price facts the cost was computed from.",
- "items": {
- "properties": {
- "also_stated_in": {
- "description": "get_details only: other official machine-readable documents of the provider (llms.txt, llms-full.txt, OpenAPI files, MCP tool listings) that contain the same quoted sentences.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "applies_to": {
- "description": "get_details only: billing options (billing) or search engines (search_engines) the fact is limited to.",
- "type": [
- "object",
- "null"
- ]
- },
- "at_limit": {
- "description": "Present for a plan with no automatic extra usage: what the official page says happens at the limit (kind no_extra_usage or restart_by_hand), with its sentence. With a workload that needs restarts, restarts gives their count, the price of each and the total, the numbers of monthly_cost.explanation.",
- "properties": {
- "evidence": {
- "properties": {
- "quote": {
- "type": "string"
- },
- "source": {
- "type": "string"
- }
- },
- "type": "object"
- },
- "kind": {
- "enum": [
- "no_extra_usage",
- "restart_by_hand"
- ]
- },
- "restarts": {
- "properties": {
- "count": {
- "properties": {
- "high": {
- "type": "integer"
- },
- "low": {
- "type": "integer"
- }
- },
- "type": "object"
- },
- "total_usd": {
- "properties": {
- "high": {
- "type": "number"
- },
- "low": {
- "type": "number"
- }
- },
- "type": "object"
- },
- "usd_each": {
- "type": "number"
- }
- },
- "type": "object"
- },
- "text": {
- "type": "string"
- }
- },
- "required": [
- "kind",
- "text",
- "evidence"
- ],
- "type": "object"
- },
- "checked_at": {
- "type": [
- "string",
- "null"
- ]
- },
- "concurrency_unit": {
- "description": "get_details, concurrency only: the unit the page states the value in (unit, text such as \"100 threads\"). Against concurrent requests: equals_requests (value, text and the official line of the unit rule) when the unit rule counts this unit as requests, else note \"not the same unit as concurrent requests\"; \"unit not stated\" when the page names none.",
- "type": "object"
- },
- "derived": {
- "description": "How the value follows from the quoted sentence when it is not literal.",
- "type": "string"
- },
- "evidence": {
- "items": {
- "properties": {
- "quote": {
- "description": "The sentence as it appears on that page.",
- "type": "string"
- },
- "retrieved_at": {
- "description": "Date the page was read (YYYY-MM-DD). Only with detail=full.",
- "type": "string"
- },
- "source": {
- "description": "Official page the sentence was found on.",
- "type": "string"
- },
- "source_type": {
- "description": "Only with detail=full.",
- "enum": [
- "official_pricing",
- "official_docs",
- "third_party"
- ]
- }
- },
- "required": [
- "source",
- "quote"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "exceptions": {
- "description": "get_details only: plans with a different value.",
- "type": "array"
- },
- "key": {
- "type": "string"
- },
- "label": {
- "type": "string"
- },
- "level": {
- "description": "Where the fact is recorded: offer (the plan), product or provider.",
- "type": [
- "string",
- "null"
- ]
- },
- "note": {
- "type": "string"
- },
- "stale": {
- "type": "boolean"
- },
- "status": {
- "description": "TRUE: stated with the value; FALSE / NOT_SUPPORTED: stated as unavailable; UNKNOWN: not stated; CONFLICT: official pages disagree (value lists each version); STALE: past its recheck date; MISSING: not recorded.",
- "enum": [
- "TRUE",
- "FALSE",
- "NOT_SUPPORTED",
- "UNKNOWN",
- "CONFLICT",
- "STALE",
- "MISSING"
- ]
- },
- "value": {},
- "via_exception": {
- "description": "Present and true when a plan-specific exception replaced the general value.",
- "type": "boolean"
- }
- },
- "required": [
- "key",
- "status",
- "value",
- "level",
- "evidence",
- "checked_at"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "high": {
- "type": [
- "number",
- "null"
- ]
- },
- "low": {
- "type": [
- "number",
- "null"
- ]
- },
- "lower_bound": {
- "type": [
- "number",
- "null"
- ]
- },
- "status": {
- "enum": [
- "exact",
- "range",
- "lower_bound",
- "unknown"
- ]
- },
- "upfront_usd": {
- "type": [
- "number",
- "null"
- ]
- },
- "usd": {
- "type": [
- "number",
- "null"
- ]
- }
- },
- "required": [
- "status",
- "usd",
- "explanation"
- ],
- "type": "object"
- },
- "offer_id": {
- "type": "string"
- },
- "offer_name": {
- "type": "string"
- },
- "page_url": {
- "type": "string"
- },
- "preferred_met": {
- "type": "integer"
- },
- "prices_exclude_tax": {
- "type": [
- "boolean",
- "null"
- ]
- },
- "product_id": {
- "type": "string"
- },
- "product_name": {
- "type": "string"
- },
- "provider_id": {
- "type": "string"
- },
- "provider_name": {
- "type": "string"
- },
- "unknown_conditions": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "unmet_conditions": {
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "verdict": {
- "description": "One sentence: the conditions met, or the ones not met or not stated, with the reason.",
- "type": "string"
- }
- },
- "required": [
- "offer_id",
- "offer_name",
- "product_id",
- "provider_name",
- "match",
- "meets_all",
- "verdict",
- "billing",
- "monthly_cost",
- "conditions",
- "unmet_conditions",
- "unknown_conditions",
- "link",
- "checked_at",
- "cheapest_in_product"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "show_text": {
- "description": "Ready to show: one line per listed plan, in list order, \"Meets all N: [Provider Plan](visit link)\" for a plan that meets every required condition of the call, \"Closest: [Provider Plan](visit link)\" for any other. The plan is a markdown link to its visit link, which carries the token of this response. Absent when no plan is listed.",
- "type": "string"
- }
- },
- "required": [
- "answer",
- "as_of",
- "needs_input",
- "results",
- "assumptions",
- "notes"
- ],
- "type": "object"
- },
- {
- "properties": {
- "answer": {
- "type": "string"
- },
- "as_of": {
- "type": "string"
- },
- "format": {
- "enum": [
- "brief"
- ]
- },
- "needs_input": {
- "items": {
- "properties": {
- "field": {
- "type": "string"
- },
- "reason": {
- "type": "string"
- }
- },
- "required": [
- "field",
- "reason"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "resolution": {
- "type": "array"
- },
- "results": {
- "items": {
- "properties": {
- "conditions": {
- "items": {
- "properties": {
- "condition": {
- "type": "string"
- },
- "quote": {
- "description": "One official source sentence, 200 characters at most.",
- "type": "string"
- },
- "reason": {
- "description": "One line, 120 characters at most.",
- "type": "string"
- },
- "required": {
- "description": "Present only on a preferred (nice-to-have) condition.",
- "enum": [
- false
- ]
- },
- "source": {
- "description": "Official page the sentence was found on.",
- "type": [
- "string",
- "null"
- ]
- },
- "verdict": {
- "enum": [
- "MET",
- "UNMET",
- "UNKNOWN",
- "UNIT_MISMATCH",
- "UNIT_UNKNOWN"
- ]
- }
- },
- "required": [
- "condition",
- "verdict",
- "reason"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "match": {
- "enum": [
- "FULL_MATCH",
- "PARTIAL_MATCH",
- "NO_MATCH"
- ]
- },
- "meets_all": {
- "description": "Judged against the required conditions of this call only: true when every one is met, false when one is not met, \"unknown\" when none fails and one is not stated on the official pages.",
- "enum": [
- true,
- false,
- "unknown"
- ]
- },
- "monthly_cost": {
- "description": "status, usd, and low, high or lower_bound when they differ; as in the full result.",
- "type": "object"
- },
- "offer_id": {
- "type": "string"
- },
- "offer_name": {
- "type": "string"
- },
- "provider": {
- "type": "string"
- }
- },
- "required": [
- "offer_id",
- "offer_name",
- "provider",
- "meets_all",
- "monthly_cost",
- "conditions"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "show_text": {
- "description": "Ready to show: one line per listed plan, in list order, \"Meets all N: [Provider Plan](visit link)\" for a plan that meets every required condition of the call, \"Closest: [Provider Plan](visit link)\" for any other. The plan is a markdown link to its visit link, which carries the token of this response. Absent when no plan is listed.",
- "type": "string"
- }
- },
- "required": [
- "format",
- "answer",
- "as_of",
- "needs_input",
- "results"
- ],
- "type": "object"
- }
-]New value: +[
+ {
+ "properties": {
+ "answer": {
+ "description": "One sentence that opens the answer: the cheapest checked plan (or plan of the same product) that meets every required condition with its link, or, when none does, the closest checked plan with what it does not meet or what is unknown, and its link. The plan is written as a markdown link, [Provider Plan](visit link), at the end of the sentence.",
+ "type": "string"
+ },
+ "as_of": {
+ "type": "string"
+ },
+ "assumptions": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "link_notes": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "description": "The note of each link level (link.link_level) of the plans in this result, stated once.",
+ "type": "object"
+ },
+ "needs_input": {
+ "items": {
+ "properties": {
+ "field": {
+ "type": "string"
+ },
+ "reason": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "field",
+ "reason"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "notes": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "request": {
+ "type": "object"
+ },
+ "resolution": {
+ "description": "How each entry of plans was read.",
+ "items": {
+ "properties": {
+ "candidates": {
+ "items": {
+ "properties": {
+ "listed": {
+ "type": "boolean"
+ },
+ "offer_id": {
+ "type": "string"
+ },
+ "offer_name": {
+ "type": "string"
+ },
+ "product_name": {
+ "type": "string"
+ },
+ "provider_name": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "offer_id",
+ "offer_name",
+ "provider_name"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "candidates_total": {
+ "type": "integer"
+ },
+ "input": {
+ "type": "string"
+ },
+ "matched_by": {
+ "enum": [
+ "id",
+ "name",
+ "url",
+ null
+ ]
+ },
+ "note": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "offer_id": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "status": {
+ "description": "resolved: one plan, checked in results; ambiguous: several plans fit, listed in candidates and not checked; not_found: no plan in the catalog fits.",
+ "enum": [
+ "resolved",
+ "ambiguous",
+ "not_found"
+ ]
+ }
+ },
+ "required": [
+ "input",
+ "status",
+ "offer_id",
+ "candidates"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "results": {
+ "items": {
+ "properties": {
+ "assumptions": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "at_limit": {
+ "description": "Present for a plan with no automatic extra usage: what the official page says happens at the limit (kind no_extra_usage or restart_by_hand), with its sentence. With a workload that needs restarts, restarts gives their count, the price of each and the total, the numbers of monthly_cost.explanation.",
+ "properties": {
+ "evidence": {
+ "properties": {
+ "quote": {
+ "type": "string"
+ },
+ "source": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "kind": {
+ "enum": [
+ "no_extra_usage",
+ "restart_by_hand"
+ ]
+ },
+ "restarts": {
+ "properties": {
+ "count": {
+ "properties": {
+ "high": {
+ "type": "integer"
+ },
+ "low": {
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "total_usd": {
+ "properties": {
+ "high": {
+ "type": "number"
+ },
+ "low": {
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "usd_each": {
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "text": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "kind",
+ "text",
+ "evidence"
+ ],
+ "type": "object"
+ },
+ "billing": {
+ "type": "string"
+ },
+ "billing_options": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "cheapest_in_product": {
+ "description": "The cheapest listed plan of the same product that meets every required condition of this call; is_this_plan is true when that is the checked plan. null when no plan of the product meets them all.",
+ "properties": {
+ "billing": {
+ "type": "string"
+ },
+ "is_this_plan": {
+ "type": "boolean"
+ },
+ "monthly_cost": {
+ "type": "object"
+ },
+ "offer_id": {
+ "type": "string"
+ },
+ "offer_name": {
+ "type": "string"
+ },
+ "page_url": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "offer_id",
+ "offer_name",
+ "billing",
+ "monthly_cost",
+ "is_this_plan"
+ ],
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "checked_at": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "conditions": {
+ "items": {
+ "properties": {
+ "condition": {
+ "type": "string"
+ },
+ "facts": {
+ "description": "Facts the verdict was judged from. The monthly budget is judged from monthly_cost; its price facts are listed there only.",
+ "items": {
+ "properties": {
+ "also_stated_in": {
+ "description": "get_details only: other official machine-readable documents of the provider (llms.txt, llms-full.txt, OpenAPI files, MCP tool listings) that contain the same quoted sentences.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "applies_to": {
+ "description": "get_details only: billing options (billing) or search engines (search_engines) the fact is limited to.",
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "at_limit": {
+ "description": "Present for a plan with no automatic extra usage: what the official page says happens at the limit (kind no_extra_usage or restart_by_hand), with its sentence. With a workload that needs restarts, restarts gives their count, the price of each and the total, the numbers of monthly_cost.explanation.",
+ "properties": {
+ "evidence": {
+ "properties": {
+ "quote": {
+ "type": "string"
+ },
+ "source": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "kind": {
+ "enum": [
+ "no_extra_usage",
+ "restart_by_hand"
+ ]
+ },
+ "restarts": {
+ "properties": {
+ "count": {
+ "properties": {
+ "high": {
+ "type": "integer"
+ },
+ "low": {
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "total_usd": {
+ "properties": {
+ "high": {
+ "type": "number"
+ },
+ "low": {
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "usd_each": {
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "text": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "kind",
+ "text",
+ "evidence"
+ ],
+ "type": "object"
+ },
+ "checked_at": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "concurrency_unit": {
+ "description": "get_details, concurrency only: the unit the page states the value in (unit, text such as \"100 threads\"). Against concurrent requests: equals_requests (value, text and the official line of the unit rule) when the unit rule counts this unit as requests, else note \"not the same unit as concurrent requests\"; \"unit not stated\" when the page names none.",
+ "type": "object"
+ },
+ "derived": {
+ "description": "How the value follows from the quoted sentence when it is not literal.",
+ "type": "string"
+ },
+ "evidence": {
+ "items": {
+ "properties": {
+ "quote": {
+ "description": "The sentence as it appears on that page.",
+ "type": "string"
+ },
+ "retrieved_at": {
+ "description": "Date the page was read (YYYY-MM-DD). Only with detail=full.",
+ "type": "string"
+ },
+ "source": {
+ "description": "Official page the sentence was found on.",
+ "type": "string"
+ },
+ "source_type": {
+ "description": "Only with detail=full.",
+ "enum": [
+ "official_pricing",
+ "official_docs",
+ "third_party"
+ ]
+ }
+ },
+ "required": [
+ "source",
+ "quote"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "exceptions": {
+ "description": "get_details only: plans with a different value.",
+ "type": "array"
+ },
+ "key": {
+ "type": "string"
+ },
+ "label": {
+ "type": "string"
+ },
+ "level": {
+ "description": "Where the fact is recorded: offer (the plan), product or provider.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "note": {
+ "type": "string"
+ },
+ "stale": {
+ "type": "boolean"
+ },
+ "status": {
+ "description": "TRUE: stated with the value; FALSE / NOT_SUPPORTED: stated as unavailable; UNKNOWN: not stated; CONFLICT: official pages disagree (value lists each version); STALE: past its recheck date; MISSING: not recorded.",
+ "enum": [
+ "TRUE",
+ "FALSE",
+ "NOT_SUPPORTED",
+ "UNKNOWN",
+ "CONFLICT",
+ "STALE",
+ "MISSING"
+ ]
+ },
+ "value": {},
+ "via_exception": {
+ "description": "Present and true when a plan-specific exception replaced the general value.",
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "key",
+ "status",
+ "value",
+ "level",
+ "evidence",
+ "checked_at"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "label": {
+ "type": "string"
+ },
+ "reason": {
+ "type": "string"
+ },
+ "required": {
+ "type": "boolean"
+ },
+ "verdict": {
+ "enum": [
+ "MET",
+ "UNMET",
+ "UNKNOWN",
+ "UNIT_MISMATCH",
+ "UNIT_UNKNOWN"
+ ]
+ }
+ },
+ "required": [
+ "condition",
+ "label",
+ "required",
+ "verdict",
+ "reason",
+ "facts"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "facts_omitted": {
+ "description": "search only: present and true when the source sentences under the conditions were left out so that the response fits one response; the verdicts, reasons and costs are unchanged. Ask check_conditions with the offer_id or get_details for the sentences.",
+ "type": "boolean"
+ },
+ "link": {
+ "properties": {
+ "affiliate": {
+ "properties": {
+ "disclosure": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "program": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "status"
+ ],
+ "type": "object"
+ },
+ "landing": {
+ "type": "string"
+ },
+ "link_level": {
+ "type": "string"
+ },
+ "provider_url": {
+ "description": "The provider page itself. Only in a page made for a browser, where url is this service's address that forwards to it; MCP and REST results do not carry it.",
+ "type": "string"
+ },
+ "url": {
+ "description": "The only address to visit the plan: this service's /go/<offer_id>?r=<token> address, which forwards to the provider page. The token is made for this response and holds nothing about you.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "url",
+ "landing",
+ "link_level",
+ "affiliate"
+ ],
+ "type": "object"
+ },
+ "listed": {
+ "type": "boolean"
+ },
+ "match": {
+ "enum": [
+ "FULL_MATCH",
+ "PARTIAL_MATCH",
+ "NO_MATCH"
+ ]
+ },
+ "meets_all": {
+ "description": "Judged against the required conditions of this call only: true when every one is met, false when one is not met, \"unknown\" when none fails and one is not stated on the official pages.",
+ "enum": [
+ true,
+ false,
+ "unknown"
+ ]
+ },
+ "monthly_cost": {
+ "properties": {
+ "explanation": {
+ "type": "string"
+ },
+ "facts": {
+ "description": "Price facts the cost was computed from.",
+ "items": {
+ "properties": {
+ "also_stated_in": {
+ "description": "get_details only: other official machine-readable documents of the provider (llms.txt, llms-full.txt, OpenAPI files, MCP tool listings) that contain the same quoted sentences.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "applies_to": {
+ "description": "get_details only: billing options (billing) or search engines (search_engines) the fact is limited to.",
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "at_limit": {
+ "description": "Present for a plan with no automatic extra usage: what the official page says happens at the limit (kind no_extra_usage or restart_by_hand), with its sentence. With a workload that needs restarts, restarts gives their count, the price of each and the total, the numbers of monthly_cost.explanation.",
+ "properties": {
+ "evidence": {
+ "properties": {
+ "quote": {
+ "type": "string"
+ },
+ "source": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "kind": {
+ "enum": [
+ "no_extra_usage",
+ "restart_by_hand"
+ ]
+ },
+ "restarts": {
+ "properties": {
+ "count": {
+ "properties": {
+ "high": {
+ "type": "integer"
+ },
+ "low": {
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "total_usd": {
+ "properties": {
+ "high": {
+ "type": "number"
+ },
+ "low": {
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "usd_each": {
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "text": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "kind",
+ "text",
+ "evidence"
+ ],
+ "type": "object"
+ },
+ "checked_at": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "concurrency_unit": {
+ "description": "get_details, concurrency only: the unit the page states the value in (unit, text such as \"100 threads\"). Against concurrent requests: equals_requests (value, text and the official line of the unit rule) when the unit rule counts this unit as requests, else note \"not the same unit as concurrent requests\"; \"unit not stated\" when the page names none.",
+ "type": "object"
+ },
+ "derived": {
+ "description": "How the value follows from the quoted sentence when it is not literal.",
+ "type": "string"
+ },
+ "evidence": {
+ "items": {
+ "properties": {
+ "quote": {
+ "description": "The sentence as it appears on that page.",
+ "type": "string"
+ },
+ "retrieved_at": {
+ "description": "Date the page was read (YYYY-MM-DD). Only with detail=full.",
+ "type": "string"
+ },
+ "source": {
+ "description": "Official page the sentence was found on.",
+ "type": "string"
+ },
+ "source_type": {
+ "description": "Only with detail=full.",
+ "enum": [
+ "official_pricing",
+ "official_docs",
+ "third_party"
+ ]
+ }
+ },
+ "required": [
+ "source",
+ "quote"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "exceptions": {
+ "description": "get_details only: plans with a different value.",
+ "type": "array"
+ },
+ "key": {
+ "type": "string"
+ },
+ "label": {
+ "type": "string"
+ },
+ "level": {
+ "description": "Where the fact is recorded: offer (the plan), product or provider.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "note": {
+ "type": "string"
+ },
+ "stale": {
+ "type": "boolean"
+ },
+ "status": {
+ "description": "TRUE: stated with the value; FALSE / NOT_SUPPORTED: stated as unavailable; UNKNOWN: not stated; CONFLICT: official pages disagree (value lists each version); STALE: past its recheck date; MISSING: not recorded.",
+ "enum": [
+ "TRUE",
+ "FALSE",
+ "NOT_SUPPORTED",
+ "UNKNOWN",
+ "CONFLICT",
+ "STALE",
+ "MISSING"
+ ]
+ },
+ "value": {},
+ "via_exception": {
+ "description": "Present and true when a plan-specific exception replaced the general value.",
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "key",
+ "status",
+ "value",
+ "level",
+ "evidence",
+ "checked_at"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "high": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "low": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "lower_bound": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "status": {
+ "enum": [
+ "exact",
+ "range",
+ "lower_bound",
+ "unknown"
+ ]
+ },
+ "upfront_usd": {
+ "type": [
+ "number",
+ "null"
+ ]
+ },
+ "usd": {
+ "type": [
+ "number",
+ "null"
+ ]
+ }
+ },
+ "required": [
+ "status",
+ "usd",
+ "explanation"
+ ],
+ "type": "object"
+ },
+ "offer_id": {
+ "type": "string"
+ },
+ "offer_name": {
+ "type": "string"
+ },
+ "page_url": {
+ "type": "string"
+ },
+ "plan_page": {
+ "description": "The link to give the user with this plan, as a markdown link named \"<provider> <plan> — plan page\" (its pricing and sign-up page). The evidence sources under the conditions are for citing a condition.",
+ "type": "string"
+ },
+ "preferred_met": {
+ "type": "integer"
+ },
+ "prices_exclude_tax": {
+ "type": [
+ "boolean",
+ "null"
+ ]
+ },
+ "product_id": {
+ "type": "string"
+ },
+ "product_name": {
+ "type": "string"
+ },
+ "provider_id": {
+ "type": "string"
+ },
+ "provider_name": {
+ "type": "string"
+ },
+ "unknown_conditions": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "unmet_conditions": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "verdict": {
+ "description": "One sentence: the conditions met, or the ones not met or not stated, with the reason.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "offer_id",
+ "offer_name",
+ "product_id",
+ "provider_name",
+ "match",
+ "meets_all",
+ "verdict",
+ "billing",
+ "monthly_cost",
+ "conditions",
+ "unmet_conditions",
+ "unknown_conditions",
+ "link",
+ "checked_at",
+ "cheapest_in_product"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "show_text": {
+ "description": "Ready to show: one line per listed plan, in list order, \"Meets all N: [Provider Plan](visit link)\" for a plan that meets every required condition of the call, \"Closest: [Provider Plan](visit link)\" for any other. The plan is a markdown link to its visit link, which carries the token of this response. Absent when no plan is listed.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "answer",
+ "as_of",
+ "needs_input",
+ "results",
+ "assumptions",
+ "notes"
+ ],
+ "type": "object"
+ },
+ {
+ "properties": {
+ "answer": {
+ "type": "string"
+ },
+ "as_of": {
+ "type": "string"
+ },
+ "format": {
+ "enum": [
+ "brief"
+ ]
+ },
+ "needs_input": {
+ "items": {
+ "properties": {
+ "field": {
+ "type": "string"
+ },
+ "reason": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "field",
+ "reason"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "resolution": {
+ "type": "array"
+ },
+ "results": {
+ "items": {
+ "properties": {
+ "conditions": {
+ "items": {
+ "properties": {
+ "condition": {
+ "type": "string"
+ },
+ "quote": {
+ "description": "One official source sentence, 200 characters at most.",
+ "type": "string"
+ },
+ "reason": {
+ "description": "One line, 120 characters at most.",
+ "type": "string"
+ },
+ "required": {
+ "description": "Present only on a preferred (nice-to-have) condition.",
+ "enum": [
+ false
+ ]
+ },
+ "source": {
+ "description": "Official page the sentence was found on.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "verdict": {
+ "enum": [
+ "MET",
+ "UNMET",
+ "UNKNOWN",
+ "UNIT_MISMATCH",
+ "UNIT_UNKNOWN"
+ ]
+ }
+ },
+ "required": [
+ "condition",
+ "verdict",
+ "reason"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "match": {
+ "enum": [
+ "FULL_MATCH",
+ "PARTIAL_MATCH",
+ "NO_MATCH"
+ ]
+ },
+ "meets_all": {
+ "description": "Judged against the required conditions of this call only: true when every one is met, false when one is not met, \"unknown\" when none fails and one is not stated on the official pages.",
+ "enum": [
+ true,
+ false,
+ "unknown"
+ ]
+ },
+ "monthly_cost": {
+ "description": "status, usd, and low, high or lower_bound when they differ; as in the full result.",
+ "type": "object"
+ },
+ "offer_id": {
+ "type": "string"
+ },
+ "offer_name": {
+ "type": "string"
+ },
+ "plan_page": {
+ "description": "The link to give the user with this plan, as a markdown link named \"<provider> <plan> — plan page\" (its pricing and sign-up page). The evidence sources under the conditions are for citing a condition.",
+ "type": "string"
+ },
+ "provider": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "offer_id",
+ "offer_name",
+ "provider",
+ "meets_all",
+ "monthly_cost",
+ "conditions"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "show_text": {
+ "description": "Ready to show: one line per listed plan, in list order, \"Meets all N: [Provider Plan](visit link)\" for a plan that meets every required condition of the call, \"Closest: [Provider Plan](visit link)\" for any other. The plan is a markdown link to its visit link, which carries the token of this response. Absent when no plan is listed.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "format",
+ "answer",
+ "as_of",
+ "needs_input",
+ "results"
+ ],
+ "type": "object"
+ }
+]