# Zesty.io Documentation ## Guides - [Getting Started](https://docs.zesty.io/docs/getting-started-with-zesty.md): Learn the intricacies of Zesty.io content technology and how to implement websites, headless CMS apps, and marketing components. - [Product Overview](https://docs.zesty.io/docs/product-overview.md): Zesty.io Product highlights - [Content](https://docs.zesty.io/docs/content-zesty.md) - [Content Editing](https://docs.zesty.io/docs/content-editing.md): Content Editing Options in Zesty.io | Explore Features & Business Value - [SEO](https://docs.zesty.io/docs/seo-zesty.md): Optimizing Business Growth with Zesty.io's SEO Tools | Unleash Your Website’s Potential - [Personalization](https://docs.zesty.io/docs/personalization.md) - [Versioning](https://docs.zesty.io/docs/versioning.md): Unlocking Business Potential with Zesty.io Content Versioning - [Environments](https://docs.zesty.io/docs/environments-zesty.md): Optimizing Content Management with Zesty.io's Environment Capabilities - [Publishing](https://docs.zesty.io/docs/publishing-zesty.md) - [Audit Logs](https://docs.zesty.io/docs/audit-logs.md) - [Multilingual](https://docs.zesty.io/docs/multilingual.md): Maximizing Global Engagement with Zesty.io's Multilingual Content Capabilities - [Schema](https://docs.zesty.io/docs/schema-zesty.md): Exploring Zesty.io Schema: Content Models, Field Types, Parenting, Relationships, API Access, and More - [Content Models](https://docs.zesty.io/docs/content-models-zesty.md) - [Content Fields](https://docs.zesty.io/docs/content-fields.md): Learn about Zesty.io Content Model Field Types and their options - [Content Relationships](https://docs.zesty.io/docs/content-relationships.md) - [Automatic APIs](https://docs.zesty.io/docs/automatic-apis.md): Automatic APIs per Content Models - [Templating](https://docs.zesty.io/docs/templating.md) - [Views](https://docs.zesty.io/docs/views-zesty.md): Zesty.io: Advanced View Editing for Streamlined Content Management - [Parsley](https://docs.zesty.io/docs/parsley-zesty.md): Parsley: The Power Behind Zesty.io's Flexible Content Management - [Stylesheets](https://docs.zesty.io/docs/stylesheets-zesty.md): Powering Dynamic Stylesheets on Zesty.io - [Auto Optimization](https://docs.zesty.io/docs/auto-optimization.md) - [Theming](https://docs.zesty.io/docs/theming.md): Theming Capabilities in Zesty.io: Streamlining Design and Development - [Site Generators](https://docs.zesty.io/docs/site-generators.md): Leverage SSG/SSR with Zesty.io: Boost Efficiency & Performance - [Custom Data](https://docs.zesty.io/docs/custom-data.md): Achieve Digital Business Efficiency with the Versatility of Zesty.io's Custom Data Outputs - [Media](https://docs.zesty.io/docs/media-zesty.md): Digital Asset Manager (DAM) for Content Marketing - [Global Buckets](https://docs.zesty.io/docs/global-buckets.md) - [Workflows](https://docs.zesty.io/docs/workflows.md) - [Search Engine Optimization (SEO)](https://docs.zesty.io/docs/search-engine-optimization-seo.md): Mastering SEO with Zesty.io: Unleash the Power of Optimization Tools - [Security](https://docs.zesty.io/docs/security-zesty.md): Ensuring Data Integrity with Zesty.io's Security Features - [Rendering](https://docs.zesty.io/docs/rendering.md): Harnessing Zesty.io's Robust Page Rendering Features - [Traditional HTML/CSS](https://docs.zesty.io/docs/traditional-htmlcss.md) - [Hosting and Delivery](https://docs.zesty.io/docs/hosting-and-delivery.md) - [Governance](https://docs.zesty.io/docs/governance.md) - [Glossary](https://docs.zesty.io/docs/glossary.md): Learn the language of Zesty.io. - [Common Concepts](https://docs.zesty.io/docs/common-concepts.md): Zesty.org is the knowledge base for the Zesty.io CMS Platform. Learn the intricacies of Zesty.io content technology and how to implement websites, headless CMS apps, and marketing components. - [Cloud Content Instance](https://docs.zesty.io/docs/cloud-content-instance.md): A Zesty.io Cloud Content Instance is a collection of schema, web views, and APIs to create, manage, and distribute content to browsers, applications, and/or IoT devices. 100% managed and automated. - [The Connection Between Schema, Content, and Code](https://docs.zesty.io/docs/the-connection-between-schema-content-and-code.md): The connection between how Schema, Content, and Code (Editor) work together may not be readily clear, however this article should help clarify those connections. - [Environments & Publishing](https://docs.zesty.io/docs/environments-publishing.md): Information on Publishing Content Items and How - [Publishing All Content](https://docs.zesty.io/docs/publishing-all-content.md): Often at a project launch there is a desire to publish all content at once. This explains how you publish all content, or all content on a single model. - [Locales / Multi-Lang Content](https://docs.zesty.io/docs/locales-multi-lang-content.md): Zesty.io Supports multiple locales/languages for each content item - [ZUIDs](https://docs.zesty.io/docs/zuids.md): Zesty.io Unique Identifiers - [Quick Start Guide](https://docs.zesty.io/docs/quick-start-guide.md): A brief overview on getting started with the Zesty.io WebEngine. Includes links to additional Zesty and Parsley documentation. - [Create a New Instance](https://docs.zesty.io/docs/create-a-new-instance.md): The Account Manager houses all of your instances. Your instances are your unique projects created in the Zesty.io platform. Creating a new Instance is the first step in building out your content. - [Instance Settings](https://docs.zesty.io/docs/instance-settings.md): The Instance Settings interface provides administrative control over publishing domains, vanity domains, users and team access, access tokens. - [Content Manager](https://docs.zesty.io/docs/content-manager.md): In the Content Manager Interface you have access to an Instance's content and the website or endpoints that content is distributed through. - [Creating a Content Model](https://docs.zesty.io/docs/creating-a-content-model.md): Content Model is a collection of content entries with shared settings and defined fields. - [Adding Content](https://docs.zesty.io/docs/adding-content.md): Once the setup of your Content Models and Schema fields is complete, you can add content entries and fill those fields with text, images, selections, files, etc. - [Adding Media Items](https://docs.zesty.io/docs/adding-media-items.md): Add a variety of media types to your instance: SVG, PDF, MOV, Mp4, GIF, JPEG, and more. - [Content Manager Settings](https://docs.zesty.io/docs/content-manager-settings.md): Within the Settings tab of the Content Manager you are presented with several options that directly affect the Instance in its entirety. Including the ability to add global Head Tags. - [Coding & Parsley](https://docs.zesty.io/docs/coding-parsley.md): Parsley — the language of Zesty.io - [Publishing](https://docs.zesty.io/docs/quick-publishing.md): Publishing is the process of taking your content live. Zesty provides control to the user on which saved drafts they would like to publish. - [TroubleShooting](https://docs.zesty.io/docs/troubleshooting.md): Common occurrences in the Zesty.io Ecosystem and how to troubleshoot them - [Duplicate Path Part](https://docs.zesty.io/docs/duplicate-path-part.md): Duplicate path part errors. - [Content Management](https://docs.zesty.io/docs/content-management.md): Managing digital content effectively is crucial in today’s online landscape. Here’s an overview of common content management tasks in Zesty.io. - [Custom Domain & SSL Setup Guide](https://docs.zesty.io/docs/zestyio-instance-domain-setup.md) - [How to Create a Repeater Content Field](https://docs.zesty.io/docs/how-to-create-a-repeater-content-field.md): Guide on how to create a repeater field in Zesty.io - [How to Use the Integration Field](https://docs.zesty.io/docs/how-to-use-the-integration-field.md): Guide on how to create an integration field in Zesty.io - [API Overview](https://docs.zesty.io/docs/api-overview.md): We will learn more about Zesty's APIs. In addition to webpage delivery from WebEngine templating, developers have access to multiple headless API options which can power additional or supplemental website, mobile, or IoT experiences. - [Auth API](https://docs.zesty.io/docs/auth-api.md): Authenticate API for Zesty.io Users - [Accounts API](https://docs.zesty.io/docs/accounts-api.md): Accounts API - [Instances API](https://docs.zesty.io/docs/instances-api.md): A REST API for interacting with your instance resources. - [Authentication](https://docs.zesty.io/docs/authentication.md): Zesty.io Authentication - [Setting Up Two-factor Authentication](https://docs.zesty.io/docs/setting-up-two-factor-authentication.md): For that extra step of security, set up two-factor authentication. This article will show a user how to enable two-factor authentication on their account. - [Microsoft Single Sign-On (SSO)](https://docs.zesty.io/docs/microsoft-single-sign-on-sso.md): You may log into Zesty.io using Microsoft Single-On - [WebEngine](https://docs.zesty.io/docs/webengine.md): WebEngine is a server side rendering origin for rich content and data. It communicates with popular CDNs and have handle versioned or published states. - [Modes](https://docs.zesty.io/docs/modes.md): WebEngine has three options for rendering output to work with different data access styles, which are called modes. Modes only affect WebEngine. - [Environment States & Caching Behaviors](https://docs.zesty.io/docs/environment-states-caching-behaviors.md): Explains the multiple caching behaviors in the different environment state of WebEngine. - [Resource Resolution Order](https://docs.zesty.io/docs/resource-resolution-order.md): The order in which specific types of behavior or views load, from 301 redirects to 404s. - [View Templating](https://docs.zesty.io/docs/view-templating.md): Zesty's view files and templating language - Parsley - [CSS & JS Processing Flow](https://docs.zesty.io/docs/css-js-processing-flow.md) - [Security](https://docs.zesty.io/docs/security.md): Authentication headers and Preview Lock protects your preview URL from being freely accessed and misused. - [Bot and Spam Form Submission Management](https://docs.zesty.io/docs/bot-and-spam-form-submission-management.md) - [Enabling HTTP Strict Transport Security (HSTS) on Your Website](https://docs.zesty.io/docs/enabling-http-strict-transport-security-hsts-on-your-website.md): This document provides step-by-step instructions for enabling HTTP Strict Transport Security (HSTS) on your Zesty-hosted website. HSTS significantly enhances your website's security by ensuring that browsers always connect via HTTPS. - [Caching](https://docs.zesty.io/docs/caching.md): Zesty.io: Caching Document which describes the details of caching web requests - [Hybrid CDN Setup](https://docs.zesty.io/docs/hybrid-cdn-setup.md): Setup your Zesty.io content instance to load through your CDN. - [File Proxy](https://docs.zesty.io/docs/file-proxy.md): Integrating external files and sources with Zesty - [Zesty URLs & Their Functionality](https://docs.zesty.io/docs/zesty-urls-their-functionality.md): Zesty URLs return preview or production content based on environment. - [Difference in URL and Redirect Case Sensitivity](https://docs.zesty.io/docs/difference-in-url-and-redirect-case-sensitivity.md): Zesty.io content item URLs and redirects case sensitivity - [JSON Endpoints](https://docs.zesty.io/docs/json-endpoints.md): Zesty provides multiple endpoints that return a JSON objects. - [Instant API (Read Only)](https://docs.zesty.io/docs/instant-api-read-only.md): A Read Only JSON API to access any content created and managed on the Zesty.io Content Platform - [Headless & Hybrid toJSON](https://docs.zesty.io/docs/headless-hybrid-tojson.md): When using both Headless and Hybrid WebEngine Modes, an additional JSON method becomes available: toJSON. - [Parsley toJSON()](https://docs.zesty.io/docs/parsley-tojson.md): The toJSON() Parsley call allows users to create custom endpoints from Models and Item. - [GraphQL](https://docs.zesty.io/docs/graphql.md): Endpoints available to power a GraphQL (GQL) server - [Freestyle App](https://docs.zesty.io/docs/freestyle-app.md) - [Creating a component in Freestyle](https://docs.zesty.io/docs/creating-a-component-in-freestyle.md): This guide outlines the essential steps to create a custom Freestyle component in Zesty.io. It covers creating an HTML file in Parsley, capturing and using an image for the component, registering the component in Freestyle with necessary details, and verifying its functionality. Ideal for users seeking a straightforward approach to enhance their Zesty.io projects with custom components. - [Creating Custom Components with Parsley](https://docs.zesty.io/docs/creating-custom-components-with-parsley.md): Using Zesty's drag and drop option (Freestyle App) - [Creating Custom Components with NextJS](https://docs.zesty.io/docs/creating-custom-components-with-nextjs.md): Guide in creating custom components with Next.js - [Creating and Modifying Existing Design Layouts](https://docs.zesty.io/docs/creating-and-modifying-existing-design-layouts.md): This guide is for creating and modifying design layouts, including columns, rows, and containers, in Freestyle. This is structured to guide users through each step with ease. - [Layout Views](https://docs.zesty.io/docs/layout-views.md): Discover what views, models, and items can be edited in the Freestyle App - [Default Layout vs Single Item](https://docs.zesty.io/docs/default-layout-vs-single-item.md): How to use default layout and single item - [Canvas Configuration Settings](https://docs.zesty.io/docs/canvas-configuration-settings.md): This guide helps users to effectively preview and test various design elements, including CSS and JavaScript, within the Canvas of Freestyle. - [Managing a Custom Component](https://docs.zesty.io/docs/managing-a-custom-component.md): Add functionality and customization to your components. Connect them to your instance's content or your external front-end framework. - [Best Practices for Creating a Schema When Using Freestyle](https://docs.zesty.io/docs/best-practices-for-creating-a-schema-when-using-freestyle.md): Creating an effective schema in Zesty.io when using Freestyle is crucial for ensuring that your content is well-organized, easy to manage, and scalable. This guide will walk you through the best practices for setting up your schema. - [When and When Not to Use Freestyle](https://docs.zesty.io/docs/when-and-when-not-to-use-freestyle.md): This guide highlights key scenarios for using Freestyle, such as for complex functionalities, recurring content, and relational models. - [Parsley](https://docs.zesty.io/docs/parsley.md): Learn the basics of Zesty.io's templating language Parsley. - [Parsley Index](https://docs.zesty.io/docs/parsley-index.md): This index collects all Parsley syntax and methods. - [Parsley AutoLayout](https://docs.zesty.io/docs/parsley-autolayout.md): Automagical HTML output of headless content. Instant access to Content Layout output. - [Access a Content Item (this)](https://docs.zesty.io/docs/access-a-content-item-this.md): The Parsley `this` call is used to reference content which resolves from requesting a specific URL relative to a content item's meta url. - [Accessing Multi-language in Ajax files and Parsley](https://docs.zesty.io/docs/accessing-multi-language-in-ajax-files-and-parsley.md): Accessing Multi-language in Ajax files via GET query parameter, and using parsley call for the current language - [Autogenerated Fields](https://docs.zesty.io/docs/autogenerated-fields.md): New instances come with a set of default fields for your convenience. Learn how to use these fields for global information, SEO settings, and other important information. - [Each Loop](https://docs.zesty.io/docs/each-loop.md): Learn how to iterate through Headless and Group with View content models with a Parsley Each Loop. - [If Conditionals](https://docs.zesty.io/docs/if-conditionals.md): Learn the fundamentals on how to write if statements in Parsley. - [Include Syntax](https://docs.zesty.io/docs/include-syntax.md): Learn more about how use Parsley's {{ include }} syntax which allows you insert a snippet within the view you are in. - [Image Modifiers](https://docs.zesty.io/docs/image-modifiers.md): Learn how to use Parsley image modifiers including resizing, and accessing image attributes such as image file name, title, and more. - [Instance Functions](https://docs.zesty.io/docs/instance-functions.md): Learn how to use all of Parsley's instance functions to access instance variables. - [Variables](https://docs.zesty.io/docs/variables.md): Parsley Variables are used to store and access data. You can use variables stored for a single page-load, session variables, cookies, POST variables, and GET variables. - [Remote Integrations](https://docs.zesty.io/docs/remote-integrations.md): Parsley can make web requests to remote data for server side rendering. - [Common Parsley Errors](https://docs.zesty.io/docs/common-parsley-errors.md): Find a list of common Parsley errors below to help you troubleshoot your error. - [Checking Published Status of a Content Item](https://docs.zesty.io/docs/checking-published-status-of-a-content-item.md): This section explains how to access and check properties of content items in Parsley, with a focus on the `isPublished` function to determine if a content item is published. - [Processing Text with remoteProcess](https://docs.zesty.io/docs/processing-text-with-remoteprocess.md): The `remoteProcess` function sends text from a Zesty.io content field to an external HTTPS endpoint for custom processing and returns the transformed result synchronously for rendering in the Web Engine. This enables dynamic transformations like converting Markdown to HTML, expanding shortcodes, or performing language-based processing (e.g., YAML to JSON). - [Accounts](https://docs.zesty.io/docs/accounts.md): Accounts Management - [Accounts UI](https://docs.zesty.io/docs/accounts-ui.md): The accounts interface is where users can view all their instances, create instance, manage teams, profile, and more. - [Account Settings](https://docs.zesty.io/docs/account-settings.md): User account settings allow users to update their username/password, add 2-factor authentication, and more. - [Instance Settings Drawer](https://docs.zesty.io/docs/instance-settings-drawer.md): The Instance Settings Drawer contains a general information of an Instance, its users, teams, report, locales, tokens and a lot more. - [Instances](https://docs.zesty.io/docs/instances-view.md): Accounts UI Instances view - [Inviting Users](https://docs.zesty.io/docs/inviting-users.md): Guide on how to invite users to your Instance - [Teams](https://docs.zesty.io/docs/account-teams.md): Teams allows users to create and set access permissions for groups of users. - [Access and Permissions](https://docs.zesty.io/docs/access-and-permissions.md): Account Access and Permissions - [Roles & Permissions](https://docs.zesty.io/docs/roles-permissions.md): Zesty.io base roles and permissions - [Okta SSO Configuration Guide](https://docs.zesty.io/docs/okta-sso-configuration-guide.md): This document is a guide on how to configure Okta as the Identity Provider to facilitate SSO with Zesty.io application - [Azure SSO Custom Markdown Tile in Azure AD](https://docs.zesty.io/docs/azure-sso-custom-markdown-tile-in-azure-ad.md): This document is a guide on how to create a dashboard or update an existing dashboard with custom markdown tile in Microsoft Entra ID (previously Azure AD) to do an Azure SSO in Zesty.io - [EcoSystems](https://docs.zesty.io/docs/ecosystem.md): Zesty.io Cloud Content Instances are networked through an EcoSystem, they can share code, media and data between each other to create rich distributed systems. - [Webhooks](https://docs.zesty.io/docs/webhooks.md): A description on Zesty Webhooks and how to use them in production. - [Instances](https://docs.zesty.io/docs/instances.md): Zesty.io Instances section - [Manager UI](https://docs.zesty.io/docs/manager-ui.md): This brief overview will go cover the Zesty.io content management interface such as the navigation items, Content Management home screen, the 'pages' sidebar navigation, and much more. - [Home Dashboard](https://docs.zesty.io/docs/home-dashboard.md): Get a high level view of everything happening in your instance - [Content](https://docs.zesty.io/docs/content.md): The content section is often the most used interface in Zesty.io. As the name suggests this section is where an instance's content is viewed, created, edited, and deleted. - [Adding and Managing Content](https://docs.zesty.io/docs/adding-and-managing-content.md): Once the setup for content models and fields is complete, you can add content entries and fill those fields with text, images, selections, files, etc. - [Assigning Publish and List Status](https://docs.zesty.io/docs/assigning-publish-and-list-status.md): The Publish and List Statuses affect the visibility and accessibility of a content entries on the preview and live environments. - [Canonical Tags](https://docs.zesty.io/docs/canonical-tags.md): Learn about our different canonical tag settings and how to enable them. - [Content Version Control](https://docs.zesty.io/docs/content-version-control.md): Content added to Content Item's is version controlled, allowing the user create, update and access previous versions of stored content. - [CSV Import](https://docs.zesty.io/docs/csv-import.md): Save time entering your content and learn how to upload a CSV. - [Editing Entry Details](https://docs.zesty.io/docs/editing-entry-details.md): The Entry Editing view in the Content Tab has all of the settings and fields that control meta information, parenting, the visibility and publish status, and more. - [Globals](https://docs.zesty.io/docs/globals.md): Globals are a unique Content Model included with every Zesty.io instance. - [Publishing and Scheduling](https://docs.zesty.io/docs/publishing-and-scheduling.md) - [Sitemap Priority](https://docs.zesty.io/docs/sitemap-priority.md): Learn how to manage sitemap priority for your content entries. - [Meta Fields](https://docs.zesty.io/docs/meta-fields.md): Learn how to add meta information including keywords, titles, and descriptions to your content entries. - [Workflow Request](https://docs.zesty.io/docs/workflow-request.md): Workflow Requests are a feature built into every Content Item, allowing the direct request of content review. - [Schema](https://docs.zesty.io/docs/schema.md): Zesty.io Content Instances are comprised of Content Models, which are data representations to guide data entry to create content items. - [Building a Content Structure](https://docs.zesty.io/docs/building-a-content-structure.md): Content Structure is the control panel for all your content. All content sets are created in here. This is where set types are categorized on a high level as Page, Page Group, or Data sets. Then where - [Content Models](https://docs.zesty.io/docs/content-models.md): This article reviews what a Content Model is and the three different Content Model types: Single With View, Group With View, and Headless. We cover what makes them different and when to use each. - [Adding Fields](https://docs.zesty.io/docs/adding-fields.md): Fields are added to each of the high-level components in the Content Structure. All of your site's content will be added into fields. - [Fields](https://docs.zesty.io/docs/fields.md): Zesty.io's Fields Content Models create content entry fields for a content set and a view (page). Multiple field datatypes can be added to any content set or page - [Web IDE (Code Editor)](https://docs.zesty.io/docs/web-ide-code-editor.md): The Web IDE is where HTML, CSS, Javascript and Parsley templates are authored. - [Versions](https://docs.zesty.io/docs/versions.md): Learn about Zesty.io's Web IDE file versioning. - [Environments](https://docs.zesty.io/docs/environments.md): Learn about Zesty.io's instance preview and live production environments. - [Saving](https://docs.zesty.io/docs/saving.md): In the Editor section, you are able to use hidden saving and publishing functionalities. - [Publishing](https://docs.zesty.io/docs/publishing.md): Learn about Zesty.io's Web IDE publishing flows. - [Javascript](https://docs.zesty.io/docs/javascript.md): JavaScript files are managed from the Editor underneath the JavaScript file list. You can either choose to create an internal file or link to an external file. - [Style Sheets](https://docs.zesty.io/docs/style-sheets.md): Zesty.io supports writing CSS, Less, and SCSS for styling your instances. Upon publishing we process all SCSS, Less, and CSS files and build a concatenated and minified CSS file to serve for your instance - [Outputting Content](https://docs.zesty.io/docs/outputting-content.md): The final step to have your website content ready for publishing is to compile it all together using HTML, Style Sheets, and JavaScript for websites, and endpoints and files for headless distribution. - [String Modifiers](https://docs.zesty.io/docs/string-modifiers.md): There are a number of Parsley string modifiers that users can employ to suite their needs. Keep reading to learn more about which string modifiers are available and how to use them. - [Custom File Types / Endpoints](https://docs.zesty.io/docs/custom-file-types-endpoints.md): Create free standing files with custom paths that are accessible through the CDN. These files are used for custom JSON, wild card url paths, xml, html, etc. - [Leads](https://docs.zesty.io/docs/leads.md): The Leads Section is where submitted data from forms configured to work with Zesty.io Leads can be collected, viewed, and exported. - [Redirects](https://docs.zesty.io/docs/redirects.md): Create redirects with relative paths to ensure that none of your pages 404. - [Activity Log (prev Audit Trail)](https://docs.zesty.io/docs/activity-log-prev-audit-trail.md): Activity Log keeps a log of all the actions that have been taken on your instance. - [View Activity of a Resource](https://docs.zesty.io/docs/view-activity-of-a-resource.md): How to use Activity Log to view the actions people have taken on a resource - [View Activity of a User](https://docs.zesty.io/docs/view-activity-of-a-user.md): How to use Activity Log to view the actions a user has taken on different resources - [View Instance Activity Insights](https://docs.zesty.io/docs/view-instance-activity-insights.md): How to use Activity Log to view the actions a user has taken on different resources - [View Instance Timeline](https://docs.zesty.io/docs/view-instance-timeline.md): How to view a timeline of all actions taken on your instance - [Download Audit Trail Report](https://docs.zesty.io/docs/download-audit-trail-report.md): How to use Activity Log to generate PDF log reports - [Settings](https://docs.zesty.io/docs/settings.md): Settings allow you to access Zesty.io Settings saved in the manager - [Instance Settings](https://docs.zesty.io/docs/manager-instance-settings.md): A variety of developer-oriented settings to help customize backend functionality. - [Instance Meta Tags](https://docs.zesty.io/docs/instance-meta-tags.md): Learn how to add instance scoped meta tags to the document head. - [Instance Styles](https://docs.zesty.io/docs/instance-styles.md): Access and edit style variables through the Settings section using a non-technical interface to update colors, fonts, and other design elements. - [Instance Fonts](https://docs.zesty.io/docs/instance-fonts.md): Add fonts through the Settings section using a non-technical interface. - [Deactivated JSON Fields](https://docs.zesty.io/docs/deactivated-json-fields.md): Zesty.io now offers more control over the inclusion of deactivated fields in the toJSON output, both at the instance level and on a per-request basis. - [Webhook Valid URLs](https://docs.zesty.io/docs/webhook-valid-urls.md): The Valid Webhook URLs setting under the Developer section is required when using form webhooks in Zesty.io. This setting defines a list of approved webhook URLs for form submissions, ensuring data is only sent to trusted and authorized destinations. - [Webhook Verification Secret](https://docs.zesty.io/docs/webhook-verification-secret.md): The Webhook Verification Secret is a required setting for Zesty instances using form webhooks. This setting provides a secure key that can be used to validates the authenticity of webhook requests sent from your instance. - [Tabs](https://docs.zesty.io/docs/tabs.md): Toggle between pinned tabs quickly to accelerated your workflow - [AI Content Assistant](https://docs.zesty.io/docs/ai-content-assistant.md): What used to take hours to write, now takes just minutes with our AI Content Assistant in the Zesty content management system. - [Content Analytics](https://docs.zesty.io/docs/content-analytics.md): Connect to Google Analytics to view traffic of your Zesty.io created content sites - [SEO](https://docs.zesty.io/docs/seo.md): SEO (Search Engine Optimization) involves optimizing a website to improve its visibility and ranking on search engine results pages (SERPs). - [Head & Meta Tags](https://docs.zesty.io/docs/head-meta-tags.md): SEO Meta tags - [Custom Head Overwrite](https://docs.zesty.io/docs/custom-head-overwrite.md): Developer option to overwrite the automated meta, title, and og:tags
tags with a Parsley snippet file. - [Custom Head Tags](https://docs.zesty.io/docs/custom-head-tags.md): How to add custom head tags to more resources in Web Engine. - [Open Graph and Twitter Card Meta Tags](https://docs.zesty.io/docs/open-graph-and-twitter-card-meta-tags.md): SEO Open Graph (Facebook) and Twitter Card Meta Tags - [Reports](https://docs.zesty.io/docs/reports.md): Metrics and Dashboards about Google Analytics which is integrated with Zesty.io - [Usage Reports](https://docs.zesty.io/docs/usage-reports.md): This documentation provides an in-depth guide to understanding and utilizing the Usage Reports feature within Zesty.io. It is designed to help users effectively track and analyze their website's resource consumption, including bandwidth usage and types of resource requests. - [How to`s](https://docs.zesty.io/docs/how-tos.md): Our guides will help you build out different aspects of your instance from adding forms to coding in one-to-many field relationships. - [Adding a Favicon](https://docs.zesty.io/docs/adding-a-favicon.md): Favicons serve a branding and help users identify your site when you have multiple browser tabs open. - [Adding Image Alt Text](https://docs.zesty.io/docs/adding-image-alt-text.md): Adding image alt text helps describe the image for screen readers and makes a site more accessible. - [Accepting an Invite to an Instance](https://docs.zesty.io/docs/accepting-an-invite-to-an-instance.md): Before you can work on an instance that you're invited to, you'll need to accept your invite. - [Accessing Basic API JSON Endpoints](https://docs.zesty.io/docs/accessing-basic-api-json-endpoints.md): Learn about our basic API JSON endpoints and how to use them. - [Adding Instances to EcoSystems](https://docs.zesty.io/docs/adding-instances-to-ecosystems.md): Instances in ecosystem can easily share media with their ecosystem media bin. - [Bottom Loading JavaScript](https://docs.zesty.io/docs/bottom-loading-javascript.md): Bottom loading your JavaScript can improve page load times as well as other benefits. - [Building the Schema and Selecting Fields](https://docs.zesty.io/docs/building-the-schema-and-selecting-fields.md): Learn how to select content models and fields when building your instance's schema. - [Content Entry, Drafts, and Publishing](https://docs.zesty.io/docs/content-entry-drafts-and-publishing.md): Learn the basics of navigating content entry and publishing. - [Controlling and use of og:image](https://docs.zesty.io/docs/controlling-and-use-of-ogimage.md): Open Graph (og:image) attribute - [Creating a Customizable JSON Endpoint For Content](https://docs.zesty.io/docs/creating-a-customizable-json-endpoint-for-content.md): Zesty.io's custom API JSON endpoints will save your app developers a lot of time by making requesting dynamic data on your frontend quick and easy. Learn more about the Zesty.io [headless CMS offering here](https://www.zesty.io/en-us/cms/headless-cms-websites-with-decoupled-architecture/). - [Creating a feed](https://docs.zesty.io/docs/creating-a-feed.md): Use our built-in options or use a custom endpoint to create a feed. - [Creating a Lead Form](https://docs.zesty.io/docs/creating-a-lead-form.md): This guide walks through creating a lead capture form which will store the data entered in the form to Zesty and send an email to the website marketing manager. - [Creating and Adding a Team](https://docs.zesty.io/docs/creating-and-adding-a-team.md): Teams can help break up your users into easily manageable groups with a single role. Create teams for marketers, developers, contractors, and more. Learn how to add a team to your instance - [Create a Downloadable Image or Zip File](https://docs.zesty.io/docs/create-a-downloadable-image-or-zip-file.md): This guide will walk through how to create a downloadable image or zip file utilizing a DAM stored media item. - [Editor and Coding Basics](https://docs.zesty.io/docs/editor-and-coding-basics.md): After Schema and Content, the last step is hopping over to the Editor to code. Learn the coding basics to get started. - [Export Content Model to CSV](https://docs.zesty.io/docs/export-content-model-to-csv.md) - [How Webpages are Assembled](https://docs.zesty.io/docs/how-webpages-are-assembled.md): In this article we review how Zesty.io uses all of the content, files, and settings for a web property to generate the HTML, CSS and JavaScript for a webpage. - [How do Instance LESS Variables Work](https://docs.zesty.io/docs/how-do-instance-less-variables-work.md) - [How to Create one_to_one Relationships](https://docs.zesty.io/docs/how-to-create-one_to_one-relationships.md): Guide on how to create a one_to_one relationship field in Zesty.io - [How to Create a one_to_many Relationship](https://docs.zesty.io/docs/how-to-create-a-one_to_many-relationship.md): Guide in creating a one_to_many relationship field in Zesty.io - [How to Create a Search Page](https://docs.zesty.io/docs/how-to-create-a-search-page.md): This guide shows how to create a search results page within Zesty, demonstrating with a zipcode search example. - [How to Filter by Tags](https://docs.zesty.io/docs/how-to-filter-by-tags.md): Learn how to filter through your content using tags - [How to Deal With CORS](https://docs.zesty.io/docs/how-to-deal-with-cors.md): This guide explains CORS and provides tips and strategies around debugging these types of requests. - [How to Implement Cross-instance Content Sharing](https://docs.zesty.io/docs/how-to-implement-cross-instance-content-sharing.md) - [How to Implement Simple Pagination](https://docs.zesty.io/docs/how-to-implement-simple-pagination.md): Pagination is a great way to break up content over a number of pages. Whether it's a multi-page article or a table of data breaking it across multiple pages can help your user navigate more easily. - [How to Launch an Instance](https://docs.zesty.io/docs/how-to-launch-an-instance.md): It's easy to launch your instance with Zesty.io. Simply set your domain, configure your DNS, and then confirm your site is live. - [How to Personalize User Experience by Accessing Geolocation](https://docs.zesty.io/docs/how-to-personalize-user-experience-by-accessing-geolocation.md): If a user's browser has access to the W3C Geoloction API, you can learn the latitude and longitude of a user through a couple simple Javascript function. This article gives you the example functions, - [How to Personalize User Experience with Session Variables](https://docs.zesty.io/docs/how-to-personalize-user-experience-with-session-variables.md): When a user has cookies disabled, or their ad blocker blocks cookies, your best to use session variables to ensure personalization works for them. This guide will show you how to use session variables - [How to Prevent Bots From Submitting Forms](https://docs.zesty.io/docs/how-to-prevent-bots-from-submitting-forms.md): Are bots submitting your form? Screen out form submissions by bots by implementing our honeypot feature. - [How to Set Up Internationalization (i18n)](https://docs.zesty.io/docs/how-to-set-up-internationalization-i18n.md): Setting up internationalization allows users to add multiple languages to their instance. - [How to Use the Safe Email Send To Setting](https://docs.zesty.io/docs/how-to-use-the-safe-email-send-to-setting.md): Safeguard against email spoofing with the Safe Email Send To setting. - [Personalize User Experience with JavaScript Cookies](https://docs.zesty.io/docs/personalize-user-experience-with-javascript-cookies.md): In the event where you want to store a cookie based on a user action without passing a link, you would need to use JavaScript. This guide explains how to setup cookies using JavaScript, and later how - [Forms and Form Webhooks](https://docs.zesty.io/docs/forms-and-form-webhooks.md): Working with html forms and utilizing Webhooks in Zesty.io WebEngine - [Optimizing load times with On-the-Fly Media Modification](https://docs.zesty.io/docs/optimizing-load-times-with-on-the-fly-media-modification.md): On-the-fly media modification in Zesty.io allows you to dynamically alter and adjust media files like images directly within the CMS. This can be helpful for optimizing media assets for different devices, resolutions, or design requirements without the need for external image editing tools. - [JavaScript Component Libraries](https://docs.zesty.io/docs/javascript-component-libraries.md): Implementing JavaScript component libraries on Zesty.io - [Building Related Single and Multi-page Content Models](https://docs.zesty.io/docs/building-related-single-and-multi-page-content-models.md): Related multi-page and single-page content models can be configured in different ways to accommodate the content manager's and developer's needs. - [Password Protect Web Engine Preview](https://docs.zesty.io/docs/password-protect-web-engine-preview.md): Two methods to password protect the preview url for your content instance - [Refreshing the Cache](https://docs.zesty.io/docs/refreshing-the-cache.md): If you published updates but you're not seeing them on your live site you might need to refresh the cache. - [Reordering Child Items in a Parsley Auto-generated Navigation Bar](https://docs.zesty.io/docs/reordering-child-items-in-a-parsley-auto-generated-navigation-bar.md): Reordering the child items in an auto-generated navigation bar is as simple as adjusting some numbers in the content editing view. - [Setting up Google Analytics for GDPR](https://docs.zesty.io/docs/setting-up-google-analytics-for-gdpr.md): How to be GDPR compliant with Google Analytics and Tag Manager using cookies and Javascript - [Setting up the x-default hreflang header](https://docs.zesty.io/docs/setting-up-the-x-default-hreflang-header.md): Multinational and multilingual websites can be configured to point all visitors to a default page through this Setting. - [Using Snippets](https://docs.zesty.io/docs/using-snippets.md): Snippets are a file type in the Web IDE that allow for small pieces of code to be abstracted out from the views. - [Video Embedding or Streaming Capabilities](https://docs.zesty.io/docs/video-embedding-or-streaming-capabilities.md): Zesty.io can display video through 3rd party video services or self hosted videos uploaded to the media service. - [How to Update Your Homepage in Zesty.io](https://docs.zesty.io/docs/how-to-update-your-homepage-in-zestyio.md): This article will guide you through the process of updating your homepage in Zesty.io, specifically when you're moving to a new content item for your homepage, which will point to a new URL path. - [Domain Verification Process for New Domains](https://docs.zesty.io/docs/domain-verification-process-for-new-domains.md) - [Media](https://docs.zesty.io/docs/media.md): Upload, store, and organize files such as images, videos, and more - [Files](https://docs.zesty.io/docs/files.md): Media Files in Zesty.io - [Upload Files](https://docs.zesty.io/docs/upload-files.md): Steps on how to upload media files in Zesty.io - [Preview File](https://docs.zesty.io/docs/preview-file.md): Previewing a media file in Zesty.io - ["On-the-Fly" Editor](https://docs.zesty.io/docs/on-the-fly-editor.md): Editing images using Zesty.io On-the-Fly Editor - [Get File URL](https://docs.zesty.io/docs/get-file-url.md): Locate or get the Media File URL - [Get File ZUID](https://docs.zesty.io/docs/get-file-zuid.md): Locate or get the media file ZUID - [Rename File](https://docs.zesty.io/docs/rename-file.md): Renaming a media file - [Move File](https://docs.zesty.io/docs/move-file.md): Moving a media file from one folder to another - [Delete File](https://docs.zesty.io/docs/delete-file.md): Deleting a media file - [Folders](https://docs.zesty.io/docs/folders.md): Organize your media files using folders - [Create Folders](https://docs.zesty.io/docs/create-folders.md): Creating folders in media app - [Create Sub-Folders](https://docs.zesty.io/docs/create-sub-folders.md): Creating sub-folders in media app to organize your files - [Find and View Folders](https://docs.zesty.io/docs/find-and-view-folders.md): Guide in searching and viewing folders in media app - [Rename Folders](https://docs.zesty.io/docs/rename-folders.md): Renaming folders in media app - [Hide Folders](https://docs.zesty.io/docs/hide-folders.md): Hiding folders in media app - [Search Files & Folders](https://docs.zesty.io/docs/search-files-folders.md): Searching files and folders in media app - [DAM (Media Management)](https://docs.zesty.io/docs/dam-media-management.md): A DAM (digital asset manager) is an abstract file system that stores and optimizes files in the Zesty.io cloud. - [On-The-Fly Media Optimization and Dynamic Image Manipulation](https://docs.zesty.io/docs/on-the-fly-media-optimization-and-dynamic-image-manipulation.md): Zesty.io's DAM has on-the-fly (OTF) rendering options to improve and manipulate media that both developers and content authors can use. - [Custom DAM Media Domains](https://docs.zesty.io/docs/custom-dam-media-domains.md): WebEngine can optionally server media through the registered url or origin, allowing for customer domains instead of media.zestyio.com - [Tools and Resources](https://docs.zesty.io/docs/tools-and-resources.md): List of available tools and resources in Zesty.io - [Integrations](https://docs.zesty.io/docs/integrations.md): Learn how to integrate third-party services and applications with Zesty.io. - [Next.js Integration](https://docs.zesty.io/docs/nextjs-integration.md): Guide on how to run NextJS with Zesty.io - [Zesty Content Object](https://docs.zesty.io/docs/zesty-content-object.md): How to work with the Zesty content object that is fed into Next.js components. - [Manually integrating a Next.js project to Zesty content](https://docs.zesty.io/docs/manually-integrating-a-nextjs-project-to-zesty-content.md): Leverage Zesty's headless capabilities with your existing Next.js project. - [Connecting Layouts App to React](https://docs.zesty.io/docs/connecting-layouts-app-to-react.md): This guide is a continuation from "Manually integrating a Next.js project to Zesty content" - [Next.js Dynamic Routes Component](https://docs.zesty.io/docs/nextjs-dynamic-routes-component.md): Leveraging Next.js's dynamic route capabilities - ["Hello World!
"` **Result:** `Hello World!` Mentions can be added directly to the `content` field. However, a HTML attribute is required to achieved this. The required mention HTML attribute looks like: `"{email_to_mention}"` **Example content with mentions:** `""This needs some changes @developer@email.com!
"` **Result:** `This needs some changes @developer@email.com!` Note that it will throw an error if the email is not a member or doesn't have a role on that instance the comment is being added. **Note:** _Currently comments can only be added to a `content field` resource. This will expand to more resource types in future releases._ ### Body: raw JSON | name | description | | --------- | --------------------- | | resourceZUID | [string] **Required.** The item ZUID of the `content field` where we want the comment to be created. | | content | [string] **Required.** The message to display. Should be in a valid HTML format. | | instanceZUID | [string] **Required.** The ZUID of the instance where the resource is located. | | scopeTo | [string] **Required.** The ZUID of the `content field` where we want the comment to be created. | - [Get Comment](https://docs.zesty.io/reference/get-comment.md): Retrieve a specific comment. - [Update Comment](https://docs.zesty.io/reference/update-comment.md): Updates a specific comment. The only updatable field is the `content` field which requires a valid HTML. If you want to resolve an open comment, you can use the `action=resolve` query parameter. If you want to reopen a resolved comment, you can use the `action=unresolve` query parameter. If `action` query param is provided, payload will be ignored. - [Delete Comment](https://docs.zesty.io/reference/delete-comment.md): Deletes a speicific comment. All replies for that comment will no longer be accessible. - [Get Comments by Instance](https://docs.zesty.io/reference/get-comments-by-instance.md): Retrieves one or more comments from a specific instance. A couple of query parameters can be used to filter the result. For instance, if `resource` param is used without the `scope` param, the result will show all comments for that resource. - [Get User Replies](https://docs.zesty.io/reference/get-user-replies.md): Returns all replies made by the requester. - [Get Replies](https://docs.zesty.io/reference/get-replies.md): Returns all replies from a comment - [Create Reply](https://docs.zesty.io/reference/create-reply.md): Creates a new reply to a comment. The `content` should be in a valid HTML format. **Example content:** `""Hello World!
"` **Result:** `Hello World!` Mentions can be added directly to the `content` field. However, a HTML attribute is required to achieved this. The required mention HTML attribute looks like: `"{email_to_mention}"` **Example content with mentions:** `""This needs some changes @developer@email.com!
"` **Result:** `This needs some changes @developer@email.com!` Note that it will throw an error if the email is not a member or doesn't have a role on that instance the reply is being added. **Note:** _Currently reply to a comment can only be added to a `content field` resource. This will expand to more resource types in future releases._ ### Body: raw JSON | name | description | | --------- | --------------------- | | content | [string] **Required.** The message to display. Should be in a valid HTML format. | - [Get Reply](https://docs.zesty.io/reference/get-reply.md): Returns a reply from a comment - [Update Reply](https://docs.zesty.io/reference/update-reply.md): Updates a specific reply object. Content should be in a valid HTML format. - [Delete Reply](https://docs.zesty.io/reference/delete-reply.md): Deletes a specific reply of a comment. - [Update Instance Blueprint](https://docs.zesty.io/reference/update-instance-blueprint.md): **Erases the current instance and replaces instance with the specified blueprint** **Warning:** This is a destructive action and is **NOT** reversible. - [Instances API](https://docs.zesty.io/reference/instances-api-reference.md): A collection of available REST endpoints scoped to your unique instance. - [Get all links](https://docs.zesty.io/reference/get-all-links.md): Retrieves all link created within an instance. - [Create a new link](https://docs.zesty.io/reference/create-link.md): Creates an internal or external link. ### Body: raw JSON | name | description | | --------- | --------------------- | | type | [string] **Required**. Type of link. Accepts `"internal"` or `"external"` | | parentZUID | [string] **Required**. A parent for your link. Accepts an item `ZUID`. If there will be no `parentZUID`, you can pass in `"0"` as a value. | | label | [string] **Required**. Navigation label. | | metaTitle | [string] **Required**. Title of the meta. | | source | [string] Behavior of the link. Accepts `"rel:true"` and/or `"target:_blank"`. You can set it to a blank string `""` if you don't want to use any of the behaviour and they will be set to their default values. If you want to use both, use a `";"` separator. | | target | [string] **Required**. Link to target. If the type is `internal`, this should be an item `ZUID` you want to link to. If the type is `external`, the value should be a full external URL. Example: "https://www.google.com" | - [Get link](https://docs.zesty.io/reference/get-link.md): Retrieves a specific link based the linkZUID provided as a path param. - [Update link](https://docs.zesty.io/reference/update-link.md): Updates an existing link record. ### Body: raw JSON | name | description | | --------- | --------------------- | | parentZUID | [string] **Required**. A parent for your link. Accepts an item `ZUID`. If there will be no `parentZUID`, you can pass in `"0"` as a value. | | label | [string] **Required**. Navigation label. | | metaTitle | [string] **Required**. Title of the meta. | | source | [string] Behavior of the link. Accepts `"rel:true"` and/or `"target:_blank"`. You can set it to a blank string `""` if you don't want to use any of the behaviour and they will be set to their default values. If you want to use both, use a `";"` separator. | | target | [string] **Required**. Link to target. If the type is `internal`, this should be an item `ZUID` you want to link to. If the type is `external`, the value should be a full external URL. Example: "https://www.google.com" | - [Delete a link](https://docs.zesty.io/reference/delete-link.md): Deletes a specific link record. - [Patch link](https://docs.zesty.io/reference/patch-link.md): Updates an existing link record using one or more properties. Body must contain at least 1 updatable property. ### Body: raw JSON | name | description | | --------- | --------------------- | | type | [string] Type of link. Right now, updating `"external"` type links are not available. So this will only accepts `"internal"` | | parentZUID | [string] A parent for your link. Accepts an item `ZUID`. If there will be no `parentZUID`, you can pass in `"0"` as a value. | | label | [string] Navigation label. | | metaTitle | [string] Title of the meta. | | source | [string] Behavior of the link. Accepts `"rel:true"` and/or `"target:_blank"`. You can set it to a blank string `""` if you don't want to use any of the behaviour and they will be set to their default values. If you want to use both, use a `";"` separator. | | target | [string] Link to target. If the type is `internal`, this should be an item `ZUID` you want to link to. If the type is `external`, the value should be a full external URL. Example: "https://www.google.com" | - [Get All Content Models](https://docs.zesty.io/reference/get-all-content-models.md): Get array of model objects - [Create Content Model](https://docs.zesty.io/reference/create-content-model.md): Creates a new content model. ### Body: raw JSON | name | description | | --------- | --------------------- | | label | [string] **Required**. Display name | | name | [string] **Required**. Parsley reference name. This should be unique. | | type | [string] **Required**. Content model type. Values can be `dataset`, `templateset`, `pageset` or `block`. | | description | [string] Additional context | | listed | [boolean] Listed models have their content items available to programatic navigation calls. Default is `false`. | | parentZUID | [string] Model's parent | | masterZUID | [string] Model ZUID if not provided. | | metaTitle | [string] | | metaDescription | [string] | | metaKeywords | [string] | | sort | [int] Loading position. Used for interfaces. | | module | [int] | | plugin | [int] | - [Get Content Model](https://docs.zesty.io/reference/get-content-model.md): Get a specific content model. - [Update Content Model](https://docs.zesty.io/reference/update-content-model.md): Updates the info details of a content model including its parentZUID. - [Delete Content Model](https://docs.zesty.io/reference/delete-content-model.md): Delete a Content Model and associated resources: items, fields, views. - [Get Fields](https://docs.zesty.io/reference/get-fields.md): Get all content fields of a content model - [Create Field](https://docs.zesty.io/reference/create-field.md): Creates a new field on a content model. ### Field Data Types: - [color] - [currency] - [date] Stores a simple date, data sent in the format YYYY-MM-DD - [datetime] Stores a timestamp accepts data in the format YYYY-MM-DD HH:II:SS - [dropdown] creates a pre-populated dropdown controlled by the (options) - [files] Accepts uploads to media and store the file references (requires the field type option limit) - [fontawesome] - [images] An images field (requires the field type option limit) - [internal_link] A field that accepts a Content ZUID and auto generates a link - [link] A field that should validate a hyperlink url - [markdown] Stores and interprets markdown - [number] Number looks for any int or double - [one_to_many] One to many Relationship to another collection. (requires relationship field on creation) - [one_to_one] One to one relationship to another collection (requires relationship field on creation) - [sort] A sort order field - [text] Text - [textarea] Text Area - [uuid] - [wysiwyg_basic] What you see is what you get Editor - [yes_no] Yes/No fields take in two specific options - [block_selector] Contains a custom endpoint that links to the block model and its variant - [integration] - [repeater] ### Body: raw JSON | name | description | | --------- | --------------------- | | label | [string] **Required**. Display name | | name | [string] **Required**. Parsley reference name | | datatype | [string] **Required**. Field type. See the above list for all possible values. | | settings | [object] **Required**. Field Settings that are dependent on datatypedditional context | | required | [boolean] Is the field required? Default to **false** | | description | [string] Additional contect | | sort | [number] Loading position. Used for interfaces | | relatedModelZUID | [string] Related Model ZUID when datatype is **one_to_one** or **one_to_many** | | relatedFieldZUID | [string] Related Field ZUID when datatype is **one_to_one** or **one_to_many** | - [Get Field](https://docs.zesty.io/reference/get-field.md): Get a specific content field of a content model. - [Update Field](https://docs.zesty.io/reference/update-field.md): Updates the info details of a content model including its parentZUID. If you want to just reactivate a deactivated field, you can use the query param `action=undelete` and body is not required. - `label`, `name`, `settings`, `required`, `description`, `sort`, `relatedModelZUID`, and `relatedFieldZUID` are the only updatable Fields. - The **FULL** `settings` object is **required** for any request. - Reactivation and updating Field values cannot happen in the same request - reactivation takes precedence. - [Delete Field](https://docs.zesty.io/reference/delete-field.md): Deactivates a content field of a content model. If you wish to permanently delete the field from the database, add the query param 'hardDelete=true'. Do note that only deactivated fields can be hard deleted. Once a field has been hard deleted, you will no longer be able to restore it. - [Patch Field](https://docs.zesty.io/reference/patch-field.md): Updates an existing content field record using one or more properties. Body must contain at least 1 updatable property. - `label`, `name`, `settings`, `required`, `description`, `sort`, `relatedModelZUID`, and `relatedFieldZUID` are the only updatable Fields. - [Delete Item](https://docs.zesty.io/reference/delete-item.md): Deletes an item. - [Get All Items](https://docs.zesty.io/reference/get-all-items.md): Returns the most recently edited item, by latest version and date created, on a collection content object. Search If you wish to search through items, use /v1/search/items endpoint. - [Create Item](https://docs.zesty.io/reference/create-item.md): This creates a new item from a specific content model (schema). ### Body: raw JSON **web:** | name | description | | --------- | --------------------- | | metaDescription | [string] | | metaTitle | [string] | | metaLinkText | [string] The name of the item that will be shown in the left navigation panel. (Navigation Link Text) | | parentZUID | [string] ZUID of the item's parent. | | pathPart | [string] This will serve as the sub URL of the item. This should be a valid URL string. (_URL Path Part_) **Note:** This is a required field if this item's content model is a `pageset` and `templateset` | **data:** | name | description | | --------- | --------------------- | | [name_of_field] | [*] | - [Get Item](https://docs.zesty.io/reference/get-item.md): Returns a single content item object. If the _active query param is set it will return the currently active item. For langauges, add query param lang=en-US etc. By default, the call will return the default language - [Update Item](https://docs.zesty.io/reference/update-item.md): Updates an item and creates a new version of it. - [Patch Item](https://docs.zesty.io/reference/patch-item.md): Updates one or more item properties and creates a new version of it. Unlike using PUT, PATCH will no longer accept meta object key. The only available object keys are web and data. - [Get All Item Versions](https://docs.zesty.io/reference/get-all-item-versions.md): Get all versions on an item - [Get Item Version](https://docs.zesty.io/reference/get-item-version.md): Get a single version by providing the version number of a content item. - [Get All Items By Master](https://docs.zesty.io/reference/get-all-items-by-master.md): Returns all the most recent items on a collection content object. - [Get Parsley Items](https://docs.zesty.io/reference/get-parsley-items.md): Retrieves items using optional query parameters. Make sure to use base64 URL encoded strings for where, sort and parsley_limit keys. Not encoded values will return a validation error or unexpected result. - [Update Multiple Items](https://docs.zesty.io/reference/update-multiple-items.md): Updates multiple items at once. Required payload keys are `web`'s `pathPart`and `meta`'s `ZUID` & `masterZUID`. - [Create Multiple Items](https://docs.zesty.io/reference/create-multiple-items.md): Creates multiple items at once that will be based on the given content model zuid. Required body key is pathPart. However, it is recommended to supply the metaLinkText (Navigation Link Text) for it to have a label on the navigation panel. - [Delete Multiple Items](https://docs.zesty.io/reference/delete-multiple-items.md): Deletes multiple items at once. Payload should contain an array of item's ZUIDs that are needed to be deleted. The type of payload is raw-text. - [Batch Create Item Publishings](https://docs.zesty.io/reference/batch-create-item-publishings.md): Publishes multiple content items at once. This endpoint requires that all content items belong to the same content model. Request body is an `array` of objects. Each object represents a content item. Available object property values: ### Body: raw JSON | name | description | | --------- | --------------------- | | ZUID | [string] **Required.** The ZUID of the content item to be published. | | version | [int] **Required.** The specific item version you want to be published. | | publishAt | [date] **Required.** The date that the item will be published. If `"now"` is provided, the item will be published immediately. | | unpublishAt | [date] **Required.** The date the item will be unpublished. If `"never"` is provided, the item will be published forever, starting from the `publishAt` date. | ### CDN cache purging By default, the API will purge CDN cache on an instance-level scope. If a website experienced instability after batch publishing items, consider adding a purge scope in Settings or by using the [Create Setting](https://docs.zesty.io/reference/create-setting) endpoint. The payload should be: ``` { "category": "general", "keyFriendly": "Purge Item Scope", "key": "purge_item_scope", "value": "model", "admin": true, "dataType": "dropdown", "options": "instance:Instance-level scope;model:Model-level scope;item:Item-level scope", "tips": "Changes the scope of purging the CDN cache when an item is published or unpublished." } ``` - [Get Item Publishings](https://docs.zesty.io/reference/get-item-publishings.md): Retrieves all item publishing records of a given item. - [Create Item Publishing](https://docs.zesty.io/reference/create-item-publishing.md): Creates a publishing record for a specific version of a content item. This makes a content item either published or scheduled for publishing depending on the `publishAt` value. Available request body property values. ### Body: raw JSON | name | description | | --------- | --------------------- | | version | [int] **Required.** The specific item version you want to be published | | publishAt | [date] **Required.** The date that the item will be published. If `"now"` is provided, the item will be published immediately | | unpublishAt | [date] **Required.** The date the item will be unpublished. If `"never"` is provided, the item will be published forever, starting from the `publishAt` date. | ### CDN cache purging By default, the API will purge CDN cache on an instance-level scope. If a website experienced instability after publishing an item, consider adding a purge scope in Settings or by using the [Create Setting](https://docs.zesty.io/reference/create-setting) endpoint. The payload should be: ``` { "category": "general", "keyFriendly": "Purge Item Scope", "key": "purge_item_scope", "value": "model", "admin": true, "dataType": "dropdown", "options": "instance:Instance-level scope;model:Model-level scope;item:Item-level scope", "tips": "Changes the scope of purging the CDN cache when an item is published or unpublished." } ``` - [Delete Item Publishing](https://docs.zesty.io/reference/delete-item-publishing.md): Soft deletes the publishing record taking the item and version from the record offline. ### CDN cache purging By default, the API will purge CDN cache on an instance-level scope. If a website experienced instability after unpublishing an item, consider adding a purge scope in Settings or by using the [Create Setting](https://docs.zesty.io/reference/create-setting) endpoint. The payload should be: ``` { "category": "general", "keyFriendly": "Purge Item Scope", "key": "purge_item_scope", "value": "model", "admin": true, "dataType": "dropdown", "options": "instance:Instance-level scope;model:Model-level scope;item:Item-level scope", "tips": "Changes the scope of purging the CDN cache when an item is published or unpublished." } ``` - [Get Item Labelings](https://docs.zesty.io/reference/get-item-labelings.md): Retrieve all item labelings for a given item in a per-item-version basis. - [Create Item Labeling](https://docs.zesty.io/reference/create-item-labeling.md): Create a new item labeling record. - [Get Item Labeling](https://docs.zesty.io/reference/get-item-labeling.md): Retrieve a single item labeling record. - [Update Item Labeling](https://docs.zesty.io/reference/update-item-labeling.md): Update an item labeling record. - [Delete Item Labeling](https://docs.zesty.io/reference/delete-item-labeling.md): Delete an item labeling record. - [Get All Items Publishings](https://docs.zesty.io/reference/get-all-items-publishings.md): Retrieves all item publishing records of a given instance. - [Get Item Publishing](https://docs.zesty.io/reference/get-item-publishing.md): Returns a specific item publishing record based on the publishing ZUID provided. - [Get All Model Items Publishings](https://docs.zesty.io/reference/get-all-model-items-publishings.md): Retrieves all item publishing records within the scope of a specific content model. This endpoint can accept optional query parameters `limit`, `showDeleted`, `showDeletedItems` and `showActiveOnly`. For example, if none of the query parameters are provided, this will retrieve all publishing records including those that are not active (_last unpublished records_) but will exclude deleted publishing records and records from deleted content items. ### Query params | param | description | | --------- | --------------------- | | limit | [int] Limits the number of result. Default is `100`. | | showDeleted | [bool] If true, will include soft-deleted publishing records. Default is `false`. | | showDeletedItems | [bool] If true, will include publishing of records of soft-deleted content items. Default is `false`. | | showActiveOnly | [bool] If true, will only retrieve publishing records that are currently published and/or scheduled. Default is `false`. | - [Get Views](https://docs.zesty.io/reference/get-views.md): Returns all views. Broad Search Available. Returns by filename ascending. No pagination, all views are returned regardless of the number. If you didn't specify any URL params, the default will return all views that are in dev status excluding all deleted views. - [Create View](https://docs.zesty.io/reference/create-view.md): This creates a new view. > **Note:** _When models are created they automatically generate a linked view. Therefore, model views can not be generated with this endpoint._ ### Body: raw JSON | name | description | | --------- | --------------------- | | code | [string] **Required.** Mixed string of html, parsley, inline css, js etc. | | fileName | [string] **Required.** Must be unique. | | type | [string] **Required.** Could be `snippet`, `ajax-json`, `ajax-html`, `404` | - [Get View](https://docs.zesty.io/reference/get-view.md): Returns a specific view based on a status specified. If you didn't specify a status, the default returns the view in dev status. - [Update View](https://docs.zesty.io/reference/update-view.md): Updates a specific view file. **Note** that the `fileName` field is not updatable if the view's `type` is a `templateset`, `pageset` or `block`. You will receive a validation error with message: `"file names for views of type {view_type} can not be updated"` ### Body: raw JSON | name | description | | --------- | --------------------- | | code | [string] **Required.** Mixed string of html, parsley, inline css, js etc. | | fileName | [string] Must be unique. No spaces or special chars allowed. **Note** that this is not updatable if the view's `type` is a `templateset`, `pageset` or `block`. | - [Delete View](https://docs.zesty.io/reference/delete-view.md): Deletes a view file. - [Patch View](https://docs.zesty.io/reference/patch-view.md): Updates one or more properties of a specific view file. **Note** that the `fileName` field is not updatable if the view's `type` is a `templateset`, `pageset` or `block`. You will receive a validation error with message: `"file names for views of type {view_type} can not be updated"` ### Body: raw JSON | name | description | | --------- | --------------------- | | code | [string] Mixed string of html, parsley, inline css, js etc. | | fileName | [string] Must be unique. No spaces or special chars allowed. **Note** that this is not updatable if the view's `type` is a `templateset`, `pageset` or `block`. | - [Get All View Version](https://docs.zesty.io/reference/get-view-versions.md): Retrieves all versions of a view file. This accepts the follow query params: | param | description | | --------- | --------------------- | | limit | [int] The number of results to return. Allowed values are numbers between 1 to 1000. Default is 100. | | page | [int] The offset of where the result should start and used in implementing pagination. Usually used in combination with the `limit` parameter. | | order | [string] What to order results by. Allowed values are `created`, `modified` and `version`. Default is `version`. | | dir | [string] **Required** if order key is provided. Determines the sorting direction in either ascending or descending. Allowed values are `asc` and `desc`. Default is `desc`. | | start_date | [string] Aceptable date formats are `yyyy/mm/dd` `(2022/01/31)` and `mm/dd/yyyy` `(01/31/2022)`. You can also use dashes `(01-25-2022)` as a separator. More info here: https://github.com/araddon/dateparse - **Note:** _The filtering will be based on the item's updateAt value_. | | end_date | [string] Aceptable date formats are `yyyy/mm/dd` `(2022/01/31)` and `mm/dd/yyyy` `(01/31/2022)`. You can also use dashes `(01-25-2022)` as a separator. More info here: https://github.com/araddon/dateparse - **Note:** _The filtering will be based on the item's updateAt value_. | **Note:** _The result has an upper bound limit of 1,000 versions._ - [Get View Version](https://docs.zesty.io/reference/get-view-version.md): Retrieves a specific version of a view file. - [Publish View](https://docs.zesty.io/reference/publish-view.md): Publishes a version of a view file. - [Get All Redirects](https://docs.zesty.io/reference/get-all-redirects.md): Returns all redirects. - [Create Redirect](https://docs.zesty.io/reference/create-redirect.md): Creates a redirect to a path in the same instance. ### Body: raw JSON | name | description | | --------- | --------------------- | | path | [string] **Required.** | | targetType | [string] **Required.** Values are `path`, `external` or `page` | | target | [string] **Required.** Path in current instance | | code | [int] Default value is `301` | - [Get Redirect](https://docs.zesty.io/reference/get-redirect.md): Returns a redirect. - [Update Redirect](https://docs.zesty.io/reference/update-redirect.md): Updates a specific redirect. The `path`, `targetType` and `target` fields are required. - [Delete Redirect](https://docs.zesty.io/reference/delete-redirect.md): Deletes a specific redirect. - [Patch Redirect](https://docs.zesty.io/reference/patch-redirect.md): Updates one or more redirect properties. - [Get All Stylesheets](https://docs.zesty.io/reference/get-all-stylesheets.md): Returns all stylesheets. - [Create Stylesheet](https://docs.zesty.io/reference/create-stylesheet.md): This creates a new stylesheet file. ### Body: raw JSON | name | description | | --------- | --------------------- | | code | [string] Mixed string of html, parsley, inline css, js etc. | | fileName | [string] **Required.** Must be unique. It is required to add the file extension _(.css, .scss, sass, less)_. | | type | [string] **Required.** Could be `text/css`, `text/scss`, `text/sass`, `text/less` | - [Get Stylesheet](https://docs.zesty.io/reference/get-stylesheet.md): Returns a specific stylesheet file. - [Update Stylesheet](https://docs.zesty.io/reference/update-stylesheet.md): Updates the code of a specific stylesheet file. - [Delete Stylesheet](https://docs.zesty.io/reference/delete-stylesheet.md): Deletes a specific stylesheet file. - [Get All Stylesheet Versions](https://docs.zesty.io/reference/get-all-stylesheet-versions.md): Retrieves all version of a stylesheet. - [Get Stylesheet Version](https://docs.zesty.io/reference/get-stylesheet-version.md): Retrieves a specific version of a stylesheet. - [Publish Stylesheet](https://docs.zesty.io/reference/publish-stylesheet.md): Publishes a version of a stylesheet file. - [Get All Stylesheet Variables](https://docs.zesty.io/reference/get-all-stylesheet-variables.md): Returns all stylesheets variables. - [Create Stylesheet Variable](https://docs.zesty.io/reference/create-stylesheet-variable.md): This creates a new stylesheet variable. ### Body: raw JSON | name | description | | --------- | --------------------- | | referenceName | [string] **Required.** The name of your variable that will be referenced by your stylesheets. Must follow conventional LESS/SASS/SCSS variable naming convention | | name | [string] **Required.** Friendly name for your variable | | value | [string] **Required.** The value of your variable represented as a string | | type | [string] **Required.** The variable type you wish to create. Variable must be one of: text , color, dropdown, font_picker | | category | [string] **Required.** Should correspond with category ID. | | sort | [string] Defaults to number of variables + 1. | | description | [string] Defaults to null string | | options | [string] Object should contain key:value pairs corresponding to dropdown options. Defaults to null. The key is what is used as the value output using Parsley, while the value is used in the UI. | - [Get Stylesheet Variable](https://docs.zesty.io/reference/get-stylesheet-variable.md): Returns a specific stylesheet variable. - [Update Stylesheet Variable](https://docs.zesty.io/reference/update-stylesheet-variable.md): Updates a stylesheet variable. ### Body: raw JSON | name | description | | --------- | --------------------- | | value | [string] The value of our variable. | | description | [string] The description of your variable | | options | [string] Should correspond to drop down options. Note that the `key` is what is used as the value output using Parsley, while the `value` is used in the UI. | - [Delete Stylesheet Variable](https://docs.zesty.io/reference/delete-stylesheet-variable.md): "Deletes a specific stylesheet variable." - [Get Stylesheet Variable Categories](https://docs.zesty.io/reference/get-stylesheet-variable-categories.md): Returns all stylesheet variable categories available. - [Get Headers](https://docs.zesty.io/reference/get-headers.md): Returns all legacy headers. - [Get All Settings](https://docs.zesty.io/reference/get-all-settings.md): Retrieves all settings of an Instance. - [Create Setting](https://docs.zesty.io/reference/create-setting.md): This creates a new env settings. Available request body property values. ### Body: raw JSON | name | description | | --------- | --------------------- | | category | [string] **Required.** Unique. This will appear in the `manager-ui`. | | keyFriendly | [string] **Required.** Name that will be visible as label in the `manager-ui` | | key | [string] **Required.** A unique no-space identifier for this setting object. | | value | [string] **Required.** The default value. | | admin | [boolean] **Required.** If this settings can only be access by Admin users. | | parselyAccess | [boolean] **Required.** If this settings can be access in parsely. | | dataType | [string] **Required.** Values can be either `checkbox`, `textarea`, `text` or `dropdown` | | options | [string] Optional comma-separated string that will be used by `checkbox` and `dropdown` datatypes. | | tips | [string] Optional description that will be shown via a tooltip. | **Notes** - if `dataType` is set to `"dropdown"` `options` must contain a string value that follows this structure `"key1:value1key2:value2..."` - if `dataType` is set to `"checkbox"` `options` must contain a string value that follows this structure `"value1,value2"` ### Available Webengine settings: | routing | key | key_friendly | description | | --------- | -------------------------------- | ------------------ | -------------------------------- | | general | site_protocol | | forces TLS redirect if https. Possible value: `https:http` | | general | always_redirect_to_https | | `1` force redirect to https, `0` ignore. Default value is `0` | | general | preferred_domain_prefix | | `1` force add www, `0` ignore. Default value is `0` | | general | base_directory | | | | general | add_lang_code_to_paths | | Appends the language code after the domain before the full path. | | general | dnt-policy | | Adds DNT header _(do not track)_ if `1`, ignored if `0`. Default value is `0`. | | general | robots_text | | Appends the given string to the `Robots.txt` file. | | general | robots_on | | `1` Tells crawlers to crawl, `0` tells crawlers no crawling. Default value is `1`. | | general | show_domain_in_title | | Add "| SITE_NAME" Where site name is the name set in "clippings:site_name" | | general | show_in_title | | legacy fallback to show_domain_in_title. Default value is `1`. | | general | media_proxy_url | Media Proxy URL | URL used to proxy your media assets. See https://zesty.org/services/media-storage-micro-dam/micro-dam-domains. | | developer | permanent_redirect | | Force redirects requested page to the URL stated, and appends path and query string, ignore if empty string | | developer | ajax_cors_allow_any_origin | | Restricts request to the origin specified, `*` is any. Defaul value is `*`. | | developer | gql | Turn on access to GraphQL endpoints to run an Appollo GQL Server | `1` Turns on GraphQL endpoints, `0` turn off. Default value is `0`. | | developer | gql_origin | GraphQL Allow Origin | Restricts request to the origin specified, `*` is any. Defaul value is `*`. | | developer | auto_include_js_in_head | | Adds the script link to the compiled javascript file that Zesty make from all `js` files. Default value is `1`. | | developer | basic_content_api_enabled | Access to Instant JSON API for content. | [checkbox] | | developer | overwrite_head | | | | developer | permanent_redirect | | `301` Redirect every request to a different website by appending the query parameter to the given domain name. | | security | limit_dev_site_to_ip_whitelist | | 403s to any IP not listed in when preview resolves, ignore if empty string. | | security | limit_live_site_to_ip_whitelist | | 403s to any IP not listed in when production resolves, ignore if empty string. | | security | x_frame_options | Header: X-Frame-Options | Adds response header 'X-Frame-Options'. See [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options). Default value is `*`. | | security | strict_transport_security | Strict-Transport-Security | Adds response header 'Strict-Transport-Security'. See [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security). | | security | content_security_policy | Content-Security-Policy | Adds response header 'Content-Security-Policy'. See [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP). | | security | x_content_type_options | X-Content-Type-Options | Adds response header 'X-Content-Type-Options'. See [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options). Default value is `nosniff`. | | security | referrer_policy | Referrer-Policy | Adds response header 'Referrer-Policy'. See [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy). Default value is `unsafe-url`. | | security | feature_policy | Feature-Policy | Adds response header 'Feature-Policy' . See [MDN docs](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Feature-Policy). | | security | preview_lock | | [checkbox] This option on preview the preview url from being accessed when a user is not logged in. | | security | preview_lock_password | | Password used to allow non-authenticated zesty users view this preview. | | routing | friendly_pagination | | Default value is `0` | | contact-form | honeypot | Form Honey Pot | Value checked in a Zesty lead form post request, used to prevent bot submission, ignored if empty string | | contact-form | safe_emails | | An allow list for override emails in a form submission | | contact-form | sending_email | | The email address thtat is used to send from when a ZCF hidden value exists on a form. | | contact-form | email_override | | Sends an email to the email given when a Zesty contact form is submitted. | | seo | canonical_tags_enabled | | Values available are `0` for `CANONICAL_MODE_OFF`, `1` for `CANONICAL_MODE_ON_STRIP_PARAMS`, `2` for CANONICAL_MODE_ON_WHITELIST_PARAMS, and `3` for `CANONICAL_MODE_ON_CUSTOM_PATH`. | | seo | automated_feed_xml | Automated feed.xml | Turns on/off auto generated `/feed.xml`. Default value is `1` | | tag_managers | gtm_id | | Adds google tag manager script to the html head using the given value, if empty ignored. | | analytics | google_urchin_id | | Adds google analytics tag to the html head. | | analytics | universal_code | | Adds google analytics universal tag to the html head. Default value is `1`. | | analytics | google_auto_linker | | Comma-separated domains (_no quotes_). Adds ga('linker:autoLink', ['domain','domain']) to the universal google tag output. | | analytics | display_advertising_support | | Adds ga('require', 'displayfeatures'); to universal tag output. | | groupby | client_key | GroupBy Client Key | Secret Key used to make requests for the configured endpoint. | | groupby | collection | GroupBy Default Collection | GroupBy collection to access. | | groupby | url | GroupBy Client Endpoint | GroupBy API URL base. | | proxy | dev | Root URL to proxy file store | The key is the branch. Attempts to resolve a file at the the proxy url for dev preview. | | proxy | live | Root URL to proxy file store | The key is the branch. Attempts to resolve a file at the the proxy url for live/prod. | | i18n | default_page | | Default i18n page sets ``. Default value is `relative path /i18n/`. | - [Get Single Setting](https://docs.zesty.io/reference/get-setting.md): Retrieve a single Instance setting based on its ZUID. - [Update Setting](https://docs.zesty.io/reference/update-setting.md): Used to update an existing setting. Must include a full setting body, refer to POST example. _See [Create Setting](https://docs.zesty.io/reference/create-setting) for `body` and webengine available settings._ - [Delete Setting](https://docs.zesty.io/reference/delete-setting.md): Deletes a specific env setting. - [Patch Setting](https://docs.zesty.io/reference/patch-setting.md): Updates one or more env setting properties. Please refer to the POST example for all updatable properties. _See [Create Setting](https://docs.zesty.io/reference/create-setting) for `body` and webengine available settings._ - [Get Content Navigation](https://docs.zesty.io/reference/get-content-navigation.md): This data structure powers the manager-ui content-editor navigation. ### Response: raw JSON | name | description | | --------- | --------------------- | | ZUID | [string] Resource identifier | | label | [string] Resource's display name | | type | [string] Resource's type | | contentModelZUID | [string] Resource's content model _(schema)_ | | sort | [string] Order | | parentZUID | [string] Resource's parent's identifier | > **Note:** _The response's `data` field is one-dimensional so element nesting should be done using `parentZUID` and within the same level, element ordering should be done using `sort`._ `type` is one of: - **_dataset_**: headless model - **_external_**: external link - **_internal_**: internal link - **_item_**: single-page model - **_pageset_**: multi-page model - **_redirect_**: redirect link - [Update Content Navigation Order](https://docs.zesty.io/reference/update-content-navigation-order.md): Updates content navigation pane ordering. ### Body: raw JSON | name | description | | --------- | --------------------- | | data | [array] **Required.** This is an array of objects with key/value pairs of `zuid` and `sort`. _See the next 2 fields below._ | | zuid | [string] **Required.** Resource identifier | | sort | [int] **Required.** Order | > **Note:** _It is **required** to pass all sidebar items as array in the payload._ ### Sample body ``` { "data": [ { "zuid": 7-0000-0000, "sort": 0 }, { "zuid": 7-1111-1111, "sort": 2 }, { "zuid": 7-2222-2222, "sort": 1 } ] } ``` - [Get Audits](https://docs.zesty.io/reference/get-audits.md): Get all Audit trails of a given instance. You can use one or more query params to filter the result. All query params are optional. ### Params | name | description | | --------- | --------------------- | | action | [int] Value accepted are `1` to `5` which corresponds to what operation. _See table below._ | | limit | [int] Number of items to return. Default is 100. | | order | [string] On what property should the ordering be based on. Could be `CREATED`, `MODIFIED` or `LABEL` | | dir | [string] Sorting direction. Could be `asc` or `desc` meaning ascending or descending respectively. | | start_date | [date] Acceptable date formats are here: https://github.com/araddon/dateparse | | end_date | [date] Acceptable date formats are here: https://github.com/araddon/dateparse | | page | [int] Sets the results pagination. Default value is 0. | | affectedZUID | [string] Filter logs by ZUID of the affected resource. | | userZUID | [string] Filter logs by user who created them. | **actions:** | value | description | | --------- | --------------------- | | 1 | create | | 2 | update | | 3 | delete | | 4 | publish | | 5 | unpublish | - [Get Audit](https://docs.zesty.io/reference/get-audit.md): Get a specific audit trail by audit ZUID - [Get Leads](https://docs.zesty.io/reference/get-leads.md): Returns all leads. - [Create Lead](https://docs.zesty.io/reference/create-lead.md): This creates a new lead record. See the table for available request body property values. ### Body: raw JSON | name | description | | --------- | --------------------- | | form | [string] **Required.** Name of the form the lead was submitted from. | | firstName | [string] | | lastName | [string] | | email | [string] | | formData | [object] An object of arbitrary data to be returned by the API. | - [Get Lead](https://docs.zesty.io/reference/get-lead.md): Returns a specific lead record. - [Delete Lead](https://docs.zesty.io/reference/delete-lead.md): Deletes a specific lead record. - [Get Langs](https://docs.zesty.io/reference/get-langs.md): Returns the non-deleted languages available for this instance. A `type` query parameter may be provided which can be the following values: - **active** (only returns non-deleted, activated languages) - **all** (returns all languages, including deleted ones) If omitted, it will default to retrieving both active and inactive except deleted langs. - [Add Lang](https://docs.zesty.io/reference/add-lang.md): This call will replicate all content items marked with the new language. The default language will be copied into the the new content items. For example, if english is your default language, and you add German (DE), a new item for each content item that exists will be created with a unique ZUID, the lang "DE", but the starting content will be copied from the english version. List of all accepted codes can be found [here](https://zesty.org/getting-started/i18n-multi-language). - [Get Langs Mapping](https://docs.zesty.io/reference/get-langs-mapping.md): Returns a map of langs available. - [Update Lang](https://docs.zesty.io/reference/update-lang.md): Update lang can perform one of the following actions, determined by the `action` query parameter: - **activate** (activates the languages for routing) - **deactivate** (deactivates the language for routing) - **undelete** (undoes deletion of a previously-deleted language) **Note:** `action` query parameter is required. - [Remove Lang](https://docs.zesty.io/reference/remove-lang.md): Removes the given language. If the query parameter "softDelete" is false, then a hard delete occurs. Only allowed for owners and admin to perform. - [Get Labels](https://docs.zesty.io/reference/get-labels.md): Returns all labels. - [Create Label](https://docs.zesty.io/reference/create-label.md): Creates a new label that can be attached to any content item. Every instance have 3 default labels. Users can add N numbers of labels per instance. **NOTE: Only users with owner or admin roles can create, update and delete a label.** ### Body: raw JSON | name | description | | --------- | --------------------- | | name | [string] **Required**. Display name | | description | [string] A brief description | | color | [string] **Required**. Display color | | allowPublish | [boolean] **Required**. Determines whether an item can be published or not | | addPermissionRoles | [array] Role ZUIDs that have the permission to attach `this` label to an item | | removePermissionRoles | [array] Role ZUIDs that have the permission to remove `this` label from an item | ## AllowPublish Rule When it comes to publishing an item, Zesty's labeling workflow for content items have a specific condition in order to limit users on publishing an item. Initially, all instances have 3 labels which `allowPublish` are set to false. This means that all users can still publish item with or without a label attached to it. As soon as at least 1 label has `allowPublish` set to true, users will no longer be able to publish items until it has a label with `allowPublish=true`. ## Permissions Users cannot just attach and remove labels of an item. The `addPermissionRoles` and `removePermissionRoles` will contain all role ZUIDs of users that have the permission to add and remove `this` label from an item. You can have a user that can add a label but they do not have permission to remove it. ## Colors Although the API will not validate the value of the `color` field, there are only 10 colors the UI will accept. | name | hex value | | -------- | -------- | | Blue | #0ba5ec | | Pink | #ee46bc | | Purple | #7a5af8 | | Red | #f04438 | | Deep Purple | #4e5ba6 | | Green | #12b76a | | Yellow | #f79009 | | Rose | #f63d68 | | Orange | #ff5c08 | | Grey | #667085 | - [Update Label Sorting](https://docs.zesty.io/reference/update-label-sort.md): Updates sorting of all labels. This endpoint requires an array of all label ZUIDs and their respected (new) sort values. It is recommended to include all labels for more accurate sorting. Example: ``` { "data": [ { "ZUID": "36-0000-0000", "sort": 1 }, { "ZUID": "36-1111-1111", "sort": 2 }, { "ZUID": "36-2222-2222", "sort": 3 } ] } ``` **NOTE: Only users with owner or admin roles can create, update and delete a label.** ### Body: raw JSON | name | description | | --------- | --------------------- | | ZUID | [string] Label ZUID | | sort | [int] The (new) sort value. | - [Get Label](https://docs.zesty.io/reference/get-label.md): Returns a label by its ZUID. - [Update Label](https://docs.zesty.io/reference/update-label.md): Updates a label. **NOTE: Only users with owner or admin roles can create, update and delete a label.** These are the fields that are updatable and each are optional: ### Body: raw JSON | name | description | | --------- | --------------------- | | name | [string] Display name | | description | [string] A brief description | | color | [string] Display color | | sort | [int] Swaps sort order of a label with the value given. Should be an existing sort value. | | allowPublish | [boolean] Determines whether an item can be published or not | | addPermissionRoles | [array] Role ZUIDs that have the permission to attach `this` label to an item | | removePermissionRoles | [array] Role ZUIDs that have the permission to remove `this` label from an item | - [Delete Label](https://docs.zesty.io/reference/delete-label.md): Deletes a label. - [Get Releases](https://docs.zesty.io/reference/get-releases.md): Retrieves all the Releases that has been added. > **Note:** _Calling this method before activation will throw a `412` error code._ - [Create Release](https://docs.zesty.io/reference/create-release.md): Creates a new Release for this instance. You can add multiple Releases with multiple Release Members. > **Note:** You can only start adding Releases after activation. _See Activate Release._ ### Body: raw JSON | name | description | | --------- | --------------------- | | name | [string] **Required**. Non-unique Display Name | | description | [string] Additional context | - [Activate Release](https://docs.zesty.io/reference/activate-release.md): Enable/activate the releases feature - uncharacteristic for a POST, this endpoint is idempotent. - [Get Release](https://docs.zesty.io/reference/get-release.md): Retrieve a specific Release based on the `release_zuid` provided. > **Note:** _Calling this method before activation will throw a `412` error code._ - [Update Release](https://docs.zesty.io/reference/update-release.md): Updates a specific Release. The only updatable fields are `name` and `description`. > **Note:** _Updating non-updatable fields results in a `200` and the response shows the field as being updated **BUT** a subsequent `GET` to the Release ZUID will show that the `PUT` did **NOT** take. This erroneous response will be fixed in future updates._ Calling this method before activation will throw a `412` error code. - [Delete Release](https://docs.zesty.io/reference/delete-release.md): Deletes a specific Release based on the `release_zuid` provided. > **Note:** _Calling this method before activation will throw a `412` error code._ - [Create Release Member](https://docs.zesty.io/reference/create-release-member.md): Adds an Item to a specific Release by providing the Item's ZUID and version number. > **Note:** _Calling this method before activation will throw a `412` error code._ ### Body: raw JSON | name | description | | --------- | --------------------- | | resourceZUID | [string] **Required**. Resource to publish | | version | [int] **Required**. Resource Version to publish | - [Get Release Members](https://docs.zesty.io/reference/get-release-members.md): Retrieves all Members of a specific Release. > **Note:** _Calling this method before activation will throw a `412` error code._ - [Get Release Member](https://docs.zesty.io/reference/get-release-member.md): Retrieves a Member from a specific Release. > **Note:** _Calling this method before activation will throw a `412` error code._ - [Update Release Member](https://docs.zesty.io/reference/update-release-member.md): Updates a specific Member. The only updatable field is `version`. > **Note:** _Updating non-updatable fields results in a `200` and the response shows the field as being updated **BUT** a subsequent `GET` to the Release ZUID will show that the `PUT` did **NOT** take. This erroneous response will be fixed in future updates._ Calling this method before activation will throw a `412` error code. - [Delete Release Member](https://docs.zesty.io/reference/delete-release-member.md): Deletes a Member from a specific Release. > **Note:** _Calling this method before activation will throw a `412` error code._ - [Search Content Items](https://docs.zesty.io/reference/search-content-items.md): Allows searching for contents by either ZUID, meta text values or path-related values. This accepts the follow query params: | param | description | | --------- | --------------------- | | q | [string] Can be either a text string that refers to meta text values, path-related key values, or a ZUID of type content model, user or item. | | limit | [int] The number of results to return. Allowed values are numbers between 1 to 1000. Default is 100. | | page | [int] The offset of where the result should start. Usually used in combination with the `limit` parameter. | | order | [string] What to order results by. Allowed values are created, modified and label. | | dir | [string] **Required** if order key is provided. Determines the sorting direction in either ascending or descending. Allowed values are asc and desc. Default is desc. | | start_date | [string] Aceptable date formats are `yyyy/mm/dd` `(2022/01/31)` and `mm/dd/yyyy` `(01/31/2022)`. You can also use dashes `(01-25-2022)` as a separator. More info here: https://github.com/araddon/dateparse - **Note:** _The filtering will be based on the item's updateAt value_. | | end_date | [string] Aceptable date formats are `yyyy/mm/dd` `(2022/01/31)` and `mm/dd/yyyy` `(01/31/2022)`. You can also use dashes `(01-25-2022)` as a separator. More info here: https://github.com/araddon/dateparse - **Note:** _The filtering will be based on the item's updateAt value_. | List of ZUID types that will do the search into for 'q' value: - Content Models (6-0000-0000) - Users (5-0000-0000) - Items (7-0000-0000) List of meta and path keys that will do the search into if 'q' value is not a ZUID: - URL Path Part - Full Path - Navigation Link Text - Meta Title - Meta Description - Meta Keywords - [Get All HeadTags](https://docs.zesty.io/reference/get-all-headtags.md): Returns all headtags. - [Create HeadTag](https://docs.zesty.io/reference/create-headtag.md): This creates a new headTag. ### Body: raw JSON | name | description | | --------- | --------------------- | | type | [string] **Required.** Accepts `script`, `meta`, `link`, `noscript`, `style`, `title`. | | attributes | [json] Optional. Arbitrary key/value pairs. | | sort | [number] Optional. Order priority | | resource_zuid | [string] **Required.** ZUID of the resource this headTag should belong. Example is an instance ZUID. | - [Get HeadTag](https://docs.zesty.io/reference/get-headtag.md): Returns a specific headtag. - [Update HeadTag](https://docs.zesty.io/reference/update-headtag.md): Updates a specific headtag. - [Delete HeadTag](https://docs.zesty.io/reference/delete-headtag.md): Deletes a headtag. - [Patch HeadTag](https://docs.zesty.io/reference/patch-headtag.md): Updates a one or more headtag properties. - [Get All Scripts](https://docs.zesty.io/reference/get-all-scripts.md): Returns all scripts. - [Create Script](https://docs.zesty.io/reference/create-script.md): This creates a new script file. ### Body: raw JSON | name | description | | --------- | --------------------- | | code | [string] Arbitrary JS code. Default `null` | | fileName | [string] **Required.** Must be unique. It is required to add the file extension _.js_. | | type | [string] **Required.** Must be `text/javascript` | - [Get Script](https://docs.zesty.io/reference/get-script.md): Returns a specific script file. - [Update Script](https://docs.zesty.io/reference/update-script.md): This updates a specific script file. ### Body: raw JSON | name | description | | --------- | --------------------- | | code | [string] **Required.** Arbitrary JS code. | - [Delete Script](https://docs.zesty.io/reference/delete-script.md): Deletes a specific script file. - [Get All Script Versions](https://docs.zesty.io/reference/get-all-script-versions.md): Retrieves all version of a script. - [Get Script Version](https://docs.zesty.io/reference/get-script-version.md): Retrieves a specific version of a script. - [Publish Script](https://docs.zesty.io/reference/publish-script.md): Publishes a version of a script file. - [Media API](https://docs.zesty.io/reference/media-api-reference.md) - [Manager](https://docs.zesty.io/reference/media-manager-api-reference.md) - [Create Media Bin](https://docs.zesty.io/reference/create-media-bin.md): Create a bin based on the default storage driver and default cdn in the associated ecosystem or instance. - [Get Media Bin](https://docs.zesty.io/reference/get-media-bin.md): Fetch a bin by Bin ID - [Delete Media Bin](https://docs.zesty.io/reference/delete-media-bin.md): Delete a bin - [Update Media Bin](https://docs.zesty.io/reference/update-media-bin.md): Update name of bin - [Get Media Bin Files](https://docs.zesty.io/reference/get-media-bin-files.md): Fetch Files associated with a Bin ID - [Get Media Bin Groups](https://docs.zesty.io/reference/get-media-bin-groups.md): Fetch Groups associated with a Bin ID - [Get Eco Bins](https://docs.zesty.io/reference/get-eco-bins.md): Fetch bins associated with an Ecosystem ID - [Get Site Bins](https://docs.zesty.io/reference/get-site-bins.md): Fetch bins associated with an Instance ID - [Create Media File](https://docs.zesty.io/reference/create-media-file.md): Create a file - [Get Media File](https://docs.zesty.io/reference/get-media-file.md): Fetch a file by File ID - [Delete Media File](https://docs.zesty.io/reference/delete-media-file.md): Delete a file - [Update Media File](https://docs.zesty.io/reference/update-media-file.md): Update file name and optionally update parent group or title - [Create Media Modified File](https://docs.zesty.io/reference/create-media-file-modified.md): Create a modified file - [Get Media Modified File](https://docs.zesty.io/reference/get-media-file-modified.md): Fetch a modified file by File ID and Action Hash (unique identifier associated with a file modification action) - [Create Media Group](https://docs.zesty.io/reference/create-media-group.md): Create a group, nested under another group or at the top level (bin level). - [Get Media Group](https://docs.zesty.io/reference/get-media-group.md): Fetch a group by Group ID - [Delete Media Group](https://docs.zesty.io/reference/delete-media-group.md): Delete a group - [Update Media Group](https://docs.zesty.io/reference/update-media-group.md): Update group name and parent group - [Search Files](https://docs.zesty.io/reference/search-files.md): Search Files using a Term and Bin/s - [Storage](https://docs.zesty.io/reference/media-storage-api-reference.md) - [Create a Google Cloud Storage Bucket](https://docs.zesty.io/reference/create-bucket.md): Create a bucket in Google Cloud Storage - [Delete a Google Cloud Storage Bucket](https://docs.zesty.io/reference/delete-bucket.md): Delete a bucket in Google Cloud Storage - [Copy a File Asset](https://docs.zesty.io/reference/copy-file-asset.md): Copy a file from a remote URL into the GCS bucket - [Delete File Assets by Batch](https://docs.zesty.io/reference/delete-file-assets.md): Delete multiple files in Google Cloud Storage - [Delete a File Asset](https://docs.zesty.io/reference/delete-file-asset.md): Delete a File in Google Cloud Storage - [Update Name of File Asset](https://docs.zesty.io/reference/update-file-asset.md): Update a file's name in Google Cloud Storage - [Replace a File Asset](https://docs.zesty.io/reference/replace-file-asset.md): Replace a File in a GCS Bucket - [Generate a Signed URL](https://docs.zesty.io/reference/generate-signed-url.md): Generate a Signed URL to upload large files - [Upload a File Asset](https://docs.zesty.io/reference/upload-file-asset.md): Upload a File in a GCS Bucket - [Modify](https://docs.zesty.io/reference/media-modify-api-reference.md) - [Modify Image](https://docs.zesty.io/reference/modify-image.md): Modify an image based on passed action/s. This API only allows Service to Service consumption. A zesty user cannot use this API. `X-Service-Auth-Content` and `X-Service-Auth-Sig` custom headers are used to consume this API via Service to Service token. - [Resolver](https://docs.zesty.io/reference/media-resolver-api-reference.md) - [Invalidate File](https://docs.zesty.io/reference/invalidate-file.md): Bust the file URL from CDN to invalidate the public URL of the modified file. This API only allows Service to Service consumption. A zesty user cannot use this API. `X-Service-Auth-Content` and `X-Service-Auth-Sig` custom headers are used to consume this API via Service to Service token. Format: tuple `[[zuid, type [, actionsHash]], [..], ..]` * if actionsHash is the string `\*` , it is treated as a wildcard and all actions hashes are deleted for the given zuid and type. Keys without a actionsHash are not deleted. * if actionsHash is `null`, `undefined`, or an `empty` string, a key without the actionsHash will be deleted so So if user wants to delete a zuid/type pair and all possible subkeys, user would submit two tuples like so: `[[zuid, type], [zuid, type, '\*']]` - [Resolve File Dynamically](https://docs.zesty.io/reference/resolve-file-dynamically.md): Returns the modified version of the image without affecting the original image. - [Resolve File](https://docs.zesty.io/reference/resolve-file.md): Execute and save modifications done on a file. Response will contain the public URL of the file with the the applied modifications on the file. This API only allows Service to Service consumption. A zesty user cannot use this API. `X-Service-Auth-Content` and `X-Service-Auth-Sig` custom headers are used to consume this API via Service to Service token. - [Connect Google Analytics](https://docs.zesty.io/reference/connect-google-analytics.md): Authenticating zesty.io instance to google analytics using oauth. - [Disconnect Google Analytics](https://docs.zesty.io/reference/disconnect-google-analytics.md): Disconnect google analytics account to specific instance. - [Get Path Collection](https://docs.zesty.io/reference/get-path-collection.md): Connect on a specific google analytics property and returns a path collection for gainers and loser pages. - [Get Google Analytics Properties](https://docs.zesty.io/reference/get-google-analytics-properties.md): Connect on a specific google analytics property and returns the property and data streams associated on the google account. - [Get Google Analytics Reports](https://docs.zesty.io/reference/get-google-analytics-reports.md): Connect on a specific google analytics property and returns data depending on the provided query body.