---
title: "Save a FCM integration"
method: PUT
path: "/integrations/fcm"
tags: ["fcm", "channel/mobile_push"]
---

# Save a FCM integration

`PUT /integrations/fcm`

Updates or creates the FCM integration for the project.

## Request body

- FCMConfigPayload
  - `auth_provider_x509_cert_url` string, required — URL for Google's OAuth provider x509 certificates used to validate tokens.
  - `auth_uri` string, required — OAuth authorization endpoint used when exchanging Firebase credentials.
  - `client_email` string, required — The client email address from the Firebase service account.
  - `client_id` string, required — The numeric client identifier for the Firebase service account.
  - `client_x509_cert_url` string, required — URL to the public x509 certificate for this service account.
  - `private_key` string, required — The PEM encoded service account private key used to sign Firebase credentials.
  - `private_key_id` string, required — Identifier of the private key inside the downloaded service account JSON.
  - `project_id` string, required — The Firebase project ID associated with this service account.
  - `token_uri` string, required — OAuth token endpoint used to mint access tokens for FCM.
  - `type` 'service_account', required — Indicates the kind of Google credential. Service accounts always use the `service_account` type.
  - `universe_domain` string, required — The Google Cloud universe domain hosting the Firebase APIs.

## Response `200`

OK

- FCMConfigPayload
  - `auth_provider_x509_cert_url` string, required — URL for Google's OAuth provider x509 certificates used to validate tokens.
  - `auth_uri` string, required — OAuth authorization endpoint used when exchanging Firebase credentials.
  - `client_email` string, required — The client email address from the Firebase service account.
  - `client_id` string, required — The numeric client identifier for the Firebase service account.
  - `client_x509_cert_url` string, required — URL to the public x509 certificate for this service account.
  - `private_key` string, required — The PEM encoded service account private key used to sign Firebase credentials.
  - `private_key_id` string, required — Identifier of the private key inside the downloaded service account JSON.
  - `project_id` string, required — The Firebase project ID associated with this service account.
  - `token_uri` string, required — OAuth token endpoint used to mint access tokens for FCM.
  - `type` 'service_account', required — Indicates the kind of Google credential. Service accounts always use the `service_account` type.
  - `universe_domain` string, required — The Google Cloud universe domain hosting the Firebase APIs.

---

[API](https://skmtc.net/magicbell/apis/magicbell-api.md) · [All operations](https://skmtc.net/magicbell/apis/magicbell-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/magicbell/magicbell-api/revisions/8b99dca11019/schema)
