Stay organized with collections
Save and categorize content based on your preferences.
Imports documents into Google Cloud Firestore. Existing documents with the same name are overwritten. The import occurs in the background and its progress can be monitored and managed via the Operation resource that is created. If an databases.importDocuments operation is cancelled, it is possible that a subset of the data has already been imported to Cloud Firestore.
HTTP request
POST https://firestore.googleapis.com/v1/{name=projects/*/databases/*}:importDocuments
An empty list represents all namespaces. This is the preferred usage for databases that don't use namespaces.
An empty string element represents the default namespace. This should be used if the database has data in non-default namespaces, but doesn't want to include them. Each namespace in this list must be unique.
Response body
If successful, the response body contains an instance of Operation.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-06-20 UTC."],[],[],null,["# Method: projects.databases.importDocuments\n\nImports documents into Google Cloud Firestore. Existing documents with the same name are overwritten. The import occurs in the background and its progress can be monitored and managed via the Operation resource that is created. If an databases.importDocuments operation is cancelled, it is possible that a subset of the data has already been imported to Cloud Firestore.\n\n### HTTP request\n\n`POST https://firestore.googleapis.com/v1/{name=projects/*/databases/*}:importDocuments`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|--------|-------------------------------------------------------------------------------------------------------------------|\n| `name` | `string` Required. Database to import into. Should be of the form: `projects/{projectId}/databases/{databaseId}`. |\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|-----------------------------------------------------------------------------------------------|\n| ``` { \"collectionIds\": [ string ], \"inputUriPrefix\": string, \"namespaceIds\": [ string ] } ``` |\n\n| Fields ||\n|-------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `collectionIds[]` | `string` Which collection IDs to import. Unspecified means all collections included in the import. Each collection ID in this list must be unique. |\n| `inputUriPrefix` | `string` Location of the exported files. This must match the outputUriPrefix of an ExportDocumentsResponse from an export that has completed successfully. See: [google.firestore.admin.v1.ExportDocumentsResponse.output_uri_prefix](/docs/firestore/reference/rest/Shared.Types/ExportDocumentsResponse#FIELDS.output_uri_prefix). |\n| `namespaceIds[]` | `string` An empty list represents all namespaces. This is the preferred usage for databases that don't use namespaces. An empty string element represents the default namespace. This should be used if the database has data in non-default namespaces, but doesn't want to include them. Each namespace in this list must be unique. |\n\n### Response body\n\nIf successful, the response body contains an instance of [Operation](/docs/firestore/reference/rest/Shared.Types/Operation).\n\n### Authorization scopes\n\nRequires one of the following OAuth scopes:\n\n- `https://www.googleapis.com/auth/datastore`\n- `https://www.googleapis.com/auth/cloud-platform`\n\nFor more information, see the [OAuth 2.0 Overview](https://developers.google.com/identity/protocols/OAuth2)."]]