Create Assets objects via REST API for various attribute types in Jira Cloud
Platform Notice: Cloud Only - This article only applies to Atlassian apps on the cloud platform.
Summary
This article provides JSON templates for creating JSM Assets objects via the REST API, covering various attribute types. The same JSON template can also be used to update Assets objects through the REST API.
Solution
Using the Assets REST API
Follow the step-by-step instructions to create a new object using the REST API :
Generate an API token for your account and use Basic Authentication.
Get the workspace ID for your site by running the workspace API.
Note: The workspace-ID lookup runs against your site host <site-name>.atlassian.net, but the object-create call in the next step runs against api.atlassian.com, do not swap the two:
https://<site-name>.atlassian.net/rest/servicedeskapi/insight/workspaceUse the POST object create API with the workspace ID to create the object
https://api.atlassian.com/jsm/insight/workspace/{workspaceId}/v1/object/createUse the basic JSON payload template below as the starting point for a new object. Replace the example values with the values for the object being created:
Note: The JSON structure below is the same one used to update an existing object, only the target endpoint differs, for updates use PUT object {id}.
{
"objectTypeId": "250",
"attributes": [
{
"objectTypeAttributeId": "2797",
"objectAttributeValues": [
{
"value": "Test"
}
]
},
{
"objectTypeAttributeId": "2807",
"objectAttributeValues": [
{
"value": "Testing"
}
]
}
]
}ObjectTypeID: You can get it from the Object Type configuration page.
ObjectTypeAttributeID: You can get it from the Object Type attribute configuration page.
Attribute Type JSON Template
Attribute Type | Notes | Example |
|---|---|---|
Text | The value just needs to be the expected text. |
|
Boolean | The value can be either true or false. |
|
Integer | The value must be an exact number. |
|
Float | The value must be a floating number. |
|
Date | The value format is YYYY-MM-DD |
|
Date and Time | The value format is YYYY-MM-DDTHH:mm:ss.sssZ
|
|
URL | The value must start with HTTP:// or HTTPS:// |
|
The value must be a valid email format |
| |
Text Area | The value just needs to be the expected text. |
|
Select | The value must be the selection value name. This is an example of a single value. |
|
Select | The value must be the selection value name. This is an example of multi-value. |
|
IP Address | The value must represent IP Addresses (IPv4). This is an example of a single value. |
|
Reference Object | The value must be the reference object key. This is an example of a single value. |
|
Reference Object | The value must be the reference object key. This is an example of multi-value. |
|
Group | The value must be the group name. This example is for a single value. |
|
Group | The value must be the group name. This example is for a multi-value. |
|
User | The value must be the user's Atlassian Account ID. This example is for a single value. |
|
User | The value must be the user's Atlassian Account ID. This example is for a multi-value. |
|
Project | The value must be the project ID. You can get this via the REST API call |
|
Tips: To get the correct JSON template for the REST API, try creating or updating the object from the UI. While doing so, open Developer Tools > Network, look for the create request, select Payload, then select View Source to see the raw data.
For Postman, the request will look like the following example:
{
"objectTypeId": "23",
"attributes": [
{
"objectTypeAttributeId": "135",
"objectAttributeValues": [
{
"value": "NY-1"
}
]
},Was this helpful?