---
title: "Create Firebase external user source"
method: POST
path: "/resources/user-sources/v1/external/firebase"
tags: ["User sources (pools)"]
---

# Create Firebase external user source

`POST /resources/user-sources/v1/external/firebase`

## Request

- Base URL: `http://localhost:8181`
- URL: `http://localhost:8181/resources/user-sources/v1/external/firebase`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/frontegg/apis/entitlements-agent-pdp/docs/resources/user-sources/v1/external/firebase/post.ts> (a function with typed inputs; its response is checked against the schema)

This route creates a new external user source. A vendor token is required for this route.

## Request body

- CreateFirebaseExternalUserSourceRequestDTO
  - `name` string, required: The user source name
  - `configuration` ExternalFirebaseUserSourceConfig, required
    - `syncOnLogin` boolean, required: Whether to sync user profile attributes on each login
    - `isMigrated` boolean, required: Whether to migrate the users
    - `apiKey` string, required: The firebase Web API Key
    - `serviceAccount` FirebaseServiceAccountConfig, required
      - `type` string, required
      - `project_id` string, required
      - `private_key_id` string, required
      - `private_key` string, required
      - `client_email` string, required
      - `client_id` string, required
      - `auth_uri` string, required
      - `token_uri` string, required
      - `auth_provider_x509_cert_url` string, required
      - `client_x509_cert_url` string, required
      - `universe_domain` string, required
    - `tenantConfig` union, required
      - UserSourceStaticTenantConfig
        - `tenantId` string, required: The tenant id which all of the users would be added to
        - `tenantResolverType` 'static', required
      - UserSourceNewTenantConfig
        - `tenantResolverType` 'new', required
  - `appIds` string[]: The application ids to assign to this user source
  - `index` number, required: The user source index
  - `description` string: The user source description

## Response `201`

- CreateUserSourceResponse
  - `id` string, required
  - `name` string, required
  - `type` string, required
  - `appIds` string[], required
  - `description` string, required
  - `index` number, required

---

[API](https://skmtc.dev/frontegg/apis/entitlements-agent-pdp.md) - [All operations](https://skmtc.dev/frontegg/apis/entitlements-agent-pdp/llms.txt) - [OpenAPI document](https://skmtc.dev/frontegg/apis/entitlements-agent-pdp/revisions/c496ae9e1c3e?raw)
