Creating your own public IDs

Suppose a company called ABC has two external systems, each of which contains a record with an internal ID of 2224. Each system generates public ID by using the format "{company}:{system}:{recordID}" to create unique public ID strings such as "abc:s1:2224" and "abc:s2:2224".

To request PolicyCenter automatically create a public ID for you rather than defining it explicitly, set the public ID to the empty string or to null. If a new entity’s public ID is blank or null, PolicyCenter generates a public ID. The ID is a two-character ID, followed by a colon, followed by a server-created number. For example, "pc:1234". Guidewire reserves for itself all public IDs that start with a two-character ID and then a colon.

Public IDs that you create must never conflict with PolicyCenter-created public IDs. If your external system generates public IDs, you must use a naming convention that prevents conflict with Guidewire-reserved IDs and public IDs created by other external systems.

The prefix for auto-created public IDs is configurable using the PublicIDPrefix configuration parameter. If you change this setting, all explicitly-assigned public IDs must not conflict with the namespace of that prefix.

The maximum public ID length is 64 characters.

Important – Integration code must never set a public IDs to a String that starts with a two-character ID and then a colon. Guidewire strictly reserves all such IDs. If you use the PublicIDPrefix configuration parameter, integration code that sets explicit public IDs also must not conflict with that namespace. Additionally, plan your public ID naming to support large (long) record numbers. Your system must support a significant number of records over time and stay within the public ID length limit.