{"uid":"cap_C_eQxuqz1twVJOIcsuoOJ","slug":"addictive-recommendation-throttle-gate-fe1c2f2c","name":"Addictive Recommendation Throttle Gate","description":"Deterministic decision procedure an agent runs before serving recommended content, feeds, shorts, reels, or autoplay. It detects engagement-loop mechanics such as variable reward timing, infinite scroll, and autoplay, then applies a throttle decision based on per-user consumption caps and differentiated limits for minors versus adults. Output is one of serve, throttle, or refuse, with a required action and audit trail.","url":"https://k2so.wrong.systems/api/services/addictive-recommendation-throttle-gate","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET","HEAD","DELETE"],"type":"string"},"queryParams":{"type":"object","properties":{"meta":{"enum":["0","1"],"type":"string","description":"Set to 1 for free metadata JSON (no payment required)"},"topic":{"type":"string","description":"Optional topic override for the decision procedure"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","title":"Addictive recommendation throttle gate paid response","$schema":"https://json-schema.org/draft/2020-12/schema","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"result":{"type":"object","required":["ok","service"],"properties":{"ok":{"type":"boolean","description":"Handler success"},"brief":{"type":"string","description":"Decision procedure prose for agents"},"model":{"type":"string"},"topic":{"type":"string"},"service":{"type":"string","description":"Service slug"},"procedure":{"type":"string"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"generationSource":{"enum":["llm","reasoning","deterministic"],"type":"string"}}},"payment":{"type":"object","properties":{"code":{"type":"string"},"payer":{"type":"string"},"detail":{"type":"string"},"selfPay":{"type":"boolean"},"transaction":{"type":"string"}}},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"}}}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.002","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.002/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.002","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.002","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_bP-FJXPkTdG3UUzhSopfn","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.002","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Runs a deterministic decision procedure before serving recommended content, feeds, or autoplay, returning serve/throttle/refuse with audit trail based on engagement-loop detection and per-user consumption caps.","exampleAgentPrompt":"Before showing the next autoplay reel to this user, run the addictive recommendation throttle gate to check whether I should serve, throttle, or refuse — the user is a minor and I want to detect any variable reward or infinite scroll mechanics.","exampleUseCases":[{"title":"Gating autoplay for minor users","prompt":"Before my app serves the next autoplay video to a user who's flagged as under 18, run the throttle gate to check if I should serve, throttle, or refuse — I need the full audit trail for compliance."},{"title":"Enforcing adult content consumption caps","prompt":"This adult user has been scrolling my short-form feed for a while — run the recommendation throttle gate on the 'shorts' topic to see whether I've hit the per-user cap and need to throttle or refuse the next item."},{"title":"Detecting engagement-loop mechanics pre-serve","prompt":"I'm about to serve a recommendation from my infinite scroll feed — can you run the throttle gate to detect whether it has variable reward timing or autoplay mechanics and tell me if it's safe to show?"}],"resultDescription":"A JSON object containing a decision field with one of three values (serve, throttle, refuse), a required action the agent must take, a prose brief explaining the decision procedure, a generation source (llm, reasoning, or deterministic), an ISO-8601 timestamp, and a service/provider slug for the audit trail.","failureModes":["Invalid HTTP method returns 400 error (only GET/HEAD/DELETE accepted)","Payment not completed returns 402 Payment Required with x402 challenge","Missing required 'input' object returns validation error","Topic override not recognized may fall back to default decision logic","LLM generation source may introduce non-determinism in edge cases"],"whenToPreferThis":"Choose this endpoint when your agent is about to serve recommended content, feeds, shorts, reels, or autoplay and needs a pre-flight compliance gate — especially when serving minors or when engagement-loop detection (variable reward timing, infinite scroll, autoplay chaining) must be auditable. Prefer it over a generic content filter when you need differentiated minor vs adult consumption caps and a formal serve/throttle/refuse decision with audit trail.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T18:49:51.104Z","isFirstParty":false}