Fields enable you to store and manage content in Dopt. Fields are arbitrary key value pairs that you can define as part of a component block. These fields can then be pulled down via SDK and used in your product experience. This allows you to keep your content in Dopt so you can update it without having to make a subsequent code change or deployment.
Fields support content of various types:
|Simple text content that can be encapsulated in a string||Title, description, URL|
|Rich text content which supports textual elements, alignment, images, links, and more →||Body content|
|Numerical content like integers or decimals||Spacing value, border radius|
|Binary content that can be constrained to true or false||Show/hide a control|
String, number, and boolean fields all store content which can be encapsulated in a simple type (string, number, and boolean respectively).
Rich text fields parse and store more complex, formatted content within an object type. Learn more about the rich text type and how to use it within a component →
Field configurations determine the shape of fields. Fields allow for rich configuration such as display name, identifier, type, description, and display order. Learn more →
Fields are configured with an identifier similar to a flow. This is the key you’ll use to access the field via API or SDK.
Adding or updating a field configuration will prompt a version change. This guarantees that any field configuration stays constant for any particular flow version so when you develop against it, you can be assured that the fields you reach for are the ones you expect.
Field values store the content associated with fields. You can access field values using the field’s identifier through the API or SDK.
Fields will start out with their initial configured value. Any update to a field value can be done without needing to commit another version of the flow — it will automatically be updated wherever you use it in your product. Learn more →
Each flow version will keep track of its own set of field values. For instance, the field values for version 1 of a flow can differ from version 3. This can be helpful for iterating on content between flow versions.