Change Management Domain
The Codebeamer OSLC Server provides query capabilities based on the OSLC Core 3.0 specification. Using query capabilities, client applications such as Windchill can query or search for Codebeamer resources in a project for the Change Management domain.
The client applications can navigate to the URIs for query capabilities through discovery of service provider catalogs and service provider resources provided by the Codebeamer Server.
The Codebeamer OSLC APIs enable OSLC clients to query and link to Codebeamer change objects based on these OSLC specifications.
The following are the supported OSLC Resource Types supported for the Change Management domain:
• Change request
• Change notice
• Defect
• Enhancement
• Task
• Review task
|
|
To use supported Codebeamer change objects, these must first be mapped to Codebeamer trackers based on tracker types that are supported for mapping. To map such objects in Codebeamer, see Tracker and Field Mapping.
|
OSLC Query Service Endpoints
Use the following endpoints to query specific change object types:
|
Object Type
|
URL
|
|
Change request
|
https://<CODEBEAMER-SERVER-URL>/<CONTEXT-PATH>/api/oslc/projects/{streamBasedId}/cm/changerequests
|
|
Change notice
|
https://<CODEBEAMER-SERVER-URL>/<CONTEXT-PATH>/api/oslc/projects/{streamBasedId}/cm/changenotices
|
|
Defect
|
https://<CODEBEAMER-SERVER-URL>/<CONTEXT-PATH>/api/oslc/projects/{streamBasedId}/cm/defects
|
|
Enhancement
|
https://<CODEBEAMER-SERVER-URL>/<CONTEXT-PATH>/api/oslc/projects/{streamBasedId}/cm/enhancements
|
|
Task
|
https://<CODEBEAMER-SERVER-URL>/<CONTEXT-PATH>/api/oslc/projects/{streamBasedId}/cm/tasks
|
|
Review task
|
https://<CODEBEAMER-SERVER-URL>/<CONTEXT-PATH>/api/oslc/projects/{streamBasedId}/cm/reviewtasks
|
Change Management Catalog
The Change Management catalog can be accessed at https://<CODEBEAMER-SERVER-URL>/<CONTEXT-PATH>/oslc/catalog/cm.
Working with Change Management Queries
The Codebeamer OSLC Server provides query capabilities based on the OSLC Core 3.0 specification. Using query capabilities, client applications such as Windchill can query or search for Codebeamer resources in a project for the Change Management domain.
The client applications can navigate to the URIs for query capabilities through discovery of service provider catalogs and service provider resources provided by the Codebeamer Server.
The OSLC client applications can discover the URIs of the query capabilities by sending a GET request on a project to the Codebeamer server as follows:
GET <protocol scheme>://<server host name>:<server port number>/<context path>/api/oslc/projects/<streamBasedId>
For example:
GET https://codebeamer:8443/cb/api/oslc/projects/9234
For example, the Codebeamer Server supports the following URI with supported authentication for the query capability corresponding to the Codebeamer Change Management resources:
GET <protocol scheme>://<server host name>:<server port number>/<CONTEXT-PATH>/api/oslc/projects/{streamBasedId}/cm/changenotices
For example:
GET https://codebeamer:8443/cb/api/oslc/projects/3334/cm/changenotices
The response returns Codebeamer items mapped to the Change Management resource. In this example, the Codebeamer tracker items that belong to trackers mapped to a Change Notice item are returned in the response.
Codebeamer tracker items can be mapped to the
supported Change Management domain resources based on
OSLC type mapping in the tracker configuration. For more information, see
Configuring the Field Mapping.
A sample response of items mapped to a Change Management resource is as follows:
<rdfs:member>
<oslc_cm:ChangeNotice rdf:about="http://codebeamer:8443/cb/api/oslc/cm/changenotices/1002">
<oslc:instanceShape rdf:resource="http://codebeamer:8443/cb/api/oslc/ns/cm/1.0/ChangeNotice"/>
<oslc_cm:state>New</oslc_cm:state>
<oslc_cm:fixed>false</oslc_cm:fixed>
<oslc_cm:status>New</oslc_cm:status>
<cb:priority>Normal</cb:priority>
<oslc_cm:inProgress>false</oslc_cm:inProgress>
<dcterms:title>CR1</dcterms:title>
<dcterms:created>2025-09-25T06:12:27Z</dcterms:created>
<dcterms:modified>2025-09-30T08:07:04Z</dcterms:modified>
<cb:infoPage>http://codebeamer:8443/cb/issue/1002</cb:infoPage>
<dcterms:identifier>1002</dcterms:identifier>
<dcterms:description><span class='wikiContent'>--</span></dcterms:description>
<oslc_cm:closed>false</oslc_cm:closed>
</rdfs:member>
The change notice resource URI includes the Codebeamer item ID.
The following are some examples of OSLC query parameters for use with the query property attributes:
• oslc.where query parameter
GET https://codebeamer:8443/cb/api/oslc/projects/9234/cm/changenotices?oslc.where=dcterms:identifier=1130
GET https://codebeamer:8443/cb/api/oslc/projects/9234/cm/changenotices?oslc.where=dcterms:title=Input
• oslc.orderBy query parameter
GET https://codebeamer:8443/cb/api/oslc/projects/9234/cm/changenotices?oslc.orderBy=dcterms:identifier
The default sort order is ascending.
To request descending sort order, the request URI is as follows:
GET https://codebeamer:8443/cb/api/oslc/projects/9234/cm/changenotices?oslc.orderBy=dcterms:identifier
• oslc.select query parameter
GET https://codebeamer:8443/cb/api/oslc/projects/9234/cm/changenotices?oslc.select=dcterms:identifier,dcterms:title
• oslc.pageSize query parameter
GET https://codebeamer:8443/cb/api/oslc/projects/9234/cm/changenotices?oslc.pageSize=25
|
|
The default page size is 25. The maximum supported page size is 500.
|
• page query parameter
For example:
https://codebeamer:8443/cb/api/oslc/projects/9234/cm/changenotices?oslc.where=dcterms:title=req&oslc.select=dcterms:identifier,dcterms:title&oslc.orderby=-dcterms:identifier&oslc.pageSize=25&page=2
Query capability is supported for a single filter criterion. The AND and OR operators are not supported. Only the = logical operator is supported.
For information on the
Codebeamer delegated UI, refer to
Using the Codebeamer Delegated UI.
Accessing Codebeamer Items Mapped to the Change Management Domain
You can access Codebeamer items in a project as follows:
GET <protocol scheme>://<server host name>:<server port number>/<CONTEXT-PATH>/api/oslc/cm/changenotices/{itemId}
For example:
GET https://codebeamer:8443/cb/api/oslc/cm/changenotices/9234
Depending on the value of "customMappingEnabled" in your application configuration, the OSLC API returns the default or the custom field mappings:
• "customMappingEnabled" set to false or not set—The OSLC API returns the default field mappings. For example:
<oslc_cm:ChangeRequest rdf:about="https://codebeamer:8443/cb/api/oslc/cm/changerequests/2998">
<oslc_cm:state>New</oslc_cm:state>
<oslc_cm:fixed>false</oslc_cm:fixed>
<oslc_cm:status>New</oslc_cm:status>
<cb:priority>Normal</cb:priority>
<oslc_cm:inProgress>false</oslc_cm:inProgress>
<dcterms:title>Test Bug1</dcterms:title>
<dcterms:created>2025-10-09T04:39:31Z</dcterms:created>
<dcterms:modified>2025-10-09T04:39:31Z</dcterms:modified>
<cb:infoPage>https://codebeamer:8443//cb/issue/2998</cb:infoPage>
<oslc:instanceShape rdf:resource="https://codebeamer:8443/cb/api/oslc/ns/25680/shape"/>
<dcterms:identifier>2998</dcterms:identifier>
<dcterms:description><span class='wikiContent'>Test Bug1 description</span></dcterms:description>
<oslc_cm:closed>false</oslc_cm:closed>
</oslc_cm:ChangeRequest>
• "customMappingEnabled" set to true—The OSLC API returns the custom field mappings that you set on the Codebeamer user interface. For example:
<oslc_cm:ChangeNotice rdf:about="https://codebeamer:8443/cb/api/oslc/cm/changenotices/1454">
<oslc:serviceProvider rdf:resource="https://codebeamer:8443/cb/api/oslc/projects/4625"/>
<oslc_cm:fixed>false</oslc_cm:fixed>
<oslc_cm:inProgress>false</oslc_cm:inProgress>
<dcterms:title>Support MPEG4 layer 3.5 encoding</dcterms:title>
<dcterms:created>2025-10-27T08:05:55Z</dcterms:created>
<dcterms:modified>2025-10-27T08:51:36Z</dcterms:modified>
<cb:text1>hello text</cb:text1>
<cb:col1>#d9923b</cb:col1>
<cb:wikitext1>__This is bold__</cb:wikitext1>
<dcterms:description><span class='wikiContent'>This encoding becomes more and more popular.</span></dcterms:description>
<oslc_cm:closed>false</oslc_cm:closed>
<oslc_cm:state rdf:resource="https://codebeamer:8443/cb/api/oslc/ns/lifecycleState#NEW"/>
<cb:bool1>true</cb:bool1>
<oslc_cm:status>New</oslc_cm:status>
<cb:lang1>English</cb:lang1>
<oslc_cm:priority>Lowest</oslc_cm:priority>
<cb:dur1>30min</cb:dur1>
<cb:infoPage>http://localhost:8080/issue/1454</cb:infoPage>
<oslc:instanceShape rdf:resource="https://codebeamer:8443/cb/api/oslc/ns/4662/shape"/>
<dcterms:identifier>1454</dcterms:identifier>
<cb:wikiurl1>[ISSUE:1454]</cb:wikiurl1>
<cb:country1>United States</cb:country1>
<cb:date1>2025-09-07 18:30:00</cb:date1>
<cb:int1>1</cb:int1>
</oslc_cm:ChangeNotice>
To access a specific item, you can use the <dcterms> information as a dcterms:identifier parameter. For example:
GET https://codebeamer:8443/cb/api/oslc/projects/9234/cm/changenotices?oslc.where=dcterms:identifier=1953
|
|
If a referenced Codebeamer item is moved to a different project, the corresponding URI will change and become inaccessible. To fix this, the corresponding link must be recreated. To avoid the issue, avoid moving referenced items.
|
Accessing the Attachments of a Change Management Domain Item
You can access the attachments of a Codebeamer Change Management domain item by following these steps.
Ensure you execute the API calls with a user that has the following tracker-level permissions in Codebeamer:
• Permission to view an item—Item - View Any or Item - View if Owner.
• Permission to view the attachments of an item—Item - View Comments/Attachments.
1. Send an OPTIONS request to the /api/oslc/cm/changerequests/{changeRequestId} endpoint. For example:
OPTIONS https://codebeamer:8443/cb/api/oslc/cm/changerequests/1002
2. Find the value of the Link response header. For example:
<http://www.w3.org/ns/ldp#Resource>; rel="type", <https://codebeamer:8443/cb/api/oslc/cm/changerequests/1002/attachments>; rel=http://open-services.net/ns/core#AttachmentContainer
3. Send a GET request to the /api/oslc/cm/changerequests/{changeRequestId}/attachments URL that appears in the value of the preceding Link response header for the oslc:AttachmentContainer. For example:
GET https://codebeamer:8443/cb/api/oslc/cm/changerequests/1002/attachments
4. Find the <oslc: Attachmentcontainer> XML element in the response body. This contains one or more <ldp:contains> properties with a /api/v3/attachments/{attachmentId}/content resource URL. For example:
<oslc: AttachmentContainer rdf:about="https://codebeamer:8443/cb/cm/changerequests/1002/attachments>
[...]
<ldp:contains rdf :resource="https://codebeamer:8443/cb/api/v3/attachments/4392/content"/>
|
|
The Attachment API does not support query parameters.
|
5. Use the
{attachmentId} of the
<ldp:contains> resource URL to get the content of the attachment with the
Codebeamer GET /v3/attachments/{attachmentId}/content Swagger V3 endpoint. For example:
GET https://codebeamer:8443/cb/api/v3/attachments/4392/content
Working with Resource Shapes
Resource shapes specify a standard way of describing resources and constraints on resources. For more information on resource shapes, refer to the OSLC specification.
The Codebeamer server is resource-shape compliant.
Sample resource shape URIs for the Change Management domain resources are as follows:
• GET https://codebeamer:8443/api/oslc/ns/cm/1.0/ChangeNotice
• GET https://codebeamer:8443/api/oslc/ns/cm/1.0/ChangeRequest
• GET https://codebeamer:8443/api/oslc/ns/cm/1.0/Defect
• GET https://codebeamer:8443/api/oslc/ns/cm/1.0/Task
• GET https://codebeamer:8443/api/oslc/ns/cm/1.0/Enhancement
• GET https://codebeamer:8443/api/oslc/ns/cm/1.0/ReviewTask
Allowed values are not currently supported.
Additionally, if custom field mapping is enabled, the resource varies. A sample is as follows:
GET https://codebeamer:8443/cb/api/oslc/ns/{trackerId}/shape
For more information, see
Tracker and Field Mapping.
Working with Resource Previews
The Codebeamer Server supports compact resources that describe how the previews of the resources for the Change Management domain can be located. The server provides HTML markups that OSLC client applications can use to display a small preview. Resource Previews allow you to view the information and additional metadata related to the resources quickly without leaving the OSLC client application such as Windchill.
Requesting Compact Resources Using Headers
The Codebeamer Server supports compact representation for preview of Codebeamer resources. The server provides URLs for small previews of the Codebeamer resources when an OSLC client application such as Windchill requests discovery of compact resources.
Such URLs for small previews can be obtained from the server using GET or HEAD requests.
Using a GET Request
You can make a GET request to obtain the small preview URL using application/x-oslc-compact+xml as the content type for the Accept header or by not specifying any content type.
• With application/x-oslc-compact+xml as the content type:
If you use application/x-oslc-compact+xml, create the GET request as follows:
GET https://codebeamer:8443/cb/api/oslc/cm/changerequests/{itemId}
For example: GET https://codebeamer:8443/cb/api/oslc/cm/changerequests/1324
A response snippet with the preview URL in rdf:resource is as follows:
<oslc:smallPreview>
<oslc:Preview>
<oslc:document rdf:resource="https:///codebeamer-windchillserver.com:8442/oslc-preview/jump/cm/changerequests/1324/preview.spr?preview=small"/
<oslc:hintHeight>300px</oslc:hintHeight>
<oslc:hintWidth>600px</oslc:hintWidth>
</oslc:Preview>
</oslc:smallPreview>
• Without specifying a content type:
If you do not specify a content type for the Accept header, create the GET request by appending ?compact as follows:
GET https://codebeamer:8443/cb/api/oslc/cm/changerequests/{itemId}?compact
For example: GET https://codebeamer:8443/cb/api/oslc/cm/changerequests/1324?compact
In the response, the preview URL is available in rdf:resource.
Using a HEAD Request
You can make a HEAD request to obtain the small preview URL without specifying a content type for the Accept header.
1. Create the HEAD request as follows:
HEAD https://codebeamer:8443/cb/api/oslc/cm/changerequests/{itemId}
For example: HEAD https://codebeamer:8443/cb/api/oslc/cm/changerequests/1324
2. In the response, in Headers, find the value of the Link key. A sample is as follows:
https://codebeamer:8443/cb/api/oslc/cm/changerequests/1324?compact
3. Make a GET request to the URI in the Link key.
In the response, the preview URL is available in rdf:resource.
Once you have the preview URL, you can use it to access previews of Codebeamer items.