Checkout API version from Git
POST /apim/checkout/{path_to_apiversion}
Overview
This API checks out the specified Git branch for the specified API
version.API version (equivalent to git checkout).
You can use Git APIs in Continuous Integration / Continuous Deployment (CI/CD) workflows to pull files from Git repositories. You can use this API either to update a project to a newly tagged version or to revert to a previously stable tag.
- The API version must exist.
- You can track a maximum of 1000 assets per API version. If either a check-in would exceed 1000 assets in the repository or if you try to check out a project with more than 1000 assets, an error is thrown.
Prerequisites
- Write access to the assets to be added or updated
Limitations
- You cannot use SnapLogic service accounts to call any of the SnapLogic API Management Git operation APIs.
Request
POST https://{controlplane_path}/api/1/rest/public/apim/checkout/{path_to_apiversion}
Path parameters
| Key | Description |
|---|---|
controlplane_path |
Required. The path to the SnapLogic control plane:
elastic.snaplogic.com
For the UAT or EMEA control plane, substitute the name for elastic. For
example:
|
path_to_apiversion |
Required. The path to the SnapLogic API version.
Format: Important: The path comparison is case-sensitive.
|
Query parameters
None.
Request header
Basic authentication
In the request header, specify Basic for authorization, add your credentials (Login and password of your SnapLogic user or service account), and specify application/json for content type.
For more details on accounts refer to Manage accounts.
Authorization: Basic {base64_encoded <email>:<password>}
Content-Type: application/json
Example of Basic authenthication using Postman
Request body
{
"repo":"...",
"ref": "...",
"hard_reset": true,
"discard_untracked_file": true
}
| Key | Type | Description |
|---|---|---|
repo |
string | The Git repository containing the files to use with the new API version. |
ref |
string | The name of the branch containing the files to use with the new API version. |
hard_reset |
boleean | If true, modified assets are discarded and new assets are
force-pulled from the repository.Default: False |
discard_untracked_file |
boleean | If true, untracked assets are discarded.Default: False |
Response
Response body
{
"response_map": {
"status": "",
"overwritten": [ ... ],
"updated": [ ... ],
"error_msgs": [ ... ],
"created": [ ... ],
"ignored": [ ... ]
},
"http_status_code": 200
}
| Key | Type | Description |
|---|---|---|
status |
string | The status of the Git checkout command performed using the Public API. |
overwritten |
array | The list of files that were overwritten in the API version in the SnapLogic specified project. |
ignored |
array | Asset files that exist in the Git repository but were not copied into the project. |
updated |
array | The list of files that were updated in the API version in SnapLogic specified project. |
created |
array | Assets files that were copied from the Git respository into the API version |
error_msgs |
array/string | Any error messages that appear when the Git checkout command is performed. |