Skip to main content

Specifying what fields cannot be copied

When creating or syncing a new service based on an existing one, the form is pre-filled with values from the original. But some fields—like environment-specific settings, account IDs, or custom domains—shouldn't carry over. This helps prevent configuration issues tied to a specific environment.

To manage this behavior, you can mark a field as non-copyable in the service specification using "comparable": false.

How to mark a field as non-copyable

To prevent a field from being reused in create or sync flows, add "comparable": false to that field under attributes.schema.properties in the service spec.

These fields will be:

  • Cleared in the form during creation or sync
  • Visibly flagged in the UI, so users understand what couldn’t be copied

Example: Clear a field like scope

Here’s how you might mark the scope field as non-copyable:

"properties": {
"scope": {
"type": "string",
"title": "Scope",
"comparable": false,
"description": "The slug of the scope"
}
}

With this setting, when a user creates or syncs a service using one that includes this field, the value of scope will be cleared from the form.

How to update the service spec

  1. Go to Platform settings > Services > Specifications.
  2. Search for the service spec you want to update.
  3. In the Schema tab, find the field you want to exclude and add "comparable": false to its definition.
  4. Save your changes.

Once saved, that field will be excluded from future prefilled forms during create or sync actions.