---
title: "Get Gitar's blocking status for a GitLab MR"
method: GET
path: "/external/gitlab/mr_status"
tags: ["GitLab MR Status"]
---

# Get Gitar's blocking status for a GitLab MR

`GET /external/gitlab/mr_status`

Returns the current Gitar blocking status for a GitLab merge request. Intended for use in CI pipelines: fail the job when `blocked == "yes"` and mark it required for merge.

Organizations with a single connected GitLab instance can omit `host`. On a multi-instance organization, pass `host` to say which instance the project id belongs to — GitLab project ids are only unique within one instance.

## Query parameters

- `project_id` integer, required
- `mr_iid` integer, required
- `host` string

## Response `200`

MR blocking status returned successfully

- MrStatusResponse — Pipeline-friendly MR status returned to SoFi's CI job.
  - `blocked` 'yes' | 'no' | 'pending', required

## Other responses

- `400` — Invalid query parameters
- `401` — Unauthorized
- `403` — Insufficient scopes
- `404` — Project not connected to this org
- `409` — The organization has several GitLab instances and `host` did not identify one

## Changes

- **2026-08-05** `c7d5cd8f5507` — 2 info
  - added the new optional `query` request parameter `host`
  - added the non-success response with the status `409`

[Change history](https://skmtc.dev/gitar/apis/gitar-external-api/changes/external/gitlab/mr_status/get.md)

---

[API](https://skmtc.dev/gitar/apis/gitar-external-api.md) · [All operations](https://skmtc.dev/gitar/apis/gitar-external-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/gitar/gitar-external-api/revisions/c7d5cd8f5507/schema)
