What is a Custom Type?
On this page, you'll learn about the concept of Custom Types and how to create and structure a new one.
Custom Types are models for your documents. They are the place where you define and configure fields for your content. They give structure to documents: pages, posts, articles, events, products — whatever blocks of content you need for your project.
Difference between "single" and "repeatable"
There are two categories of Custom Types: Repeatable Types and Single Types.
Repeatable types are for content that you will have more than one, such as articles, products, places, and authors.
Create a Custom Type
Slice Machine vs. the Legacy Builder
We've improved the developer experience with a new tool called Slice Machine. This will eventually replace the Legacy Builder.
In Slice Machine
Create Custom Types in the Custom Types section of Slice Machine.
On this page, you can create your Custom Types, add Slices and Fields, and synchronize them with your repository.
Click on Create a Custom Type. Select the type (repeatable or single), give it a name, and save.
Create Slices in the Slices tab of Slice Machine. You can use Slices in multiple Custom Types.
In the Slices tab, create your Slices, save their models to the filesystem, synchronize them with your repository, and see Slice simulations with mock data.
Click on + Add a new Field to see the list of fields you can add to Custom Types and Slices.
In the Legacy Builder
Create Custom Types in the Custom Types section of your repository. Click Create New. Select the type (repeatable or single), give it a name, and save.
Slice Machine will eventually replace the Legacy Builder.
Slices are created within each Custom Type. To start creating slices, enable the Slice Zone with the toggle in the Custom Type builder.
Variations and Shared Slices
Please note that, unlike Slice Machine, Variations aren’t available, and Slices with the Legacy builder aren’t shared between Custom Types. You can create a copy of them and store them in the Slice Library, but changes to Slice models will not be synchronized between Custom Types.
Drag and drop fields from the list to add them to the Custom Types and Slices.
Organize with tabs
You can use tabs within a Custom Type to organize your content fields and make document editing more user-friendly. Click the + Add a new tab button in the Custom Type builder to add a tab.
Using tabs will only affect the organization of the writing-room editor. It will not impact the structure of the document in the API response.
What happens when you modify a Custom Type?
Editing a Custom Type does not change your documents — it only changes the editor interface. Changes won't take effect until you open and save documents individually.
If you delete a content field in a Custom Type, that field will no longer appear in the Writing Room editor. Until you resave each document individually, all existing documents will still have that field and its data, and the field will still appear in the API response.
Past behavior with API v1
The endpoint of your repository has two versions, v1 and v2. Normally you'll only ever use v2. v1 is deprecated. If you ever use v1, please note that If you remove a field from your Custom Type, the API v1 will always display this field and its content. You will be able to see this data in your editor by re-adding the field to your Custom Type using the same API ID as it originally had.
Learn about the differences between API v1 & API v2.
Was this article helpful?
Can't find what you're looking for? Spot an error in the documentation? Get in touch with us on our Community Forum or using the feedback form above.