The Rally object model provides standard relationships between artifacts, e.g. a user story has a Parent attribute that links to a parent story, a task has a WorkProduct attribute that links it to a user story that owns the task, a defect has a Requirement attribute that links that defect to a related user story, etc. Is there a way to specify a custom relationship and link one artifact to another?
A custom field of type WebLink that can be used for this purpose.
An important limitation of this field is that it is not queriable. As long as you do not intent to query artifacts by a "custom" link established by a WebLink the steps below can be useful to to accomplish the task.
1. See the help documentation on how to create a WebLink.
2. Notice that the format of the URL includes one variable ${id}. Since this field is intended to contain a reference to an artifact in another system, the documentation uses an example of an artifact in Salesforce:
https://<YOUR_HOST_NAME>/${id}
A unique URL of a Rally artifact example does not necessarily lend itself to this format:
https://rally1.rallydev.com/#/<PROJECT_OID>/detail/userstory/<STORY_OID>
ObjectIDs are unique across Rally stack, but they are not shown anywhere in the UI other than in the URLs.
On the other hand, users generally identify artifacts by a more user-friendly FormattedID, e.g. US123.
FormattedIDs are unique across a workspace, and they are not used by Rally to build a unique URL of an artifact.
Both the project ObjectID and a story ObjectID may vary in the unique URL example above, which makes the format for a WebLink custom field difficult to adapt.
It would be nice to be able to link to a details page of an artifact without having to know the ObjectID.
3. There is a feature of Rally's search functionality and isn't officially supported but can be used to link to a details page of an artifact using the following URL:
https://rally1.rallydev.com/#/search?keywords=US12
Notice that this will not work across workspaces.
4. Now it is time to create our WebLink custom field.
We use: https://rally1.rallydev.com/#/search?keywords=${id} for URL:
5. Test the new custom field. Open details page of one story (US25) and link it to another story by typing FormattedID of it (US22):
Notice this is a clickable link. Clicking on it will load details of US22 in another window.