Identifier
An ID is an identifier given to TeamCity entities (projects, build configurations, templates, and VCS roots, etc.).
Each entity has two identifiers:
the so-called
External IDs
The so-called 'external' identifiers are configured in the TeamCity web UI (e.g. Project ID) and must be unique within all the objects of the same type on the entire server; note that build configurations and templates share the same ID space.
IDs can contain only alpha-numeric characters and underscores ("_") - maximum 80 characters - and should start with a Latin letter.
Using IDs
External IDs are used:
in URLs of the web interface (including RSS feeds, NuGet feed), e.g.
https://teamcity.jetbrains.com/project.html?projectId=TeamCityPluginsByJetBrains
in REST API and build scripts used to automate actions with TeamCity (e.g. download artifacts via direct URLs or Ivy)
in the configuration files storing settings of projects and build configurations under <TeamCity data directory>/config
in file and directory names under <TeamCity data directory>/system (e.g. build artifacts storage)
Assigning IDs
By default, TeamCity automatically suggests an ID for an object by converting its name to match the ID requirements and prefixing that with the ID of the parent project. The ID can be modified manually.
It is recommended to leave the automatically generated IDs as is unless there are special considerations to modify them.
If you consider moving projects between several TeamCity server installations, it is a good practice to make sure that all the IDs are globally unique.
To reset the IDs to match the default scheme for all projects, VCS roots, build configurations and templates, use the Bulk Edit IDs action on the Administration page of the parent project. To use the automatically generated ID after it has been modified or after you change an existing object name, you can regenerate ID using the Regenerate ID action.
When you copy a project, TeamCity automatically assigns new IDs to all the child elements. The IDs can be previewed and changed in the Copy dialog. When you move an object, its ID is preserved and you might want to use Regenerate ID action to make the ID reflect the new placement.
Universally Unique IDs
TeamCity projects, build configurations, and VCS roots have a UUID, an automatically generated, globally unique ID. UUID is stored in the corresponding entity XML configuration file located in the <TeamCity data directory>/config directory. These UUID should never be edited manually. When a new entity is created by placing a file in the data directory, it should have no "uuid" attribute. In this case TeamCity will generate it automatically and will persist in the file.