OpenProject is the leading open source project management software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openproject/docs/api/apiv3/endpoints/revisions.apib

83 lines
5.0 KiB

# Group Revisions
Revisions are sets of updates to files in the context of repositories linked in OpenProject.
## Linked Properties
| Link | Description | Type | Constraints | Supported operations |
|:----------------:| --------------------------------------------------------------------------------------------------| ------------- | ----------- | -------------------- |
| self | This revision | Revision | not null | READ |
| project | The project to which the revision belongs | Project | not null | READ |
| author | The user that added this revision, if the authorName was mapped to a user in OpenProject | User | | READ |
| showRevision | A URL to the repository view (outside APIv3) showing this revision | - | not null | READ |
## Local Properties
| Property | Description | Type | Constraints | Supported operations |
|:-----------------------:| ------------------------------------------------------------------------------------------------------------------------------------------------------------| ----------- | ----------- | -------------------- |
| id | Revision's id, assigned by OpenProject | Integer | x > 0 | READ |
| identifier | The raw SCM identifier of the revision (e.g. full SHA hash) | String | not null | READ |
| formattedIdentifier | The SCM identifier of the revision, formatted (e.g. shortened unambiguous SHA hash). May be identical to identifier in many cases | String | not null | READ |
| authorName | The name of the author that committed this revision. Note that this name is retrieved from the repository and does not identify a user in OpenProject. | String | not null | READ |
| message | The commit message of the revision | Formattable | not null | READ |
| createdAt | The time this revision was committed to the repository | DateTime | not null | READ |
## Revision [/api/v3/revisions/{id}]
+ Model
+ Body
{
"_type": "Revision",
"_links": {
"self": {
"href": "/api/v3/revisions/1"
},
"project" {
"href": "/api/v3/projects/1"
},
"author": {
"href": "/api/v3/users/1"
},
"showRevision": {
"href": "/projects/identifier/repository/revision/11f4b07"
}
},
"id": 1,
"identifier": "11f4b07dff4f4ce9548a52b7d002daca7cd63ec6",
"formattedIdentifier": "11f4b07",
"authorName": "Some Developer",
"message": {
"format": "plain",
"raw": "This revision provides new features\n\nAn elaborate description",
"html": "<p>This revision provides new features<br/><br/>An elaborate description</p>"
},
"createdAt": "2015-07-21T13:36:59Z"
}
## View revision [GET]
+ Parameters
+ id (required, integer, `1`) ... Revision id
+ Response 200 (application/hal+json)
[Revision][]
+ Response 404 (application/hal+json)
Returned if the revision does not exist or the client does not have sufficient permissions
to see it.
**Required permission:** view changesets for the project the repository is created in.
*Note: A client without sufficient permissions shall not be able to test for the existence of a revision.
That's why a 404 is returned here, even if a 403 might be more appropriate.*
+ Body
{
"_type": "Error",
"errorIdentifier": "urn:openproject-org:api:v3:errors:NotFound",
"message": "The specified revision does not exist."
}