functions package

Cloud Functions for Firebase

Functions

FunctionDescription
function(app, ...)
getFunctions(app, regionOrCustomDomain)Returns aFunctions instance for the given app.
function(functionsInstance, ...)
connectFunctionsEmulator(functionsInstance, host, port)Modify this instance to communicate with the Cloud Functions emulator.Note: this must be called before this instance has been used to do any operations.
httpsCallable(functionsInstance, name, options)Returns a reference to the callable HTTPS trigger with the given name.
httpsCallableFromURL(functionsInstance, url, options)Returns a reference to the callable HTTPS trigger with the specified url.

Classes

ClassDescription
FunctionsErrorAn error returned by the Firebase Functions client SDK.SeeFunctionsErrorCode for full documentation of codes.

Interfaces

InterfaceDescription
FunctionsAFunctions instance.
HttpsCallableA reference to a "callable" HTTP trigger in Cloud Functions.
HttpsCallableOptionsAn interface for metadata about how calls should be executed.
HttpsCallableResultAnHttpsCallableResult wraps a single result from a function call.
HttpsCallableStreamOptionsAn interface for metadata about how a stream call should be executed.
HttpsCallableStreamResultAnHttpsCallableStreamResult wraps a single streaming result from a function call.

Type Aliases

Type AliasDescription
FunctionsErrorCodeThe set of Firebase Functions status codes. The codes are the same at the ones exposed by gRPC here: https://github.com/grpc/grpc/blob/master/doc/statuscodes.mdPossible values: - 'cancelled': The operation was cancelled (typically by the caller). - 'unknown': Unknown error or an error from a different error domain. - 'invalid-argument': Client specified an invalid argument. Note that this differs from 'failed-precondition'. 'invalid-argument' indicates arguments that are problematic regardless of the state of the system (e.g. an invalid field name). - 'deadline-exceeded': Deadline expired before operation could complete. For operations that change the state of the system, this error may be returned even if the operation has completed successfully. For example, a successful response from a server could have been delayed long enough for the deadline to expire. - 'not-found': Some requested document was not found. - 'already-exists': Some document that we attempted to create already exists. - 'permission-denied': The caller does not have permission to execute the specified operation. - 'resource-exhausted': Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space. - 'failed-precondition': Operation was rejected because the system is not in a state required for the operation's execution. - 'aborted': The operation was aborted, typically due to a concurrency issue like transaction aborts, etc. - 'out-of-range': Operation was attempted past the valid range. - 'unimplemented': Operation is not implemented or not supported/enabled. - 'internal': Internal errors. Means some invariants expected by underlying system has been broken. If you see one of these errors, something is very broken. - 'unavailable': The service is currently unavailable. This is most likely a transient condition and may be corrected by retrying with a backoff. - 'data-loss': Unrecoverable data loss or corruption. - 'unauthenticated': The request does not have valid authentication credentials for the operation.
FunctionsErrorCodeCoreFunctions error code string appended after "functions/" product prefix. SeeFunctionsErrorCode for full documentation of codes.

function(app, ...)

getFunctions(app, regionOrCustomDomain)

Returns aFunctions instance for the given app.

Signature:

exportdeclarefunctiongetFunctions(app?:FirebaseApp,regionOrCustomDomain?:string):Functions;

Parameters

ParameterTypeDescription
appFirebaseAppTheFirebaseApp to use.
regionOrCustomDomainstringone of: a) The region the callable functions are located in (ex: us-central1) b) A custom domain hosting the callable functions (ex: https://mydomain.com)

Returns:

Functions

function(functionsInstance, ...)

connectFunctionsEmulator(functionsInstance, host, port)

Modify this instance to communicate with the Cloud Functions emulator.

Note: this must be called before this instance has been used to do any operations.

Signature:

exportdeclarefunctionconnectFunctionsEmulator(functionsInstance:Functions,host:string,port:number):void;

Parameters

ParameterTypeDescription
functionsInstanceFunctions
hoststringThe emulator host (ex: localhost)
portnumberThe emulator port (ex: 5001)

Returns:

void

httpsCallable(functionsInstance, name, options)

Returns a reference to the callable HTTPS trigger with the given name.

Signature:

exportdeclarefunctionhttpsCallable<RequestData=unknown,ResponseData=unknown,StreamData=unknown>(functionsInstance:Functions,name:string,options?:HttpsCallableOptions):HttpsCallable<RequestData,ResponseData,StreamData>;

Parameters

ParameterTypeDescription
functionsInstanceFunctions
namestringThe name of the trigger.
optionsHttpsCallableOptions

Returns:

HttpsCallable<RequestData, ResponseData, StreamData>

httpsCallableFromURL(functionsInstance, url, options)

Returns a reference to the callable HTTPS trigger with the specified url.

Signature:

exportdeclarefunctionhttpsCallableFromURL<RequestData=unknown,ResponseData=unknown,StreamData=unknown>(functionsInstance:Functions,url:string,options?:HttpsCallableOptions):HttpsCallable<RequestData,ResponseData,StreamData>;

Parameters

ParameterTypeDescription
functionsInstanceFunctions
urlstringThe url of the trigger.
optionsHttpsCallableOptions

Returns:

HttpsCallable<RequestData, ResponseData, StreamData>

FunctionsErrorCode

The set of Firebase Functions status codes. The codes are the same at the ones exposed by gRPC here: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md

Possible values: - 'cancelled': The operation was cancelled (typically by the caller). - 'unknown': Unknown error or an error from a different error domain. - 'invalid-argument': Client specified an invalid argument. Note that this differs from 'failed-precondition'. 'invalid-argument' indicates arguments that are problematic regardless of the state of the system (e.g. an invalid field name). - 'deadline-exceeded': Deadline expired before operation could complete. For operations that change the state of the system, this error may be returned even if the operation has completed successfully. For example, a successful response from a server could have been delayed long enough for the deadline to expire. - 'not-found': Some requested document was not found. - 'already-exists': Some document that we attempted to create already exists. - 'permission-denied': The caller does not have permission to execute the specified operation. - 'resource-exhausted': Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space. - 'failed-precondition': Operation was rejected because the system is not in a state required for the operation's execution. - 'aborted': The operation was aborted, typically due to a concurrency issue like transaction aborts, etc. - 'out-of-range': Operation was attempted past the valid range. - 'unimplemented': Operation is not implemented or not supported/enabled. - 'internal': Internal errors. Means some invariants expected by underlying system has been broken. If you see one of these errors, something is very broken. - 'unavailable': The service is currently unavailable. This is most likely a transient condition and may be corrected by retrying with a backoff. - 'data-loss': Unrecoverable data loss or corruption. - 'unauthenticated': The request does not have valid authentication credentials for the operation.

Signature:

exporttypeFunctionsErrorCode=`functions/${FunctionsErrorCodeCore}`;

FunctionsErrorCodeCore

Functions error code string appended after "functions/" product prefix. SeeFunctionsErrorCode for full documentation of codes.

Signature:

exporttypeFunctionsErrorCodeCore='ok'|'cancelled'|'unknown'|'invalid-argument'|'deadline-exceeded'|'not-found'|'already-exists'|'permission-denied'|'resource-exhausted'|'failed-precondition'|'aborted'|'out-of-range'|'unimplemented'|'internal'|'unavailable'|'data-loss'|'unauthenticated';

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2024-12-13 UTC.