> ## Documentation Index
> Fetch the complete documentation index at: https://www.forager.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Forager is a REST API for B2B people, company and job post data: contact lookups (phone numbers, personal emails, work emails), person, company and job post search, and bulk data feeds.
> Server: https://api-v2.forager.ai. Send the API key in the X-API-KEY header. Most paths include {account_id}. Read FORAGER_API_KEY and FORAGER_ACCOUNT_ID from the environment; never put the key in client-side code, logs or prompts.
> To add Forager to a project, follow https://www.forager.ai/docs/guides/agent-quickstart.md. To pick an endpoint, read https://www.forager.ai/docs/guides/choose-an-endpoint.md. For end-to-end builds, see https://www.forager.ai/docs/recipes/overview.md.
> Most requests spend credits. Do not guess costs; use https://www.forager.ai/docs/api-overview/credit-pricing.md and ask the user before spending credits.
> Use only endpoints and fields defined in https://www.forager.ai/docs/openapi.yaml. Forager has no MCP server for the API yet; the /mcp endpoint on this site searches the documentation only.

# Google Cloud Storage data delivery (v2)

> Configure IAM access in Google Cloud so Forager can deliver data feed files to your Cloud Storage bucket.

![Google Cloud Storage data delivery: Forager writes data feed files to your GCS bucket](https://mintcdn.com/forager/OnhSHNo_LBQ7yKjR/images/illustrations/google-cloud-storage-data-delivery.svg?fit=max\&auto=format\&n=OnhSHNo_LBQ7yKjR\&q=85\&s=4ad440d96c7a5046972b248fe6bd3c03)

## How to Set Up GCS Delivery

The following step-by-step instructions describe how to configure IAM access permissions for Forager in your Google Cloud console so that you can use a Cloud Storage bucket to unload Forager data:

### 1. Creating a custom IAM role

Create a custom role that has the permissions required to access the bucket and get objects.

1. Sign in to the Google Cloud console as a project editor.
2. From the home dashboard, select **IAM & Admin** » **Roles**.
3. Select **Create Role**.
4. Enter a **Title** and optional **Description** for the custom role.
5. Select **Add Permissions**.
6. Filter the list of permissions, and add the following from the list:

**Required permissions**

* `storage.buckets.get`
* `storage.objects.create`
* `storage.objects.delete`
* `storage.objects.list`
* `storage.multipartUploads.abort`
* `storage.multipartUploads.create`
* `storage.multipartUploads.list`
* `storage.multipartUploads.listParts`

7. Select **Add**.
8. Select **Create**.

### 2. Assigning the Custom Role to Forager Cloud Storage Service Account

1. Sign in to the Google Cloud console as a project editor.
2. From the home dashboard, select **Cloud Storage** » **Buckets**.
3. Filter the list of buckets, and select the bucket you want Forager to deliver to.
4. Select **Permissions** » **View by principals**, then select **Grant access**.
5. Under **Add principals**, paste the name of the below service account, `k9kb00000@awseucentral2-1-0c24.iam.gserviceaccount.com`
6. Under Assign roles, select the custom IAM role that you created previously, then select **Save**.

> [!WARNING]
>
> **Important**
>
> If your Google Cloud organization was created on or after May 3, 2024, Google Cloud enforces a [domain restriction constraint](https://docs.cloud.google.com/resource-manager/docs/organization-policy/restricting-domains) in project organization policies. The default constraint lists your domain as the only allowed value. You will need to modify your Organization Policy to allow for external services to access your bucket.

### 3. (Optional) Granting the Cloud Storage service account permissions on the Cloud Key Management Service cryptographic keys

> [!NOTE]
>
> **Note**
>
> This step is required only if your GCS bucket is encrypted using a key stored in the Google Cloud Key Management Service (Cloud KMS).

1. Sign in to the Google Cloud console as a project editor.
2. From the home dashboard, search for and select **Security** » **Key Management**.
3. Select the key ring that is assigned to your GCS bucket.
4. Click **SHOW INFO PANEL** in the upper-right corner. The information panel for the key ring slides out.
5. Click the **ADD PRINCIPAL** button.
6. In the New principals field, search for the Forager service account name `k9kb00000@awseucentral2-1-0c24.iam.gserviceaccount.com`.
7. From the Select a role dropdown, select the `Cloud KMS CryptoKey Encryptor/Decryptor` role.
8. Click the **Save** button. The service account name is added to the **Cloud KMS CryptoKey Encryptor/Decryptor** role dropdown in the information panel.

### 4. Provide your bucket name to Forager

Once the bucket is set up, send the following details to Forager.ai:

* `gcs://<your-bucket-name>/<desired-path>`

Our team will configure the data delivery to send data directly to your GCS bucket.

## File output paths and file names

![Google Cloud Storage setup: create a bucket, grant Forager access, then receive files](https://mintcdn.com/forager/OnhSHNo_LBQ7yKjR/images/illustrations/gcs-service-account-access-setup.svg?fit=max\&auto=format\&n=OnhSHNo_LBQ7yKjR\&q=85\&s=53d86b65672e05f0ef08e88b185a86ef)

Read more about file paths [here](https://www.forager.ai/docs/data-license/v2/output-data-file-details.md).

## Need Help?

📩 For Support: Contact us at [support@forager.ai](mailto:support@forager.ai).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.