stage | group | info |
---|---|---|
Manage |
Import and Integrate |
To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments |
Introduced in GitLab 13.12.
The group relations export API partially exports a group's structure as separate files for each top-level relation (for example, milestones, boards, and labels).
The group relations export API is primarily used in group migration by direct transfer and can't be used with the group import and export API.
Start a new group relations export:
POST /groups/:id/export_relations
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | ID of the group owned by the authenticated user. |
batched |
boolean | no | Whether to export in batches. |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/1/export_relations"
{
"message": "202 Accepted"
}
View the status of the relations export:
GET /groups/:id/export_relations/status
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | ID of the group owned by the authenticated user. |
relation |
string | no | Name of the project top-level relation to view. |
curl --request GET --header "PRIVATE-TOKEN: <your_access_token>" \
"https://gitlab.example.com/api/v4/groups/1/export_relations/status"
The status can be one of the following:
-
0
:started
-
1
:finished
-
-1
:failed
-
0
-started
-
1
-finished
-
-1
-failed
[
{
"relation": "badges",
"status": 1,
"error": null,
"updated_at": "2021-05-04T11:25:20.423Z",
"batched": true,
"batches": [
{
"status": 1,
"batch_number": 1,
"objects_count": 1,
"error": null,
"updated_at": "2021-05-04T11:25:20.423Z"
}
]
},
{
"relation": "boards",
"status": 1,
"error": null,
"updated_at": "2021-05-04T11:25:20.085Z",
"batched": false
}
]
Download the finished relations export:
GET /groups/:id/export_relations/download
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | ID of the group owned by the authenticated user. |
relation |
string | yes | Name of the group top-level relation to download. |
batched |
boolean | no | Whether the export is batched. |
batch_number |
integer | no | Number of export batch to download. |
curl --header "PRIVATE-TOKEN: <your_access_token>" --remote-header-name \
--remote-name "https://gitlab.example.com/api/v4/groups/1/export_relations/download?relation=labels"
ls labels.ndjson.gz
labels.ndjson.gz