---
title: "Create or update the Matrix integration"
method: PUT
path: "/api/v4/projects/{id}/services/matrix"
tags: ["integrations"]
---

# Create or update the Matrix integration

`PUT /api/v4/projects/{id}/services/matrix`

## Request

- Base URL: `https://gitlab.com`
- URL: `https://gitlab.com/api/v4/projects/{id}/services/matrix`
- Auth: none declared

Creates or updates the Matrix integration.

## Path parameters

- `id` integer, required

## Request body

- PutApiV4ProjectsIdServicesMatrix: Create or update the Matrix integration
  - `hostname` string: Custom hostname of the Matrix server. The default value is `https://matrix-client.matrix.org`.
  - `token` string, required: The Matrix access token (for example, `syt-zyx57W2v1u123ew11`).
  - `room` string, required: Unique identifier for the target room (in the format `!qPKKM111FFKKsfoCVy:matrix.org`).
  - `notify_only_broken_pipelines` boolean: Send notifications for broken pipelines.
  - `notify_only_when_pipeline_status_changes` boolean: Send notifications only when the pipeline status changes.
  - `branches_to_be_notified` string: Branches to send notifications for. Valid options are `all`, `default`, `protected`, and `default_and_protected`. The default value is `default`.
  - `push_events` boolean: Trigger event for pushes to the repository.
  - `issues_events` boolean: Trigger event when a work item is created, updated, or closed.
  - `confidential_issues_events` boolean: Trigger event when a confidential work item is created, updated, or closed.
  - `merge_requests_events` boolean: Trigger event when a merge request is created, updated, or merged.
  - `note_events` boolean: Trigger event for new comments.
  - `confidential_note_events` boolean: Trigger event for new comments on confidential work items.
  - `tag_push_events` boolean: Trigger event for new tags pushed to the repository.
  - `pipeline_events` boolean: Trigger event when a pipeline status changes.
  - `wiki_page_events` boolean: Trigger event when a wiki page is created or updated.
  - `incident_events` boolean: Trigger event when an incident is created.
  - `work_item_events` boolean
  - `confidential_work_item_events` boolean
  - `vulnerability_events` boolean
  - `use_inherited_settings` boolean: Indicates whether to inherit the default settings. Defaults to `false`.

## Response `200`

Create or update the Matrix integration

- APIEntitiesIntegrationBasic: API_Entities_IntegrationBasic model
  - `id` integer, required
  - `title` string, required
  - `slug` string, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `active` boolean, required
  - `commit_events` boolean, required
  - `push_events` boolean, required
  - `issues_events` boolean, required
  - `incident_events` boolean, required
  - `alert_events` boolean, required
  - `confidential_issues_events` boolean, required
  - `merge_requests_events` boolean, required
  - `tag_push_events` boolean, required
  - `deployment_events` boolean, required
  - `note_events` boolean, required
  - `confidential_note_events` boolean, required
  - `pipeline_events` boolean, required
  - `wiki_page_events` boolean, required
  - `job_events` boolean, required
  - `comment_on_event_enabled` boolean, required
  - `inherited` boolean, required
  - `vulnerability_events` boolean, required

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `404`: Not found
- `422`: Unprocessable entity

---

[API](https://skmtc.dev/gitlab/apis/gitlab-api.md) - [All operations](https://skmtc.dev/gitlab/apis/gitlab-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gitlab/apis/gitlab-api/revisions/b234947ef3f2?raw)
