[{"data":1,"prerenderedAt":1200},["ShallowReactive",2],{"navigation_docs":3,"docs-navigation-with-icons":427,"-docs-guides-previewing-content":571,"-docs-guides-previewing-content-surround":1195},[4,66,87,128,413],{"title":5,"path":6,"stem":7,"children":8,"page":65},"Api","\u002Fdocs\u002Fapi","docs\u002Fapi",[9,13,17,21,25,29,33,37,41,45,49,53,57,61],{"title":10,"path":11,"stem":12},"Best Practices","\u002Fdocs\u002Fapi\u002Fbest-practices","docs\u002Fapi\u002Fbest-practices",{"title":14,"path":15,"stem":16},"Blog","\u002Fdocs\u002Fapi\u002Fblog","docs\u002Fapi\u002Fblog",{"title":18,"path":19,"stem":20},"Code Examples","\u002Fdocs\u002Fapi\u002Fcode-examples","docs\u002Fapi\u002Fcode-examples",{"title":22,"path":23,"stem":24},"Collections","\u002Fdocs\u002Fapi\u002Fcollections","docs\u002Fapi\u002Fcollections",{"title":26,"path":27,"stem":28},"Field Types","\u002Fdocs\u002Fapi\u002Ffield-types","docs\u002Fapi\u002Ffield-types",{"title":30,"path":31,"stem":32},"Rate Limits & Errors","\u002Fdocs\u002Fapi\u002Flimits-and-errors","docs\u002Fapi\u002Flimits-and-errors",{"title":34,"path":35,"stem":36},"Media","\u002Fdocs\u002Fapi\u002Fmedia","docs\u002Fapi\u002Fmedia",{"title":38,"path":39,"stem":40},"Overview","\u002Fdocs\u002Fapi\u002Foverview","docs\u002Fapi\u002Foverview",{"title":42,"path":43,"stem":44},"Pages","\u002Fdocs\u002Fapi\u002Fpages","docs\u002Fapi\u002Fpages",{"title":46,"path":47,"stem":48},"Query Parameters","\u002Fdocs\u002Fapi\u002Fquery-parameters","docs\u002Fapi\u002Fquery-parameters",{"title":50,"path":51,"stem":52},"Responses & Caching","\u002Fdocs\u002Fapi\u002Fresponses","docs\u002Fapi\u002Fresponses",{"title":54,"path":55,"stem":56},"Troubleshooting","\u002Fdocs\u002Fapi\u002Ftroubleshooting","docs\u002Fapi\u002Ftroubleshooting",{"title":58,"path":59,"stem":60},"Validation","\u002Fdocs\u002Fapi\u002Fvalidation","docs\u002Fapi\u002Fvalidation",{"title":62,"path":63,"stem":64},"Webhooks","\u002Fdocs\u002Fapi\u002Fwebhooks","docs\u002Fapi\u002Fwebhooks",false,{"title":67,"path":68,"stem":69,"children":70,"page":65},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002Fgetting-started",[71,75,79,83],{"title":72,"path":73,"stem":74},"Authentication","\u002Fdocs\u002Fgetting-started\u002Fauthentication","docs\u002Fgetting-started\u002Fauthentication",{"title":76,"path":77,"stem":78},"Introduction","\u002Fdocs\u002Fgetting-started\u002Fintroduction","docs\u002Fgetting-started\u002Fintroduction",{"title":80,"path":81,"stem":82},"Quickstart","\u002Fdocs\u002Fgetting-started\u002Fquickstart","docs\u002Fgetting-started\u002Fquickstart",{"title":84,"path":85,"stem":86},"Write Operations","\u002Fdocs\u002Fgetting-started\u002Fwrite-operations","docs\u002Fgetting-started\u002Fwrite-operations",{"title":88,"path":89,"stem":90,"children":91,"page":65},"Guides","\u002Fdocs\u002Fguides","docs\u002Fguides",[92,96,100,104,108,112,116,120,124],{"title":93,"path":94,"stem":95},"Admin Interface","\u002Fdocs\u002Fguides\u002Fadmin-interface","docs\u002Fguides\u002Fadmin-interface",{"title":97,"path":98,"stem":99},"ButterCMS Migration","\u002Fdocs\u002Fguides\u002Fbuttercms-migration","docs\u002Fguides\u002Fbuttercms-migration",{"title":101,"path":102,"stem":103},"Migrations","\u002Fdocs\u002Fguides\u002Fmigrations","docs\u002Fguides\u002Fmigrations",{"title":105,"path":106,"stem":107},"Page Management","\u002Fdocs\u002Fguides\u002Fpage-management","docs\u002Fguides\u002Fpage-management",{"title":109,"path":110,"stem":111},"Previewing content","\u002Fdocs\u002Fguides\u002Fpreviewing-content","docs\u002Fguides\u002Fpreviewing-content",{"title":113,"path":114,"stem":115},"Public API Usage","\u002Fdocs\u002Fguides\u002Fpublic-api-usage","docs\u002Fguides\u002Fpublic-api-usage",{"title":117,"path":118,"stem":119},"Schema Builder","\u002Fdocs\u002Fguides\u002Fschema-builder","docs\u002Fguides\u002Fschema-builder",{"title":121,"path":122,"stem":123},"User Management","\u002Fdocs\u002Fguides\u002Fuser-management","docs\u002Fguides\u002Fuser-management",{"title":125,"path":126,"stem":127},"Rich Text Editor","\u002Fdocs\u002Fguides\u002Fwysiwyg-editor","docs\u002Fguides\u002Fwysiwyg-editor",{"title":129,"path":130,"stem":131,"children":132,"page":65},"Sdk","\u002Fdocs\u002Fsdk","docs\u002Fsdk",[133,136,140,144,148],{"title":38,"path":134,"stem":135},"\u002Fdocs\u002Fsdk\u002Freadme","docs\u002Fsdk\u002FREADME",{"title":137,"path":138,"stem":139},"Astro","\u002Fdocs\u002Fsdk\u002Fastro","docs\u002Fsdk\u002Fastro",{"title":141,"path":142,"stem":143},"Next.js","\u002Fdocs\u002Fsdk\u002Fnextjs","docs\u002Fsdk\u002Fnextjs",{"title":145,"path":146,"stem":147},"Nuxt","\u002Fdocs\u002Fsdk\u002Fnuxt","docs\u002Fsdk\u002Fnuxt",{"title":149,"path":150,"stem":151,"children":152,"page":65},"Reference","\u002Fdocs\u002Fsdk\u002Freference","docs\u002Fsdk\u002Freference",[153,157,226,239,388],{"title":154,"path":155,"stem":156},"@tentocms\u002Fclient","\u002Fdocs\u002Fsdk\u002Freference\u002Freadme","docs\u002Fsdk\u002Freference\u002FREADME",{"title":158,"path":159,"stem":160,"children":161,"page":65},"Classes","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses","docs\u002Fsdk\u002Freference\u002Fclasses",[162,166,170,174,178,182,186,190,194,198,202,206,210,214,218,222],{"title":163,"path":164,"stem":165},"Class: BlogCategoriesResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fblogcategoriesresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FBlogCategoriesResource",{"title":167,"path":168,"stem":169},"Class: BlogPostsResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fblogpostsresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FBlogPostsResource",{"title":171,"path":172,"stem":173},"Class: BlogResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fblogresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FBlogResource",{"title":175,"path":176,"stem":177},"Class: BlogTagsResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fblogtagsresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FBlogTagsResource",{"title":179,"path":180,"stem":181},"Class: CollectionsResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fcollectionsresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FCollectionsResource",{"title":183,"path":184,"stem":185},"Class: CollectionsWriteResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fcollectionswriteresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FCollectionsWriteResource",{"title":187,"path":188,"stem":189},"Class: MediaResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fmediaresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FMediaResource",{"title":191,"path":192,"stem":193},"Class: MediaWriteResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fmediawriteresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FMediaWriteResource",{"title":195,"path":196,"stem":197},"Class: PagesResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fpagesresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FPagesResource",{"title":199,"path":200,"stem":201},"Class: PagesWriteResource","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Fpageswriteresource","docs\u002Fsdk\u002Freference\u002Fclasses\u002FPagesWriteResource",{"title":203,"path":204,"stem":205},"Class: TentoAuthenticationError","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Ftentoauthenticationerror","docs\u002Fsdk\u002Freference\u002Fclasses\u002FTentoAuthenticationError",{"title":207,"path":208,"stem":209},"Class: TentoClient","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Ftentoclient","docs\u002Fsdk\u002Freference\u002Fclasses\u002FTentoClient",{"title":211,"path":212,"stem":213},"Class: TentoError","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Ftentoerror","docs\u002Fsdk\u002Freference\u002Fclasses\u002FTentoError",{"title":215,"path":216,"stem":217},"Class: TentoNetworkError","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Ftentonetworkerror","docs\u002Fsdk\u002Freference\u002Fclasses\u002FTentoNetworkError",{"title":219,"path":220,"stem":221},"Class: TentoNotFoundError","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Ftentonotfounderror","docs\u002Fsdk\u002Freference\u002Fclasses\u002FTentoNotFoundError",{"title":223,"path":224,"stem":225},"Class: TentoRateLimitError","\u002Fdocs\u002Fsdk\u002Freference\u002Fclasses\u002Ftentoratelimiterror","docs\u002Fsdk\u002Freference\u002Fclasses\u002FTentoRateLimitError",{"title":227,"path":228,"stem":229,"children":230,"page":65},"Functions","\u002Fdocs\u002Fsdk\u002Freference\u002Ffunctions","docs\u002Fsdk\u002Freference\u002Ffunctions",[231,235],{"title":232,"path":233,"stem":234},"Function: getUrl()","\u002Fdocs\u002Fsdk\u002Freference\u002Ffunctions\u002Fgeturl","docs\u002Fsdk\u002Freference\u002Ffunctions\u002FgetUrl",{"title":236,"path":237,"stem":238},"Function: mockMedia()","\u002Fdocs\u002Fsdk\u002Freference\u002Ffunctions\u002Fmockmedia","docs\u002Fsdk\u002Freference\u002Ffunctions\u002FmockMedia",{"title":240,"path":241,"stem":242,"children":243,"page":65},"Interfaces","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces","docs\u002Fsdk\u002Freference\u002Finterfaces",[244,248,252,256,260,264,268,272,276,280,284,288,292,296,300,304,308,312,316,320,324,328,332,336,340,344,348,352,356,360,364,368,372,376,380,384],{"title":245,"path":246,"stem":247},"Interface: BlogAuthor","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fblogauthor","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FBlogAuthor",{"title":249,"path":250,"stem":251},"Interface: BlogCategory","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fblogcategory","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FBlogCategory",{"title":253,"path":254,"stem":255},"Interface: BlogPost","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fblogpost","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FBlogPost",{"title":257,"path":258,"stem":259},"Interface: BlogPostListOptions","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fblogpostlistoptions","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FBlogPostListOptions",{"title":261,"path":262,"stem":263},"Interface: BlogTag","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fblogtag","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FBlogTag",{"title":265,"path":266,"stem":267},"Interface: CollectionItemResponse\u003CT>","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fcollectionitemresponse","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FCollectionItemResponse",{"title":269,"path":270,"stem":271},"Interface: CollectionListOptions","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fcollectionlistoptions","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FCollectionListOptions",{"title":273,"path":274,"stem":275},"Interface: CollectionListResponse\u003CT>","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fcollectionlistresponse","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FCollectionListResponse",{"title":277,"path":278,"stem":279},"Interface: CollectionTypeMeta","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fcollectiontypemeta","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FCollectionTypeMeta",{"title":281,"path":282,"stem":283},"Interface: CreateCollectionItemInput","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fcreatecollectioniteminput","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FCreateCollectionItemInput",{"title":285,"path":286,"stem":287},"Interface: CreatePageInput","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fcreatepageinput","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FCreatePageInput",{"title":289,"path":290,"stem":291},"Interface: DryRunResult","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fdryrunresult","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FDryRunResult",{"title":293,"path":294,"stem":295},"Interface: FilterCondition","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Ffiltercondition","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FFilterCondition",{"title":297,"path":298,"stem":299},"Interface: ItemResponse\u003CT>","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fitemresponse","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FItemResponse",{"title":301,"path":302,"stem":303},"Interface: ListResponse\u003CT>","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Flistresponse","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FListResponse",{"title":305,"path":306,"stem":307},"Interface: Media","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fmedia","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FMedia",{"title":309,"path":310,"stem":311},"Interface: MediaItem","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fmediaitem","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FMediaItem",{"title":313,"path":314,"stem":315},"Interface: MediaOption","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fmediaoption","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FMediaOption",{"title":317,"path":318,"stem":319},"Interface: MediaTransformOptions","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fmediatransformoptions","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FMediaTransformOptions",{"title":321,"path":322,"stem":323},"Interface: Page\u003CTContent>","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fpage","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FPage",{"title":325,"path":326,"stem":327},"Interface: PageGetOptions","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fpagegetoptions","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FPageGetOptions",{"title":329,"path":330,"stem":331},"Interface: PageListOptions","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fpagelistoptions","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FPageListOptions",{"title":333,"path":334,"stem":335},"Interface: PageWithRedirect\u003CTContent>","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fpagewithredirect","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FPageWithRedirect",{"title":337,"path":338,"stem":339},"Interface: PaginationMeta","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fpaginationmeta","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FPaginationMeta",{"title":341,"path":342,"stem":343},"Interface: PreviewOption","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fpreviewoption","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FPreviewOption",{"title":345,"path":346,"stem":347},"Interface: RedirectInfo","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fredirectinfo","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FRedirectInfo",{"title":349,"path":350,"stem":351},"Interface: RefTypesOption","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Freftypesoption","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FRefTypesOption",{"title":353,"path":354,"stem":355},"Interface: RichTextSanitizationWarning","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Frichtextsanitizationwarning","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FRichTextSanitizationWarning",{"title":357,"path":358,"stem":359},"Interface: SeoMetadata","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fseometadata","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FSeoMetadata",{"title":361,"path":362,"stem":363},"Interface: TentoClientConfig","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Ftentoclientconfig","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FTentoClientConfig",{"title":365,"path":366,"stem":367},"Interface: TentoMedia","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Ftentomedia","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FTentoMedia",{"title":369,"path":370,"stem":371},"Interface: UpdateCollectionItemInput","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fupdatecollectioniteminput","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FUpdateCollectionItemInput",{"title":373,"path":374,"stem":375},"Interface: UpdatePageInput","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fupdatepageinput","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FUpdatePageInput",{"title":377,"path":378,"stem":379},"Interface: UploadMediaInput","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fuploadmediainput","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FUploadMediaInput",{"title":381,"path":382,"stem":383},"Interface: WriteCollectionItem","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fwritecollectionitem","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FWriteCollectionItem",{"title":385,"path":386,"stem":387},"Interface: WritePage","\u002Fdocs\u002Fsdk\u002Freference\u002Finterfaces\u002Fwritepage","docs\u002Fsdk\u002Freference\u002Finterfaces\u002FWritePage",{"title":389,"path":390,"stem":391,"children":392,"page":65},"Type Aliases","\u002Fdocs\u002Fsdk\u002Freference\u002Ftype-aliases","docs\u002Fsdk\u002Freference\u002Ftype-aliases",[393,397,401,405,409],{"title":394,"path":395,"stem":396},"Type Alias: BlogPostListItem","\u002Fdocs\u002Fsdk\u002Freference\u002Ftype-aliases\u002Fblogpostlistitem","docs\u002Fsdk\u002Freference\u002Ftype-aliases\u002FBlogPostListItem",{"title":398,"path":399,"stem":400},"Type Alias: BlogPostListResponse","\u002Fdocs\u002Fsdk\u002Freference\u002Ftype-aliases\u002Fblogpostlistresponse","docs\u002Fsdk\u002Freference\u002Ftype-aliases\u002FBlogPostListResponse",{"title":402,"path":403,"stem":404},"Type Alias: CollectionItem\u003CTContent>","\u002Fdocs\u002Fsdk\u002Freference\u002Ftype-aliases\u002Fcollectionitem","docs\u002Fsdk\u002Freference\u002Ftype-aliases\u002FCollectionItem",{"title":406,"path":407,"stem":408},"Type Alias: FilterOperator","\u002Fdocs\u002Fsdk\u002Freference\u002Ftype-aliases\u002Ffilteroperator","docs\u002Fsdk\u002Freference\u002Ftype-aliases\u002FFilterOperator",{"title":410,"path":411,"stem":412},"Type Alias: MediaMode","\u002Fdocs\u002Fsdk\u002Freference\u002Ftype-aliases\u002Fmediamode","docs\u002Fsdk\u002Freference\u002Ftype-aliases\u002FMediaMode",{"title":414,"path":415,"stem":416,"children":417,"page":65},"Typegen","\u002Fdocs\u002Ftypegen","docs\u002Ftypegen",[418,421,424],{"title":137,"path":419,"stem":420},"\u002Fdocs\u002Ftypegen\u002Fastro","docs\u002Ftypegen\u002Fastro",{"title":141,"path":422,"stem":423},"\u002Fdocs\u002Ftypegen\u002Fnextjs","docs\u002Ftypegen\u002Fnextjs",{"title":145,"path":425,"stem":426},"\u002Fdocs\u002Ftypegen\u002Fnuxt","docs\u002Ftypegen\u002Fnuxt",[428,458,468,488,566],{"title":5,"path":6,"stem":7,"children":429,"page":65},[430,432,434,436,438,440,442,444,446,448,450,452,454,456],{"title":10,"path":11,"stem":12,"icon":431},"i-lucide-sparkles",{"title":14,"path":15,"stem":16,"icon":433},"i-lucide-newspaper",{"title":18,"path":19,"stem":20,"icon":435},"i-lucide-terminal",{"title":22,"path":23,"stem":24,"icon":437},"i-lucide-layers",{"title":26,"path":27,"stem":28,"icon":439},"i-lucide-type",{"title":30,"path":31,"stem":32,"icon":441},"i-lucide-triangle-alert",{"title":34,"path":35,"stem":36,"icon":443},"i-lucide-image",{"title":38,"path":39,"stem":40,"icon":445},"i-lucide-map",{"title":42,"path":43,"stem":44,"icon":447},"i-lucide-file-text",{"title":46,"path":47,"stem":48,"icon":449},"i-lucide-sliders-horizontal",{"title":50,"path":51,"stem":52,"icon":451},"i-lucide-braces",{"title":54,"path":55,"stem":56,"icon":453},"i-lucide-wrench",{"title":58,"path":59,"stem":60,"icon":455},"i-lucide-shield-check",{"title":62,"path":63,"stem":64,"icon":457},"i-lucide-webhook",{"title":67,"path":68,"stem":69,"children":459,"page":65},[460,462,464,466],{"title":72,"path":73,"stem":74,"icon":461},"i-lucide-key-round",{"title":76,"path":77,"stem":78,"icon":463},"i-lucide-compass",{"title":80,"path":81,"stem":82,"icon":465},"i-lucide-rocket",{"title":84,"path":85,"stem":86,"icon":467},"i-lucide-pencil",{"title":88,"path":89,"stem":90,"children":469,"page":65},[470,472,474,476,478,480,482,484,486],{"title":93,"path":94,"stem":95,"icon":471},"i-lucide-layout-dashboard",{"title":97,"path":98,"stem":99,"icon":473},"i-lucide-package",{"title":101,"path":102,"stem":103,"icon":475},"i-lucide-git-branch",{"title":105,"path":106,"stem":107,"icon":477},"i-lucide-files",{"title":109,"path":110,"stem":111,"icon":479},null,{"title":113,"path":114,"stem":115,"icon":481},"i-lucide-plug-zap",{"title":117,"path":118,"stem":119,"icon":483},"i-lucide-wand",{"title":121,"path":122,"stem":123,"icon":485},"i-lucide-users",{"title":125,"path":126,"stem":127,"icon":487},"i-lucide-pilcrow",{"title":129,"path":130,"stem":131,"children":489,"page":65},[490,491,492,494,496],{"title":38,"path":134,"stem":135,"icon":473},{"title":137,"path":138,"stem":139,"icon":465},{"title":141,"path":142,"stem":143,"icon":493},"i-lucide-triangle",{"title":145,"path":146,"stem":147,"icon":495},"i-lucide-hexagon",{"title":149,"path":150,"stem":151,"children":497,"page":65},[498,499,517,521,559],{"title":154,"path":155,"stem":156,"icon":479},{"title":158,"path":159,"stem":160,"children":500,"page":65},[501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516],{"title":163,"path":164,"stem":165,"icon":479},{"title":167,"path":168,"stem":169,"icon":479},{"title":171,"path":172,"stem":173,"icon":479},{"title":175,"path":176,"stem":177,"icon":479},{"title":179,"path":180,"stem":181,"icon":479},{"title":183,"path":184,"stem":185,"icon":479},{"title":187,"path":188,"stem":189,"icon":479},{"title":191,"path":192,"stem":193,"icon":479},{"title":195,"path":196,"stem":197,"icon":479},{"title":199,"path":200,"stem":201,"icon":479},{"title":203,"path":204,"stem":205,"icon":479},{"title":207,"path":208,"stem":209,"icon":479},{"title":211,"path":212,"stem":213,"icon":479},{"title":215,"path":216,"stem":217,"icon":479},{"title":219,"path":220,"stem":221,"icon":479},{"title":223,"path":224,"stem":225,"icon":479},{"title":227,"path":228,"stem":229,"children":518,"page":65},[519,520],{"title":232,"path":233,"stem":234,"icon":479},{"title":236,"path":237,"stem":238,"icon":479},{"title":240,"path":241,"stem":242,"children":522,"page":65},[523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558],{"title":245,"path":246,"stem":247,"icon":479},{"title":249,"path":250,"stem":251,"icon":479},{"title":253,"path":254,"stem":255,"icon":479},{"title":257,"path":258,"stem":259,"icon":479},{"title":261,"path":262,"stem":263,"icon":479},{"title":265,"path":266,"stem":267,"icon":479},{"title":269,"path":270,"stem":271,"icon":479},{"title":273,"path":274,"stem":275,"icon":479},{"title":277,"path":278,"stem":279,"icon":479},{"title":281,"path":282,"stem":283,"icon":479},{"title":285,"path":286,"stem":287,"icon":479},{"title":289,"path":290,"stem":291,"icon":479},{"title":293,"path":294,"stem":295,"icon":479},{"title":297,"path":298,"stem":299,"icon":479},{"title":301,"path":302,"stem":303,"icon":479},{"title":305,"path":306,"stem":307,"icon":479},{"title":309,"path":310,"stem":311,"icon":479},{"title":313,"path":314,"stem":315,"icon":479},{"title":317,"path":318,"stem":319,"icon":479},{"title":321,"path":322,"stem":323,"icon":479},{"title":325,"path":326,"stem":327,"icon":479},{"title":329,"path":330,"stem":331,"icon":479},{"title":333,"path":334,"stem":335,"icon":479},{"title":337,"path":338,"stem":339,"icon":479},{"title":341,"path":342,"stem":343,"icon":479},{"title":345,"path":346,"stem":347,"icon":479},{"title":349,"path":350,"stem":351,"icon":479},{"title":353,"path":354,"stem":355,"icon":479},{"title":357,"path":358,"stem":359,"icon":479},{"title":361,"path":362,"stem":363,"icon":479},{"title":365,"path":366,"stem":367,"icon":479},{"title":369,"path":370,"stem":371,"icon":479},{"title":373,"path":374,"stem":375,"icon":479},{"title":377,"path":378,"stem":379,"icon":479},{"title":381,"path":382,"stem":383,"icon":479},{"title":385,"path":386,"stem":387,"icon":479},{"title":389,"path":390,"stem":391,"children":560,"page":65},[561,562,563,564,565],{"title":394,"path":395,"stem":396,"icon":479},{"title":398,"path":399,"stem":400,"icon":479},{"title":402,"path":403,"stem":404,"icon":479},{"title":406,"path":407,"stem":408,"icon":479},{"title":410,"path":411,"stem":412,"icon":479},{"title":414,"path":415,"stem":416,"children":567,"page":65},[568,569,570],{"title":137,"path":419,"stem":420,"icon":465},{"title":141,"path":422,"stem":423,"icon":493},{"title":145,"path":425,"stem":426,"icon":495},{"id":572,"title":109,"body":573,"description":1190,"extension":1191,"icon":479,"links":479,"meta":1192,"navigation":999,"path":110,"seo":1193,"stem":111,"__hash__":1194},"docs\u002Fdocs\u002Fguides\u002Fpreviewing-content.md",{"type":574,"value":575,"toc":1176},"minimark",[576,589,592,597,600,616,619,624,678,682,685,687,691,694,698,704,711,757,764,775,782,792,798,845,855,866,874,877,883,892,912,1113,1123,1127,1140,1143,1147,1150,1152,1156,1172],[577,578,579,580,584,585,588],"p",{},"This guide has two halves. The first is for ",[581,582,583],"strong",{},"editors"," — how to look at a draft as a real page.\nThe second is for whoever ",[581,586,587],{},"builds the website",", because the preview button only works once the\nsite has been wired up for it.",[590,591],"hr",{},[593,594,596],"h2",{"id":595},"for-editors","For editors",[577,598,599],{},"Open any page, blog post or collection item. If preview is set up for that kind of content, two\nbuttons sit at the top of the editor:",[601,602,603,610],"ul",{},[604,605,606,609],"li",{},[581,607,608],{},"Preview draft"," — opens your unsaved-to-the-world changes on the preview site, in a new tab.",[604,611,612,615],{},[581,613,614],{},"View live"," — opens the published version on the real site. It only appears once the content\nhas been published, because before that there is nothing live to look at.",[577,617,618],{},"That is the whole workflow. There is no key to copy, no URL to assemble, and nothing to type.",[620,621,623],"h3",{"id":622},"why-dont-i-see-the-buttons","Why don't I see the buttons?",[625,626,627,640],"table",{},[628,629,630],"thead",{},[631,632,633,637],"tr",{},[634,635,636],"th",{},"What you see",[634,638,639],{},"What it means",[641,642,643,656,669],"tbody",{},[631,644,645,649],{},[646,647,648],"td",{},"Neither button",[646,650,651,652,655],{},"This content type has no URL configured, or the project has no site addresses set. Ask an admin to check ",[581,653,654],{},"Settings → Site URLs",".",[631,657,658,663],{},[646,659,660,661],{},"Only ",[581,662,608],{},[646,664,665,666,668],{},"Normal for a draft. ",[581,667,614],{}," appears after you publish.",[631,670,671,675],{},[646,672,660,673],{},[581,674,614],{},[646,676,677],{},"The project has a live site address but no preview site address. An admin can add one.",[620,679,681],{"id":680},"is-it-safe-to-share-a-preview-link","Is it safe to share a preview link?",[577,683,684],{},"Yes, with the caveat that it only works for people who can already reach your preview\nenvironment. The link itself carries no password or key — it is just an address. Anyone who can\nopen your preview site can see the draft; anyone who cannot, cannot.",[590,686],{},[593,688,690],{"id":689},"for-developers-wiring-up-preview","For developers: wiring up preview",[577,692,693],{},"TentoCMS does not render your pages, so it cannot preview them on its own. It builds an address\nand your site does the rest.",[620,695,697],{"id":696},"_1-configure-the-addresses-in-tentocms","1. Configure the addresses in TentoCMS",[577,699,700,701,703],{},"Everything lives on one screen: ",[581,702,654],{},", available to developers and above.",[577,705,706,707,710],{},"It sets two origins, which are ",[581,708,709],{},"admin-only"," because they decide where the live and preview\nsites actually are. Developers can see them — so they can tell what their paths resolve to — but\nnot change them.",[625,712,713,726],{},[628,714,715],{},[631,716,717,720,723],{},[634,718,719],{},"Setting",[634,721,722],{},"Example",[634,724,725],{},"Used for",[641,727,728,743],{},[631,729,730,733,739],{},[646,731,732],{},"Live site",[646,734,735],{},[736,737,738],"code",{},"https:\u002F\u002Fexample.com",[646,740,741],{},[581,742,614],{},[631,744,745,748,753],{},[646,746,747],{},"Preview site",[646,749,750],{},[736,751,752],{},"https:\u002F\u002Fuat.example.com",[646,754,755],{},[581,756,608],{},[577,758,759,760,763],{},"Below that, every content type gets a ",[581,761,762],{},"URL pattern"," describing where its content lives —\nblog posts, each page type and each collection type, all in one list, all editable by a\ndeveloper:",[577,765,766,767,770,771,774],{},"Page and collection patterns can also be edited on the individual type editors\n(",[581,768,769],{},"Settings → Page types"," \u002F ",[581,772,773],{},"Collection types","), which write the same value — the Site URLs\nscreen is the place to see them all at once.",[577,776,777,778,781],{},"A pattern is a root-relative path with ",[736,779,780],{},"{slug}"," where the item's slug goes:",[783,784,789],"pre",{"className":785,"code":787,"language":788},[786],"language-text","\u002Fblog\u002F{slug}\n\u002Fguides\u002F{slug}\n\u002F{pageTypeSlug}\u002F{slug}\n","text",[736,790,787],{"__ignoreMap":791},"",[577,793,794,797],{},[581,795,796],{},"Tokens are specific to the kind of content",", because only some values exist in each case. A\npattern using a token its content type cannot supply is rejected when you save it:",[625,799,800,810],{},[628,801,802],{},[631,803,804,807],{},[634,805,806],{},"Content",[634,808,809],{},"Tokens available",[641,811,812,825,836],{},[631,813,814,817],{},[646,815,816],{},"Page types",[646,818,819,821,822],{},[736,820,780],{},", ",[736,823,824],{},"{pageTypeSlug}",[631,826,827,829],{},[646,828,773],{},[646,830,831,821,833],{},[736,832,780],{},[736,834,835],{},"{collectionSlug}",[631,837,838,841],{},[646,839,840],{},"Blog posts",[646,842,843],{},[736,844,780],{},[577,846,847,848,850,851,854],{},"A pattern must contain ",[736,849,780],{}," unless the type is a singleton collection, which holds one item\nand can therefore use a fixed path like ",[736,852,853],{},"\u002Fprivacy-policy",". Leave the pattern empty for a type that\nis not a page on your site — the buttons then correctly do not appear.",[577,856,857,858,861,862,865],{},"Patterns are paths only: no scheme, no host, and no query string or fragment. A query would be\ncarried into the generated link, so ",[736,859,860],{},"\u002Fblog\u002F{slug}?preview=true"," would make the ",[581,863,864],{},"live"," link ask\nfor draft content.",[620,867,869,870,873],{"id":868},"_2-forward-previewtrue-on-your-preview-environment","2. Forward ",[736,871,872],{},"?preview=true"," on your preview environment",[577,875,876],{},"The preview button produces:",[783,878,881],{"className":879,"code":880,"language":788},[786],"https:\u002F\u002Fuat.example.com\u002Fblog\u002Fmy-post?preview=true\n",[736,882,880],{"__ignoreMap":791},[577,884,885,887,888,891],{},[736,886,872],{}," means nothing to your site until you act on it. Your ",[581,889,890],{},"preview"," deployment must:",[893,894,895,906],"ol",{},[604,896,897,898,901,902,905],{},"Hold a ",[581,899,900],{},"preview API key"," (",[736,903,904],{},"preview_…",") in server-side configuration.",[604,907,908,909,911],{},"Read ",[736,910,890],{}," off the incoming request and pass it through to its TentoCMS API calls.",[783,913,917],{"className":914,"code":915,"language":916,"meta":791,"style":791},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Server-side only. Sketch — adapt to your framework.\nconst wantsDraft = new URL(request.url).searchParams.get('preview') === 'true'\n\nconst res = await fetch(\n  `https:\u002F\u002Fapi.tentocms.com\u002Fapi\u002Fv1\u002Fblog\u002Fposts\u002F${slug}${wantsDraft ? '?preview=true' : ''}`,\n  { headers: { 'X-API-Key': process.env.TENTO_PREVIEW_KEY! } }\n)\n","ts",[736,918,919,928,994,1001,1021,1060,1107],{"__ignoreMap":791},[920,921,924],"span",{"class":922,"line":923},"line",1,[920,925,927],{"class":926},"sHwdD","\u002F\u002F Server-side only. Sketch — adapt to your framework.\n",[920,929,931,935,939,943,946,950,953,955,958,960,963,965,968,971,974,977,979,982,985,988,991],{"class":922,"line":930},2,[920,932,934],{"class":933},"spNyl","const",[920,936,938],{"class":937},"sTEyZ"," wantsDraft ",[920,940,942],{"class":941},"sMK4o","=",[920,944,945],{"class":941}," new",[920,947,949],{"class":948},"s2Zo4"," URL",[920,951,952],{"class":937},"(request",[920,954,655],{"class":941},[920,956,957],{"class":937},"url)",[920,959,655],{"class":941},[920,961,962],{"class":937},"searchParams",[920,964,655],{"class":941},[920,966,967],{"class":948},"get",[920,969,970],{"class":937},"(",[920,972,973],{"class":941},"'",[920,975,890],{"class":976},"sfazB",[920,978,973],{"class":941},[920,980,981],{"class":937},") ",[920,983,984],{"class":941},"===",[920,986,987],{"class":941}," '",[920,989,990],{"class":976},"true",[920,992,993],{"class":941},"'\n",[920,995,997],{"class":922,"line":996},3,[920,998,1000],{"emptyLinePlaceholder":999},true,"\n",[920,1002,1004,1006,1009,1011,1015,1018],{"class":922,"line":1003},4,[920,1005,934],{"class":933},[920,1007,1008],{"class":937}," res ",[920,1010,942],{"class":941},[920,1012,1014],{"class":1013},"s7zQu"," await",[920,1016,1017],{"class":948}," fetch",[920,1019,1020],{"class":937},"(\n",[920,1022,1024,1027,1030,1033,1036,1039,1042,1045,1047,1049,1051,1054,1057],{"class":922,"line":1023},5,[920,1025,1026],{"class":941},"  `",[920,1028,1029],{"class":976},"https:\u002F\u002Fapi.tentocms.com\u002Fapi\u002Fv1\u002Fblog\u002Fposts\u002F",[920,1031,1032],{"class":941},"${",[920,1034,1035],{"class":937},"slug",[920,1037,1038],{"class":941},"}${",[920,1040,1041],{"class":937},"wantsDraft ",[920,1043,1044],{"class":941},"?",[920,1046,987],{"class":941},[920,1048,872],{"class":976},[920,1050,973],{"class":941},[920,1052,1053],{"class":941}," :",[920,1055,1056],{"class":941}," ''}`",[920,1058,1059],{"class":941},",\n",[920,1061,1063,1066,1070,1073,1076,1078,1081,1083,1085,1088,1090,1093,1095,1098,1101,1104],{"class":922,"line":1062},6,[920,1064,1065],{"class":941},"  {",[920,1067,1069],{"class":1068},"swJcz"," headers",[920,1071,1072],{"class":941},":",[920,1074,1075],{"class":941}," {",[920,1077,987],{"class":941},[920,1079,1080],{"class":1068},"X-API-Key",[920,1082,973],{"class":941},[920,1084,1072],{"class":941},[920,1086,1087],{"class":937}," process",[920,1089,655],{"class":941},[920,1091,1092],{"class":937},"env",[920,1094,655],{"class":941},[920,1096,1097],{"class":937},"TENTO_PREVIEW_KEY",[920,1099,1100],{"class":941},"!",[920,1102,1103],{"class":941}," }",[920,1105,1106],{"class":941}," }\n",[920,1108,1110],{"class":922,"line":1109},7,[920,1111,1112],{"class":937},")\n",[577,1114,1115,1116,1119,1120,1122],{},"Holding a preview key is ",[581,1117,1118],{},"not"," the same as asking for drafts. A request authenticating with a\npreview key and no ",[736,1121,872],{}," still receives published content, so one deployment serves\nboth modes — you do not need a separate build to preview.",[620,1124,1126],{"id":1125},"️-never-do-this-on-your-production-site","⚠️ Never do this on your production site",[577,1128,1129,1130,1132,1133,1135,1136,1139],{},"Do not wire the ",[736,1131,872],{}," passthrough into your public production deployment. If you do,\nany visitor can append ",[736,1134,872],{}," and read unpublished content. This is why TentoCMS keeps\nthe preview address as a ",[581,1137,1138],{},"separate"," setting rather than a flag on the live one, and why preview\nlinks always point at the preview environment.",[577,1141,1142],{},"The preview environment must not be publicly reachable. Put it behind authentication, an IP\nallowlist, or a private network — the same protection you would give any staging environment.",[620,1144,1146],{"id":1145},"note-on-caching","Note on caching",[577,1148,1149],{},"A request authenticating with a preview key skips the edge cache entirely, including for\npublished content. That is deliberate, and it means your preview environment's response times\nwill not reflect production. Benchmark against the live site, not the preview one.",[590,1151],{},[593,1153,1155],{"id":1154},"related","Related",[601,1157,1158,1165],{},[604,1159,1160],{},[1161,1162,1164],"a",{"href":1163},".\u002Fpublic-api-usage","Public API usage",[604,1166,1167,1171],{},[1161,1168,1170],{"href":1169},"..\u002Fapi\u002Foverview","API overview"," — authentication and key types",[1173,1174,1175],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":791,"searchDepth":930,"depth":930,"links":1177},[1178,1182,1189],{"id":595,"depth":930,"text":596,"children":1179},[1180,1181],{"id":622,"depth":996,"text":623},{"id":680,"depth":996,"text":681},{"id":689,"depth":930,"text":690,"children":1183},[1184,1185,1187,1188],{"id":696,"depth":996,"text":697},{"id":868,"depth":996,"text":1186},"2. Forward ?preview=true on your preview environment",{"id":1125,"depth":996,"text":1126},{"id":1145,"depth":996,"text":1146},{"id":1154,"depth":930,"text":1155},"This guide has two halves. The first is for editors — how to look at a draft as a real page.\nThe second is for whoever builds the website, because the preview button only works once the\nsite has been wired up for it.","md",{},{"title":109,"description":1190},"FJ7aIiXa5MNTR8fJrbHM_6hcFsNe7zhK_WYdy0zJGV4",[1196,1198],{"title":105,"path":106,"stem":107,"description":1197,"children":-1},"Managing pages in the TentoCMS admin interface.",{"title":113,"path":114,"stem":115,"description":1199,"children":-1},"Integrating a frontend with the Public REST API — authentication and request patterns.",1793027184697]