Action domain

environment

Every action this domain exposes through gitlab_execute_action, from the gitlab://tools manifest. Each entry folds out to its full upstream description and required parameters.

18 · actions4 · destructive7 · read-only

Counted with a Free-tier token against gitlab.com, which is the only host this endpoint talks to: to use it against a self-managed instance, run the server yourself — its documentation covers that. The catalog is scoped to the token that asks, so the count moves with both its tier and its permissions: higher tiers expose more actions, and administration domains only appear to tokens allowed to use them. That is why the figures differ elsewhere: the upstream project counts 868 operations on Community Edition and up to 1,094 on GitLab.com's top tier, while this deployment publishes 768 because it is OAuth-only and acts with your token, so the administration domains a non-admin account cannot call never appear. All three describe the same catalog, counted from three vantage points.

Each entry also says what a GitLab fine-grained personal access token needs to run it, as GitLab 19.4.1 declares it: every permission of one line, at one of the boundaries named. Where there are alternatives, any one is enough.

Back to the server card

  1. environment.create

    Environment Create

    Create an environment in a project. Use when introducing new runtime targets such as review, staging, or production environments.

    Required parameters: name (string), project_id (string|integer)

    Fine-grained token: Environment: Create at project

  2. environment.delete

    Environment Deletedestructive

    Delete a stopped environment from a project. Returns: a success confirmation naming the deleted environment. See also: environment.stop, environment.list, environment.get.

    Required parameters: environment_id (integer), project_id (string|integer)

    Fine-grained token: Environment: Delete at project

  3. environment.deployment_approve_or_reject

    Deployment Approve Or Reject

    Approve or reject a blocked deployment awaiting protected-environment approval, optionally with a comment and an approval rule to represent. Returns: a confirmation message naming the deployment and the applied status. See also: environment.deployment_get, environment.deployment_update.

    Required parameters: deployment_id (integer), project_id (string|integer), status (string)

    Fine-grained token: Deployment: Approve at project

  4. environment.deployment_create

    Deployment Create

    Create a deployment record for an environment at a given ref and sha with an initial status. Returns: the created deployment with id, iid, ref, sha, status, and nested user, environment, and deployable objects. See also: environment.get, environment.deployment_list, environment.deployment_update.

    Required parameters: environment (string), project_id (string|integer), ref (string), sha (string)

    Fine-grained token: Deployment: Create at project

  5. environment.deployment_delete

    Deployment Deletedestructive

    Delete a deployment record by deployment_id within a project. Returns: a confirmation that the deployment was deleted. See also: environment.deployment_get, environment.deployment_list.

    Required parameters: deployment_id (integer), project_id (string|integer)

    Fine-grained token: Deployment: Delete at project

  6. environment.deployment_get

    Deployment Getread-only

    Get one deployment by deployment_id for a project. Use when investigating a specific deployment state, environment, or actor metadata.

    Required parameters: deployment_id (integer), project_id (string|integer)

    Fine-grained token: Deployment: Read at project

  7. environment.deployment_list

    Deployment Listread-only

    List deployments in a project with environment, status, and date filters plus offset or keyset pagination. Returns: matching deployments with ref, sha, status, user, environment, and deployable (CI job) objects, and pagination metadata. See also: environment.deployment_get, environment.list, pipeline.get.

    Required parameters: project_id (string|integer)

    Fine-grained token: Deployment: Read at project

  8. environment.deployment_merge_requests

    List Deployment Merge Requestsread-only

    List the merge requests associated with a deployment, with merge-request filtering (state, approval, author, assignee, draft, created date) and offset or keyset pagination. Returns: matching merge requests with full metadata (author, assignees, reviewers, labels, milestone, pipelines, time stats, timestamps) and pagination metadata. See also: merge_request.get, merge_request.list, environment.deployment_list.

    Required parameters: deployment_id (integer), project_id (string|integer)

    Fine-grained token: Deployment: Read and Merge Request: Read at project

  9. environment.deployment_update

    Deployment Update

    Update a deployment's status by deployment_id within a project. Returns: the updated deployment with id, iid, ref, sha, status, and nested user, environment, and deployable objects. See also: environment.deployment_get, environment.deployment_list, environment.deployment_approve_or_reject.

    Required parameters: deployment_id (integer), project_id (string|integer), status (string)

    Fine-grained token: Deployment: Update at project

  10. environment.freeze_create

    Create Freeze Period

    Create a deploy freeze period for a project. Returns: the created freeze period with id, freeze_start/freeze_end cron expressions, and cron_timezone.

    Required parameters: freeze_end (string), freeze_start (string), project_id (string|integer)

    Fine-grained token: Freeze Period: Create at project

  11. environment.freeze_delete

    Delete Freeze Perioddestructive

    Delete a deploy freeze period. Returns: no content on success (HTTP 204).

    Required parameters: freeze_period_id (integer), project_id (string|integer)

    Fine-grained token: Freeze Period: Delete at project

  12. environment.freeze_get

    Get Freeze Periodread-only

    Get a specific deploy freeze period. Returns: the freeze period's id, freeze_start/freeze_end cron expressions, cron_timezone, and created/updated timestamps.

    Required parameters: freeze_period_id (integer), project_id (string|integer)

    Fine-grained token: Freeze Period: Read at project

  13. environment.freeze_list

    List Freeze Periodsread-only

    List deploy freeze periods for a project. Returns: each freeze period's id, freeze_start/freeze_end cron expressions, cron_timezone, and created/updated timestamps.

    Required parameters: project_id (string|integer)

    Fine-grained token: Freeze Period: Read at project

  14. environment.freeze_update

    Update Freeze Period

    Update an existing deploy freeze period. Returns: the updated freeze period with id, freeze_start/freeze_end cron expressions, and cron_timezone.

    Required parameters: freeze_period_id (integer), project_id (string|integer)

    Fine-grained token: Freeze Period: Update at project

  15. environment.get

    Environment Getread-only

    Get one environment by environment_id. Use when inspecting state, tier, external URL, and stop behavior of a specific environment.

    Required parameters: environment_id (integer), project_id (string|integer)

    Fine-grained token: Environment: Read at project

  16. environment.list

    Environment Listread-only

    List environments in one project with filters and pagination. Use this to discover environment IDs before get/update/stop/delete operations.

    Required parameters: project_id (string|integer)

    Fine-grained token: Environment: Read at project

  17. environment.stop

    Environment Stopdestructive

    Stop an active environment. This is modeled as a delete-style action but intentionally marked non-destructive because it changes runtime state without deleting the environment resource.

    Required parameters: environment_id (integer), project_id (string|integer)

    Fine-grained token: Environment: Stop at project

  18. environment.update

    Environment Update

    Update an existing environment in a project. Returns: the updated environment with state, tier, external URL, cluster agent, Kubernetes namespace, Flux resource path, and auto-stop settings. See also: environment.get, environment.list, environment.stop.

    Required parameters: environment_id (integer), project_id (string|integer)

    Fine-grained token: Environment: Update at project