Proyectos
Todo lo que se hace con un proyecto: crearlo (para el usuario o para otro), leerlo, listarlo, actualizarlo, hacer un fork, marcarlo con estrella, archivarlo, transferirlo, borrarlo y restaurarlo, con sus forks, quienes lo marcan, usuarios, grupos, lenguajes, estadísticas y almacenamiento; sus miembros y su compartición con grupos; webhooks; etiquetas, hitos, tableros e insignias; mirrors de push; Pages y sus dominios propios; integraciones, incluidas las de grupo y la integración de Datadog de grupo; subidas de Markdown y su avatar; exportación e importación; mantenimiento; y sus cuentas de servicio con sus tokens de acceso personales.
A partir de Premium el proyecto trae también reglas y ajustes de aprobación, reglas de push, mirrors de pull, reglas de rama de destino y la evaluación de paquetes del dependency firewall; a partir de Ultimate, sus ajustes de seguridad. El contenido del repositorio, las ramas, los issues y los merge requests tienen sus propias páginas.
project.transfer necesita el rol Owner en el proyecto y permiso para crear proyectos en el namespace de destino. Desde GitLab 19.4 GitLab aplica la transferencia en segundo plano (GitLab 18.11 a 19.3 lo hacen cuando está activada la feature flag groups_and_projects_async_transfer): responde con el proyecto donde aún está, y un worker lo mueve y comprueba allí que el nombre y la ruta están libres en el namespace de destino. La acción vuelve a leer el proyecto cada 2 segundos durante un máximo de 45 segundos. GitLab informa de un traslado fallido solo con una tarea pendiente (to-do) de acción transfer_failed para el usuario que lo pidió, que la acción convierte en un error; un traslado que para entonces ni se ha completado ni ha fallado se responde con transfer_queued activado. Vuelve a leer el proyecto más tarde con project.get, busca esa tarea con user.todo_list y no envíes la transferencia otra vez, porque GitLab ejecuta también una segunda transferencia mientras la primera está en cola.
project.dependency_firewall_evaluate es un experimento que GitLab 19.4 introdujo detrás de la feature flag dependency_firewall_phase1, desactivada por defecto, y mientras está desactivada cada proyecto de la instancia responde 404; la acción responde a ese 404 nombrando primero la flag. Con la flag activada, GitLab evalúa un paquete solo para un proyecto en el que el Dependency Firewall está activado, y responde 422 (dependency_firewall_not_enforced) para cualquier otro: en una instancia self-managed lo activa un administrador en Admin > Settings > Security and compliance > Dependency firewall, que ninguna API configura, y en GitLab.com lo activa un Owner en los ajustes de seguridad del grupo de nivel superior. Hasta que llegue un veredicto, trata el paquete como no evaluado y no como permitido.
Preguntas de ejemplo
Sección titulada «Preguntas de ejemplo»- “Lista mis proyectos de GitLab”
- “Crea un proyecto privado llamado my-app en el grupo platform”
- “¿Quién tiene acceso al proyecto 42?”
- “Añade un mirror de push al servidor de copias de seguridad”
Cómo llamarlo
Sección titulada «Cómo llamarlo»- Dinámica, la superficie predeterminada: llama a
gitlab_execute_actionconactionigual al ID de la acción, comoproject.approval_config_change, y sus parámetros enparams.gitlab_find_actionencuentra un ID a partir de una descripción de la tarea. - Meta (
GITLAB_MCP_TOOL_SURFACE=meta): llama agitlab_projectconactionigual al nombre de la acción, comoapproval_config_change, y sus parámetros enparams. - Individual (
GITLAB_MCP_TOOL_SURFACE=individual): llama a la herramienta propia de la acción, comogitlab_project_approval_config_change, pasándole directamente sus parámetros.
Disponibilidad
Sección titulada «Disponibilidad»Cuántas de estas acciones sirve una instancia en cada nivel, de un total de 144:
- Free: 124
- Premium: 142
- Ultimate: 144
Acciones de solo lectura: 59 de 144, las que conserva un despliegue en modo de solo lectura. A un token con read_api y sin api se le sirven 58 de las 144.
Acciones
Sección titulada «Acciones»La descripción de cada acción, y la de cada uno de sus parámetros, es el texto que sirve el servidor para ella en la superficie predeterminada, citado tal cual; por eso está en inglés. Las líneas de token dicen lo que exige GitLab 19.4.1 a un token para las peticiones que envía cada acción; en una instancia con Admin Mode activado, una acción que solo puede ejecutar un administrador necesita además admin_mode. Una acción destructiva solo se ejecuta una vez confirmada, salvo que GITLAB_MCP_YOLO_MODE (o AUTOPILOT) se salte ese paso: la superficie dinámica necesita confirm: true en gitlab_execute_action, y las otras dos aceptan un parámetro confirm o la pregunta del cliente (Acciones destructivas). Un parámetro seguido de un nivel entre paréntesis solo se sirve a partir de ese nivel.
| Acción | Nivel | Individual |
|---|---|---|
project.approval_config_change | Premium | gitlab_project_approval_config_change |
project.approval_config_get | Premium | gitlab_project_approval_config_get |
project.approval_rule_create | Premium | gitlab_project_approval_rule_create |
project.approval_rule_delete | Premium | gitlab_project_approval_rule_delete |
project.approval_rule_get | Premium | gitlab_project_approval_rule_get |
project.approval_rule_list | Premium | gitlab_project_approval_rule_list |
project.approval_rule_update | Premium | gitlab_project_approval_rule_update |
project.archive | Free | gitlab_project_archive |
project.badge_add | Free | gitlab_add_project_badge |
project.badge_delete | Free | gitlab_delete_project_badge |
project.badge_edit | Free | gitlab_edit_project_badge |
project.badge_get | Free | gitlab_get_project_badge |
project.badge_list | Free | gitlab_list_project_badges |
project.badge_preview | Free | gitlab_preview_project_badge |
project.board_create | Free | gitlab_board_create |
project.board_delete | Free | gitlab_board_delete |
project.board_get | Free | gitlab_board_get |
project.board_list | Free | gitlab_board_list |
project.board_list_create | Free | gitlab_board_list_create |
project.board_list_delete | Free | gitlab_board_list_delete |
project.board_list_get | Free | gitlab_board_list_get |
project.board_list_list | Free | gitlab_board_list_lists |
project.board_list_update | Free | gitlab_board_list_update |
project.board_update | Free | gitlab_board_update |
project.create | Free | gitlab_project_create |
project.create_for_user | Free | gitlab_project_create_for_user |
project.create_fork_relation | Free | gitlab_project_create_fork_relation |
project.delete | Free | gitlab_project_delete |
project.delete_fork_relation | Free | gitlab_project_delete_fork_relation |
project.delete_shared_group | Free | gitlab_project_delete_shared_group |
project.dependency_firewall_evaluate | Premium | gitlab_project_dependency_firewall_evaluate |
project.download_avatar | Free | gitlab_project_download_avatar |
project.export_download | Free | gitlab_download_project_export |
project.export_schedule | Free | gitlab_schedule_project_export |
project.export_status | Free | gitlab_get_project_export_status |
project.fork | Free | gitlab_project_fork |
project.get | Free | gitlab_project_get |
project.hook_add | Free | gitlab_project_hook_add |
project.hook_delete | Free | gitlab_project_hook_delete |
project.hook_delete_custom_header | Free | gitlab_project_hook_delete_custom_header |
project.hook_delete_url_variable | Free | gitlab_project_hook_delete_url_variable |
project.hook_edit | Free | gitlab_project_hook_edit |
project.hook_get | Free | gitlab_project_hook_get |
project.hook_list | Free | gitlab_project_hook_list |
project.hook_set_custom_header | Free | gitlab_project_hook_set_custom_header |
project.hook_set_url_variable | Free | gitlab_project_hook_set_url_variable |
project.hook_test | Free | gitlab_project_hook_test |
project.import_from_file | Free | gitlab_import_project_from_file |
project.import_status | Free | gitlab_get_project_import_status |
project.integration_delete | Free | gitlab_delete_integration |
project.integration_delete_group | Free | gitlab_delete_group_integration |
project.integration_delete_group_datadog | Free | gitlab_delete_group_datadog_integration |
project.integration_get | Free | gitlab_get_integration |
project.integration_get_group | Free | gitlab_get_group_integration |
project.integration_get_group_datadog | Free | gitlab_get_group_datadog_integration |
project.integration_list | Free | gitlab_list_integrations |
project.integration_list_group | Free | gitlab_list_group_integrations |
project.integration_set | Free | gitlab_set_integration |
project.integration_set_group | Free | gitlab_set_group_integration |
project.integration_set_group_datadog | Free | gitlab_set_group_datadog_integration |
project.integration_set_jira | Free | gitlab_set_jira_integration |
project.label_create | Free | gitlab_label_create |
project.label_delete | Free | gitlab_label_delete |
project.label_get | Free | gitlab_label_get |
project.label_list | Free | gitlab_label_list |
project.label_promote | Free | gitlab_label_promote |
project.label_subscribe | Free | gitlab_label_subscribe |
project.label_unsubscribe | Free | gitlab_label_unsubscribe |
project.label_update | Free | gitlab_label_update |
project.languages | Free | gitlab_project_languages |
project.list | Free | gitlab_project_list |
project.list_forks | Free | gitlab_project_list_forks |
project.list_groups | Free | gitlab_project_list_groups |
project.list_invited_groups | Free | gitlab_project_list_invited_groups |
project.list_starrers | Free | gitlab_project_list_starrers |
project.list_user_contributed | Free | gitlab_project_list_user_contributed |
project.list_user_projects | Free | gitlab_project_list_user_projects |
project.list_user_starred | Free | gitlab_project_list_user_starred |
project.list_users | Free | gitlab_project_list_users |
project.member_add | Free | gitlab_project_member_add |
project.member_delete | Free | gitlab_project_member_delete |
project.member_edit | Free | gitlab_project_member_edit |
project.member_get | Free | gitlab_project_member_get |
project.member_inherited | Free | gitlab_project_member_get_inherited |
project.members | Free | gitlab_project_members_list |
project.milestone_create | Free | gitlab_milestone_create |
project.milestone_delete | Free | gitlab_milestone_delete |
project.milestone_get | Free | gitlab_milestone_get |
project.milestone_issues | Free | gitlab_milestone_issues |
project.milestone_list | Free | gitlab_milestone_list |
project.milestone_merge_requests | Free | gitlab_milestone_merge_requests |
project.milestone_update | Free | gitlab_milestone_update |
project.mirror_add | Free | gitlab_add_project_mirror |
project.mirror_delete | Free | gitlab_delete_project_mirror |
project.mirror_edit | Free | gitlab_edit_project_mirror |
project.mirror_force_push | Free | gitlab_force_push_mirror_update |
project.mirror_get | Free | gitlab_get_project_mirror |
project.mirror_get_public_key | Free | gitlab_get_project_mirror_public_key |
project.mirror_list | Free | gitlab_list_project_mirrors |
project.pages_domain_create | Free | gitlab_pages_domain_create |
project.pages_domain_delete | Free | gitlab_pages_domain_delete |
project.pages_domain_get | Free | gitlab_pages_domain_get |
project.pages_domain_list | Free | gitlab_pages_domain_list |
project.pages_domain_list_all | Free | gitlab_pages_domain_list_all |
project.pages_domain_update | Free | gitlab_pages_domain_update |
project.pages_get | Free | gitlab_pages_get |
project.pages_unpublish | Free | gitlab_pages_unpublish |
project.pages_update | Free | gitlab_pages_update |
project.pull_mirror_configure | Premium | gitlab_project_pull_mirror_configure |
project.pull_mirror_get | Premium | gitlab_project_pull_mirror_get |
project.push_rule_add | Premium | gitlab_project_add_push_rule |
project.push_rule_delete | Premium | gitlab_project_delete_push_rule |
project.push_rule_edit | Premium | gitlab_project_edit_push_rule |
project.push_rule_get | Premium | gitlab_project_get_push_rules |
project.repository_storage_get | Free | gitlab_project_repository_storage_get |
project.restore | Free | gitlab_project_restore |
project.security_settings_get | Ultimate | gitlab_get_project_security_settings |
project.security_settings_update | Ultimate | gitlab_update_project_secret_push_protection |
project.service_account_create | Free | gitlab_project_service_account_create |
project.service_account_delete | Free | gitlab_project_service_account_delete |
project.service_account_get | Free | gitlab_project_service_account_get |
project.service_account_list | Free | gitlab_project_service_account_list |
project.service_account_pat_create | Free | gitlab_project_service_account_pat_create |
project.service_account_pat_list | Free | gitlab_project_service_account_pat_list |
project.service_account_pat_revoke | Free | gitlab_project_service_account_pat_revoke |
project.service_account_pat_rotate | Free | gitlab_project_service_account_pat_rotate |
project.service_account_update | Free | gitlab_project_service_account_update |
project.share_with_group | Free | gitlab_project_share_with_group |
project.star | Free | gitlab_project_star |
project.start_housekeeping | Free | gitlab_project_start_housekeeping |
project.start_mirroring | Premium | gitlab_project_start_mirroring |
project.statistics_get | Free | gitlab_get_project_statistics |
project.target_branch_rule_create | Premium | gitlab_project_create_target_branch_rule |
project.target_branch_rule_delete | Premium | gitlab_project_delete_target_branch_rule |
project.target_branch_rule_list | Premium | gitlab_project_list_target_branch_rules |
project.transfer | Free | gitlab_project_transfer |
project.unarchive | Free | gitlab_project_unarchive |
project.unstar | Free | gitlab_project_unstar |
project.update | Free | gitlab_project_update |
project.upload | Free | gitlab_project_upload |
project.upload_avatar | Free | gitlab_project_upload_avatar |
project.upload_delete | Free | gitlab_project_upload_delete |
project.upload_delete_by_secret | Free | gitlab_project_upload_delete_by_secret |
project.upload_list | Free | gitlab_project_upload_list |
project.approval_config_change
Sección titulada «project.approval_config_change»Change a project’s approval configuration. Returns: the updated approval settings. See also:
project.approval_config_get,project.approval_rule_create.
- Meta-herramienta:
gitlab_project, acciónapproval_config_change - Herramienta individual:
gitlab_project_approval_config_change - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Approval Configuration: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
approvals_before_merge | integer | no | Number of approvals required before merge |
disable_overriding_approvers_per_merge_request | boolean | no | Prevent overriding approvers per MR |
merge_requests_author_approval | boolean | no | Allow MR author to approve their own MR |
merge_requests_disable_committers_approval | boolean | no | Prevent MR committers from approving |
require_password_to_approve | boolean | no | Require the approver’s password to approve (deprecated: use require_reauthentication_to_approve) |
require_reauthentication_to_approve | boolean | no | Require reauthentication to approve |
reset_approvals_on_push | boolean | no | Reset approvals when new commits are pushed |
selective_code_owner_removals | boolean | no | Only remove code owner approvals when relevant files change |
project.approval_config_get
Sección titulada «project.approval_config_get»Get a project’s approval configuration. Returns: the approval settings such as reset_approvals_on_push and author approval flags. See also:
project.approval_config_change,project.approval_rule_list.
- Meta-herramienta:
gitlab_project, acciónapproval_config_get - Herramienta individual:
gitlab_project_approval_config_get - Nivel: Premium
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Approval Configuration: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.approval_rule_create
Sección titulada «project.approval_rule_create»Create a project approval rule. Returns: the created rule with name, approvals_required, users, and groups. See also:
project.approval_rule_list,project.approval_rule_update.
- Meta-herramienta:
gitlab_project, acciónapproval_rule_create - Herramienta individual:
gitlab_project_approval_rule_create - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Approval Rule: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
approvals_required | integer | sí | Number of approvals required |
name | string | sí | Rule name |
project_id | string/integer | sí | Project ID or URL-encoded path |
applies_to_all_protected_branches | boolean | no | Apply this rule to all protected branches |
group_ids | integer[] | no | Group IDs to assign as approvers |
protected_branch_ids | integer[] | no | Protected branch IDs to scope the rule to |
report_type | string | no | Report type for report-approver rules (e.g. code_coverage, license_scanning) |
rule_type | string (any_approver, regular, report_approver) | no | Rule type: any_approver (the pre-configured default rule with approvals_required 0), regular (an ordinary approval rule), or report_approver (reserved for rules GitLab creates from merge request approval policies, do not send it) |
user_ids | integer[] | no | User IDs to assign as approvers |
usernames | string[] | no | Usernames to assign as approvers |
project.approval_rule_delete
Sección titulada «project.approval_rule_delete»Delete a project approval rule. Returns: a success confirmation naming the rule and project. See also:
project.approval_rule_list,project.approval_config_get.
- Meta-herramienta:
gitlab_project, acciónapproval_rule_delete - Herramienta individual:
gitlab_project_approval_rule_delete - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Approval Rule: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
rule_id | integer | sí | Approval rule ID to delete |
project.approval_rule_get
Sección titulada «project.approval_rule_get»Get a single project approval rule. Returns: the rule with name, approvals_required, users, and groups. See also:
project.approval_rule_list,project.approval_rule_update.
- Meta-herramienta:
gitlab_project, acciónapproval_rule_get - Herramienta individual:
gitlab_project_approval_rule_get - Nivel: Premium
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Approval Rule: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
rule_id | integer | sí | Approval rule ID |
project.approval_rule_list
Sección titulada «project.approval_rule_list»List a project’s approval rules. Returns: rules with name, approvals_required, eligible approvers, and groups, plus pagination metadata. See also:
project.approval_rule_get,project.approval_rule_create.
- Meta-herramienta:
gitlab_project, acciónapproval_rule_list - Herramienta individual:
gitlab_project_approval_rule_list - Nivel: Premium
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Approval Rule: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Keyset ordering column (for keyset pagination) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Keyset sort direction (asc, desc) |
project.approval_rule_update
Sección titulada «project.approval_rule_update»Update a project approval rule. Returns: the updated rule with name, approvals_required, users, and groups. See also:
project.approval_rule_get,project.approval_rule_delete.
- Meta-herramienta:
gitlab_project, acciónapproval_rule_update - Herramienta individual:
gitlab_project_approval_rule_update - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Approval Rule: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
rule_id | integer | sí | Approval rule ID |
applies_to_all_protected_branches | boolean | no | Apply this rule to all protected branches |
approvals_required | integer | no | Updated number of approvals required |
group_ids | integer[] | no | Updated group IDs to assign as approvers |
name | string | no | Updated rule name |
protected_branch_ids | integer[] | no | Updated protected branch IDs |
user_ids | integer[] | no | Updated user IDs to assign as approvers |
usernames | string[] | no | Updated usernames to assign as approvers |
project.archive
Sección titulada «project.archive»Archive a project, making it read-only in GitLab. Returns: the project with archived set to true. See also:
project.unarchive,project.get.
- Meta-herramienta:
gitlab_project, acciónarchive - Herramienta individual:
gitlab_project_archive - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Archive en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.badge_add
Sección titulada «project.badge_add»Add a badge to a project. Returns: the created badge with id, name, link_url, image_url, rendered_link_url, rendered_image_url, and kind. See also:
project.badge_list,project.badge_get.
- Meta-herramienta:
gitlab_project, acciónbadge_add - Herramienta individual:
gitlab_add_project_badge - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Badge: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
image_url | string | sí | Badge image URL (supports placeholders) |
link_url | string | sí | Badge link URL (supports placeholders) |
project_id | string/integer | sí | Project ID or URL-encoded path |
name | string | no | Badge name |
project.badge_delete
Sección titulada «project.badge_delete»Delete a project badge by badge_id. Returns: a success confirmation. See also:
project.badge_list,project.badge_get.
- Meta-herramienta:
gitlab_project, acciónbadge_delete - Herramienta individual:
gitlab_delete_project_badge - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Badge: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
badge_id | integer | sí | Badge ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.badge_edit
Sección titulada «project.badge_edit»Edit a project badge’s name, link_url, or image_url. Returns: the updated badge with id, name, link_url, image_url, rendered_link_url, rendered_image_url, and kind. See also:
project.badge_list,project.badge_get.
- Meta-herramienta:
gitlab_project, acciónbadge_edit - Herramienta individual:
gitlab_edit_project_badge - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Badge: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
badge_id | integer | sí | Badge ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
image_url | string | no | New badge image URL |
link_url | string | no | New badge link URL |
name | string | no | New badge name. Use name, not new_name |
project.badge_get
Sección titulada «project.badge_get»Get a single project badge by badge_id. Returns: the badge with id, name, link_url, image_url, rendered_link_url, rendered_image_url, and kind. See also:
project.badge_list,project.badge_edit.
- Meta-herramienta:
gitlab_project, acciónbadge_get - Herramienta individual:
gitlab_get_project_badge - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Badge: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
badge_id | integer | sí | Badge ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.badge_list
Sección titulada «project.badge_list»List badges for a project, including inherited group badges. Returns: badges (id, name, link_url, image_url, rendered_link_url, rendered_image_url, and kind) plus pagination metadata. See also:
project.badge_get,project.badge_add.
- Meta-herramienta:
gitlab_project, acciónbadge_list - Herramienta individual:
gitlab_list_project_badges - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Badge: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
name | string | no | Filter by badge name |
order_by | string | no | Column to order results by for keyset pagination (e.g. id, name) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
project.badge_preview
Sección titulada «project.badge_preview»Preview how a project badge’s link_url and image_url resolve after placeholder interpolation, without persisting it. Returns: the rendered badge with id, name, link_url, image_url, rendered_link_url, rendered_image_url, and kind. See also:
project.badge_add,project.badge_list.
- Meta-herramienta:
gitlab_project, acciónbadge_preview - Herramienta individual:
gitlab_preview_project_badge - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Badge: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
image_url | string | sí | Badge image URL with placeholders |
link_url | string | sí | Badge link URL with placeholders |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.board_create
Sección titulada «project.board_create»Create a new issue board in a project. Returns: the created board with its project, scope, and lists. See also:
project.board_get,project.board_update,project.board_list.
- Meta-herramienta:
gitlab_project, acciónboard_create - Herramienta individual:
gitlab_board_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string | sí | Board name |
project_id | string/integer | sí | Project ID or path |
project.board_delete
Sección titulada «project.board_delete»Delete an issue board permanently. Returns: a success confirmation naming the board and project. See also:
project.board_get,project.board_list.
- Meta-herramienta:
gitlab_project, acciónboard_delete - Herramienta individual:
gitlab_board_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
board_id | integer | sí | Board ID |
project_id | string/integer | sí | Project ID or path |
project.board_get
Sección titulada «project.board_get»Get a single issue board by board_id. Returns: the board with its project, milestone, assignee, scope labels, and ordered lists. See also:
project.board_list,project.board_update,project.board_delete.
- Meta-herramienta:
gitlab_project, acciónboard_get - Herramienta individual:
gitlab_board_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Work Item: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
board_id | integer | sí | Board ID |
project_id | string/integer | sí | Project ID or path |
project.board_list
Sección titulada «project.board_list»List a project’s issue boards with pagination. Returns: each board with its project, milestone, assignee, scope labels, and lists. See also:
project.board_get,project.board_create,project.board_list_list.
- Meta-herramienta:
gitlab_project, acciónboard_list - Herramienta individual:
gitlab_board_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Work Item: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or path |
order_by | string | no | Column to order results by for keyset pagination (e.g. id, created_at, updated_at) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
project.board_list_create
Sección titulada «project.board_list_create»Create a board list (column) scoped to a label, or on Premium and Ultimate to an assignee, milestone, or iteration. Returns: the created list with its scope, position, and issue limits. See also:
project.board_list_get,project.board_list_update,project.board_list_list.
- Meta-herramienta:
gitlab_project, acciónboard_list_create - Herramienta individual:
gitlab_board_list_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
board_id | integer | sí | Board ID |
project_id | string/integer | sí | Project ID or path |
assignee_id (Premium) | integer | no | User ID to create an assignee list |
iteration_id (Premium) | integer | no | Iteration ID to create an iteration list |
label_id | integer | no | Label ID to create a label list |
milestone_id (Premium) | integer | no | Milestone ID to create a milestone list |
project.board_list_delete
Sección titulada «project.board_list_delete»Delete a board list (column) permanently. Returns: a success confirmation naming the list. See also:
project.board_list_get,project.board_list_list.
- Meta-herramienta:
gitlab_project, acciónboard_list_delete - Herramienta individual:
gitlab_board_list_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
board_id | integer | sí | Board ID |
list_id | integer | sí | Board list ID |
project_id | string/integer | sí | Project ID or path |
project.board_list_get
Sección titulada «project.board_list_get»Get a single board list by list_id. Returns: the list with its label, assignee, milestone, iteration, position, and issue limits. See also:
project.board_list_list,project.board_list_update,project.board_list_delete.
- Meta-herramienta:
gitlab_project, acciónboard_list_get - Herramienta individual:
gitlab_board_list_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Work Item: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
board_id | integer | sí | Board ID |
list_id | integer | sí | Board list ID |
project_id | string/integer | sí | Project ID or path |
project.board_list_list
Sección titulada «project.board_list_list»List the lists (columns) in an issue board with pagination. Returns: each list with its label, assignee, milestone, iteration, position, and issue limits. See also:
project.board_list_get,project.board_list_create,project.board_get.
- Meta-herramienta:
gitlab_project, acciónboard_list_list - Herramienta individual:
gitlab_board_list_lists - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Work Item: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
board_id | integer | sí | Board ID |
project_id | string/integer | sí | Project ID or path |
order_by | string | no | Column to order results by for keyset pagination (e.g. id, created_at, updated_at) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
project.board_list_update
Sección titulada «project.board_list_update»Reorder a board list to a new position. Returns: the updated list with its scope, position, and issue limits. See also:
project.board_list_get,project.board_list_list,project.board_list_delete.
- Meta-herramienta:
gitlab_project, acciónboard_list_update - Herramienta individual:
gitlab_board_list_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
board_id | integer | sí | Board ID |
list_id | integer | sí | Board list ID |
position | integer | sí | New position of the list |
project_id | string/integer | sí | Project ID or path |
project.board_update
Sección titulada «project.board_update»Update an issue board’s name or list visibility, and on Premium and Ultimate its scope (assignee, milestone, labels, weight). Returns: the updated board with its project, scope, and lists. See also:
project.board_get,project.board_delete,project.board_list.
- Meta-herramienta:
gitlab_project, acciónboard_update - Herramienta individual:
gitlab_board_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
board_id | integer | sí | Board ID |
project_id | string/integer | sí | Project ID or path |
assignee_id (Premium) | integer | no | User ID of the assignee the board is scoped to. Pass 0 to remove the assignee from the scope. Omit the field to leave it untouched |
hide_backlog_list | boolean | no | Hide the Open list |
hide_closed_list | boolean | no | Hide the Closed list |
labels (Premium) | string[] | no | Label names the board is scoped to. Pass [] to remove every label from the scope. Omit the field to leave it untouched |
milestone_id (Premium) | integer | no | Milestone ID the board is scoped to: 0 for issues with no milestone, -1 to remove the milestone from the scope, -2 for upcoming and -3 for started milestones. Omit the field to leave it untouched |
name | string | no | Board name |
weight (Premium) | integer | no | Weight from 0 to 9 the board is scoped to |
project.create
Sección titulada «project.create»Create a new GitLab project. Returns: the created project with id, path_with_namespace, default_branch, visibility, and web URL. See also:
project.get,project.update,project.create_for_user.
- Meta-herramienta:
gitlab_project, accióncreate - Herramienta individual:
gitlab_project_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Create en usuario (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
allow_merge_on_skipped_pipeline | boolean | no | Allow merge when pipeline is skipped |
analytics_access_level | string | no | Analytics access level (disabled, private, enabled) |
approvals_before_merge (Premium) | integer | no | Number of approvals required before merge (deprecated: use Merge Request Approvals API) |
auto_cancel_pending_pipelines | string (enabled, disabled) | no | Auto-cancel redundant pending pipelines when a newer pipeline starts: enabled or disabled. |
auto_devops_deploy_strategy | string (continuous, manual, timed_incremental) | no | Auto DevOps deploy strategy: continuous (auto-deploy to production), manual (require manual gate), or timed_incremental (deploy incrementally with time delays). |
auto_devops_enabled | boolean | no | Enable Auto DevOps for the project |
autoclose_referenced_issues | boolean | no | Auto-close referenced issues on merge |
build_git_strategy | string (fetch, clone) | no | Git strategy for CI builds: fetch (reuse existing clone, faster) or clone (fresh clone every time). |
build_timeout | integer | no | Build timeout in seconds |
builds_access_level | string | no | CI/CD builds access level (disabled, private, enabled) |
ci_config_path | string | no | Custom CI/CD configuration file path |
ci_forward_deployment_enabled | boolean | no | Enable CI/CD forward deployment (deprecated: no longer supported in recent versions) |
cicd_catalog_enabled | boolean | no | Publish the project as a CI/CD catalog resource |
container_expiration_policy_attributes | object | no | Container registry cleanup policy attributes |
container_registry_access_level | string | no | Container registry access level (disabled, private, enabled) |
container_registry_enabled | boolean | no | Enable container registry (deprecated: use container_registry_access_level) |
default_branch | string | no | Default branch name. GitLab applies it only together with initialize_with_readme. A project created without a README is empty and takes the instance’s default branch name whatever is sent here |
description | string | no | Project description |
emails_disabled | boolean | no | Disable email notifications (deprecated: use emails_enabled) |
emails_enabled | boolean | no | Enable email notifications |
enforce_auth_checks_on_uploads | boolean | no | Enforce authorization checks on uploads |
environments_access_level | string | no | Environments access level (disabled, private, enabled) |
external_authorization_classification_label | string | no | External authorization classification label |
feature_flags_access_level | string | no | Feature flags access level (disabled, private, enabled) |
forking_access_level | string | no | Forking access level (disabled, private, enabled) |
group_runners_enabled | boolean | no | Enable group runners |
group_with_project_templates_id | integer | no | Group ID that provides the custom project templates |
import_url | string | no | URL to import repository from |
infrastructure_access_level | string | no | Infrastructure access level (disabled, private, enabled) |
initialize_with_readme | boolean | no | Initialize with a README |
issue_branch_template | string | no | Template for branch names created from issues |
issues_access_level | string | no | Issues access level (disabled, private, enabled) |
issues_enabled | boolean | no | Enable issues feature (deprecated: use issues_access_level) |
issues_template | string | no | Default issue description template (deprecated: no longer supported in recent versions) |
jobs_enabled | boolean | no | Enable CI/CD jobs (deprecated: use builds_access_level) |
lfs_enabled | boolean | no | Enable Git LFS |
merge_commit_template | string | no | Template for merge commit messages |
merge_method | string (merge, rebase_merge, ff) | no | Merge method: merge (default merge commit), rebase_merge (rebase then merge commit), or ff (fast-forward, no merge commit). |
merge_pipelines_enabled | boolean | no | Enable merged results pipelines |
merge_request_title_regex | string | no | Regex that MR titles must match |
merge_request_title_regex_description | string | no | Human-readable description for the MR title regex |
merge_requests_access_level | string | no | Merge requests access level (disabled, private, enabled) |
merge_requests_enabled | boolean | no | Enable merge requests feature (deprecated: use merge_requests_access_level) |
merge_requests_template | string | no | Default merge request description template (deprecated: no longer supported in recent versions) |
merge_trains_enabled | boolean | no | Enable merge trains |
merge_trains_skip_train_allowed | boolean | no | Allow skipping the merge train |
mirror | boolean | no | Enable pull mirroring from import_url |
mirror_trigger_builds | boolean | no | Trigger pipelines for mirror updates |
model_experiments_access_level | string | no | Model experiments access level (disabled, private, enabled) |
model_registry_access_level | string | no | Model registry access level (disabled, private, enabled) |
monitor_access_level | string | no | Monitor access level (disabled, private, enabled) |
mr_default_title_template | string | no | Template for default merge request titles |
name | string | no | Project name, derived from the path when left out. Provide name, path or both |
namespace_id | integer | no | Namespace ID (defaults to personal namespace) |
only_allow_merge_if_all_discussions_are_resolved | boolean | no | Only allow merge when all discussions are resolved |
only_allow_merge_if_all_status_checks_passed (Ultimate) | boolean | no | Only allow merge when all external status checks pass |
only_allow_merge_if_pipeline_succeeds | boolean | no | Only allow merge when pipeline succeeds |
package_registry_access_level | string | no | Package registry access level (disabled, private, enabled) |
packages_enabled | boolean | no | Enable packages feature (deprecated: use package_registry_access_level) |
pages_access_level | string | no | Pages access level (disabled, private, enabled, public) |
path | string | no | Project path slug, derived from the name when left out. Provide name, path or both |
printing_merge_request_link_enabled | boolean | no | Show the create-merge-request link after pushing |
protect_merge_request_pipelines | boolean | no | Prevent merge request pipeline settings from being modified by users with lower permissions |
public_builds | boolean | no | Enable public access to pipelines (deprecated: use public_jobs) |
public_jobs | boolean | no | Enable public access to pipelines |
releases_access_level | string | no | Releases access level (disabled, private, enabled) |
remove_source_branch_after_merge | boolean | no | Remove source branch after merge by default |
repository_access_level | string | no | Repository access level (disabled, private, enabled) |
repository_storage | string | no | Repository storage shard name (admin only) |
request_access_enabled | boolean | no | Allow users to request access |
requirements_access_level | string | no | Requirements access level (disabled, private, enabled) |
resolve_outdated_diff_discussions | boolean | no | Auto-resolve outdated diff discussions |
resource_group_default_process_mode | string (unordered, oldest_first, newest_first, newest_ready_first) | no | Default process mode for resource groups: unordered (run in parallel), oldest_first, newest_first, or newest_ready_first. |
reviewer_assignment_strategy (Premium) | string (disabled, code_owners) | no | Strategy used to automatically assign reviewers to merge requests: disabled or code_owners. The former dap_powered value was removed in GitLab 19.4 and only appears in responses of projects configured before then |
security_and_compliance_access_level | string | no | Security and compliance access level (disabled, private, enabled) |
service_desk_enabled | boolean | no | Enable Service Desk |
shared_runners_enabled | boolean | no | Enable shared runners |
show_default_award_emojis | boolean | no | Show default award emojis on issues/MRs |
snippets_access_level | string | no | Snippets access level (disabled, private, enabled) |
snippets_enabled | boolean | no | Enable snippets feature (deprecated: use snippets_access_level) |
squash_commit_template | string | no | Template for squash commit messages |
squash_option | string (never, always, default_on, default_off) | no | Squash commits on merge: never (not allowed), always (always squash), default_on (squash by default, overridable per MR), or default_off (no squash by default, overridable per MR). |
suggestion_commit_message | string | no | Default commit message for suggestions |
tag_list | string[] | no | Project tags (deprecated: use topics) |
template_name | string | no | Built-in project template name to use |
template_project_id | integer | no | Custom project template ID to use |
topics | string[] | no | Topic tags for the project |
use_custom_template | boolean | no | Use a custom group/instance project template |
visibility | string (private, internal, public) | no | Visibility level (private, internal, public) |
wiki_access_level | string | no | Wiki access level (disabled, private, enabled) |
wiki_enabled | boolean | no | Enable wiki feature (deprecated: use wiki_access_level) |
Además necesita al menos uno de estos: name; path.
project.create_for_user
Sección titulada «project.create_for_user»Create a project on behalf of a user (admin). Returns: the created project with id, owner namespace, visibility, and web URL. See also:
project.create,project.get.
- Meta-herramienta:
gitlab_project, accióncreate_for_user - Herramienta individual:
gitlab_project_create_for_user - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Create en usuario (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string | sí | Project name |
user_id | integer | sí | Target user ID who will own the project |
allow_merge_on_skipped_pipeline | boolean | no | Allow merge when pipeline is skipped |
analytics_access_level | string | no | Analytics access level (disabled, private, enabled) |
approvals_before_merge (Premium) | integer | no | Number of approvals required before merge (deprecated: use Merge Request Approvals API) |
auto_cancel_pending_pipelines | string (enabled, disabled) | no | Auto-cancel redundant pending pipelines when a newer pipeline starts: enabled or disabled. |
auto_devops_deploy_strategy | string (continuous, manual, timed_incremental) | no | Auto DevOps deploy strategy: continuous (auto-deploy to production), manual (require manual gate), or timed_incremental (deploy incrementally with time delays). |
auto_devops_enabled | boolean | no | Enable Auto DevOps for the project |
autoclose_referenced_issues | boolean | no | Auto-close referenced issues on merge |
build_git_strategy | string (fetch, clone) | no | Git strategy for CI builds: fetch (reuse existing clone, faster) or clone (fresh clone every time). |
build_timeout | integer | no | Build timeout in seconds |
builds_access_level | string | no | CI/CD builds access level (disabled, private, enabled) |
ci_config_path | string | no | Custom CI/CD configuration file path |
ci_forward_deployment_enabled | boolean | no | Enable CI/CD forward deployment (deprecated: no longer supported in recent versions) |
cicd_catalog_enabled | boolean | no | Publish the project as a CI/CD catalog resource |
container_expiration_policy_attributes | object | no | Container registry cleanup policy attributes |
container_registry_access_level | string | no | Container registry access level (disabled, private, enabled) |
container_registry_enabled | boolean | no | Enable container registry (deprecated: use container_registry_access_level) |
default_branch | string | no | Default branch name. GitLab applies it only together with initialize_with_readme. A project created without a README is empty and takes the instance’s default branch name whatever is sent here |
description | string | no | Project description |
emails_disabled | boolean | no | Disable email notifications (deprecated: use emails_enabled) |
emails_enabled | boolean | no | Enable email notifications |
enforce_auth_checks_on_uploads | boolean | no | Enforce authorization checks on uploads |
environments_access_level | string | no | Environments access level (disabled, private, enabled) |
external_authorization_classification_label | string | no | External authorization classification label |
feature_flags_access_level | string | no | Feature flags access level (disabled, private, enabled) |
forking_access_level | string | no | Forking access level (disabled, private, enabled) |
group_runners_enabled | boolean | no | Enable group runners |
group_with_project_templates_id | integer | no | Group ID that provides the custom project templates |
import_url | string | no | URL to import repository from |
infrastructure_access_level | string | no | Infrastructure access level (disabled, private, enabled) |
initialize_with_readme | boolean | no | Initialize with a README |
issue_branch_template | string | no | Template for branch names created from issues |
issues_access_level | string | no | Issues access level (disabled, private, enabled) |
issues_enabled | boolean | no | Enable issues feature (deprecated: use issues_access_level) |
issues_template | string | no | Default issue description template (deprecated: no longer supported in recent versions) |
jobs_enabled | boolean | no | Enable CI/CD jobs (deprecated: use builds_access_level) |
lfs_enabled | boolean | no | Enable Git LFS |
merge_commit_template | string | no | Template for merge commit messages |
merge_method | string (merge, rebase_merge, ff) | no | Merge method: merge (default merge commit), rebase_merge (rebase then merge commit), or ff (fast-forward, no merge commit). |
merge_pipelines_enabled | boolean | no | Enable merged results pipelines |
merge_request_title_regex | string | no | Regex that MR titles must match |
merge_request_title_regex_description | string | no | Human-readable description for the MR title regex |
merge_requests_access_level | string | no | Merge requests access level (disabled, private, enabled) |
merge_requests_enabled | boolean | no | Enable merge requests feature (deprecated: use merge_requests_access_level) |
merge_requests_template | string | no | Default merge request description template (deprecated: no longer supported in recent versions) |
merge_trains_enabled | boolean | no | Enable merge trains |
merge_trains_skip_train_allowed | boolean | no | Allow skipping the merge train |
mirror | boolean | no | Enable pull mirroring from import_url |
mirror_trigger_builds | boolean | no | Trigger pipelines for mirror updates |
model_experiments_access_level | string | no | Model experiments access level (disabled, private, enabled) |
model_registry_access_level | string | no | Model registry access level (disabled, private, enabled) |
monitor_access_level | string | no | Monitor access level (disabled, private, enabled) |
mr_default_title_template | string | no | Template for default merge request titles |
namespace_id | integer | no | Namespace ID (defaults to personal namespace) |
only_allow_merge_if_all_discussions_are_resolved | boolean | no | Only allow merge when all discussions are resolved |
only_allow_merge_if_all_status_checks_passed (Ultimate) | boolean | no | Only allow merge when all external status checks pass |
only_allow_merge_if_pipeline_succeeds | boolean | no | Only allow merge when pipeline succeeds |
package_registry_access_level | string | no | Package registry access level (disabled, private, enabled) |
packages_enabled | boolean | no | Enable packages feature (deprecated: use package_registry_access_level) |
pages_access_level | string | no | Pages access level (disabled, private, enabled, public) |
path | string | no | Project path slug, derived from the name when left out. Provide name, path or both |
printing_merge_request_link_enabled | boolean | no | Show the create-merge-request link after pushing |
protect_merge_request_pipelines | boolean | no | Prevent merge request pipeline settings from being modified by users with lower permissions |
public_builds | boolean | no | Enable public access to pipelines (deprecated: use public_jobs) |
public_jobs | boolean | no | Enable public access to pipelines |
releases_access_level | string | no | Releases access level (disabled, private, enabled) |
remove_source_branch_after_merge | boolean | no | Remove source branch after merge by default |
repository_access_level | string | no | Repository access level (disabled, private, enabled) |
repository_storage | string | no | Repository storage shard name (admin only) |
request_access_enabled | boolean | no | Allow users to request access |
requirements_access_level | string | no | Requirements access level (disabled, private, enabled) |
resolve_outdated_diff_discussions | boolean | no | Auto-resolve outdated diff discussions |
resource_group_default_process_mode | string (unordered, oldest_first, newest_first, newest_ready_first) | no | Default process mode for resource groups: unordered (run in parallel), oldest_first, newest_first, or newest_ready_first. |
reviewer_assignment_strategy (Premium) | string (disabled, code_owners) | no | Strategy used to automatically assign reviewers to merge requests: disabled or code_owners. The former dap_powered value was removed in GitLab 19.4 and only appears in responses of projects configured before then |
security_and_compliance_access_level | string | no | Security and compliance access level (disabled, private, enabled) |
service_desk_enabled | boolean | no | Enable Service Desk |
shared_runners_enabled | boolean | no | Enable shared runners |
show_default_award_emojis | boolean | no | Show default award emojis on issues/MRs |
snippets_access_level | string | no | Snippets access level (disabled, private, enabled) |
snippets_enabled | boolean | no | Enable snippets feature (deprecated: use snippets_access_level) |
squash_commit_template | string | no | Template for squash commit messages |
squash_option | string (never, always, default_on, default_off) | no | Squash commits on merge: never (not allowed), always (always squash), default_on (squash by default, overridable per MR), or default_off (no squash by default, overridable per MR). |
suggestion_commit_message | string | no | Default commit message for suggestions |
tag_list | string[] | no | Project tags (deprecated: use topics) |
template_name | string | no | Built-in project template name to use |
template_project_id | integer | no | Custom project template ID to use |
topics | string[] | no | Topic tags for the project |
use_custom_template | boolean | no | Use a custom group/instance project template |
visibility | string (private, internal, public) | no | Visibility level (private, internal, public) |
wiki_access_level | string | no | Wiki access level (disabled, private, enabled) |
wiki_enabled | boolean | no | Enable wiki feature (deprecated: use wiki_access_level) |
project.create_fork_relation
Sección titulada «project.create_fork_relation»Create a fork relationship to an upstream project. Returns: the downstream project as GitLab answers with it, including forked_from_project. See also:
project.delete_fork_relation,project.fork.
- Meta-herramienta:
gitlab_project, accióncreate_fork_relation - Herramienta individual:
gitlab_project_create_fork_relation - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Fork en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
forked_from_id | integer | sí | ID of the project to set as the fork source |
project_id | string/integer | sí | Project ID or URL-encoded path of the forked project |
project.delete
Sección titulada «project.delete»Delete a project. Returns: a deletion status. On instances with delayed deletion the project is marked for deletion. See also:
project.restore,project.archive.
- Meta-herramienta:
gitlab_project, accióndelete - Herramienta individual:
gitlab_project_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Delete en proyecto. Algunas llamadas también necesitan: Project: Read en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
full_path | string | no | Full path of the project to confirm permanent removal (required when permanently_remove is true) |
permanently_remove | boolean | no | If true, immediately and permanently delete the project bypassing delayed deletion. Requires admin permissions on some GitLab instances. |
project.delete_fork_relation
Sección titulada «project.delete_fork_relation»Remove a project’s fork relationship. Returns: a success confirmation naming the project. See also:
project.create_fork_relation,project.fork.
- Meta-herramienta:
gitlab_project, accióndelete_fork_relation - Herramienta individual:
gitlab_project_delete_fork_relation - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Fork en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.delete_shared_group
Sección titulada «project.delete_shared_group»Remove a group share from a project. Returns: a success confirmation naming the group and project. See also:
project.share_with_group,project.list_invited_groups.
- Meta-herramienta:
gitlab_project, accióndelete_shared_group - Herramienta individual:
gitlab_project_delete_shared_group - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Share en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
group_id | integer | sí | Group ID to remove from project sharing |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.dependency_firewall_evaluate
Sección titulada «project.dependency_firewall_evaluate»Evaluate one package coordinate against a project’s Dependency Firewall policies (Premium, experimental). Returns: the outcome (allowed, warned or blocked) and the policy that produced a warned or blocked verdict. See also:
project.get,dependency.list.
- Meta-herramienta:
gitlab_project, accióndependency_firewall_evaluate - Herramienta individual:
gitlab_project_dependency_firewall_evaluate - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Dependency Firewall Evaluation: Create en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
ecosystem | string (cargo, composer, conan, gem, golang, maven, npm, nuget, pub, pypi, swift) | sí | Package ecosystem: cargo, composer, conan, gem, golang, maven, npm, nuget, pub, pypi, or swift |
name | string | sí | Package name, maximum 255 characters. For maven use the groupId:artifactId form (com.example:trivial-lib). For pypi, names are normalized per PEP 503 before evaluation |
project_id | string/integer | sí | Project ID or URL-encoded path |
version | string | sí | Package version, maximum 255 characters |
project.download_avatar
Sección titulada «project.download_avatar»Download a project’s avatar. Returns: the avatar image content. See also:
project.upload_avatar,project.get.
- Meta-herramienta:
gitlab_project, accióndownload_avatar - Herramienta individual:
gitlab_project_download_avatar - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Avatar: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.export_download
Sección titulada «project.export_download»Download a finished project export archive as base64. Returns: base64 archive content and size in bytes. See also:
project.export_status,project.import_from_file.
- Meta-herramienta:
gitlab_project, acciónexport_download - Herramienta individual:
gitlab_download_project_export - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Export: Download en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.export_schedule
Sección titulada «project.export_schedule»Schedule an asynchronous project export. Returns: a confirmation message. See also:
project.export_status,project.export_download.
- Meta-herramienta:
gitlab_project, acciónexport_schedule - Herramienta individual:
gitlab_schedule_project_export - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Export: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
description | string | no | Override the project description in the export |
upload | object | no | Optional upload destination for the generated export archive (mirrors the GitLab upload[] options) |
upload_http_method | string (PUT, POST) | no | Deprecated: use upload.http_method. HTTP method to use for the upload (PUT or POST) |
upload_url | string | no | Deprecated: use upload.url. URL to upload the exported project to after export completes |
project.export_status
Sección titulada «project.export_status»Get the export status of a project. Returns: export id, name, path, status, message, and download links. See also:
project.export_schedule,project.export_download.
- Meta-herramienta:
gitlab_project, acciónexport_status - Herramienta individual:
gitlab_get_project_export_status - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Export: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.fork
Sección titulada «project.fork»Fork a project. Returns: the new fork with id, path_with_namespace, forked_from_project, and web URL. See also:
project.list_forks,project.create_fork_relation.
- Meta-herramienta:
gitlab_project, acciónfork - Herramienta individual:
gitlab_project_fork - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Fork en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Source project ID or URL-encoded path |
branches | string | no | Branches to fork (empty=all) |
description | string | no | Description for the forked project |
mr_default_target_self | boolean | no | MR default target is the fork itself instead of upstream |
name | string | no | Name for the forked project |
namespace | string | no | Namespace ID or path to fork into (deprecated: use namespace_id or namespace_path) |
namespace_id | integer | no | Namespace ID to fork into |
namespace_path | string | no | Namespace path to fork into |
path | string | no | Path slug for the forked project |
visibility | string (private, internal, public) | no | Visibility level (private, internal, public) |
project.get
Sección titulada «project.get»Get a single project by ID or namespace path. Returns: project metadata including id, path_with_namespace, default_branch, visibility, and web URL. See also:
project.update,project.archive,project.delete.
- Meta-herramienta:
gitlab_project, acciónget - Herramienta individual:
gitlab_project_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path (e.g. ‘user/repo’ or 42) |
license | boolean | no | Include license information in response |
statistics | boolean | no | Include project statistics (commit count, storage sizes) |
with_custom_attributes | boolean | no | Include custom attributes in response |
project.hook_add
Sección titulada «project.hook_add»Add a webhook to a project. Returns: the created webhook with id, URL, and enabled events. See also:
project.hook_list,project.hook_test.
- Meta-herramienta:
gitlab_project, acciónhook_add - Herramienta individual:
gitlab_project_hook_add - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Webhook: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
url | string | sí | Webhook URL |
branch_filter_strategy | string | no | Branch filter strategy (wildcard, regex, all_branches) |
confidential_issues_events | boolean | no | Trigger on confidential issue events |
confidential_note_events | boolean | no | Trigger on confidential note events |
custom_headers | object[] | no | Custom HTTP headers sent with each webhook request (key/value pairs) |
custom_webhook_template | string | no | Custom webhook payload template. On an edit, pass an empty string to remove it. Omit the field to leave it untouched |
deployment_events | boolean | no | Trigger on deployment events |
description | string | no | Webhook description. On an edit, pass an empty string to remove it. Omit the field to leave it untouched |
emoji_events | boolean | no | Trigger on emoji events |
enable_ssl_verification | boolean | no | Enable SSL verification for webhook |
feature_flag_events | boolean | no | Trigger on feature flag events |
issues_events | boolean | no | Trigger on issue events |
job_events | boolean | no | Trigger on CI job events |
merge_requests_events | boolean | no | Trigger on merge request events |
milestone_events | boolean | no | Trigger on milestone events |
name | string | no | Webhook name |
note_events | boolean | no | Trigger on note/comment events |
pipeline_events | boolean | no | Trigger on pipeline events |
push_events | boolean | no | Trigger on push events |
push_events_branch_filter | string | no | Branch filter for push events. On an edit, pass an empty string to remove it. Omit the field to leave it untouched |
releases_events | boolean | no | Trigger on release events |
resource_access_token_events | boolean | no | Trigger on resource access token events |
resource_deploy_token_events | boolean | no | Trigger on resource deploy token events |
signing_token | string | no | Write-only signing token for webhook signature validation |
tag_push_events | boolean | no | Trigger on tag push events |
token | string | no | Secret token for validation |
vulnerability_events | boolean | no | Trigger on vulnerability events |
wiki_page_events | boolean | no | Trigger on wiki page events |
project.hook_delete
Sección titulada «project.hook_delete»Delete a project webhook. Returns: a success confirmation naming the webhook and project. See also:
project.hook_list,project.hook_add.
- Meta-herramienta:
gitlab_project, acciónhook_delete - Herramienta individual:
gitlab_project_hook_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Webhook: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
hook_id | integer | sí | Webhook ID to delete |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.hook_delete_custom_header
Sección titulada «project.hook_delete_custom_header»Delete a custom header from a project webhook. Returns: a success confirmation naming the header and webhook. See also:
project.hook_set_custom_header,project.hook_get.
- Meta-herramienta:
gitlab_project, acciónhook_delete_custom_header - Herramienta individual:
gitlab_project_hook_delete_custom_header - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Webhook: Update en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
hook_id | integer | sí | Webhook ID |
key | string | sí | Custom header key name to delete |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.hook_delete_url_variable
Sección titulada «project.hook_delete_url_variable»Delete a URL variable from a project webhook. Returns: a success confirmation naming the variable and webhook. See also:
project.hook_set_url_variable,project.hook_get.
- Meta-herramienta:
gitlab_project, acciónhook_delete_url_variable - Herramienta individual:
gitlab_project_hook_delete_url_variable - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Webhook: Update en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
hook_id | integer | sí | Webhook ID |
key | string | sí | URL variable key name to delete |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.hook_edit
Sección titulada «project.hook_edit»Edit a project webhook. Returns: the updated webhook with URL and enabled events. See also:
project.hook_get,project.hook_test.
- Meta-herramienta:
gitlab_project, acciónhook_edit - Herramienta individual:
gitlab_project_hook_edit - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Webhook: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
hook_id | integer | sí | Webhook ID to edit |
project_id | string/integer | sí | Project ID or URL-encoded path |
branch_filter_strategy | string | no | Branch filter strategy (wildcard, regex, all_branches) |
confidential_issues_events | boolean | no | Trigger on confidential issue events |
confidential_note_events | boolean | no | Trigger on confidential note events |
custom_headers | object[] | no | Custom HTTP headers sent with each webhook request (key/value pairs) |
custom_webhook_template | string | no | Custom webhook payload template. On an edit, pass an empty string to remove it. Omit the field to leave it untouched |
deployment_events | boolean | no | Trigger on deployment events |
description | string | no | Webhook description. On an edit, pass an empty string to remove it. Omit the field to leave it untouched |
emoji_events | boolean | no | Trigger on emoji events |
enable_ssl_verification | boolean | no | Enable SSL verification for webhook |
feature_flag_events | boolean | no | Trigger on feature flag events |
issues_events | boolean | no | Trigger on issue events |
job_events | boolean | no | Trigger on CI job events |
merge_requests_events | boolean | no | Trigger on merge request events |
milestone_events | boolean | no | Trigger on milestone events |
name | string | no | Webhook name |
note_events | boolean | no | Trigger on note/comment events |
pipeline_events | boolean | no | Trigger on pipeline events |
push_events | boolean | no | Trigger on push events |
push_events_branch_filter | string | no | Branch filter for push events. On an edit, pass an empty string to remove it. Omit the field to leave it untouched |
releases_events | boolean | no | Trigger on release events |
resource_access_token_events | boolean | no | Trigger on resource access token events |
resource_deploy_token_events | boolean | no | Trigger on resource deploy token events |
signing_token | string | no | Write-only signing token for webhook signature validation |
tag_push_events | boolean | no | Trigger on tag push events |
token | string | no | Secret token for validation |
url | string | no | Updated webhook URL |
vulnerability_events | boolean | no | Trigger on vulnerability events |
wiki_page_events | boolean | no | Trigger on wiki page events |
project.hook_get
Sección titulada «project.hook_get»Get a single project webhook. Returns: the webhook with URL, enabled events, and SSL settings. See also:
project.hook_list,project.hook_edit.
- Meta-herramienta:
gitlab_project, acciónhook_get - Herramienta individual:
gitlab_project_hook_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Webhook: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
hook_id | integer | sí | Webhook ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.hook_list
Sección titulada «project.hook_list»List a project’s webhooks. Returns: webhooks with URL, enabled events, and SSL settings, plus pagination metadata. See also:
project.hook_get,project.hook_add.
- Meta-herramienta:
gitlab_project, acciónhook_list - Herramienta individual:
gitlab_project_hook_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Webhook: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Keyset ordering column (for keyset pagination) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Keyset sort direction (asc, desc) |
project.hook_set_custom_header
Sección titulada «project.hook_set_custom_header»Set a custom header on a project webhook. Returns: a success confirmation naming the header and webhook. See also:
project.hook_delete_custom_header,project.hook_get.
- Meta-herramienta:
gitlab_project, acciónhook_set_custom_header - Herramienta individual:
gitlab_project_hook_set_custom_header - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Webhook: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
hook_id | integer | sí | Webhook ID |
key | string | sí | Custom header key name |
project_id | string/integer | sí | Project ID or URL-encoded path |
value | string | sí | Custom header value |
project.hook_set_url_variable
Sección titulada «project.hook_set_url_variable»Set a URL variable on a project webhook. Returns: a success confirmation naming the variable and webhook. See also:
project.hook_delete_url_variable,project.hook_get.
- Meta-herramienta:
gitlab_project, acciónhook_set_url_variable - Herramienta individual:
gitlab_project_hook_set_url_variable - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Webhook: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
hook_id | integer | sí | Webhook ID |
key | string | sí | URL variable key name. Letters and underscores only. GitLab rejects keys containing digits |
project_id | string/integer | sí | Project ID or URL-encoded path |
value | string | sí | URL variable value. Must be non-empty |
project.hook_test
Sección titulada «project.hook_test»Trigger a test event for a project webhook. Returns: a confirmation that the test event was fired. See also:
project.hook_get,project.hook_edit.
- Meta-herramienta:
gitlab_project, acciónhook_test - Herramienta individual:
gitlab_project_hook_test - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Webhook: Trigger en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
event | string (push_events, tag_push_events, issues_events, confidential_issues_events, note_events, merge_requests_events, job_events, pipeline_events, wiki_page_events, releases_events, milestone_events, emoji_events, resource_access_token_events, resource_deploy_token_events) | sí | Event type to trigger: push_events, tag_push_events, issues_events, confidential_issues_events, note_events, merge_requests_events, job_events, pipeline_events, wiki_page_events, releases_events, milestone_events, emoji_events, resource_access_token_events, or resource_deploy_token_events |
hook_id | integer | sí | Webhook ID to test |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.import_from_file
Sección titulada «project.import_from_file»Import a project from an export archive. Returns: the new project’s import status, type, correlation id, any import error, and the relations that failed to import. See also:
project.import_status,project.export_download.
- Meta-herramienta:
gitlab_project, acciónimport_from_file - Herramienta individual:
gitlab_import_project_from_file - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Import: Create en grupo o usuario (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
path | string | sí | URL path for the imported project |
content_base64 | string | no | Base64-encoded export archive content. Only one of file_path or content_base64 should be provided. |
file_path | string | no | Canonical path to a local export archive (.tar.gz) under the current working directory, OS temp directory, or GITLAB_MCP_ALLOWED_IMPORT_DIRS. Symlinks are resolved and escapes are rejected. Only one of file_path or content_base64 should be provided. |
name | string | no | Name for the imported project |
namespace | string | no | Namespace to import the project into (user or group path) |
override_params | object | no | Optional project attributes to override on the imported project (mirrors the create-project attributes accepted by override_params[]) |
overwrite | boolean | no | If true, overwrite an existing project with the same path |
project.import_status
Sección titulada «project.import_status»Get the import status of a project. Returns: import id, name, path, status, type, correlation id, import error, the relations that failed to import, and a GitHub import’s fetched and imported counts. See also:
project.import_from_file.
- Meta-herramienta:
gitlab_project, acciónimport_status - Herramienta individual:
gitlab_get_project_import_status - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Import: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.integration_delete
Sección titulada «project.integration_delete»Delete (disable) a project integration by slug. Supports the same slugs as get, plus ‘slack-application’ for disabling the GitLab for Slack app.
Returns: confirmation message.
See also:
project.integration_list,project.integration_get.
- Meta-herramienta:
gitlab_project, acciónintegration_delete - Herramienta individual:
gitlab_delete_integration - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Integration: Delete en proyecto o grupo (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
slug | string | sí | Integration slug (e.g. jira, slack, discord, mattermost, microsoft-teams, telegram, emails-on-push, pipelines-email, external-wiki, custom-issue-tracker, datadog, drone-ci, github, harbor, jenkins, matrix, redmine, youtrack, slack-slash-commands, mattermost-slash-commands) |
project.integration_delete_group
Sección titulada «project.integration_delete_group»Delete (disable) a group integration by slug. Requires Owner role on the group.
Returns: confirmation message.
See also:
project.integration_list_group,project.integration_get_group,project.integration_set_group.
- Meta-herramienta:
gitlab_project, acciónintegration_delete_group - Herramienta individual:
gitlab_delete_group_integration - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Integration: Delete en proyecto o grupo (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
group_id | string/integer | sí | Group ID or URL-encoded path |
slug | string | sí | Integration slug to disable (e.g. slack, jira, harbor) |
project.integration_delete_group_datadog
Sección titulada «project.integration_delete_group_datadog»Remove the Datadog integration from a group. The stored api_key is cleared. Deletion is irreversible. Requires Owner role and GitLab Premium/Ultimate (self-managed EE or GitLab.com).
Returns: confirmation message.
See also:
project.integration_get_group_datadog,project.integration_set_group_datadog.
- Meta-herramienta:
gitlab_project, acciónintegration_delete_group_datadog - Herramienta individual:
gitlab_delete_group_datadog_integration - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Integration: Delete en proyecto o grupo (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
group_id | string/integer | sí | Group ID or URL-encoded path |
project.integration_get
Sección titulada «project.integration_get»Get details of a specific project integration by slug (e.g. jira, slack, discord, mattermost, microsoft-teams, telegram, datadog, jenkins, emails-on-push, pipelines-email, external-wiki, custom-issue-tracker, drone-ci, github, harbor, matrix, redmine, youtrack, slack-slash-commands, mattermost-slash-commands).
Returns: JSON with integration details.
See also:
project.integration_list,project.integration_delete.
- Meta-herramienta:
gitlab_project, acciónintegration_get - Herramienta individual:
gitlab_get_integration - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Integration: Read en proyecto o grupo (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
slug | string | sí | Integration slug (e.g. jira, slack, discord, mattermost, microsoft-teams, telegram, emails-on-push, pipelines-email, external-wiki, custom-issue-tracker, datadog, drone-ci, github, harbor, jenkins, matrix, redmine, youtrack, slack-slash-commands, mattermost-slash-commands) |
project.integration_get_group
Sección titulada «project.integration_get_group»Get details of a specific group integration by slug. Requires Owner role on the group.
Returns: JSON with the group integration details.
See also:
project.integration_list_group,project.integration_set_group,project.integration_delete_group.
- Meta-herramienta:
gitlab_project, acciónintegration_get_group - Herramienta individual:
gitlab_get_group_integration - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Integration: Read en proyecto o grupo (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
group_id | string/integer | sí | Group ID or URL-encoded path |
slug | string | sí | Integration slug to read (e.g. slack, jira, harbor). See doc/api/group_integrations.md for the supported list |
project.integration_get_group_datadog
Sección titulada «project.integration_get_group_datadog»Read the Datadog integration configured on a group. Requires Owner role and GitLab Premium/Ultimate (self-managed EE or GitLab.com). The api_key is never returned.
Returns: JSON with the group’s Datadog integration details. The configuration lives in the nested properties object (api_url, datadog_env, datadog_service, datadog_site, datadog_tags, datadog_ci_visibility, archive_trace_events), which is the only shape it is published in. An older GitLab that sends the configuration flat is read into that same object.
See also:
project.integration_set_group_datadog,project.integration_delete_group_datadog.
- Meta-herramienta:
gitlab_project, acciónintegration_get_group_datadog - Herramienta individual:
gitlab_get_group_datadog_integration - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Integration: Read en proyecto o grupo (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
group_id | string/integer | sí | Group ID or URL-encoded path |
project.integration_list
Sección titulada «project.integration_list»List all integrations (services) configured for a project, including their active status.
Returns: JSON array of integration items with id, title, slug, and active flag.
See also:
project.integration_get,project.integration_set_jira,project.integration_delete.
- Meta-herramienta:
gitlab_project, acciónintegration_list - Herramienta individual:
gitlab_list_integrations - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Integration: Read en proyecto o grupo (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.integration_list_group
Sección titulada «project.integration_list_group»List all active integrations configured on a group. Requires Owner role (some integrations require GitLab Premium/Ultimate).
Returns: JSON array of group integration items with id, title, slug, and active flag.
See also:
project.integration_get_group,project.integration_set_group,project.integration_delete_group.
- Meta-herramienta:
gitlab_project, acciónintegration_list_group - Herramienta individual:
gitlab_list_group_integrations - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Integration: Read en proyecto o grupo (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
group_id | string/integer | sí | Group ID or URL-encoded path |
project.integration_set
Sección titulada «project.integration_set»Configure (create or update) any project integration by slug, passing the integration’s documented parameters in a free-form
configobject. Use this generic action for integrations without a dedicated tool (e.g. slack, harbor, jenkins, google-play, apple-app-store, prometheus, microsoft-teams, mattermost, discord).Common slugs: slack, jira, discord, mattermost, microsoft-teams, telegram, datadog, jenkins, harbor, drone-ci, github, emails-on-push, pipelines-email, external-wiki, custom-issue-tracker, matrix, redmine, youtrack, slack-slash-commands, mattermost-slash-commands, google-play, apple-app-store, prometheus, bamboo, buildkite, campfire, confluence, packagist, pivotaltracker, pumble, pushover, teamcity, unify-circuit, webex-teams, zentao, gitlab-slack-application.
The
configobject is sent verbatim as the request body. See doc/api/integrations.md for the exact fields each integration accepts (for example slack expectswebhook. Harbor expectsurl,project_name,username,password).Returns: JSON with the resulting integration details.
See also:
project.integration_get,project.integration_list,project.integration_delete,project.integration_set_jira.
- Meta-herramienta:
gitlab_project, acciónintegration_set - Herramienta individual:
gitlab_set_integration - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Integration: Update en proyecto o grupo (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
slug | string | sí | Integration slug to configure (e.g. slack, harbor, jenkins, google-play). See doc/api/integrations.md for the full list and each integration’s config fields |
config | object | no | Integration configuration parameters as documented for the chosen slug in doc/api/integrations.md (sent verbatim as the request body). For example slack expects webhook. Harbor expects url, project_name, username, password. Jenkins expects jenkins_url, project_name, username, password |
project.integration_set_group
Sección titulada «project.integration_set_group»Configure (create or update) any group integration by slug, passing the integration’s documented parameters in a free-form
configobject. Requires Owner role on the group (some integrations require GitLab Premium/Ultimate).The
configobject is sent verbatim as the request body. See doc/api/group_integrations.md and doc/api/integrations.md for the per-integration fields.Returns: JSON with the resulting group integration details.
See also:
project.integration_get_group,project.integration_list_group,project.integration_delete_group.
- Meta-herramienta:
gitlab_project, acciónintegration_set_group - Herramienta individual:
gitlab_set_group_integration - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Integration: Update en proyecto o grupo (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
group_id | string/integer | sí | Group ID or URL-encoded path |
slug | string | sí | Integration slug to configure (e.g. slack, jira, harbor). See doc/api/group_integrations.md for the supported list and each integration’s config fields |
config | object | no | Integration configuration parameters as documented for the chosen slug in doc/api/integrations.md (sent verbatim as the request body) |
project.integration_set_group_datadog
Sección titulada «project.integration_set_group_datadog»Create or update the Datadog integration on a group. Requires Owner role and GitLab Premium/Ultimate (self-managed EE or GitLab.com). api_key is required on every call, use_inherited_settings=true included. api_url, datadog_env, datadog_service, datadog_site, datadog_tags, datadog_ci_visibility and archive_trace_events are optional.
Returns: JSON with the updated Datadog integration details, whose configuration lives in the nested properties object.
See also:
project.integration_get_group_datadog,project.integration_delete_group_datadog.
- Meta-herramienta:
gitlab_project, acciónintegration_set_group_datadog - Herramienta individual:
gitlab_set_group_datadog_integration - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Integration: Update en proyecto o grupo (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
api_key | string | sí | Datadog API key (write-only. Never returned by the get endpoint). GitLab requires it on every update |
group_id | string/integer | sí | Group ID or URL-encoded path |
api_url | string | no | Datadog API URL (e.g. https://api.datadoghq.com) |
archive_trace_events | boolean | no | Forward CI job trace events to Datadog |
datadog_ci_visibility | boolean | no | Enable Datadog CI Visibility: forward pipeline/job data to Datadog CI Visibility |
datadog_env | string | no | Datadog env tag forwarded with every log/metric |
datadog_service | string | no | Datadog service tag forwarded with every log/metric |
datadog_site | string | no | Datadog site (e.g. datadoghq.com, datadoghq.eu, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com) |
datadog_tags | string | no | Comma-separated Datadog tags forwarded with every log/metric |
use_inherited_settings | boolean | no | Inherit the Datadog configuration from the closest ancestor group that has one configured (overrides all per-field settings) |
project.integration_set_jira
Sección titulada «project.integration_set_jira»Configure the Jira integration for a project. Sets up the connection to a Jira instance with URL, credentials, and event triggers.
Returns: JSON with the configured Jira integration details.
See also:
project.integration_list,project.integration_get.
- Meta-herramienta:
gitlab_project, acciónintegration_set_jira - Herramienta individual:
gitlab_set_jira_integration - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Integration: Update en proyecto o grupo (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
password | string | sí | Jira password or API token. GitLab requires it on every update |
project_id | string/integer | sí | Project ID or URL-encoded path |
url | string | sí | Jira instance base URL |
active | boolean | no | Enable or disable the integration |
api_url | string | no | Jira API URL (overrides base URL) |
comment_on_event_enabled | boolean | no | Add comments on Jira issues for events |
commit_events | boolean | no | Trigger on commit events |
customize_jira_issue_enabled | boolean | no | Customize the Jira issue created for vulnerabilities |
issues_enabled | boolean | no | Enable Jira issues integration |
jira_allowed_statuses_as_string | string | no | Comma-separated list of allowed Jira statuses (used with jira_status_check_enabled) |
jira_assignee_check_enabled | boolean | no | Require the referenced Jira issue to have an assignee |
jira_auth_type | integer | no | Jira auth type (0=basic, 1=token) |
jira_check_enabled | boolean | no | Require commits/MRs to reference a Jira issue |
jira_exists_check_enabled | boolean | no | Require that the referenced Jira issue exists |
jira_issue_prefix | string | no | Jira issue key prefix |
jira_issue_regex | string | no | Custom regex for Jira issue keys |
jira_issue_transition_automatic | boolean | no | Auto-transition Jira issues |
jira_issue_transition_id | string | no | Jira transition ID |
jira_status_check_enabled | boolean | no | Require the referenced Jira issue to be in an allowed status |
merge_requests_events | boolean | no | Trigger on merge request events |
project_key | string | no | Jira project key where vulnerability tickets are created (when vulnerabilities_enabled is true) |
project_keys | string[] | no | Jira project keys to restrict (used when issues_enabled is true) |
use_inherited_settings | boolean | no | Use inherited settings from group |
username | string | no | Jira username |
vulnerabilities_enabled | boolean | no | Create Jira issues for vulnerabilities |
vulnerabilities_issuetype | integer | no | Jira issue type ID used for vulnerability tickets (when vulnerabilities_enabled is true) |
project.label_create
Sección titulada «project.label_create»Create a project label with required name and hex color, plus optional description, priority, and archived state. Returns: the created label (id, name, color, text_color, description, priority, subscribed, is_project_label, archived). See also:
project.label_get,project.label_update,issue.list.
- Meta-herramienta:
gitlab_project, acciónlabel_create - Herramienta individual:
gitlab_label_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Label: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
color | string | sí | Label color in hex format (e.g. #FF0000) |
name | string | sí | Label name |
project_id | string/integer | sí | Project ID or URL-encoded path |
archived | boolean | no | Whether to create the label in archived state |
description | string | no | Label description |
priority | integer | no | Label priority (lower is higher priority, 0 means no priority) |
project.label_delete
Sección titulada «project.label_delete»Delete a project label by ID or name. Destructive: the label is removed from the project and unassigned from issues and merge requests. Returns: a deletion confirmation. See also:
project.label_list,project.label_get,project.label_create.
- Meta-herramienta:
gitlab_project, acciónlabel_delete - Herramienta individual:
gitlab_label_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Label: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
label_id | string/integer | no | Label ID or name. Give this or name |
name | string | no | Name of the label to delete, used to select it when label_id is not given |
Además necesita al menos uno de estos: label_id; name.
project.label_get
Sección titulada «project.label_get»Get a single project label by ID or name. Returns: id, name, color, text_color, description, priority, subscribed, is_project_label, and archived. GitLab sends a label’s usage counts only to project.label_list with with_counts. See also:
project.label_list,project.label_update,project.label_delete.
- Meta-herramienta:
gitlab_project, acciónlabel_get - Herramienta individual:
gitlab_label_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Label: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
label_id | string/integer | sí | Label ID or name |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.label_list
Sección titulada «project.label_list»List labels in a project with optional search, counts, ancestor-group inclusion, ordering, and offset or keyset pagination. Returns: id, name, color, text_color, description, priority, subscribed, is_project_label, archived, the open/closed issue and open MR counts when with_counts is true, and pagination metadata. See also:
project.label_get,project.label_create,issue.list.
- Meta-herramienta:
gitlab_project, acciónlabel_list - Herramienta individual:
gitlab_label_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Label: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
include_ancestor_groups | boolean | no | Include labels from ancestor groups |
order_by | string | no | Column to order results by (e.g. name, created_at, updated_at) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
search | string | no | Filter labels by keyword search |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
with_counts | boolean | no | Include issue and merge request counts |
project.label_promote
Sección titulada «project.label_promote»Promote a project label to a group label, sharing it across the group’s projects. Returns: no content on success. Requires group-level Maintainer or higher access. See also:
project.label_get,project.label_list,group.group_label_list.
- Meta-herramienta:
gitlab_project, acciónlabel_promote - Herramienta individual:
gitlab_label_promote - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Label: Promote en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
label_id | string/integer | sí | Label ID or name |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.label_subscribe
Sección titulada «project.label_subscribe»Subscribe the authenticated user to a project label for notifications. Returns: the label with subscribed=true (already-subscribed yields 304 Not Modified). See also:
project.label_unsubscribe,project.label_get,project.label_list.
- Meta-herramienta:
gitlab_project, acciónlabel_subscribe - Herramienta individual:
gitlab_label_subscribe - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Label: Subscribe en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
label_id | string/integer | sí | Label ID or name |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.label_unsubscribe
Sección titulada «project.label_unsubscribe»Unsubscribe the authenticated user from a project label. Returns: no content on success (not-subscribed yields 304 Not Modified). See also:
project.label_subscribe,project.label_get,project.label_list.
- Meta-herramienta:
gitlab_project, acciónlabel_unsubscribe - Herramienta individual:
gitlab_label_unsubscribe - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Label: Subscribe en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
label_id | string/integer | sí | Label ID or name |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.label_update
Sección titulada «project.label_update»Update an existing project label (new_name, color, description, priority, archived). Returns: the updated label (id, name, color, text_color, description, priority, subscribed, is_project_label, archived). See also:
project.label_get,project.label_list,project.label_delete.
- Meta-herramienta:
gitlab_project, acciónlabel_update - Herramienta individual:
gitlab_label_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Label: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
archived | boolean | no | Set true to archive, false to unarchive |
color | string | no | New label color in hex format |
description | string | no | New label description. Pass an empty string to remove it. Omit the field to leave it untouched |
label_id | string/integer | no | Label ID or name. Give this or name |
name | string | no | Name of the label to update, used to select it when label_id is not given |
new_name | string | no | New label name |
priority | integer | no | New label priority, where 0 removes the priority GitLab has |
Además necesita al menos uno de estos: label_id; name.
project.languages
Sección titulada «project.languages»Get a project’s detected languages. Returns: language names with their percentage of the codebase. See also:
project.get.
- Meta-herramienta:
gitlab_project, acciónlanguages - Herramienta individual:
gitlab_project_languages - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.list
Sección titulada «project.list»List projects accessible to the user with filtering and pagination. Returns: projects with namespace, visibility, last_activity_at, and pagination metadata. See also:
project.get,project.list_user_projects.
- Meta-herramienta:
gitlab_project, acciónlist - Herramienta individual:
gitlab_project_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en usuario (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
active | boolean | no | Limit to active (non-archived, non-pending-deletion) projects |
archived | boolean | no | Filter by archived status (true=only archived, false=only active) |
custom_attributes | object | no | Filter projects by custom attribute key/value pairs (admin only). Different from with_custom_attributes, which only controls whether attributes are returned |
id_after | integer | no | Return projects with ID greater than this value (keyset pagination) |
id_before | integer | no | Return projects with ID less than this value (keyset pagination) |
imported | boolean | no | Limit to projects imported from an external source by the current user |
include_hidden | boolean | no | Include hidden projects in results |
include_pending_delete | boolean | no | Include projects that are marked/scheduled for deletion. Default false. |
last_activity_after | string | no | Return projects with last activity after date (ISO 8601 format) |
last_activity_before | string | no | Return projects with last activity before date (ISO 8601 format) |
membership | boolean | no | Limit to projects where current user is a member |
min_access_level | integer | no | Filter by minimum access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner, 60=Admin where supported) |
order_by | string (id, name, path, created_at, updated_at, last_activity_at, similarity, star_count) | no | Order projects by id, name, path, created_at, updated_at, last_activity_at, similarity (requires search query), or star_count. |
owned | boolean | no | Limit to projects explicitly owned by the current user |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
repository_checksum_failed | boolean | no | Limit to projects where the repository checksum calculation failed (admin only) |
repository_storage | string | no | Limit to projects on the given repository storage shard (admin only) |
search | string | no | Search query for project name |
search_namespaces | boolean | no | Include namespace in search |
simple | boolean | no | Return only limited fields (faster for large result sets) |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
starred | boolean | no | Limit to projects starred by the current user |
statistics | boolean | no | Include project statistics in response |
topic | string | no | Filter by topic name |
visibility | string (private, internal, public) | no | Filter by visibility (private, internal, public) |
wiki_checksum_failed | boolean | no | Limit to projects where the wiki checksum calculation failed (admin only) |
with_custom_attributes | boolean | no | Include custom attributes in the response (admin only) |
with_issues_enabled | boolean | no | Filter by projects with issues feature enabled |
with_merge_requests_enabled | boolean | no | Filter by projects with merge requests enabled |
with_programming_language | string | no | Filter by programming language name |
project.list_forks
Sección titulada «project.list_forks»List a project’s forks. Returns: forked projects with namespace, visibility, and pagination metadata. See also:
project.fork,project.get.
- Meta-herramienta:
gitlab_project, acciónlist_forks - Herramienta individual:
gitlab_project_list_forks - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
active | boolean | no | Limit to active (non-archived, non-pending-deletion) forks |
archived | boolean | no | Filter by archived status (true=only archived, false=only active) |
custom_attributes | object | no | Filter projects by custom attribute key/value pairs (admin only). Different from with_custom_attributes, which only controls whether attributes are returned |
id_after | integer | no | Return forks with ID greater than this value (keyset pagination) |
id_before | integer | no | Return forks with ID less than this value (keyset pagination) |
imported | boolean | no | Limit to forks imported from an external source by the current user |
include_hidden | boolean | no | Include hidden forks in results |
include_pending_delete | boolean | no | Include forks marked/scheduled for deletion. Default false. |
last_activity_after | string | no | Return forks with last activity after date (ISO 8601 format) |
last_activity_before | string | no | Return forks with last activity before date (ISO 8601 format) |
membership | boolean | no | Limit to forks where the current user is a member |
min_access_level | integer | no | Filter by minimum access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner, 60=Admin where supported) |
order_by | string (id, name, path, created_at, updated_at, last_activity_at, similarity, star_count) | no | Order projects by id, name, path, created_at, updated_at, last_activity_at, similarity (requires search query), or star_count. |
owned | boolean | no | Limit to forks owned by the current user |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
repository_checksum_failed | boolean | no | Limit to forks where the repository checksum calculation failed (admin only) |
repository_storage | string | no | Limit to forks on the given repository storage shard (admin only) |
search | string | no | Search query for fork name |
search_namespaces | boolean | no | Include namespace in search |
simple | boolean | no | Return only limited fields (faster for large result sets) |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
starred | boolean | no | Limit to forks starred by the current user |
statistics | boolean | no | Include project statistics in response |
topic | string | no | Filter by topic name |
visibility | string (private, internal, public) | no | Filter by visibility (private, internal, public) |
wiki_checksum_failed | boolean | no | Limit to forks where the wiki checksum calculation failed (admin only) |
with_custom_attributes | boolean | no | Include custom attributes in the response (admin only) |
with_issues_enabled | boolean | no | Filter by forks with issues feature enabled |
with_merge_requests_enabled | boolean | no | Filter by forks with merge requests enabled |
with_programming_language | string | no | Filter by programming language name |
project.list_groups
Sección titulada «project.list_groups»List a project’s associated groups. Returns: groups with id, full_path, and full_name, plus pagination metadata. See also:
project.list_invited_groups,group.get.
- Meta-herramienta:
gitlab_project, acciónlist_groups - Herramienta individual:
gitlab_project_list_groups - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Keyset ordering column (for keyset pagination) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
search | string | no | Search by group name |
shared_min_access_level | integer | no | Filter by minimum access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner, 60=Admin where supported) |
shared_visible_only | boolean | no | Only show shared groups visible to the current user |
skip_groups | integer[] | no | Array of group IDs to exclude |
sort | string (asc, desc) | no | Keyset sort direction (asc, desc) |
with_shared | boolean | no | Include shared groups (default true) |
project.list_invited_groups
Sección titulada «project.list_invited_groups»List groups invited to a project. Returns: invited groups with id, full_path, and full_name, plus pagination metadata. See also:
project.share_with_group,project.list_groups.
- Meta-herramienta:
gitlab_project, acciónlist_invited_groups - Herramienta individual:
gitlab_project_list_invited_groups - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
min_access_level | integer | no | Filter by minimum access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner, 60=Admin where supported) |
order_by | string | no | Keyset ordering column (for keyset pagination) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
relation | string[] | no | Filter by group relation to the project (e.g. direct, inherited) |
search | string | no | Search by group name |
sort | string (asc, desc) | no | Keyset sort direction (asc, desc) |
with_custom_attributes | boolean | no | Include custom attributes in the response (admin only) |
project.list_starrers
Sección titulada «project.list_starrers»List a project’s starrers. Returns: users with their starred_since date, plus pagination metadata. See also:
project.star,project.list_user_starred.
- Meta-herramienta:
gitlab_project, acciónlist_starrers - Herramienta individual:
gitlab_project_list_starrers - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Keyset ordering column (for keyset pagination) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
search | string | no | Search by name or username |
sort | string (asc, desc) | no | Keyset sort direction (asc, desc) |
project.list_user_contributed
Sección titulada «project.list_user_contributed»List projects a user contributed to, by offset pages only, since GitLab does not page this list by keyset. Returns: projects with namespace, visibility, and pagination metadata. See also:
project.list_user_projects,project.list_user_starred.
- Meta-herramienta:
gitlab_project, acciónlist_user_contributed - Herramienta individual:
gitlab_project_list_user_contributed - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en usuario (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
user_id | string/integer | sí | User ID or username |
active | boolean | no | Limit to active (non-archived, non-pending-deletion) projects |
archived | boolean | no | Filter by archived status (true=only archived, false=only active) |
custom_attributes | object | no | Filter projects by custom attribute key/value pairs (admin only). Different from with_custom_attributes, which only controls whether attributes are returned |
id_after | integer | no | Return projects with ID greater than this value (keyset pagination) |
id_before | integer | no | Return projects with ID less than this value (keyset pagination) |
imported | boolean | no | Limit to projects imported from an external source by the current user |
include_hidden | boolean | no | Include hidden projects in results |
include_pending_delete | boolean | no | Include projects marked/scheduled for deletion. Default false. |
last_activity_after | string | no | Return projects with last activity after date (ISO 8601 format) |
last_activity_before | string | no | Return projects with last activity before date (ISO 8601 format) |
membership | boolean | no | Limit to projects where the current user is a member |
min_access_level | integer | no | Filter by minimum access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner, 60=Admin where supported) |
order_by | string (id, name, path, created_at, updated_at, last_activity_at, similarity, star_count) | no | Order projects by id, name, path, created_at, updated_at, last_activity_at, similarity (requires search query), or star_count. |
owned | boolean | no | Limit to projects explicitly owned by the current user |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
repository_checksum_failed | boolean | no | Limit to projects where the repository checksum calculation failed (admin only) |
repository_storage | string | no | Limit to projects on the given repository storage shard (admin only) |
search | string | no | Search query for project name |
search_namespaces | boolean | no | Include namespace in search |
simple | boolean | no | Return only limited fields (faster) |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
starred | boolean | no | Limit to projects starred by the current user |
statistics | boolean | no | Include project statistics in response |
topic | string | no | Filter by topic name |
visibility | string (private, internal, public) | no | Filter by visibility (private, internal, public) |
wiki_checksum_failed | boolean | no | Limit to projects where the wiki checksum calculation failed (admin only) |
with_custom_attributes | boolean | no | Include custom attributes in the response (admin only) |
with_issues_enabled | boolean | no | Filter by projects with issues feature enabled |
with_merge_requests_enabled | boolean | no | Filter by projects with merge requests enabled |
with_programming_language | string | no | Filter by programming language name |
project.list_user_projects
Sección titulada «project.list_user_projects»List a user’s owned projects. Returns: projects with namespace, visibility, and pagination metadata. See also:
project.list_user_contributed,project.list_user_starred.
- Meta-herramienta:
gitlab_project, acciónlist_user_projects - Herramienta individual:
gitlab_project_list_user_projects - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en usuario (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
user_id | string/integer | sí | User ID or username |
active | boolean | no | Limit to active (non-archived, non-pending-deletion) projects |
archived | boolean | no | Filter by archived status (true=only archived, false=only active) |
custom_attributes | object | no | Filter projects by custom attribute key/value pairs (admin only). Different from with_custom_attributes, which only controls whether attributes are returned |
id_after | integer | no | Return projects with ID greater than this value (keyset pagination) |
id_before | integer | no | Return projects with ID less than this value (keyset pagination) |
imported | boolean | no | Limit to projects imported from an external source by the current user |
include_hidden | boolean | no | Include hidden projects in results |
include_pending_delete | boolean | no | Include projects marked/scheduled for deletion. Default false. |
last_activity_after | string | no | Return projects with last activity after date (ISO 8601 format) |
last_activity_before | string | no | Return projects with last activity before date (ISO 8601 format) |
membership | boolean | no | Limit to projects where the current user is a member |
min_access_level | integer | no | Filter by minimum access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner, 60=Admin where supported) |
order_by | string (id, name, path, created_at, updated_at, last_activity_at, similarity, star_count) | no | Order projects by id, name, path, created_at, updated_at, last_activity_at, similarity (requires search query), or star_count. |
owned | boolean | no | Limit to projects explicitly owned by the current user |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
repository_checksum_failed | boolean | no | Limit to projects where the repository checksum calculation failed (admin only) |
repository_storage | string | no | Limit to projects on the given repository storage shard (admin only) |
search | string | no | Search query for project name |
search_namespaces | boolean | no | Include namespace in search |
simple | boolean | no | Return only limited fields (faster) |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
starred | boolean | no | Limit to projects starred by the current user |
statistics | boolean | no | Include project statistics in response |
topic | string | no | Filter by topic name |
visibility | string (private, internal, public) | no | Filter by visibility (private, internal, public) |
wiki_checksum_failed | boolean | no | Limit to projects where the wiki checksum calculation failed (admin only) |
with_custom_attributes | boolean | no | Include custom attributes in the response (admin only) |
with_issues_enabled | boolean | no | Filter by projects with issues feature enabled |
with_merge_requests_enabled | boolean | no | Filter by projects with merge requests enabled |
with_programming_language | string | no | Filter by programming language name |
project.list_user_starred
Sección titulada «project.list_user_starred»List projects a user starred. Returns: projects with namespace, visibility, and pagination metadata. See also:
project.list_user_projects,project.list_starrers.
- Meta-herramienta:
gitlab_project, acciónlist_user_starred - Herramienta individual:
gitlab_project_list_user_starred - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en usuario (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
user_id | string/integer | sí | User ID or username |
active | boolean | no | Limit to active (non-archived, non-pending-deletion) projects |
archived | boolean | no | Filter by archived status (true=only archived, false=only active) |
custom_attributes | object | no | Filter projects by custom attribute key/value pairs (admin only). Different from with_custom_attributes, which only controls whether attributes are returned |
id_after | integer | no | Return projects with ID greater than this value (keyset pagination) |
id_before | integer | no | Return projects with ID less than this value (keyset pagination) |
imported | boolean | no | Limit to projects imported from an external source by the current user |
include_hidden | boolean | no | Include hidden projects in results |
include_pending_delete | boolean | no | Include projects marked/scheduled for deletion. Default false. |
last_activity_after | string | no | Return projects with last activity after date (ISO 8601 format) |
last_activity_before | string | no | Return projects with last activity before date (ISO 8601 format) |
membership | boolean | no | Limit to projects where the current user is a member |
min_access_level | integer | no | Filter by minimum access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner, 60=Admin where supported) |
order_by | string (id, name, path, created_at, updated_at, last_activity_at, similarity, star_count) | no | Order projects by id, name, path, created_at, updated_at, last_activity_at, similarity (requires search query), or star_count. |
owned | boolean | no | Limit to projects explicitly owned by the current user |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
repository_checksum_failed | boolean | no | Limit to projects where the repository checksum calculation failed (admin only) |
repository_storage | string | no | Limit to projects on the given repository storage shard (admin only) |
search | string | no | Search query for project name |
search_namespaces | boolean | no | Include namespace in search |
simple | boolean | no | Return only limited fields (faster) |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
starred | boolean | no | Limit to projects starred by the current user |
statistics | boolean | no | Include project statistics in response |
topic | string | no | Filter by topic name |
visibility | string (private, internal, public) | no | Filter by visibility (private, internal, public) |
wiki_checksum_failed | boolean | no | Limit to projects where the wiki checksum calculation failed (admin only) |
with_custom_attributes | boolean | no | Include custom attributes in the response (admin only) |
with_issues_enabled | boolean | no | Filter by projects with issues feature enabled |
with_merge_requests_enabled | boolean | no | Filter by projects with merge requests enabled |
with_programming_language | string | no | Filter by programming language name |
project.list_users
Sección titulada «project.list_users»List a project’s users. Returns: users with id, username, name, and state, plus pagination metadata. See also:
project.get,project.members.
- Meta-herramienta:
gitlab_project, acciónlist_users - Herramienta individual:
gitlab_project_list_users - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Keyset ordering column (for keyset pagination) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
search | string | no | Search by name or username |
sort | string (asc, desc) | no | Keyset sort direction (asc, desc) |
project.member_add
Sección titulada «project.member_add»Add a user to a project team by user_id or username with an access level. Optional: expires_at, member_role_id (Premium/Ultimate). Returns: the created membership. See also:
project.member_edit,project.members,user.list.
- Meta-herramienta:
gitlab_project, acciónmember_add - Herramienta individual:
gitlab_project_member_add - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Member: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
access_level | integer | sí | Access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner) |
project_id | string/integer | sí | Project ID or URL-encoded path |
expires_at | string | no | Membership expiration date (YYYY-MM-DD) |
member_role_id | integer | no | Custom member role ID |
user_id | integer | no | User ID to add (provide user_id or username) |
username | string | no | Username to add (provide user_id or username) |
Además necesita al menos uno de estos: user_id; username.
project.member_delete
Sección titulada «project.member_delete»Remove a member from a project (destructive, requires confirmation). Requires Maintainer. The last Owner of a project cannot be removed. Returns: a success confirmation naming the removed member. See also:
project.member_edit,project.members.
- Meta-herramienta:
gitlab_project, acciónmember_delete - Herramienta individual:
gitlab_project_member_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Member: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
user_id | integer | sí | User ID of the member to remove |
project.member_edit
Sección titulada «project.member_edit»Edit a project member’s access level, expiry, or custom member role. Returns: the updated membership. Requires at least the same access level as the target member. See also:
project.member_add,project.member_delete,project.members.
- Meta-herramienta:
gitlab_project, acciónmember_edit - Herramienta individual:
gitlab_project_member_edit - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Member: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
access_level | integer | sí | New access level (5=Minimal access, 10=Guest, 15=Planner (Premium/Ultimate), 20=Reporter, 25=Security Manager (Premium/Ultimate), 30=Developer, 40=Maintainer, 50=Owner) |
project_id | string/integer | sí | Project ID or URL-encoded path |
user_id | integer | sí | User ID of the member to edit |
expires_at | string | no | Membership expiration date (YYYY-MM-DD) |
member_role_id | integer | no | Custom member role ID. Pass 0 to remove the custom role, which GitLab requires before it changes the access level of a member that holds one. Omit the field to leave it untouched |
project.member_get
Sección titulada «project.member_get»Get a single direct project member by user ID. Returns: id, username, name, state, access level, member role, created_by, expiry, and web URL. Does not include inherited members. See also:
project.member_inherited,project.members,project.member_edit.
- Meta-herramienta:
gitlab_project, acciónmember_get - Herramienta individual:
gitlab_project_member_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Member: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
user_id | integer | sí | User ID of the member |
project.member_inherited
Sección titulada «project.member_inherited»Get a project member including membership inherited from parent groups. Returns: id, username, name, state, effective access level, member role, and web URL. See also:
project.member_get,project.members.
- Meta-herramienta:
gitlab_project, acciónmember_inherited - Herramienta individual:
gitlab_project_member_get_inherited - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Member: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
user_id | integer | sí | User ID of the member |
project.members
Sección titulada «project.members»List a project’s members (direct plus inherited from parent groups). Returns: each member’s id, username, name, state, access level, member role, created_by, seat usage, and web URL. Supports query/user_ids/show_seat_info filtering, order_by/sort, and offset or keyset pagination. See also:
project.member_get,project.member_add,project.get.
- Meta-herramienta:
gitlab_project, acciónmembers - Herramienta individual:
gitlab_project_members_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Member: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Column to order results by (e.g. id, name, username, access_level) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
query | string | no | Filter members by name or username |
show_seat_info | boolean | no | Include seat usage information (is_using_seat) for each member |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
user_ids | integer[] | no | Filter the results to only the listed user IDs |
project.milestone_create
Sección titulada «project.milestone_create»Create a new milestone in a project with title and optional description, start date, and due date. Returns: the created milestone with IID, state, dates, and web URL. See also:
project.milestone_get,project.milestone_update,project.milestone_list.
- Meta-herramienta:
gitlab_project, acciónmilestone_create - Herramienta individual:
gitlab_milestone_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
title | string | sí | Milestone title |
description | string | no | Milestone description |
due_date | string | no | Due date (YYYY-MM-DD) |
start_date | string | no | Start date (YYYY-MM-DD) |
project.milestone_delete
Sección titulada «project.milestone_delete»Delete a milestone permanently from a project by milestone IID. Returns: a success confirmation naming the milestone and project. See also:
project.milestone_get,project.milestone_update,project.milestone_list.
- Meta-herramienta:
gitlab_project, acciónmilestone_delete - Herramienta individual:
gitlab_milestone_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Read en proyecto; Work Item: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
milestone_iid | integer | sí | Milestone IID (project-scoped). Use project.milestone_list to find IIDs |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.milestone_get
Sección titulada «project.milestone_get»Get a single milestone from a project by milestone IID. Returns: milestone title, description, state, start/due dates, expiry, group/project IDs, timestamps, and web URL. See also:
project.milestone_list,project.milestone_update,project.milestone_issues,project.milestone_merge_requests.
- Meta-herramienta:
gitlab_project, acciónmilestone_get - Herramienta individual:
gitlab_milestone_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Work Item: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
milestone_iid | integer | sí | Milestone IID (project-scoped). Use project.milestone_list to find IIDs |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.milestone_issues
Sección titulada «project.milestone_issues»List issues assigned to a single milestone with ordering and pagination. Returns: assigned issues with IID, project, title, state, labels, author, assignees, confidentiality, weight, due date, web URL, timestamps, and pagination metadata. See also:
project.milestone_get,project.milestone_merge_requests,issue.list.
- Meta-herramienta:
gitlab_project, acciónmilestone_issues - Herramienta individual:
gitlab_milestone_issues - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Work Item: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
milestone_iid | integer | sí | Milestone IID (project-scoped). Use project.milestone_list to find IIDs |
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Order results by field (e.g. created_at, updated_at) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
project.milestone_list
Sección titulada «project.milestone_list»List milestones in one project with state/title/search filters, ancestor inclusion, ordering, and pagination. Returns: matching milestones with state, dates, expiry, web URL, and pagination metadata. See also:
project.milestone_get,project.milestone_create,project.milestone_issues.
- Meta-herramienta:
gitlab_project, acciónmilestone_list - Herramienta individual:
gitlab_milestone_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Work Item: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
iids | integer[] | no | Filter by milestone IIDs |
include_ancestors | boolean | no | Include milestones from parent groups |
include_parent_milestones | boolean | no | Deprecated (GitLab 16.7+): use include_ancestors instead. Include milestones from parent groups |
order_by | string | no | Order results by field (e.g. created_at, updated_at, due_date, title) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
search | string | no | Search milestones by title or description |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
state | string (active, closed) | no | Filter by state (active, closed) |
title | string | no | Filter by exact milestone title |
project.milestone_merge_requests
Sección titulada «project.milestone_merge_requests»List merge requests assigned to a single milestone with ordering and pagination. Returns: assigned merge requests with IID, project, title, state, draft flag, merge status, source/target branches, labels, author, assignees, reviewers, web URL, timestamps, and pagination metadata. See also:
project.milestone_get,project.milestone_issues,merge_request.list.
- Meta-herramienta:
gitlab_project, acciónmilestone_merge_requests - Herramienta individual:
gitlab_milestone_merge_requests - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Work Item: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
milestone_iid | integer | sí | Milestone IID (project-scoped). Use project.milestone_list to find IIDs |
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Order results by field (e.g. created_at, updated_at) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
project.milestone_update
Sección titulada «project.milestone_update»Update an existing milestone’s title, description, start/due dates, or state (state_event close/activate) by milestone IID. Returns: the updated milestone with state, dates, and web URL. See also:
project.milestone_get,project.milestone_delete,project.milestone_list.
- Meta-herramienta:
gitlab_project, acciónmilestone_update - Herramienta individual:
gitlab_milestone_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Work Item: Read en proyecto; Work Item: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
milestone_iid | integer | sí | Milestone IID (project-scoped). Use project.milestone_list to find IIDs |
project_id | string/integer | sí | Project ID or URL-encoded path |
description | string | no | Milestone description. Pass an empty string to remove it. Omit the field to leave it untouched |
due_date | string | no | Due date (YYYY-MM-DD). Pass an empty string to remove it. Omit the field to leave it untouched |
start_date | string | no | Start date (YYYY-MM-DD). Pass an empty string to remove it. Omit the field to leave it untouched |
state_event | string (close, activate) | no | State transition: activate or close |
title | string | no | Milestone title |
project.mirror_add
Sección titulada «project.mirror_add»Create a push (remote) mirror on a project. Destructive: the host in url receives the whole repository from then on, so confirmation is required. Returns: the created mirror with id, enabled state, redacted URL, and update status. See also:
project.mirror_list,project.mirror_edit,project.mirror_get_public_key.
- Meta-herramienta:
gitlab_project, acciónmirror_add - Herramienta individual:
gitlab_add_project_mirror - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Remote Mirror: Create en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
url | string | sí | Remote push mirror URL (e.g. https://user:token@example.com/repo.git). URL-embedded credentials are supported only for push mirrors. Treat them as secrets, do not log or store them, and redact tokens or passwords in telemetry/errors |
auth_method | string (ssh_public_key, password) | no | Authentication method (password or ssh_public_key) |
enabled | boolean | no | Whether the mirror is enabled |
host_keys | string[] | no | SSH host keys for the remote mirror |
keep_divergent_refs | boolean | no | Keep divergent refs on the remote |
mirror_branch_regex | string | no | Regex pattern for branches to mirror |
only_protected_branches | boolean | no | Mirror only protected branches |
project.mirror_delete
Sección titulada «project.mirror_delete»Delete a push mirror from a project permanently. Returns: a success confirmation naming the mirror and project. See also:
project.mirror_get,project.mirror_edit.
- Meta-herramienta:
gitlab_project, acciónmirror_delete - Herramienta individual:
gitlab_delete_project_mirror - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Remote Mirror: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
mirror_id | integer | sí | Remote mirror ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.mirror_edit
Sección titulada «project.mirror_edit»Update a push mirror’s attributes (enabled, branch filtering, divergent refs, auth method). Returns: the updated mirror. See also:
project.mirror_get,project.mirror_force_push.
- Meta-herramienta:
gitlab_project, acciónmirror_edit - Herramienta individual:
gitlab_edit_project_mirror - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Remote Mirror: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
mirror_id | integer | sí | Remote mirror ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
auth_method | string (ssh_public_key, password) | no | Authentication method (password or ssh_public_key) |
enabled | boolean | no | Whether the mirror is enabled |
host_keys | string[] | no | SSH host keys for the remote mirror |
keep_divergent_refs | boolean | no | Keep divergent refs on the remote |
mirror_branch_regex | string | no | Regex pattern for branches to mirror |
only_protected_branches | boolean | no | Mirror only protected branches |
project.mirror_force_push
Sección titulada «project.mirror_force_push»Trigger an immediate update of a push mirror. Returns: a confirmation that the update was triggered. See also:
project.mirror_get,project.mirror_edit.
- Meta-herramienta:
gitlab_project, acciónmirror_force_push - Herramienta individual:
gitlab_force_push_mirror_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Remote Mirror: Update en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
mirror_id | integer | sí | Remote mirror ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.mirror_get
Sección titulada «project.mirror_get»Get a single push mirror of a project by mirror id. Returns: the mirror with enabled state, redacted URL, auth method, branch filtering, and last-update status/error. See also:
project.mirror_list,project.mirror_edit,project.mirror_force_push.
- Meta-herramienta:
gitlab_project, acciónmirror_get - Herramienta individual:
gitlab_get_project_mirror - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Remote Mirror: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
mirror_id | integer | sí | Remote mirror ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.mirror_get_public_key
Sección titulada «project.mirror_get_public_key»Get the SSH public key for an SSH-authenticated push mirror. Returns: the public key to register on the remote. See also:
project.mirror_get,project.mirror_edit.
- Meta-herramienta:
gitlab_project, acciónmirror_get_public_key - Herramienta individual:
gitlab_get_project_mirror_public_key - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Remote Mirror Public Key: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
mirror_id | integer | sí | Remote mirror ID |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.mirror_list
Sección titulada «project.mirror_list»List a project’s push (remote) mirrors. Returns: each mirror with id, enabled state, redacted URL, last-update status, and pagination metadata. See also:
project.mirror_get,project.mirror_add,project.pull_mirror_get.
- Meta-herramienta:
gitlab_project, acciónmirror_list - Herramienta individual:
gitlab_list_project_mirrors - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Remote Mirror: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Column to order keyset-paginated results by (e.g. id). Only applies when pagination=‘keyset’. |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction for keyset-paginated results: asc or desc. Only applies when pagination=‘keyset’. |
project.pages_domain_create
Sección titulada «project.pages_domain_create»Add a new custom Pages domain to a project. Returns: the created domain with verification code, auto-SSL flag, and certificate details. See also:
project.pages_domain_get,project.pages_domain_update,project.pages_domain_list.
- Meta-herramienta:
gitlab_project, acciónpages_domain_create - Herramienta individual:
gitlab_pages_domain_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Pages Domain: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
domain | string | sí | Custom domain name (e.g. example.com) |
project_id | string/integer | sí | Project ID or URL-encoded path |
auto_ssl_enabled | boolean | no | Enable automatic SSL certificate provisioning |
certificate | string | no | PEM-encoded SSL certificate |
key | string | no | PEM-encoded private key for the certificate |
project.pages_domain_delete
Sección titulada «project.pages_domain_delete»Remove a custom Pages domain from a project (destructive). Returns: a success confirmation naming the deleted domain. See also:
project.pages_domain_get,project.pages_domain_list.
- Meta-herramienta:
gitlab_project, acciónpages_domain_delete - Herramienta individual:
gitlab_pages_domain_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Pages Domain: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
domain | string | sí | The Pages domain name to delete |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.pages_domain_get
Sección titulada «project.pages_domain_get»Get a single Pages custom domain by name. Returns: the domain with verification status and code, auto-SSL flag, enabled-until date, and certificate subject/expiration. See also:
project.pages_domain_list,project.pages_domain_update,project.pages_domain_delete.
- Meta-herramienta:
gitlab_project, acciónpages_domain_get - Herramienta individual:
gitlab_pages_domain_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Pages Domain: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
domain | string | sí | The Pages domain name |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.pages_domain_list
Sección titulada «project.pages_domain_list»List the custom Pages domains for a project with pagination. Returns: matching domains with verification status, auto-SSL flag, project ID, certificate details, and pagination metadata. See also:
project.pages_domain_get,project.pages_domain_create,project.pages_domain_list_all.
- Meta-herramienta:
gitlab_project, acciónpages_domain_list - Herramienta individual:
gitlab_pages_domain_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Pages Domain: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Column to order keyset-paginated results by |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction (asc, desc) |
project.pages_domain_list_all
Sección titulada «project.pages_domain_list_all»List the GitLab Pages custom domains across the whole instance (admin only), one page at a time. Use this instead of project.pages_domain_list when you need every domain on the instance, not just those attached to a single project. Returns: the page of domains with verification status, auto-SSL flag, project ID, and certificate subject, and pagination metadata. See also:
project.pages_domain_list,project.pages_domain_get,project.pages_domain_create.
- Meta-herramienta:
gitlab_project, acciónpages_domain_list_all - Herramienta individual:
gitlab_pages_domain_list_all - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Pages Domain: Read en instancia (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
project.pages_domain_update
Sección titulada «project.pages_domain_update»Update an existing Pages custom domain’s auto-SSL flag or certificate. Returns: the updated domain with verification status and certificate details. See also:
project.pages_domain_get,project.pages_domain_delete,project.pages_domain_list.
- Meta-herramienta:
gitlab_project, acciónpages_domain_update - Herramienta individual:
gitlab_pages_domain_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Pages Domain: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
domain | string | sí | The Pages domain name to update |
project_id | string/integer | sí | Project ID or URL-encoded path |
auto_ssl_enabled | boolean | no | Enable automatic SSL certificate provisioning |
certificate | string | no | PEM-encoded SSL certificate |
key | string | no | PEM-encoded private key for the certificate |
project.pages_get
Sección titulada «project.pages_get»Get the Pages settings for a project. Returns: the Pages URL, force-HTTPS and unique-domain flags, primary domain, and recent deployments. See also:
project.pages_update,project.pages_unpublish,project.pages_domain_list.
- Meta-herramienta:
gitlab_project, acciónpages_get - Herramienta individual:
gitlab_pages_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Page: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.pages_unpublish
Sección titulada «project.pages_unpublish»Unpublish a project’s Pages site (destructive). Returns: a success confirmation. See also:
project.pages_get,project.pages_update.
- Meta-herramienta:
gitlab_project, acciónpages_unpublish - Herramienta individual:
gitlab_pages_unpublish - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Page: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.pages_update
Sección titulada «project.pages_update»Update the Pages settings for a project. Returns: the updated Pages settings with URL, force-HTTPS and unique-domain flags, primary domain, and deployments. See also:
project.pages_get,project.pages_domain_create,project.pages_unpublish.
- Meta-herramienta:
gitlab_project, acciónpages_update - Herramienta individual:
gitlab_pages_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Page: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
pages_https_only | boolean | no | Enforce HTTPS for Pages |
pages_primary_domain | string | no | Primary domain for Pages. Pass an empty string to remove it. Omit the field to leave it untouched |
pages_unique_domain_enabled | boolean | no | Enable unique domain for Pages |
project.pull_mirror_configure
Sección titulada «project.pull_mirror_configure»Configure a project’s pull mirror. Arming mirror_overwrites_diverged_branches replaces this project’s diverged branches with the source’s and requires confirmation. Returns: the updated mirror configuration. See also:
project.pull_mirror_get,project.start_mirroring.
- Meta-herramienta:
gitlab_project, acciónpull_mirror_configure - Herramienta individual:
gitlab_project_pull_mirror_configure - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Pull Mirror: Update en proyecto. Algunas llamadas también necesitan: Pull Mirror: Read en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
auth_password | string | no | Authentication password or token for the mirror URL. Treat as secret: do not log or store it, and redact it in telemetry/errors |
auth_user | string | no | Authentication username for the mirror URL. Treat as secret-adjacent and avoid logging with auth_password |
confirm | boolean | no | Confirms arming mirror_overwrites_diverged_branches, which discards local commits on every diverged branch. Only required when this call leaves the mirror overwriting |
enabled | boolean | no | Enable or disable pull mirroring |
mirror_branch_regex | string | no | Regex to filter branches to mirror |
mirror_overwrites_diverged_branches | boolean | no | Replace this project’s diverged branches with the source’s versions on every sync, discarding the local commits. Without it GitLab stops updating a diverged branch instead. Requires confirm=true |
mirror_trigger_builds | boolean | no | Trigger CI builds when mirror updates |
only_mirror_protected_branches | boolean | no | Only mirror protected branches |
url | string | no | Pull mirror source URL. Do not include credentials in the URL. Unlike push mirror endpoints, pull mirroring requires auth_user and auth_password for authentication |
project.pull_mirror_get
Sección titulada «project.pull_mirror_get»Get a project’s pull-mirror configuration. Returns: the mirror URL, enabled flag, and last sync status. See also:
project.pull_mirror_configure,project.start_mirroring.
- Meta-herramienta:
gitlab_project, acciónpull_mirror_get - Herramienta individual:
gitlab_project_pull_mirror_get - Nivel: Premium
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Pull Mirror: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.push_rule_add
Sección titulada «project.push_rule_add»Add push rules to a project. Returns: the created push-rule configuration. See also:
project.push_rule_get,project.push_rule_edit.
- Meta-herramienta:
gitlab_project, acciónpush_rule_add - Herramienta individual:
gitlab_project_add_push_rule - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Push Rule: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
author_email_regex | string | no | Regex to validate author email addresses |
branch_name_regex | string | no | Regex to validate branch names |
commit_committer_check | boolean | no | Reject commits where committer is not a project member |
commit_committer_name_check | boolean | no | Reject commits where committer name does not match user name |
commit_message_negative_regex | string | no | Regex that commit messages must NOT match |
commit_message_regex | string | no | Regex that commit messages must match |
deny_delete_tag | boolean | no | Deny tag deletion |
file_name_regex | string | no | Regex for disallowed file names |
max_file_size | integer | no | Maximum file size (MB). 0 means unlimited |
member_check | boolean | no | Only allow commits from project members |
prevent_secrets | boolean | no | Reject files that are likely to contain secrets |
reject_non_dco_commits | boolean | no | Reject commits without DCO certification |
reject_unsigned_commits | boolean | no | Reject commits that are not GPG signed |
project.push_rule_delete
Sección titulada «project.push_rule_delete»Delete a project’s push rules. Returns: a success confirmation naming the project. See also:
project.push_rule_get,project.push_rule_add.
- Meta-herramienta:
gitlab_project, acciónpush_rule_delete - Herramienta individual:
gitlab_project_delete_push_rule - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Push Rule: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.push_rule_edit
Sección titulada «project.push_rule_edit»Edit a project’s push rules. Returns: the updated push-rule configuration. See also:
project.push_rule_get,project.push_rule_add.
- Meta-herramienta:
gitlab_project, acciónpush_rule_edit - Herramienta individual:
gitlab_project_edit_push_rule - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Push Rule: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
author_email_regex | string | no | Regex to validate author email addresses |
branch_name_regex | string | no | Regex to validate branch names |
commit_committer_check | boolean | no | Reject commits where committer is not a project member |
commit_committer_name_check | boolean | no | Reject commits where committer name does not match user name |
commit_message_negative_regex | string | no | Regex that commit messages must NOT match |
commit_message_regex | string | no | Regex that commit messages must match |
deny_delete_tag | boolean | no | Deny tag deletion |
file_name_regex | string | no | Regex for disallowed file names |
max_file_size | integer | no | Maximum file size (MB). 0 means unlimited |
member_check | boolean | no | Only allow commits from project members |
prevent_secrets | boolean | no | Reject files that are likely to contain secrets |
reject_non_dco_commits | boolean | no | Reject commits without DCO certification |
reject_unsigned_commits | boolean | no | Reject commits that are not GPG signed |
project.push_rule_get
Sección titulada «project.push_rule_get»Get a project’s push rules. Returns: the singleton push-rule configuration such as commit_message_regex and reject_unsigned_commits. See also:
project.push_rule_add,project.push_rule_edit.
- Meta-herramienta:
gitlab_project, acciónpush_rule_get - Herramienta individual:
gitlab_project_get_push_rules - Nivel: Premium
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Push Rule: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.repository_storage_get
Sección titulada «project.repository_storage_get»Get a project’s repository storage shard. Returns: the storage shard name. See also:
project.start_housekeeping,project.get.
- Meta-herramienta:
gitlab_project, acciónrepository_storage_get - Herramienta individual:
gitlab_project_repository_storage_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Project: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.restore
Sección titulada «project.restore»Restore a project marked for deletion. Returns: the restored project. See also:
project.delete,project.get.
- Meta-herramienta:
gitlab_project, acciónrestore - Herramienta individual:
gitlab_project_restore - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path of the project marked for deletion |
project.security_settings_get
Sección titulada «project.security_settings_get»Read a project’s security settings (Ultimate). Returns: secret_push_protection_enabled, continuous_vulnerability_scans_enabled, container scanning, and per-analyzer auto-fix flags. See also:
project.security_settings_update,project.get.
- Meta-herramienta:
gitlab_project, acciónsecurity_settings_get - Herramienta individual:
gitlab_get_project_security_settings - Nivel: Ultimate
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Security Setting: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.security_settings_update
Sección titulada «project.security_settings_update»Enable or disable secret push protection for a project (Ultimate). Returns: the project’s security settings including secret_push_protection_enabled, continuous vulnerability scanning, and auto-fix flags. See also:
project.security_settings_get,group.security_settings_update.
- Meta-herramienta:
gitlab_project, acciónsecurity_settings_update - Herramienta individual:
gitlab_update_project_secret_push_protection - Nivel: Ultimate
- Token clásico u OAuth:
api - Token de grano fino: Security Setting: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
secret_push_protection_enabled | boolean | sí | Enable or disable secret push protection |
project.service_account_create
Sección titulada «project.service_account_create»Create a GitLab project service account. Returns: the created project service account object. See also:
project.service_account_list,project.service_account_update,project.service_account_pat_create.
- Meta-herramienta:
gitlab_project, acciónservice_account_create - Herramienta individual:
gitlab_project_service_account_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Service Account: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
email | string | no | Service account email |
name | string | no | Service account name |
username | string | no | Service account username |
project.service_account_delete
Sección titulada «project.service_account_delete»Delete a GitLab project service account. Returns: a success status confirming deletion. See also:
project.service_account_list,project.service_account_update.
- Meta-herramienta:
gitlab_project, acciónservice_account_delete - Herramienta individual:
gitlab_project_service_account_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Service Account: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
service_account_id | integer | sí | Service account user ID |
hard_delete | boolean | no | Hard delete the service account |
project.service_account_get
Sección titulada «project.service_account_get»Get one GitLab project service account by its user ID (GitLab 19.4 or later). Returns: the project service account object. See also:
project.service_account_list,project.service_account_update,project.service_account_pat_list.
- Meta-herramienta:
gitlab_project, acciónservice_account_get - Herramienta individual:
gitlab_project_service_account_get - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Service Account: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
service_account_id | integer | sí | Service account user ID |
project.service_account_list
Sección titulada «project.service_account_list»List GitLab project service accounts. Returns: paginated project service account records. See also:
project.get,project.service_account_create,project.service_account_pat_list.
- Meta-herramienta:
gitlab_project, acciónservice_account_list - Herramienta individual:
gitlab_project_service_account_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Service Account: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | Order by id or username |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort direction: asc or desc |
project.service_account_pat_create
Sección titulada «project.service_account_pat_create»Create a personal access token for a GitLab project service account. Returns: the created token record and token value when GitLab returns it. See also:
project.service_account_pat_list,project.service_account_pat_rotate.
- Meta-herramienta:
gitlab_project, acciónservice_account_pat_create - Herramienta individual:
gitlab_project_service_account_pat_create - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Service Account Personal Access Token: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string | sí | Token name |
project_id | string/integer | sí | Project ID or URL-encoded path |
scopes | string[] | sí | Token scopes (e.g. api, read_api, read_user) |
service_account_id | integer | sí | Service account user ID |
description | string | no | Token description |
expires_at | string | no | Expiration date in YYYY-MM-DD format |
project.service_account_pat_list
Sección titulada «project.service_account_pat_list»List personal access tokens for a GitLab project service account. Returns: paginated token records. See also:
project.service_account_list,project.service_account_pat_create,project.service_account_pat_revoke.
- Meta-herramienta:
gitlab_project, acciónservice_account_pat_list - Herramienta individual:
gitlab_project_service_account_pat_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Service Account Personal Access Token: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
service_account_id | integer | sí | Service account user ID |
created_after | string | no | Filter tokens created after RFC3339 datetime or YYYY-MM-DD date |
created_before | string | no | Filter tokens created before RFC3339 datetime or YYYY-MM-DD date |
expires_after | string | no | Filter tokens expiring after YYYY-MM-DD date |
expires_before | string | no | Filter tokens expiring before YYYY-MM-DD date |
last_used_after | string | no | Filter tokens last used after RFC3339 datetime or YYYY-MM-DD date |
last_used_before | string | no | Filter tokens last used before RFC3339 datetime or YYYY-MM-DD date |
order_by | string | no | Order tokens by column (keyset pagination) |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
revoked | boolean | no | Filter by revoked state |
search | string | no | Search token names |
sort | string (asc, desc) | no | Sort expression |
state | string (active, inactive) | no | Token state filter: active or inactive |
user_id | integer | no | Filter by user ID |
project.service_account_pat_revoke
Sección titulada «project.service_account_pat_revoke»Revoke a personal access token for a GitLab project service account. Returns: a success status confirming revocation. See also:
project.service_account_pat_list,project.service_account_pat_create.
- Meta-herramienta:
gitlab_project, acciónservice_account_pat_revoke - Herramienta individual:
gitlab_project_service_account_pat_revoke - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Service Account Personal Access Token: Revoke en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
service_account_id | integer | sí | Service account user ID |
token_id | integer | sí | Personal access token ID to revoke |
project.service_account_pat_rotate
Sección titulada «project.service_account_pat_rotate»Rotate a personal access token for a GitLab project service account. Returns: the rotated token record and token value when GitLab returns it. See also:
project.service_account_pat_list,project.service_account_pat_revoke.
- Meta-herramienta:
gitlab_project, acciónservice_account_pat_rotate - Herramienta individual:
gitlab_project_service_account_pat_rotate - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Service Account Personal Access Token: Rotate en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
service_account_id | integer | sí | Service account user ID |
token_id | integer | sí | Personal access token ID to rotate |
expires_at | string | no | New expiration date in YYYY-MM-DD format |
project.service_account_update
Sección titulada «project.service_account_update»Update a GitLab project service account. Returns: the updated project service account object. See also:
project.service_account_list,project.service_account_delete.
- Meta-herramienta:
gitlab_project, acciónservice_account_update - Herramienta individual:
gitlab_project_service_account_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Service Account: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
service_account_id | integer | sí | Service account user ID |
email | string | no | New email |
name | string | no | New name |
username | string | no | New username |
project.share_with_group
Sección titulada «project.share_with_group»Share a project with a group. Returns: a confirmation with the group ID and granted access role. See also:
project.delete_shared_group,project.list_invited_groups.
- Meta-herramienta:
gitlab_project, acciónshare_with_group - Herramienta individual:
gitlab_project_share_with_group - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Share en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
group_access | integer | sí | Access level for the group (5=Minimal access 10=Guest 15=Planner (Premium/Ultimate) 20=Reporter 25=Security Manager (Premium/Ultimate) 30=Developer 40=Maintainer 50=Owner) |
group_id | integer | sí | Group ID to share with |
project_id | string/integer | sí | Project ID or URL-encoded path |
expires_at | string | no | Expiration date for the share (YYYY-MM-DD) |
project.star
Sección titulada «project.star»Star a project. Returns: the project with the updated star_count. See also:
project.unstar,project.list_starrers.
- Meta-herramienta:
gitlab_project, acciónstar - Herramienta individual:
gitlab_project_star - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Update en proyecto. Algunas llamadas también necesitan: Project: Read en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.start_housekeeping
Sección titulada «project.start_housekeeping»Start housekeeping for a project. Returns: a success confirmation naming the project. See also:
project.repository_storage_get,project.get.
- Meta-herramienta:
gitlab_project, acciónstart_housekeeping - Herramienta individual:
gitlab_project_start_housekeeping - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.start_mirroring
Sección titulada «project.start_mirroring»Trigger a pull-mirror sync. Returns: a success confirmation naming the project. See also:
project.pull_mirror_get,project.pull_mirror_configure.
- Meta-herramienta:
gitlab_project, acciónstart_mirroring - Herramienta individual:
gitlab_project_start_mirroring - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Pull Mirror: Create en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.statistics_get
Sección titulada «project.statistics_get»Get a project’s last-30-days git fetch (clone/pull) statistics. Returns: total_fetches and a per-day breakdown of date and count. See also:
project.get.
- Meta-herramienta:
gitlab_project, acciónstatistics_get - Herramienta individual:
gitlab_get_project_statistics - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Statistic: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.target_branch_rule_create
Sección titulada «project.target_branch_rule_create»Create a target branch rule. Returns: the created rule with id, source-branch name pattern, target_branch, and created_at. See also:
project.target_branch_rule_list,project.target_branch_rule_delete.
- Meta-herramienta:
gitlab_project, accióntarget_branch_rule_create - Herramienta individual:
gitlab_project_create_target_branch_rule - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: No alcanzable en esta versión: GitLab no declara ningún permiso de grano fino para
ProjectTargetBranchRuleen la respuesta, así que la escritura se confirma y su respuesta se pierde (página de permisos) - Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
name | string | sí | Source branch name or wildcard pattern that triggers the rule (e.g. release/*) |
project_id | string/integer | sí | Numeric project ID that owns the rule. The create mutation requires a numeric ID |
target_branch | string | sí | Default target branch merge requests opened from matching source branches will target |
project.target_branch_rule_delete
Sección titulada «project.target_branch_rule_delete»Delete a target branch rule. Returns: a success confirmation naming the rule. See also:
project.target_branch_rule_list,project.target_branch_rule_create.
- Meta-herramienta:
gitlab_project, accióntarget_branch_rule_delete - Herramienta individual:
gitlab_project_delete_target_branch_rule - Nivel: Premium
- Token clásico u OAuth:
api - Token de grano fino: Target Branch Rule: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
rule_id | integer | sí | Target branch rule ID to delete (from the list action) |
project.target_branch_rule_list
Sección titulada «project.target_branch_rule_list»List a project’s target branch rules. Returns: each rule with id, source-branch name pattern, target_branch, and created_at. See also:
project.target_branch_rule_create,project.target_branch_rule_delete.
- Meta-herramienta:
gitlab_project, accióntarget_branch_rule_list - Herramienta individual:
gitlab_project_list_target_branch_rules - Nivel: Premium
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: No alcanzable en esta versión: GitLab no declara ningún permiso de grano fino para
ProjectTargetBranchRule, del que está hecha la respuesta (página de permisos) - Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Full project path such as my-group/my-project. The target branch rules GraphQL query requires the full path and does not accept a numeric ID |
project.transfer
Sección titulada «project.transfer»Transfer a project to another namespace, waiting up to 45 seconds for GitLab to apply the move. Returns: the project in its new namespace, or with transfer_queued set and its current namespace when GitLab has not applied the move yet, or an error when GitLab reports the move failed. See also:
project.get,group.get.
- Meta-herramienta:
gitlab_project, accióntransfer - Herramienta individual:
gitlab_project_transfer - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Transfer en proyecto. Algunas llamadas también necesitan: Project: Read en proyecto; Todo: Read en usuario (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
namespace | string | sí | Target namespace ID or path |
project_id | string/integer | sí | Project ID or URL-encoded path |
project.unarchive
Sección titulada «project.unarchive»Unarchive a project. Returns: the project with archived set to false. See also:
project.archive,project.get.
- Meta-herramienta:
gitlab_project, acciónunarchive - Herramienta individual:
gitlab_project_unarchive - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Archive en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.unstar
Sección titulada «project.unstar»Unstar a project. Returns: the project with the updated star_count. See also:
project.star,project.list_starrers.
- Meta-herramienta:
gitlab_project, acciónunstar - Herramienta individual:
gitlab_project_unstar - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
project.update
Sección titulada «project.update»Update a project’s settings. Returns: the updated project with its current configuration and web URL. See also:
project.get,project.archive,project.transfer.
- Meta-herramienta:
gitlab_project, acciónupdate - Herramienta individual:
gitlab_project_update - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
allow_merge_on_skipped_pipeline | boolean | no | Allow merge when pipeline is skipped |
allow_pipeline_trigger_approve_deployment | boolean | no | Allow pipeline triggerer to approve deployment |
analytics_access_level | string | no | Analytics access level (disabled, private, enabled) |
approvals_before_merge (Premium) | integer | no | Number of approvals required before merge. Pass 0 to require none. Omit the field to leave it untouched |
auto_cancel_pending_pipelines | string (enabled, disabled) | no | Auto-cancel redundant pending pipelines when a newer pipeline starts: enabled or disabled. |
auto_devops_deploy_strategy | string (continuous, manual, timed_incremental) | no | Auto DevOps deploy strategy: continuous (auto-deploy to production), manual (require manual gate), or timed_incremental (deploy incrementally with time delays). |
auto_devops_enabled | boolean | no | Enable Auto DevOps for the project |
auto_duo_code_review_enabled | boolean | no | Enable automatic GitLab Duo code review |
autoclose_referenced_issues | boolean | no | Auto-close referenced issues on merge |
automatic_rebase_enabled | boolean | no | Rebase the source branch automatically before merge |
build_git_strategy | string (fetch, clone) | no | Git strategy for CI builds: fetch (reuse existing clone, faster) or clone (fresh clone every time). |
build_timeout | integer | no | Build timeout in seconds. GitLab accepts 10 minutes to one month |
builds_access_level | string | no | CI/CD builds access level (disabled, private, enabled) |
ci_config_path | string | no | Custom CI/CD configuration file path. Pass an empty string to go back to the default .gitlab-ci.yml. Omit the field to leave it untouched |
ci_default_git_depth | integer | no | Default Git clone depth for CI/CD, 0 to 1000. Pass 0 to fetch the whole history. Omit the field to leave it untouched |
ci_delete_pipelines_in_seconds | integer | no | Auto-delete pipelines older than this many seconds, at least a day. Pass 0 to stop deleting them. Omit the field to leave it untouched |
ci_display_pipeline_variables | boolean | no | Display pipeline variables in the UI |
ci_forward_deployment_enabled | boolean | no | Enable CI/CD forward deployment (skip outdated jobs) |
ci_forward_deployment_rollback_allowed | boolean | no | Allow job retries even for outdated deployment jobs |
ci_id_token_sub_claim_components | string[] | no | Components used to build the CI ID token sub claim |
ci_pipeline_variables_minimum_override_role | string (owner, maintainer, developer, no_one_allowed) | no | Minimum role allowed to override pipeline variables (developer, maintainer, owner, no_one_allowed) |
ci_push_repository_for_job_token_allowed | boolean | no | Allow CI job tokens to push to the repository |
ci_restrict_pipeline_cancellation_role | string (developer, maintainer, no_one) | no | Role required to cancel pipelines/jobs (developer, maintainer, no_one) |
ci_separated_caches | boolean | no | Use separate caches for protected branches |
cicd_catalog_enabled | boolean | no | Publish the project as a CI/CD catalog resource |
container_expiration_policy_attributes | object | no | Container registry cleanup policy attributes |
container_registry_access_level | string | no | Container registry access level (disabled, private, enabled) |
container_registry_enabled | boolean | no | Enable container registry (deprecated: use container_registry_access_level) |
default_branch | string | no | New default branch |
description | string | no | New description. Pass an empty string to remove it. Omit the field to leave it untouched |
emails_disabled | boolean | no | Disable email notifications (deprecated: use emails_enabled) |
emails_enabled | boolean | no | Enable email notifications |
enforce_auth_checks_on_uploads | boolean | no | Enforce authorization checks on uploads |
environments_access_level | string | no | Environments access level (disabled, private, enabled) |
external_authorization_classification_label | string | no | External authorization classification label. Pass an empty string to remove it. Omit the field to leave it untouched |
feature_flags_access_level | string | no | Feature flags access level (disabled, private, enabled) |
forking_access_level | string | no | Forking access level (disabled, private, enabled) |
group_runners_enabled | boolean | no | Enable group runners |
import_url | string | no | URL to import/mirror repository from |
infrastructure_access_level | string | no | Infrastructure access level (disabled, private, enabled) |
issue_branch_template | string | no | Template for branch names created from issues. Pass an empty string to go back to the default template. Omit the field to leave it untouched |
issues_access_level | string | no | Issues access level (disabled, private, enabled) |
issues_enabled | boolean | no | Enable/disable issues feature (use ‘issues_enabled’ not ‘issues_access_level’) |
issues_template | string | no | Default issue description template |
jobs_enabled | boolean | no | Enable CI/CD jobs |
keep_latest_artifact | boolean | no | Keep the latest artifact for each pipeline |
lfs_enabled | boolean | no | Enable Git LFS |
max_artifacts_size | integer | no | Maximum artifacts size in MB. Pass 0 to go back to the instance’s limit. Omit the field to leave it untouched |
merge_commit_template | string | no | Template for merge commit messages. Pass an empty string to go back to the default template. Omit the field to leave it untouched |
merge_method | string (merge, rebase_merge, ff) | no | Merge method: merge (default merge commit), rebase_merge (rebase then merge commit), or ff (fast-forward, no merge commit). |
merge_pipelines_enabled | boolean | no | Enable merged results pipelines |
merge_request_title_regex | string | no | Regex that MR titles must match. Pass an empty string to remove it. Omit the field to leave it untouched |
merge_request_title_regex_description | string | no | Human-readable description for the MR title regex. Pass an empty string to remove it. Omit the field to leave it untouched |
merge_requests_access_level | string | no | Merge requests access level (disabled, private, enabled) |
merge_requests_enabled | boolean | no | Enable merge requests feature |
merge_requests_template | string | no | Default merge request description template |
merge_trains_enabled | boolean | no | Enable merge trains |
merge_trains_skip_train_allowed | boolean | no | Allow skipping the merge train |
mirror | boolean | no | Enable pull mirroring from import_url |
mirror_branch_regex | string | no | Only mirror branches matching this regex |
mirror_overwrites_diverged_branches | boolean | no | Overwrite diverged branches when mirroring |
mirror_trigger_builds | boolean | no | Trigger pipelines for mirror updates |
mirror_user_id | integer | no | User ID used to run mirror updates (admin only) |
model_experiments_access_level | string | no | Model experiments access level (disabled, private, enabled) |
model_registry_access_level | string | no | Model registry access level (disabled, private, enabled) |
monitor_access_level | string | no | Monitor access level (disabled, private, enabled) |
mr_default_target_self | boolean | no | Default merge request target to the project itself (for forks) |
mr_default_title_template | string | no | Template for default merge request titles. Pass an empty string to go back to the default template. Omit the field to leave it untouched |
name | string | no | New project name |
only_allow_merge_if_all_discussions_are_resolved | boolean | no | Only allow merge when all discussions are resolved |
only_allow_merge_if_all_status_checks_passed (Ultimate) | boolean | no | Only allow merge when all external status checks pass |
only_allow_merge_if_pipeline_succeeds | boolean | no | Only allow merge when pipeline succeeds |
only_mirror_protected_branches | boolean | no | Only mirror protected branches |
package_registry_access_level | string | no | Package registry access level (disabled, private, enabled) |
packages_enabled | boolean | no | Enable packages feature (deprecated: use package_registry_access_level) |
pages_access_level | string | no | Pages access level (disabled, private, enabled, public) |
path | string | no | New project path slug |
prevent_merge_without_jira_issue | boolean | no | Require an associated Jira issue before merge |
printing_merge_request_link_enabled | boolean | no | Show the create-merge-request link after pushing |
protect_merge_request_pipelines | boolean | no | Prevent merge request pipeline settings from being modified by users with lower permissions |
public_builds | boolean | no | Enable public access to pipelines |
public_jobs | boolean | no | Enable public access to pipelines |
releases_access_level | string | no | Releases access level (disabled, private, enabled) |
remove_source_branch_after_merge | boolean | no | Remove source branch after merge by default |
repository_access_level | string | no | Repository access level (disabled, private, enabled) |
repository_storage | string | no | Repository storage shard name (admin only) |
request_access_enabled | boolean | no | Allow users to request access |
requirements_access_level | string | no | Requirements access level (disabled, private, enabled) |
resolve_outdated_diff_discussions | boolean | no | Auto-resolve outdated diff discussions |
resource_group_default_process_mode | string (unordered, oldest_first, newest_first, newest_ready_first) | no | Default process mode for resource groups: unordered (run in parallel), oldest_first, newest_first, or newest_ready_first. |
restrict_user_defined_variables | boolean | no | Restrict user-defined pipeline variables (deprecated: use ci_pipeline_variables_minimum_override_role) |
reviewer_assignment_strategy (Premium) | string (disabled, code_owners) | no | Strategy used to automatically assign reviewers to merge requests: disabled or code_owners. The former dap_powered value was removed in GitLab 19.4 and only appears in responses of projects configured before then |
security_and_compliance_access_level | string | no | Security and compliance access level (disabled, private, enabled) |
service_desk_enabled | boolean | no | Enable Service Desk |
shared_runners_enabled | boolean | no | Enable shared runners |
show_default_award_emojis | boolean | no | Show default award emojis on issues/MRs |
snippets_access_level | string | no | Snippets access level (disabled, private, enabled) |
snippets_enabled | boolean | no | Enable snippets feature (deprecated: use snippets_access_level) |
squash_commit_template | string | no | Template for squash commit messages. Pass an empty string to go back to the default template. Omit the field to leave it untouched |
squash_option | string (never, always, default_on, default_off) | no | Squash commits on merge: never (not allowed), always (always squash), default_on (squash by default, overridable per MR), or default_off (no squash by default, overridable per MR). |
suggestion_commit_message | string | no | Default commit message for suggestions. Pass an empty string to go back to the default message. Omit the field to leave it untouched |
tag_list | string[] | no | Project tags (deprecated: use topics). Pass [] to remove every tag. Omit the field to leave them untouched |
topics | string[] | no | Topic tags for the project. Pass [] to remove every topic. Omit the field to leave them untouched |
visibility | string (private, internal, public) | no | Visibility level (private, internal, public) |
wiki_access_level | string | no | Wiki access level (disabled, private, enabled) |
wiki_enabled | boolean | no | Enable wiki feature |
project.upload
Sección titulada «project.upload»Upload a file (via local file_path or base64 content) to a project’s Markdown attachments store. Returns: the upload’s id (GitLab 17.3+), alt text, relative and full URLs, full path, and a Markdown embed reference. See also:
project.upload_list,project.upload_delete,project.get.
- Meta-herramienta:
gitlab_project, acciónupload - Herramienta individual:
gitlab_project_upload - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Markdown Upload: Create en proyecto (página de permisos)
- Comportamiento: escribe, no idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
filename | string | sí | Name of the file to upload (e.g. screenshot.png) |
project_id | string/integer | sí | Project ID or URL-encoded path |
content_base64 | string | no | Base64-encoded file content. Only one of file_path or content_base64 should be provided. |
file_path | string | no | Absolute path to a local file on the MCP server filesystem. Alternative to content_base64 for files too large to base64-encode. Only one of file_path or content_base64 should be provided. |
project.upload_avatar
Sección titulada «project.upload_avatar»Upload a project avatar. Returns: the project with its new avatar_url. See also:
project.download_avatar,project.update.
- Meta-herramienta:
gitlab_project, acciónupload_avatar - Herramienta individual:
gitlab_project_upload_avatar - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Project: Update en proyecto (página de permisos)
- Comportamiento: escribe, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
filename | string | sí | Avatar filename (e.g. avatar.png) |
project_id | string/integer | sí | Project ID or URL-encoded path |
content_base64 | string | no | Base64-encoded image content. Only one of file_path or content_base64 should be provided. |
file_path | string | no | Absolute path to a local image file on the MCP server filesystem. Alternative to content_base64 for files too large to base64-encode. Only one of file_path or content_base64 should be provided. |
project.upload_delete
Sección titulada «project.upload_delete»Delete a project Markdown upload by its numeric upload ID. Returns: a success confirmation. See also:
project.upload_list,project.upload_delete_by_secret,project.get.
- Meta-herramienta:
gitlab_project, acciónupload_delete - Herramienta individual:
gitlab_project_upload_delete - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Markdown Upload: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
upload_id | integer | sí | ID of the upload to delete |
project.upload_delete_by_secret
Sección titulada «project.upload_delete_by_secret»Delete a project Markdown upload by its 32-character secret and filename (the /uploads/<secret>/<filename> reference). Returns: a success confirmation. See also:
project.upload_delete,project.upload_list,project.upload.
- Meta-herramienta:
gitlab_project, acciónupload_delete_by_secret - Herramienta individual:
gitlab_project_upload_delete_by_secret - Nivel: Free
- Token clásico u OAuth:
api - Token de grano fino: Markdown Upload: Delete en proyecto (página de permisos)
- Comportamiento: escribe, destructiva (necesita confirmación), idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
filename | string | sí | Filename of the upload as it appears in the upload URL |
project_id | string/integer | sí | Project ID or URL-encoded path |
secret | string | sí | 32-character upload secret from the upload URL (/uploads/<secret>/<filename>) |
project.upload_list
Sección titulada «project.upload_list»List all Markdown uploads in a project. Returns: each upload’s id, filename, size, creation time, and uploader (id, username, name), plus pagination metadata. See also:
project.upload,project.upload_delete,project.get.
- Meta-herramienta:
gitlab_project, acciónupload_list - Herramienta individual:
gitlab_project_upload_list - Nivel: Free
- Token clásico u OAuth:
read_api(oapi) - Token de grano fino: Markdown Upload: Read en proyecto (página de permisos)
- Comportamiento: solo lectura, idempotente
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
project_id | string/integer | sí | Project ID or URL-encoded path |
order_by | string | no | For keyset pagination, the column to order results by |
page | integer | no | Page number to fetch, 1-based. Defaults to 1. Use the next_page field from the previous response to paginate forward. |
page_token | string | no | Next page of a keyset listing: the next_page_token of the previous response of this action, passed back unchanged. It carries the position and every filter of the listing as GitLab read them, and those are what the next page is asked with, whatever filters are sent beside it. Leave it empty for the first page. |
pagination | string | no | Pagination method: ‘keyset’ for keyset-based pagination on large ordered result sets, or ‘offset’ (the default). Keyset avoids deep-offset cost, and a keyset page names the next one in next_page_token rather than next_page. |
per_page | integer | no | Items per page. Defaults to 20, minimum 1, maximum 100. Use 100 to minimize round trips when the result set is large. |
sort | string (asc, desc) | no | Sort order for keyset pagination: ‘asc’ or ‘desc’ |