PUT /repositories/{workspace}/{repo_slug}/commit/{commit}/reports/{reportId}
Creates or updates a report for the specified commit. To upload a report, make sure to generate an ID that is unique across all reports for that commit. If you want to use an existing id from your own system, we recommend prefixing it with your system's name to avoid collisions, for example, mySystem-001.
Sample cURL request:
curl --request PUT 'https://api.bitbucket.org/2.0/repositories/<username>/<reposity-name>/commit/<commit-hash>/reports/mysystem-001' \
--header 'Content-Type: application/json' \
--data-raw '{
"title": "Security scan report",
"details": "This pull request introduces 10 new dependency vulnerabilities.",
"report_type": "SECURITY",
"reporter": "mySystem",
"link": "http://www.mysystem.com/reports/001",
"result": "FAILED",
"data": [
{
"title": "Duration (seconds)",
"type": "DURATION",
"value": 14
},
{
"title": "Safe to merge?",
"type": "BOOLEAN",
"value": false
}
]
}'
Possible field values:
report_type: SECURITY, COVERAGE, TEST, BUG result: PASSED, FAILED, PENDING data.type: BOOLEAN, DATE, DURATION, LINK, NUMBER, PERCENTAGE, TEXT
Data field formats
Type Field | Value Field Type | Value Field Display |
---|---|---|
None/ Omitted | Number, String or Boolean (not an array or object) | Plain text |
BOOLEAN | Boolean | The value will be read as a JSON boolean and displayed as 'Yes' or 'No'. |
DATE | Number | The value will be read as a JSON number in the form of a Unix timestamp (milliseconds) and will be displayed as a relative date if the date is less than one week ago, otherwise it will be displayed as an absolute date. |
DURATION | Number | The value will be read as a JSON number in milliseconds and will be displayed in a human readable duration format. |
LINK | Object: {"text": "Link text here", "href": "https://link.to.annotation/in/external/tool"} | The value will be read as a JSON object containing the fields "text" and "href" and will be displayed as a clickable link on the report. |
NUMBER | Number | The value will be read as a JSON number and large numbers will be displayed in a human readable format (e.g. 14.3k). |
PERCENTAGE | Number (between 0 and 100) | The value will be read as a JSON number between 0 and 100 and will be displayed with a percentage sign. |
TEXT | String | The value will be read as a JSON string and will be displayed as-is |
Please refer to the Code Insights documentation for more information.
Servers
- https://api.bitbucket.org/2.0
Path parameters
Name | Type | Required | Description |
---|---|---|---|
commit |
String | Yes |
The commit the report belongs to. |
repo_slug |
String | Yes |
The repository. |
workspace |
String | Yes |
This can either be the workspace ID (slug) or the workspace UUID surrounded by curly-braces, for example |
reportId |
String | Yes |
Either the uuid or external-id of the report. |
Request headers
Name | Type | Required | Description |
---|---|---|---|
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/json" |
Request body fields
Name | Type | Required | Description |
---|---|---|---|
external_id |
String | No |
ID of the report provided by the report creator. It can be used to identify the report as an alternative to it's generated uuid. It is not used by Bitbucket, but only by the report creator for updating or deleting this specific report. Needs to be unique. |
uuid |
String | No |
The UUID that can be used to identify the report. |
created_on |
String | No |
The timestamp when the report was created. |
logo_url |
String | No |
A URL to the report logo. If none is provided, the default insights logo will be used. |
details |
String | No |
A string to describe the purpose of the report. |
data[] |
Array | No |
An array of data fields to display information on the report. Maximum 10. |
data[].type |
String | No |
The type of data contained in the value field. If not provided, then the value will be detected as a boolean, number or string. Possible values:
|
data[].title |
String | No |
A string describing what this data field represents. |
data[].value |
Object | No |
The value of the data element. |
report_type |
String | No |
The type of the report. Possible values:
|
type |
String | Yes | |
title |
String | No |
The title of the report. |
remote_link_enabled |
Boolean | No |
If enabled, a remote link is created in Jira for the issue associated with the commit the report belongs to. |
updated_on |
String | No |
The timestamp when the report was updated. |
reporter |
String | No |
A string to describe the tool or company who created the report. |
link |
String | No |
A URL linking to the results of the report in an external tool. |
result |
String | No |
The state of the report. May be set to PENDING and later updated. Possible values:
|
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.