[{"data":1,"prerenderedAt":467},["ShallowReactive",2],{"navigation_docs":3,"-docs-assets-usage-caching":214,"-docs-assets-usage-caching-surround":462},[4,74,96,130],{"title":5,"path":6,"stem":7,"children":8},"Assets API","\u002Fdocs\u002Fassets","docs\u002Fassets\u002Findex",[9,10,32,57],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13,"children":14,"page":31},"Getting Started","\u002Fdocs\u002Fassets\u002Fgetting-started","docs\u002Fassets\u002F1.getting-started",[15,19,23,27],{"title":16,"path":17,"stem":18},"Base URL","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fbase-url","docs\u002Fassets\u002F1.getting-started\u002F1.base-url",{"title":20,"path":21,"stem":22},"Important Notes","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fimportant-notes","docs\u002Fassets\u002F1.getting-started\u002F2.important-notes",{"title":24,"path":25,"stem":26},"URL Format","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Furl-format","docs\u002Fassets\u002F1.getting-started\u002F3.url-format",{"title":28,"path":29,"stem":30},"Custom Domains","\u002Fdocs\u002Fassets\u002Fgetting-started\u002Fcustom-domains","docs\u002Fassets\u002F1.getting-started\u002F4.custom-domains",false,{"title":33,"path":34,"stem":35,"children":36,"page":31},"Usage","\u002Fdocs\u002Fassets\u002Fusage","docs\u002Fassets\u002F2.usage",[37,41,45,49,53],{"title":38,"path":39,"stem":40},"Transforms","\u002Fdocs\u002Fassets\u002Fusage\u002Ftransforms","docs\u002Fassets\u002F2.usage\u002F1.transforms",{"title":42,"path":43,"stem":44},"Caching","\u002Fdocs\u002Fassets\u002Fusage\u002Fcaching","docs\u002Fassets\u002F2.usage\u002F2.caching",{"title":46,"path":47,"stem":48},"Recipes","\u002Fdocs\u002Fassets\u002Fusage\u002Frecipes","docs\u002Fassets\u002F2.usage\u002F3.recipes",{"title":50,"path":51,"stem":52},"Best Practices","\u002Fdocs\u002Fassets\u002Fusage\u002Fbest-practices","docs\u002Fassets\u002F2.usage\u002F4.best-practices",{"title":54,"path":55,"stem":56},"Reference","\u002Fdocs\u002Fassets\u002Fusage\u002Freference","docs\u002Fassets\u002F2.usage\u002F5.reference",{"title":58,"path":59,"stem":60,"children":61,"page":31},"Integration","\u002Fdocs\u002Fassets\u002Fintegration","docs\u002Fassets\u002F3.integration",[62,66,70],{"title":63,"path":64,"stem":65},"Nuxt","\u002Fdocs\u002Fassets\u002Fintegration\u002Fnuxt","docs\u002Fassets\u002F3.integration\u002F1.nuxt",{"title":67,"path":68,"stem":69},"Next.js","\u002Fdocs\u002Fassets\u002Fintegration\u002Fnextjs","docs\u002Fassets\u002F3.integration\u002F2.nextjs",{"title":71,"path":72,"stem":73},"Plain HTML","\u002Fdocs\u002Fassets\u002Fintegration\u002Fhtml","docs\u002Fassets\u002F3.integration\u002F3.html",{"title":75,"path":76,"stem":77,"children":78},"Events API","\u002Fdocs\u002Fevents","docs\u002Fevents\u002Findex",[79,80],{"title":75,"path":76,"stem":77},{"title":11,"path":81,"stem":82,"children":83,"page":31},"\u002Fdocs\u002Fevents\u002Fgetting-started","docs\u002Fevents\u002F1.getting-started",[84,88,92],{"title":85,"path":86,"stem":87},"Subscribing","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fsubscribing","docs\u002Fevents\u002F1.getting-started\u002F1.subscribing",{"title":89,"path":90,"stem":91},"Event Delivery","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fevent-delivery","docs\u002Fevents\u002F1.getting-started\u002F2.event-delivery",{"title":93,"path":94,"stem":95},"Event Reference","\u002Fdocs\u002Fevents\u002Fgetting-started\u002Fevent-reference","docs\u002Fevents\u002F1.getting-started\u002F3.event-reference",{"title":97,"path":98,"stem":99,"children":100},"Integrations API","\u002Fdocs\u002Fintegrations","docs\u002Fintegrations\u002Findex",[101,102],{"title":97,"path":98,"stem":99},{"title":11,"path":103,"stem":104,"children":105,"page":31},"\u002Fdocs\u002Fintegrations\u002Fgetting-started","docs\u002Fintegrations\u002F1.getting-started",[106,110,114,118,122,126],{"title":107,"path":108,"stem":109},"Why Use It?","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fwhy-integrations-api","docs\u002Fintegrations\u002F1.getting-started\u002F1.why-integrations-api",{"title":111,"path":112,"stem":113},"Use Cases","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fwho-is-it-for","docs\u002Fintegrations\u002F1.getting-started\u002F2.who-is-it-for",{"title":115,"path":116,"stem":117},"Pre-built Connectors","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fpre-built-integrations","docs\u002Fintegrations\u002F1.getting-started\u002F3.pre-built-integrations",{"title":119,"path":120,"stem":121},"Custom Inbound","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fcustom-inbound-api","docs\u002Fintegrations\u002F1.getting-started\u002F4.custom-inbound-api",{"title":123,"path":124,"stem":125},"Event Lifecycle","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fevent-lifecycle","docs\u002Fintegrations\u002F1.getting-started\u002F5.event-lifecycle",{"title":127,"path":128,"stem":129},"API Endpoints","\u002Fdocs\u002Fintegrations\u002Fgetting-started\u002Fmanagement-api-endpoints","docs\u002Fintegrations\u002F1.getting-started\u002F6.management-api-endpoints",{"title":131,"path":132,"stem":133,"children":134,"redirect":136},"MCP Server","\u002Fdocs\u002Fmcp","docs\u002Fmcp\u002Findex",[135,137,156,189],{"title":131,"path":132,"stem":133,"redirect":136},"\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fvscode",{"title":11,"path":138,"stem":139,"children":140,"page":31},"\u002Fdocs\u002Fmcp\u002Fgetting-started","docs\u002Fmcp\u002F1.getting-started",[141,144,148,152],{"title":142,"path":136,"stem":143},"VS Code","docs\u002Fmcp\u002F1.getting-started\u002F1.vscode",{"title":145,"path":146,"stem":147},"Claude Desktop","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fclaude-desktop","docs\u002Fmcp\u002F1.getting-started\u002F2.claude-desktop",{"title":149,"path":150,"stem":151},"Cursor","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fcursor","docs\u002Fmcp\u002F1.getting-started\u002F3.cursor",{"title":153,"path":154,"stem":155},"Verify Connection","\u002Fdocs\u002Fmcp\u002Fgetting-started\u002Fverify","docs\u002Fmcp\u002F1.getting-started\u002F4.verify",{"title":157,"path":158,"stem":159,"children":160,"page":31},"Tools","\u002Fdocs\u002Fmcp\u002Ftools","docs\u002Fmcp\u002F2.tools",[161,165,169,173,177,181,185],{"title":162,"path":163,"stem":164},"list_endpoints","\u002Fdocs\u002Fmcp\u002Ftools\u002Flist-endpoints","docs\u002Fmcp\u002F2.tools\u002F1.list-endpoints",{"title":166,"path":167,"stem":168},"get_endpoint","\u002Fdocs\u002Fmcp\u002Ftools\u002Fget-endpoint","docs\u002Fmcp\u002F2.tools\u002F2.get-endpoint",{"title":170,"path":171,"stem":172},"get_schema","\u002Fdocs\u002Fmcp\u002Ftools\u002Fget-schema","docs\u002Fmcp\u002F2.tools\u002F3.get-schema",{"title":174,"path":175,"stem":176},"list_schemas","\u002Fdocs\u002Fmcp\u002Ftools\u002Flist-schemas","docs\u002Fmcp\u002F2.tools\u002F4.list-schemas",{"title":178,"path":179,"stem":180},"search_docs","\u002Fdocs\u002Fmcp\u002Ftools\u002Fsearch-docs","docs\u002Fmcp\u002F2.tools\u002F5.search-docs",{"title":182,"path":183,"stem":184},"get_api_overview","\u002Fdocs\u002Fmcp\u002Ftools\u002Fget-api-overview","docs\u002Fmcp\u002F2.tools\u002F6.get-api-overview",{"title":186,"path":187,"stem":188},"get_description","\u002Fdocs\u002Fmcp\u002Ftools\u002Fget-description","docs\u002Fmcp\u002F2.tools\u002F7.get-description",{"title":190,"path":191,"stem":192,"children":193,"page":31},"Examples","\u002Fdocs\u002Fmcp\u002Fexamples","docs\u002Fmcp\u002F3.examples",[194,198,202,206,210],{"title":195,"path":196,"stem":197},"Exploring an API","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fexploring-an-api","docs\u002Fmcp\u002F3.examples\u002F1.exploring-an-api",{"title":199,"path":200,"stem":201},"Building a Feature","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fbuilding-a-feature","docs\u002Fmcp\u002F3.examples\u002F2.building-a-feature",{"title":203,"path":204,"stem":205},"Understanding Models","\u002Fdocs\u002Fmcp\u002Fexamples\u002Funderstanding-models","docs\u002Fmcp\u002F3.examples\u002F3.understanding-models",{"title":207,"path":208,"stem":209},"Code Review","\u002Fdocs\u002Fmcp\u002Fexamples\u002Fcode-review","docs\u002Fmcp\u002F3.examples\u002F4.code-review",{"title":211,"path":212,"stem":213},"Tips","\u002Fdocs\u002Fmcp\u002Fexamples\u002Ftips","docs\u002Fmcp\u002F3.examples\u002F5.tips",{"id":215,"title":42,"body":216,"description":455,"extension":456,"links":457,"meta":458,"navigation":459,"path":43,"seo":460,"stem":44,"__hash__":461},"docs\u002Fdocs\u002Fassets\u002F2.usage\u002F2.caching.md",{"type":217,"value":218,"toc":448},"minimark",[219,224,228,239,356,361,445],[220,221,223],"h2",{"id":222},"caching-architecture","Caching Architecture",[225,226,227],"p",{},"Assets API uses a multi-layer caching strategy for maximum performance:",[229,230,235],"pre",{"className":231,"code":233,"language":234},[232],"language-text","Browser  ──▶  Edge CDN  ──▶  Memory Cache  ──▶  Disk Cache  ──▶  Transform + Store\n 1yr          1yr immutable          200 MB \u002F 30min      Persistent       On-demand\n","text",[236,237,233],"code",{"__ignoreMap":238},"",[240,241,242,261],"table",{},[243,244,245],"thead",{},[246,247,248,252,255,258],"tr",{},[249,250,251],"th",{},"Layer",[249,253,254],{},"TTL",[249,256,257],{},"Size",[249,259,260],{},"Notes",[262,263,264,290,305,321,337],"tbody",{},[246,265,266,273,280,283],{},[267,268,269],"td",{},[270,271,272],"strong",{},"Browser",[267,274,275,276,279],{},"1 year (",[236,277,278],{},"max-age=31536000, immutable",")",[267,281,282],{},"—",[267,284,285,286,289],{},"Use ",[236,287,288],{},"c"," param for cache busting",[246,291,292,297,300,302],{},[267,293,294],{},[270,295,296],{},"Edge CDN",[267,298,299],{},"Follows Cache-Control",[267,301,282],{},[267,303,304],{},"Global edge distribution",[246,306,307,312,315,318],{},[267,308,309],{},[270,310,311],{},"In-memory (originals)",[267,313,314],{},"5 minutes",[267,316,317],{},"100 MB",[267,319,320],{},"Hot originals",[246,322,323,328,331,334],{},[267,324,325],{},[270,326,327],{},"In-memory (processed)",[267,329,330],{},"30 minutes",[267,332,333],{},"200 MB",[267,335,336],{},"Hot transformed variants",[246,338,339,344,347,349],{},[267,340,341],{},[270,342,343],{},"Disk cache (processed)",[267,345,346],{},"Permanent",[267,348,282],{},[267,350,351,352,355],{},"Stored in ",[236,353,354],{},"processed-assets"," container",[357,358,360],"h3",{"id":359},"response-headers","Response headers",[240,362,363,376],{},[243,364,365],{},[246,366,367,370,373],{},[249,368,369],{},"Header",[249,371,372],{},"Example",[249,374,375],{},"Meaning",[262,377,378,393,408,430],{},[246,379,380,385,390],{},[267,381,382],{},[236,383,384],{},"Cache-Control",[267,386,387],{},[236,388,389],{},"public, max-age=31536000, immutable",[267,391,392],{},"Cached forever at all layers",[246,394,395,400,405],{},[267,396,397],{},[236,398,399],{},"ETag",[267,401,402],{},[236,403,404],{},"\"a1b2c3...\"",[267,406,407],{},"Content-based hash for conditional requests",[246,409,410,415,427],{},[267,411,412],{},[236,413,414],{},"X-Cache",[267,416,417,420,421,420,424],{},[236,418,419],{},"MEM"," \u002F ",[236,422,423],{},"DISK",[236,425,426],{},"PROC",[267,428,429],{},"Where the response was served from",[246,431,432,437,442],{},[267,433,434],{},[236,435,436],{},"Content-Type",[267,438,439],{},[236,440,441],{},"image\u002Fwebp",[267,443,444],{},"Output format",[446,447],"hr",{},{"title":238,"searchDepth":449,"depth":449,"links":450},2,[451],{"id":222,"depth":449,"text":223,"children":452},[453],{"id":359,"depth":454,"text":360},3,"Multi-layer caching architecture, response headers, and purge policy","md",null,{},true,{"title":42,"description":455},"xzIFFYFa4_UcfoTG8t9CnskgdDTkX0FzZvUbZ9nOjco",[463,465],{"title":38,"path":39,"stem":40,"description":464,"children":-1},"Size, crop, format, quality, cache control, and trim parameters",{"title":46,"path":47,"stem":48,"description":466,"children":-1},"Ready-to-use parameter combinations for common use cases",1775725943662]