Skip to main content

Create conversation schemas

The conversation schema interface in Genesys Cloud allows you to define a conversation schema and assign custom attributes to it. 

To create a schema, follow these steps:

  1. Click Menu > Orchestration > Orchestration Assets > Conversation Schemas.
  2. Click Create Schema. The Create New Conversation Schema page appears. 
  3. Assign a unique name to the schema.
  4. (Optional) Enter a description.
  5. To add conversation attributes, perform the following steps:
    1. Click Add Conversation Attributes.
    2. Select one of the following attribute types:
      Field typeDescriptionAllowed value rangeAdditional information

      Boolean

      A binary true or false toggle.

      Not applicable

      Currency

      A string value that represents monetary value.

      The system intentionally stores the currency value as a string to preserve precision and avoid rounding errors that can occur with floating-point representations in JSON and common programming languages.

      • Amount: Up to 17 characters

      • Currency type: 3–5 characters representing ISO-4217 currency codes

      After saving the schema, you can only increase the amount limit, either by decreasing the minimum value or increasing the maximum value.

      Also, currency type length cannot be reduced.

      Date

      A date value is a string in the YYYY-MM-DD format prescribed by the ISO-8601 standard.

      Not applicable

      Date & Time

      A GMT-based date and time string in the YYYY-MM-DDTHH:mm:ss.sssZ format prescribed by the ISO-8601 standard.

      Not applicable

      Enum

      An Enum is a predefined list of string values. 

      Up to 50 list items. The limit is configurable. The default is 50.

      Each string can have up to 100 characters.

      Constraints

      • Enum values and _enumProperties titles must be unique

      • Enum options cannot be deleted or disabled once defined

      • New Enum values can be added in the subsequent schema versions

      UI mapping

      • Enum defines the backend values

      • _enumProperties defines the display values in the UI

      Integer

      An integer is a whole number such as 987 or 5.

      -9,007,199,254,740,991 to +9,007,199,254,740,991 (52-bit precision)

      This range is based on the maximum safe integers supported in JavaScript and many other languages. Values outside this range lose precision when serialized or parsed.

      After saving the schema, you cannot increase the minimum value and you cannot decrease the maximum value.

      List

      An array of string items (no white space).

      Up to 100 items, with each item up to 100 characters

      • Maximum Items cannot be decreased once defined

      • Minimum Items can only be reduced

      • Unique items can only transition from true to false

      • Schema validation is case-sensitive

      Number

      A number includes any numeric values, including decimals.

      -9,007,199,254,740,991 to +9,007,199,254,740,991 (52-bit precision)

      After saving the schema, you cannot increase the minimum value and you cannot decrease the maximum value.

      String

      A standard text string or a custom series of alphabetical, numeric, and symbolic characters.

      Up to 1000 characters

      • Both the minimum and maximum values are required

      • After saving the schema, you cannot increase the minimum value and you cannot decrease the maximum value

       
    3. Assign a name for the attribute.
    4. Provide a unique key.
    5. Add a description.
    6. Set the field property such as whether the attribute is mandatory or not.
    7. Set the field property such as whether the attribute is unique or not. This condition applies only to the List field type.
    8. (Optional) Click the Preview tab to preview your attribute configuration.
    9. Click Add.
  6. Repeat step 6 to add up to 50 attributes to the schema.
  7. Click Save Schema to save the changes or click Cancel to cancel the schema creation.

Considerations for schema creation and management

Resource limits

KeyDescriptionLimitResourceFixed limit?Additional information
custom.attributes.schemas.maxThe maximum number of conversation schemas (both active and inactive) that is allowed per organization.50api/v2/conversations/customattributes/schemasNoThe limit can be changed by submitting a ServOps or Customer Care request for each organization.
custom.attributes.fields.per.schema.maxThe maximum number of fields allowed per conversation schema.50api/v2/conversations/customattributes/schemasNoThe limit can be changed by submitting a ServOps or Customer Care request for each organization.

For more information about all rate limits, see .

Schema limits

  • You can create a maximum of 50 conversation schemas. All active and inactive schemas count toward the limit of 50.
  • Once the schema is saved, both the schema and the attributes within the schema cannot be deleted. However, you can inactivate a schema.
  • The schema title must be:
    • Between 1 and 50 Unicode characters, special characters and spaces are allowed
    • Unique within the org for all enabled schemas

Schema versioning

  • Schemas are immutable.
  • When a schema is updated, a new version is created.
  • Enabling and disabling schemas increments the version by one. Version numbers start at one.
  • A schema version is required for updates. Flows or scripts are pinned to the schema version that they were built with.
  • Schema versions do not count toward the schema limit.
  • The enabled status determines whether a schema can be used when creating or updating conversation attribute records.
  • Disabling a schema prevents creating conversation attribute records against that version of the schema, but does not delete conversation attribute records (the records can still be fetched).

Schema attribute limits

  • Each schema can define up to 50 attributes. This limit can be increased via a support request.
  • Attributes cannot be deleted or disabled. You can do the following actions only:
    • Add new attributes
    • Edit existing attributes within their defined validation constraints
  • Attribute titles must be:
    • Between 1 and 100 characters, special characters and spaces are allowed
    • Unique within the schema
  • When updating schema attributes:
    • You cannot:
      • Change an attribute’s core type or key name
    • You can:
      • Change the title as long as it remains unique within the schema.
      • Change min/max limits as long as you’re expanding the range, as in you can only raise the maximums and lower the minimums.
Note: Once a schema is saved, its structure becomes permanent—individual attributes cannot be deleted or disabled in future versions. While schemas can be disabled to prevent further use, administrators and flow authors must ensure that flows and direct API calls do not reference schemas that have been disabled in future versions.