Some products and features are in the process of being renamed. Generative playbook and flow features are also being migrated to a single consolidated console. See the details.
When you make calls to the API, your request specifies the agent's project.
This project is referred to as the resource project.
For example,
in the following REST curl request,
the project associated with AGENT_ID is the resource project,
and the project associated with the service account used to generate TOKEN
is the consumer project:
curl -X GET
-H "Authorization: Bearer TOKEN"
"https://REGION_ID-dialogflow.googleapis.com/v3/projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID"
One project can play the role of both consumer and resource project.
Agent data, charges, and quotas are associated only with this project.
When consumer and resource projects are two different projects, charges, quota
constraints, agent information, and a requirement to enable the API are
applicable to either or both projects, as described in the following table.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eMultiple Google Cloud projects can be used with Dialogflow, potentially separating authentication, quotas, and billing from agent data.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003cem\u003econsumer project\u003c/em\u003e is the project owning the service account used for API calls, whereas the \u003cem\u003eresource project\u003c/em\u003e is the project containing the agent's data.\u003c/p\u003e\n"],["\u003cp\u003eA single project can serve as both the consumer and resource project, in which case all data, charges, and quotas are associated with that one project.\u003c/p\u003e\n"],["\u003cp\u003eThe consumer project is charged and subject to quotas, while the resource project stores the agent data.\u003c/p\u003e\n"],["\u003cp\u003eThe Dialogflow API must be enabled for both the consumer project and resource project when they are different.\u003c/p\u003e\n"]]],[],null,["# Using multiple projects\n\nIn some cases, you might need to create multiple Google Cloud projects to use\nDialogflow:\n\n- You might find it useful to create one project for authentication, quotas, and billing, and additional projects for [agent](/dialogflow/es/docs/agents-overview) data.\n\nConsumer and resource projects\n------------------------------\n\nWhen you make calls to the API, you typically provide\n\n[service account keys for authentication](/dialogflow/cx/docs/quick/setup#auth).\n\nEach service account is owned by a specific project,\nbut service accounts might be\n\n[provided roles to access resources for other projects](/dialogflow/cx/docs/concept/access-control#gcp-console)\n\nThe project associated with the service account you provide for an API call\nis referred to as the *consumer project*.\n\nWhen you make calls to the API, your request specifies the agent's project.\nThis project is referred to as the *resource project*.\n\nFor example,\nin the following REST curl request,\nthe project associated with `AGENT_ID` is the resource project,\nand the project associated with the service account used to generate `TOKEN`\nis the consumer project: \n\n```\ncurl -X GET\n -H \"Authorization: Bearer TOKEN\"\n \"https://REGION_ID-dialogflow.googleapis.com/v3/projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID\"\n```\n\nOne project can play the role of both consumer and resource project.\nAgent data, charges, and quotas are associated only with this project.\n\nWhen consumer and resource projects are two different projects, charges, quota\nconstraints, agent information, and a requirement to enable the API are\napplicable to either or both projects, as described in the following table."]]