GitLab CI/CD · Capability
GitLab API — group_import_and_export
GitLab API — group_import_and_export. 7 operations. Lead operation: Create a new group import. Self-contained Naftiko capability covering one Gitlab Ci business surface.
What You Can Do
POST
Postapiv4groupsimport
— Create a new group import
/v1/api/v4/groups/import
POST
Postapiv4groupsimportauthorize
— Workhorse authorize the group import upload
/v1/api/v4/groups/import/authorize
POST
Postapiv4groupsidexport
— Start export
/v1/api/v4/groups/{id}/export
GET
Getapiv4groupsidexportdownload
— Download export
/v1/api/v4/groups/{id}/export/download
POST
Postapiv4groupsidexportrelations
— Start relations export
/v1/api/v4/groups/{id}/export-relations
GET
Getapiv4groupsidexportrelationsdownload
— Download relations export
/v1/api/v4/groups/{id}/export-relations/download
GET
Getapiv4groupsidexportrelationsstatus
— Relations export status
/v1/api/v4/groups/{id}/export-relations/status
MCP Tools
create-new-group-import
Create a new group import
workhorse-authorize-group-import-upload
Workhorse authorize the group import upload
start-export
Start export
download-export
Download export
read-only
idempotent
start-relations-export
Start relations export
download-relations-export
Download relations export
read-only
idempotent
relations-export-status
Relations export status
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: GitLab API — group_import_and_export
description: 'GitLab API — group_import_and_export. 7 operations. Lead operation: Create a new group import. Self-contained
Naftiko capability covering one Gitlab Ci business surface.'
tags:
- Gitlab Ci
- group_import_and_export
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
GITLAB_CI_API_KEY: GITLAB_CI_API_KEY
capability:
consumes:
- type: http
namespace: gitlab-ci-group-import-and-export
baseUri: https://gitlab.com
description: GitLab API — group_import_and_export business capability. Self-contained, no shared references.
resources:
- name: api-v4-groups-import
path: /api/v4/groups/import
operations:
- name: postapiv4groupsimport
method: POST
description: Create a new group import
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: path
in: formData
type: string
description: Group path
required: true
- name: name
in: formData
type: string
description: Group name
required: true
- name: file
in: formData
type: file
description: The group export file to be imported
required: true
- name: parent_id
in: formData
type: integer
description: The ID of the parent group that the group will be imported into. Defaults to the current user's namespace.
- name: organization_id
in: formData
type: integer
description: The ID of the organization that the group will be part of.
- name: api-v4-groups-import-authorize
path: /api/v4/groups/import/authorize
operations:
- name: postapiv4groupsimportauthorize
method: POST
description: Workhorse authorize the group import upload
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: api-v4-groups-id-export
path: /api/v4/groups/{id}/export
operations:
- name: postapiv4groupsidexport
method: POST
description: Start export
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: The ID of a group
required: true
- name: api-v4-groups-id-export-download
path: /api/v4/groups/{id}/export/download
operations:
- name: getapiv4groupsidexportdownload
method: GET
description: Download export
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: The ID of a group
required: true
- name: api-v4-groups-id-export_relations
path: /api/v4/groups/{id}/export_relations
operations:
- name: postapiv4groupsidexportrelations
method: POST
description: Start relations export
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: The ID of a group
required: true
- name: postApiV4GroupsIdExportRelations
in: body
type: string
required: true
- name: api-v4-groups-id-export_relations-download
path: /api/v4/groups/{id}/export_relations/download
operations:
- name: getapiv4groupsidexportrelationsdownload
method: GET
description: Download relations export
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: The ID of a group
required: true
- name: relation
in: query
type: string
description: Group relation name
required: true
- name: batched
in: query
type: boolean
description: Whether to download in batches
- name: batch_number
in: query
type: integer
description: Batch number to download
- name: api-v4-groups-id-export_relations-status
path: /api/v4/groups/{id}/export_relations/status
operations:
- name: getapiv4groupsidexportrelationsstatus
method: GET
description: Relations export status
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
description: The ID of a group
required: true
- name: relation
in: query
type: string
description: Group relation name
exposes:
- type: rest
namespace: gitlab-ci-group-import-and-export-rest
port: 8080
description: REST adapter for GitLab API — group_import_and_export. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/api/v4/groups/import
name: api-v4-groups-import
description: REST surface for api-v4-groups-import.
operations:
- method: POST
name: postapiv4groupsimport
description: Create a new group import
call: gitlab-ci-group-import-and-export.postapiv4groupsimport
with:
path: rest.path
name: rest.name
file: rest.file
parent_id: rest.parent_id
organization_id: rest.organization_id
outputParameters:
- type: object
mapping: $.
- path: /v1/api/v4/groups/import/authorize
name: api-v4-groups-import-authorize
description: REST surface for api-v4-groups-import-authorize.
operations:
- method: POST
name: postapiv4groupsimportauthorize
description: Workhorse authorize the group import upload
call: gitlab-ci-group-import-and-export.postapiv4groupsimportauthorize
outputParameters:
- type: object
mapping: $.
- path: /v1/api/v4/groups/{id}/export
name: api-v4-groups-id-export
description: REST surface for api-v4-groups-id-export.
operations:
- method: POST
name: postapiv4groupsidexport
description: Start export
call: gitlab-ci-group-import-and-export.postapiv4groupsidexport
with:
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/api/v4/groups/{id}/export/download
name: api-v4-groups-id-export-download
description: REST surface for api-v4-groups-id-export-download.
operations:
- method: GET
name: getapiv4groupsidexportdownload
description: Download export
call: gitlab-ci-group-import-and-export.getapiv4groupsidexportdownload
with:
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/api/v4/groups/{id}/export-relations
name: api-v4-groups-id-export-relations
description: REST surface for api-v4-groups-id-export_relations.
operations:
- method: POST
name: postapiv4groupsidexportrelations
description: Start relations export
call: gitlab-ci-group-import-and-export.postapiv4groupsidexportrelations
with:
id: rest.id
postApiV4GroupsIdExportRelations: rest.postApiV4GroupsIdExportRelations
outputParameters:
- type: object
mapping: $.
- path: /v1/api/v4/groups/{id}/export-relations/download
name: api-v4-groups-id-export-relations-download
description: REST surface for api-v4-groups-id-export_relations-download.
operations:
- method: GET
name: getapiv4groupsidexportrelationsdownload
description: Download relations export
call: gitlab-ci-group-import-and-export.getapiv4groupsidexportrelationsdownload
with:
id: rest.id
relation: rest.relation
batched: rest.batched
batch_number: rest.batch_number
outputParameters:
- type: object
mapping: $.
- path: /v1/api/v4/groups/{id}/export-relations/status
name: api-v4-groups-id-export-relations-status
description: REST surface for api-v4-groups-id-export_relations-status.
operations:
- method: GET
name: getapiv4groupsidexportrelationsstatus
description: Relations export status
call: gitlab-ci-group-import-and-export.getapiv4groupsidexportrelationsstatus
with:
id: rest.id
relation: rest.relation
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: gitlab-ci-group-import-and-export-mcp
port: 9090
transport: http
description: MCP adapter for GitLab API — group_import_and_export. One tool per consumed operation, routed inline through
this capability's consumes block.
tools:
- name: create-new-group-import
description: Create a new group import
hints:
readOnly: false
destructive: false
idempotent: false
call: gitlab-ci-group-import-and-export.postapiv4groupsimport
with:
path: tools.path
name: tools.name
file: tools.file
parent_id: tools.parent_id
organization_id: tools.organization_id
outputParameters:
- type: object
mapping: $.
- name: workhorse-authorize-group-import-upload
description: Workhorse authorize the group import upload
hints:
readOnly: false
destructive: false
idempotent: false
call: gitlab-ci-group-import-and-export.postapiv4groupsimportauthorize
outputParameters:
- type: object
mapping: $.
- name: start-export
description: Start export
hints:
readOnly: false
destructive: false
idempotent: false
call: gitlab-ci-group-import-and-export.postapiv4groupsidexport
with:
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: download-export
description: Download export
hints:
readOnly: true
destructive: false
idempotent: true
call: gitlab-ci-group-import-and-export.getapiv4groupsidexportdownload
with:
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: start-relations-export
description: Start relations export
hints:
readOnly: false
destructive: false
idempotent: false
call: gitlab-ci-group-import-and-export.postapiv4groupsidexportrelations
with:
id: tools.id
postApiV4GroupsIdExportRelations: tools.postApiV4GroupsIdExportRelations
outputParameters:
- type: object
mapping: $.
- name: download-relations-export
description: Download relations export
hints:
readOnly: true
destructive: false
idempotent: true
call: gitlab-ci-group-import-and-export.getapiv4groupsidexportrelationsdownload
with:
id: tools.id
relation: tools.relation
batched: tools.batched
batch_number: tools.batch_number
outputParameters:
- type: object
mapping: $.
- name: relations-export-status
description: Relations export status
hints:
readOnly: true
destructive: false
idempotent: true
call: gitlab-ci-group-import-and-export.getapiv4groupsidexportrelationsstatus
with:
id: tools.id
relation: tools.relation
outputParameters:
- type: object
mapping: $.