{"openapi":"3.1.0","info":{"title":"Carconomics agent market reports","version":"1.0.0","description":"Preview observed rental-market evidence, obtain a tax-inclusive quote, then authorize a one-time MPP payment. Keep the order UUID and private order key for recovery. Discovery is advisory; the signed HTTP 402 challenge is authoritative. Subscription plans are discoverable in the catalog but require embedded human account signup, not this payment API.","contact":{"name":"Carconomics","email":"support@carconomics.com","url":"https://carconomics.com"},"termsOfService":"https://carconomics.com/terms"},"externalDocs":{"description":"Report overview with links to the complete CLI purchase and recovery workflow","url":"https://carconomics.com/reports"},"servers":[{"url":"https://carconomics.com"}],"x-service-info":{"categories":["rental-market-research"],"docs":{"homepage":"https://carconomics.com","reportOverview":"https://carconomics.com/reports","llms":"https://carconomics.com/llms.txt","apiReference":"https://carconomics.com/openapi.json"}},"paths":{"/api/agents/offers":{"get":{"operationId":"listAgentOffers","summary":"Discover report packs, previews and subscription signup links","description":"Read payment.status before proceeding. Report prices are before tax. Recurring plans use embedded signup and are not payable through MPP.","security":[],"responses":{"200":{"description":"Current catalog; payment may be unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferCatalog"}}}},"503":{"description":"Catalog unavailable.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/reports/preview":{"get":{"operationId":"previewAgentReport","summary":"Read a free, bounded preview of current supported evidence","security":[],"parameters":[{"name":"group","in":"query","required":true,"schema":{"type":"string","enum":["tesla","luxury"],"description":"Configured group. Read the catalog and preview for current support; paused groups cannot be quoted."}},{"name":"market","in":"query","required":true,"schema":{"type":"string","enum":["ord","lax"]}}],"responses":{"200":{"description":"Supported report preview; paid sections are omitted.","content":{"application/json":{"schema":{"type":"object","properties":{"status":{"const":"ok"},"preview":{"$ref":"#/components/schemas/ReportPreview"}},"required":["status","preview"]}}}},"400":{"description":"Unknown or missing group/market.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Current evidence is unavailable, stale, thin or paused.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/agents/orders":{"post":{"operationId":"quoteAgentOrder","summary":"Create or recover an immutable tax-inclusive report quote","description":"Complete Link authentication before this request starts the quote clock. Generate and privately persist an order UUID, 32 random bytes encoded as lowercase hex, and the exact JSON request before sending it. Obtain the buyer's terms agreement and use their actual billing location, not the report market. A quote lasts at most 15 minutes; inspect expiresAt. Retry with the same UUID, key and body; a different UUID is another order. No payment occurs here. Runnable examples: https://carconomics.com/llms.txt.","security":[{"OrderKey":[]}],"parameters":[{"$ref":"#/components/parameters/OrderKey"}],"requestBody":{"required":true,"description":"Order identity, pack, report scope, billing location and terms agreement. Maximum 4096 UTF-8 bytes.","x-max-bytes":4096,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuoteInput"}}}},"responses":{"200":{"description":"Saved quote and preview, never the full unpaid report.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderQuote"}}}},"400":{"description":"Invalid input, body or browser origin.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Supply a private 64-character lowercase hexadecimal X-Carconomics-Order-Key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Unknown order/report or missing/incorrect private order key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Read status: payment-failed is a proven terminal cancellation without received funds; processing/needs-review/busy is unresolved and requires recovery of the same order. Other conflicts include request-mismatch, credit-required and refunded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"410":{"description":"The quote or paid order has expired.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"The bounded quote budget or order capacity is exhausted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Service, evidence or authoritative payment verification is unavailable. Recover an existing order before starting another purchase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"operationId":"recoverAgentOrder","summary":"Recover a quote or the first paid report without another charge","description":"Recover before any replacement payment. A processing, needs-review, busy or unavailable response is unresolved; retain this order and key. payment-failed means provider-verified terminal cancellation without received funds, so a separately approved replacement may use a new order. quoted can still have a pending Link approval: resume its saved continuation. A 404 may mean the key is wrong and does not establish payment failure. Paid recovery restores the saved first report without another debit.","security":[{"OrderKey":[]}],"parameters":[{"$ref":"#/components/parameters/OrderKey"},{"$ref":"#/components/parameters/OrderId"}],"responses":{"200":{"description":"The quote while unpaid, or the first saved report after verified payment.","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/OrderQuote"},{"$ref":"#/components/schemas/PaidOrder"}]}}},"headers":{"Payment-Receipt":{"description":"MPP receipt for the verified payment, when supplied.","schema":{"type":"string"}}}},"202":{"description":"Payment has not yet been confirmed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessingOrder"}}}},"400":{"description":"Invalid input, body or browser origin.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Unknown order/report or missing/incorrect private order key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Read status: payment-failed is a proven terminal cancellation without received funds; processing/needs-review/busy is unresolved and requires recovery of the same order. Other conflicts include request-mismatch, credit-required and refunded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"410":{"description":"The quote or paid order has expired.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Service, evidence or authoritative payment verification is unavailable. Recover an existing order before starting another purchase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/agents/pay":{"post":{"operationId":"payAgentOrder","summary":"Authorize the saved quote through Stripe MPP and receive its first report","description":"Use the quote's payUrl and the same private order key with Link CLI mpp pay --method POST --data '{}' --amount <price.total> --context <at least 100 meaningful characters> --format json. The first request returns a signed 402 challenge. Unwrap Link's JSON array of yielded results. Approval is followed through the returned _next.poll_argv and _next.pay_argv argument arrays, invoked without a shell; preserve all arguments and keep raw output private because continuations include the order-key header. Link's completed result has status, headers and a JSON-string body: parse body and require HTTP 200 plus status=paid and report, not merely an approved spend request. Product, scope, amount and tax are fixed by the saved quote. Reuse the original order after an ambiguous outcome. Full safe examples: https://carconomics.com/llms.txt.","security":[{"OrderKey":[],"MppPayment":[]},{"OrderKey":[]}],"parameters":[{"$ref":"#/components/parameters/OrderKey"},{"$ref":"#/components/parameters/OrderId"}],"requestBody":{"required":false,"description":"Optional: omit the body or send {}. No additional fields are accepted. Maximum 4096 UTF-8 bytes.","x-max-bytes":4096,"content":{"application/json":{"schema":{"type":"object","properties":{},"maxProperties":0,"additionalProperties":false,"example":{}}}}},"x-payment-info":{"amount":null,"currency":"usd","method":"stripe","intent":"charge","description":"Exact total from the saved quote including tax; report packs have USD 39/79/109 base prices. The runtime 402 challenge is authoritative."},"responses":{"200":{"description":"Verified payment and the saved first report. Replays do not charge or spend another credit.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PaidOrder"}}},"headers":{"Payment-Receipt":{"description":"MPP receipt for the verified payment, when supplied.","schema":{"type":"string"}}}},"202":{"description":"Payment is pending; recover this order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessingOrder"}}}},"400":{"description":"Invalid input, body or browser origin.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Signed MPP payment challenge, or a structured payment rejection. The WWW-Authenticate challenge carries the authoritative exact amount and merchant. A rejected payment may have no challenge header.","headers":{"WWW-Authenticate":{"description":"MPP Payment challenge when requesting authorization.","schema":{"type":"string"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"MPP challenge details; use the signed WWW-Authenticate header."}},"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Unknown order/report or missing/incorrect private order key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Read status: payment-failed is a proven terminal cancellation without received funds; processing/needs-review/busy is unresolved and requires recovery of the same order. Other conflicts include request-mismatch, credit-required and refunded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"410":{"description":"The quote or paid order has expired.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Service, evidence or authoritative payment verification is unavailable. Recover an existing order before starting another purchase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/api/agents/reports":{"post":{"operationId":"redeemAgentReport","summary":"Spend one remaining report credit or replay its saved delivery","description":"Generate one request UUID per intended report. Reuse it after an interrupted response. A changed group/market with the same request UUID is a conflict. New reports require current supported evidence; saved reports retain their original observations.","security":[{"OrderKey":[]}],"parameters":[{"$ref":"#/components/parameters/OrderKey"}],"requestBody":{"required":true,"description":"Existing order, report request UUID and selected report scope. Maximum 4096 UTF-8 bytes.","x-max-bytes":4096,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportRequest"}}}},"responses":{"200":{"description":"Saved report and remaining credits; an exact replay does not spend again.","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ReportDelivery"},{"$ref":"#/components/schemas/PaidOrder"}]}}}},"202":{"description":"Order payment is not confirmed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessingOrder"}}}},"400":{"description":"Invalid input, body or browser origin.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Unknown order/report or missing/incorrect private order key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Read status: payment-failed is a proven terminal cancellation without received funds; processing/needs-review/busy is unresolved and requires recovery of the same order. Other conflicts include request-mismatch, credit-required and refunded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"410":{"description":"The quote or paid order has expired.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Service, evidence or authoritative payment verification is unavailable. Recover an existing order before starting another purchase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"get":{"operationId":"recoverAgentReport","summary":"Retrieve a previously delivered report without spending a credit","security":[{"OrderKey":[]}],"parameters":[{"$ref":"#/components/parameters/OrderKey"},{"$ref":"#/components/parameters/OrderId"},{"$ref":"#/components/parameters/RequestId"}],"responses":{"200":{"description":"The exact saved report and current remaining credits.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportDelivery"}}}},"202":{"description":"Order payment is not confirmed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProcessingOrder"}}}},"400":{"description":"Invalid input, body or browser origin.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Unknown order/report or missing/incorrect private order key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"409":{"description":"Read status: payment-failed is a proven terminal cancellation without received funds; processing/needs-review/busy is unresolved and requires recovery of the same order. Other conflicts include request-mismatch, credit-required and refunded.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"410":{"description":"The quote or paid order has expired.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"503":{"description":"Service, evidence or authoritative payment verification is unavailable. Recover an existing order before starting another purchase.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"securitySchemes":{"OrderKey":{"type":"apiKey","in":"header","name":"X-Carconomics-Order-Key","description":"Private order capability: 64 lowercase hexadecimal characters generated from 32 cryptographically random bytes. Retain privately; never send it in a URL."},"MppPayment":{"type":"http","scheme":"Payment","description":"Stripe MPP payment credential in Authorization, supplied by Link CLI after an authoritative 402 challenge and buyer approval. Keep the separate order-key header."}},"parameters":{"OrderKey":{"name":"X-Carconomics-Order-Key","in":"header","required":true,"schema":{"type":"string","pattern":"^[0-9a-f]{64}$","minLength":64,"maxLength":64},"description":"Use the same private key for quote, payment and all recovery/redemption requests."},"OrderId":{"name":"orderId","in":"query","required":true,"schema":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"}},"RequestId":{"name":"requestId","in":"query","required":true,"schema":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"}}},"schemas":{"Error":{"type":"object","properties":{"status":{"type":"string","description":"Machine-readable result. payment-failed is a proven terminal no-funds cancellation; processing/needs-review/busy/unavailable is unresolved. payment-rejected requires recovery of the same order before retry. refunded revokes access; expired ends quote or paid-order access. not-found can mean incorrect credentials. Do not infer payment failure from HTTP status alone."},"message":{"type":"string"},"reason":{"type":"string"},"orderId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"}},"required":["status"]},"ProcessingOrder":{"type":"object","properties":{"status":{"type":"string","enum":["processing","needs-review","quoted"]},"orderId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"message":{"type":"string"}},"required":["status","orderId"]},"BillingAddress":{"type":"object","properties":{"country":{"type":"string","minLength":2,"maxLength":2,"pattern":"^[A-Za-z]{2}$"},"postalCode":{"type":"string","minLength":1,"maxLength":32},"state":{"type":"string","maxLength":64},"city":{"type":"string","maxLength":100},"line1":{"type":"string","maxLength":200},"line2":{"type":"string","maxLength":200}},"required":["country","postalCode"]},"QuoteInput":{"type":"object","properties":{"orderId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"pack":{"type":"integer","enum":[1,3,5]},"group":{"type":"string","enum":["tesla","luxury"],"description":"Configured group. Read the catalog and preview for current support; paused groups cannot be quoted."},"market":{"type":"string","enum":["ord","lax"]},"billingAddress":{"$ref":"#/components/schemas/BillingAddress"},"termsAccepted":{"type":"boolean","const":true,"description":"The buyer agreed to https://carconomics.com/terms (market-reports-v1)."}},"required":["orderId","pack","group","market","billingAddress","termsAccepted"],"description":"Use actual billing details for Stripe Tax. Additional fields are ignored; buyer-supplied prices cannot alter the quote."},"ReportRequest":{"type":"object","properties":{"orderId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"requestId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"group":{"type":"string","enum":["tesla","luxury"],"description":"Configured group. Read the catalog and preview for current support; paused groups cannot be quoted."},"market":{"type":"string","enum":["ord","lax"]}},"required":["orderId","requestId","group","market"]},"Coverage":{"type":"object","properties":{"windowStart":{"type":"string","format":"date"},"windowDays":{"type":"integer","minimum":1},"listings":{"type":"integer","minimum":0},"tier":{"type":"string"}},"required":["windowStart","windowDays","listings","tier"]},"ReportPreview":{"type":"object","properties":{"group":{"type":"string","enum":["tesla","luxury"],"description":"Configured group. Read the catalog and preview for current support; paused groups cannot be quoted."},"market":{"type":"string","enum":["ord","lax"]},"marketLabel":{"type":"string"},"sourceDay":{"type":"string","format":"date"},"asOf":{"type":"string","format":"date-time"},"sourceContentId":{"type":"string","minLength":1,"maxLength":256},"coverage":{"$ref":"#/components/schemas/Coverage"},"cohorts":{"type":"array","minItems":1,"maxItems":2,"items":{"type":"object","properties":{"cohort":{"type":"string"},"listings":{"type":"integer","minimum":0},"medianPerDay":{"type":"number","exclusiveMinimum":0},"tier":{"const":"supported"}},"required":["cohort","listings","medianPerDay","tier"]}},"totalCohorts":{"type":"integer","minimum":0,"maximum":8},"forwardDays":{"type":"integer","minimum":0,"maximum":14},"includedSections":{"type":"array","items":{"type":"string"}},"note":{"type":"string"}},"required":["group","market","marketLabel","sourceDay","asOf","sourceContentId","coverage","cohorts","totalCohorts","forwardDays","includedSections","note"],"x-max-bytes":8192},"Report":{"type":"object","properties":{"group":{"type":"string","enum":["tesla","luxury"],"description":"Configured group. Read the catalog and preview for current support; paused groups cannot be quoted."},"market":{"type":"string","enum":["ord","lax"]},"marketLabel":{"type":"string"},"sourceDay":{"type":"string","format":"date"},"asOf":{"type":"string","format":"date-time"},"coverage":{"$ref":"#/components/schemas/Coverage"},"supply":{"oneOf":[{"type":"null"},{"type":"object","properties":{"active":{"type":"integer","minimum":0},"new":{"type":["integer","null"],"minimum":0},"gone":{"type":["integer","null"],"minimum":0},"returning":{"type":["integer","null"],"minimum":0}},"required":["active","new","gone","returning"]}]},"pulse":{"type":"object","properties":{"value":{"type":["number","null"]},"tier":{"type":"string"},"observedGone":{"type":"integer","minimum":0},"expectedGone":{"type":"number"},"transitions":{"type":"integer","minimum":0},"baselineDays":{"type":"integer","minimum":0}},"required":["value","tier","observedGone","expectedGone","transitions","baselineDays"]},"repricing":{"oneOf":[{"type":"null"},{"type":"object","properties":{"listings":{"type":"integer","minimum":0},"up":{"type":"integer","minimum":0},"down":{"type":"integer","minimum":0}},"required":["listings","up","down"]}]},"watchdog":{"type":"object","properties":{"day":{"type":["string","null"],"format":"date"},"listingsObserved":{"type":"integer","minimum":0},"listingsChanged":{"type":"integer","minimum":0},"up":{"type":"integer","minimum":0},"down":{"type":"integer","minimum":0},"silent":{"type":"integer","minimum":0},"sharePct":{"type":["number","null"]}},"required":["day","listingsObserved","listingsChanged","up","down","silent","sharePct"]},"cohorts":{"type":"array","minItems":1,"maxItems":8,"items":{"type":"object","properties":{"cohort":{"type":"string","minLength":1,"maxLength":160},"listings":{"type":"integer","minimum":0},"medianPerDay":{"type":"number","exclusiveMinimum":0,"description":"Observed USD daily-price median; provenance may include earlier observations."},"supplyDelta":{"type":"number"},"demandIndex":{"type":["number","null"],"description":"Relative availability-change ratio, not verified bookings or occupancy."},"tier":{"type":"string","enum":["supported","thin"]}},"required":["cohort","listings","medianPerDay","supplyDelta","demandIndex","tier"]}},"forward":{"type":"array","minItems":1,"maxItems":14,"items":{"type":"object","properties":{"date":{"type":"string","format":"date"},"index":{"type":"number","minimum":0},"tier":{"type":"string","enum":["soft","balanced","firm","surge"]},"events":{"type":"array","items":{"type":"string"}},"premiumPct":{"type":["number","null"]},"cheapShare":{"type":["number","null"]},"observations":{"type":"integer","minimum":0}},"required":["date","index","tier","events","premiumPct","cheapShare","observations"]}},"provenance":{"type":"object","properties":{"formulaVersion":{"type":"string"},"note":{"type":"string"}},"required":["formulaVersion","note"]}},"required":["group","market","marketLabel","sourceDay","asOf","coverage","supply","pulse","repricing","watchdog","cohorts","forward","provenance"],"description":"Bounded observed-market report. Prices can include earlier observations; provenance is mandatory. Listing changes and price/calendar indices do not establish bookings, occupancy, host income or rental availability.","x-max-bytes":24576},"OrderQuote":{"type":"object","properties":{"status":{"type":"string","enum":["quoted","processing","paid"]},"orderId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"offer":{"type":"object","properties":{"pack":{"type":"integer","enum":[1,3,5]},"group":{"type":"string","enum":["tesla","luxury"],"description":"Configured group. Read the catalog and preview for current support; paused groups cannot be quoted."},"market":{"type":"string","enum":["ord","lax"]}},"required":["pack","group","market"]},"price":{"type":"object","properties":{"currency":{"const":"usd"},"subtotal":{"type":"integer","minimum":0},"tax":{"type":"integer","minimum":0},"total":{"type":"integer","minimum":0},"unit":{"const":"minor"}},"required":["currency","subtotal","tax","total","unit"]},"expiresAt":{"type":"string","format":"date-time"},"preview":{"$ref":"#/components/schemas/ReportPreview"},"terms":{"type":"object","properties":{"version":{"const":"market-reports-v1"},"url":{"type":"string","format":"uri"}},"required":["version","url"]},"payUrl":{"type":"string","format":"uri"},"statusUrl":{"type":"string","format":"uri"},"recovery":{"type":"string"},"payment":{"type":"object","properties":{"protocol":{"const":"mpp"},"method":{"const":"stripe"},"instrument":{"const":"shared-payment-token"},"billing":{"const":"one-time"}},"required":["protocol","method","instrument","billing"]},"retentionDays":{"type":"integer","const":400}},"required":["status","orderId","offer","price","expiresAt","preview","terms","payUrl","statusUrl","recovery","payment","retentionDays"]},"PaidOrder":{"type":"object","properties":{"status":{"const":"paid"},"orderId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"requestId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"report":{"$ref":"#/components/schemas/Report"},"deliveredAt":{"type":"string","format":"date-time"},"creditsRemaining":{"type":"integer","minimum":0,"maximum":5,"description":"Unspent credits on this order, after any delivery in this response."},"retentionEndsAt":{"type":"string","format":"date-time"},"reportsUrl":{"const":"/api/agents/reports"},"replayed":{"type":"boolean"}},"required":["status","orderId","requestId","report","deliveredAt","creditsRemaining","retentionEndsAt","reportsUrl","replayed"]},"ReportDelivery":{"type":"object","properties":{"status":{"const":"ok"},"orderId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"requestId":{"type":"string","format":"uuid","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"group":{"type":"string","enum":["tesla","luxury"],"description":"Configured group. Read the catalog and preview for current support; paused groups cannot be quoted."},"market":{"type":"string","enum":["ord","lax"]},"sourceContentId":{"type":"string","maxLength":256},"deliveredAt":{"type":"string","format":"date-time"},"report":{"$ref":"#/components/schemas/Report"},"creditsRemaining":{"type":"integer","minimum":0,"maximum":5,"description":"Unspent credits on this order, after any delivery in this response."},"replayed":{"type":"boolean"}},"required":["status","orderId","requestId","group","market","sourceContentId","deliveredAt","report","creditsRemaining"]},"OfferCatalog":{"type":"object","properties":{"schemaVersion":{"const":1},"landingPageUrl":{"type":"string","format":"uri"},"docs":{"type":"object","properties":{"instructionsUrl":{"type":"string","format":"uri"},"apiReferenceUrl":{"type":"string","format":"uri"}},"required":["instructionsUrl","apiReferenceUrl"]},"merchant":{"type":"object","properties":{"name":{"type":"string"},"website":{"type":"string","format":"uri"},"stripeHandle":{"type":"string"},"stripeNetworkId":{"type":"string"}},"required":["name","website","stripeHandle","stripeNetworkId"]},"payment":{"type":"object","properties":{"status":{"type":"string","enum":["available","unavailable"]},"protocol":{"type":"string"},"method":{"type":"string"},"instrument":{"type":"string"},"quoteUrl":{"type":"string","format":"uri"},"instructionsUrl":{"type":"string","format":"uri"},"reason":{"type":"string"},"message":{"type":"string"}},"required":["status","message"]},"humanCheckout":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"mode":{"const":"embedded"},"signInRequired":{"const":true}},"required":["url","mode","signInRequired"]},"offers":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"object","properties":{"id":{"type":"string","enum":["report-1","report-3","report-5"]},"name":{"type":"string"},"price":{"type":"object","properties":{"currency":{"const":"USD"},"amountMinor":{"type":"integer","minimum":0},"taxes":{"const":"not-quoted"}},"required":["currency","amountMinor","taxes"]},"billing":{"const":"one-time"},"creditsGranted":{"type":"integer","enum":[1,3,5]},"lifetimeDays":{"const":400},"lifetimeStartsAt":{"const":"purchase"}},"required":["id","name","price","billing","creditsGranted","lifetimeDays","lifetimeStartsAt"]}},"subscriptionOffers":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"price":{"type":"object","properties":{"currency":{"const":"USD"},"amountMinor":{"type":"integer","minimum":0},"interval":{"type":"string","enum":["month","year"]},"taxes":{"const":"calculated-at-checkout"}},"required":["currency","amountMinor","interval","taxes"]},"billing":{"const":"recurring"},"renewsAutomatically":{"const":true},"checkout":{"type":"object","properties":{"url":{"type":"string","format":"uri"},"mode":{"const":"embedded"},"signInRequired":{"const":true}},"required":["url","mode","signInRequired"]},"agentPurchase":{"type":"object","properties":{"status":{"const":"unavailable"},"reason":{"const":"recurring-cli-not-enabled"}},"required":["status","reason"]}},"required":["id","name","price","billing","renewsAutomatically","checkout","agentPurchase"]}},"report":{"type":"object","properties":{"type":{"const":"observed-market-brief"},"creditsPerReport":{"const":1},"maximumCohorts":{"const":8},"maximumForwardDays":{"const":14},"savedReportLifetimeDays":{"const":400},"lifetimeStartsAt":{"const":"purchase"},"availability":{"const":"check-preview"},"previewRequired":{"const":true},"scopes":{"type":"array","items":{"type":"object","properties":{"group":{"type":"string","enum":["tesla","luxury"],"description":"Configured group. Read the catalog and preview for current support; paused groups cannot be quoted."},"market":{"type":"string","enum":["ord","lax"]},"marketLabel":{"type":"string"},"previewUrl":{"type":"string","format":"uri"}},"required":["group","market","marketLabel","previewUrl"]}},"provenance":{"type":"string"},"scopeNote":{"type":"string"}},"required":["type","creditsPerReport","maximumCohorts","maximumForwardDays","savedReportLifetimeDays","lifetimeStartsAt","availability","previewRequired","scopes","provenance","scopeNote"]}},"required":["schemaVersion","landingPageUrl","docs","merchant","payment","humanCheckout","offers","subscriptionOffers","report"]}}}}