The 2nd gen API for Cloud Functions for Firebase. This SDK supports deep imports. For example, the namespace pubsub
is available at firebase-functions/v2
or is directly importable from firebase-functions/v2/pubsub
.
Functions
Function | Description |
---|---|
config() | Store and retrieve project configuration data such as third-party API keys or other settings. You can set configuration values using the Firebase CLI as described in https://firebase.google.com/docs/functions/config-env. |
onInit(callback) | Registers a callback that should be run when in a production environment before executing any functions code. Calling this function more than once leads to undefined behavior. |
setGlobalOptions(options) | Sets default options for all functions written using the 2nd gen SDK. |
Classes
Class | Description |
---|---|
Change | The Cloud Functions interface for events that change state, such as Realtime Database or Cloud Firestore onWrite and onUpdate events.For more information about the format used to construct Change objects, see below. |
Interfaces
Interface | Description |
---|---|
CloudEvent | (BETA) A CloudEventBase is the base of a cross-platform format for encoding a serverless event. For more information, see https://github.com/cloudevents/spec. |
CloudFunction | (BETA) A handler for CloudEvents. |
EventHandlerOptions | Additional fields that can be set on any event-handling function. |
GlobalOptions | GlobalOptions are options that can be set across an entire project. These options are common to HTTPS and event handling functions. |
Namespaces
Namespace | Description |
---|---|
alerts | |
database | |
eventarc | |
firestore | |
https | |
identity | |
logger | |
params | |
pubsub | |
remoteConfig | |
scheduler | |
storage | |
tasks | |
testLab |
Variables
Variable | Description |
---|---|
app |
Type Aliases
Type Alias | Description |
---|---|
IngressSetting | List of available options for IngressSettings . |
MemoryOption | List of available memory options supported by Cloud Functions. |
ParamsOf | A type that maps all parameter capture gropus into keys of a record. For example, ParamsOf<"users/{uid}"> is { uid: string } ParamsOf<"users/{uid}/logs/{log}"> is { uid: string; log: string } ParamsOf<"some/static/data"> is {}For flexibility reasons, ParamsOf |
SupportedRegion | List of all regions supported by Cloud Functions (2nd gen). |
VpcEgressSetting | List of available options for VpcConnectorEgressSettings . |
config()
Using functions.config() is discouraged. See https://firebase.google.com/docs/functions/config-env.
Store and retrieve project configuration data such as third-party API keys or other settings. You can set configuration values using the Firebase CLI as described in https://firebase.google.com/docs/functions/config-env.
Signature:
export declare function config(): Record<string, any>;
Returns:
Record<string, any>
onInit()
Registers a callback that should be run when in a production environment before executing any functions code. Calling this function more than once leads to undefined behavior.
Signature:
export declare function onInit(callback: () => unknown): void;
Parameters
Parameter | Type | Description |
---|---|---|
callback | () => unknown | initialization callback to be run before any function executes. |
Returns:
void
setGlobalOptions()
Sets default options for all functions written using the 2nd gen SDK.
Signature:
export declare function setGlobalOptions(options: GlobalOptions): void;
Parameters
Parameter | Type | Description |
---|---|---|
options | GlobalOptions | Options to set as default |
Returns:
void
app
Signature:
app: {
setEmulatedAdminApp: typeof setEmulatedAdminApp;
}
IngressSetting
List of available options for IngressSettings
.
Signature:
export type IngressSetting = "ALLOW_ALL" | "ALLOW_INTERNAL_ONLY" | "ALLOW_INTERNAL_AND_GCLB";
MemoryOption
List of available memory options supported by Cloud Functions.
Signature:
export type MemoryOption = "128MiB" | "256MiB" | "512MiB" | "1GiB" | "2GiB" | "4GiB" | "8GiB" | "16GiB" | "32GiB";
ParamsOf
A type that maps all parameter capture gropus into keys of a record. For example, ParamsOf<"users/{uid}"> is { uid: string } ParamsOf<"users/{uid}/logs/{log}"> is { uid: string; log: string } ParamsOf<"some/static/data"> is {}
For flexibility reasons, ParamsOf
Signature:
export type ParamsOf<PathPattern extends string | Expression<string>> = PathPattern extends Expression<string> ? Record<string, string> : string extends PathPattern ? Record<string, string> : {
[Key in Extract<Split<NullSafe<Exclude<PathPattern, Expression<string>>>, "/">[number]>]: string;
};
SupportedRegion
List of all regions supported by Cloud Functions (2nd gen).
Signature:
export type SupportedRegion = "asia-east1" | "asia-northeast1" | "asia-northeast2" | "europe-north1" | "europe-west1" | "europe-west4" | "us-central1" | "us-east1" | "us-east4" | "us-west1" | "asia-east2" | "asia-northeast3" | "asia-southeast1" | "asia-southeast2" | "asia-south1" | "australia-southeast1" | "europe-central2" | "europe-west2" | "europe-west3" | "europe-west6" | "northamerica-northeast1" | "southamerica-east1" | "us-west2" | "us-west3" | "us-west4";
VpcEgressSetting
List of available options for VpcConnectorEgressSettings
.
Signature:
export type VpcEgressSetting = "PRIVATE_RANGES_ONLY" | "ALL_TRAFFIC";