You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Google Actions不同发布渠道配置不同Fulfillment URL?

How to Manage Multiple Fulfillment Environments for Google Actions

First off, let’s clear up a common misconception: your Google Action isn’t locked into using the auto-generated Firebase project for fulfillment. You can point any release channel to any public HTTPS endpoint—including functions from a manually created Firebase project you set up specifically for Alpha testing.

You’ve got two solid options to mirror the Alexa/Lambda workflow you’re familiar with:

Option 1: Separate Action Projects for Full Isolation

If you want complete separation between Alpha, Beta, and Production (no shared configuration), creating a new Google Action project for Alpha is a valid approach. Here’s how to do it:

  • Head to the Google Actions Console and create a new project dedicated to your Alpha environment.
  • Export the intent/entity configuration from your main (Beta/Prod) project (via Settings > Export/Import > Export as JSON), then import it into the new Alpha project to avoid rebuilding everything from scratch.
  • Link the new Alpha project to your separate Firebase project (or just set the fulfillment URL directly to your Alpha Firebase function’s HTTPS endpoint—you don’t even have to link the projects if you don’t want to).
  • Manage releases independently: push Alpha changes to the new project’s Alpha channel, Beta changes to your main project’s Beta channel, etc.

Pros: Total isolation—changes to Alpha won’t affect Beta/Prod, and you can test new intent structures without risking your live setup.
Cons: You’ll need to sync configuration changes (like new intents) across projects manually (or via export/import), which adds a minor overhead.

This is the more efficient approach, matching the Alexa/Lambda workflow you prefer. Keep one Action project and assign different fulfillment targets to each release channel:

Step 1: Deploy environment-specific endpoints

  • Option A: Deploy separate Firebase Functions (e.g., alphaFulfillment, betaFulfillment, prodFulfillment)—either in your existing Firebase project or across separate projects. Each function gets its own unique HTTPS URL.
  • Option B: Use a single fulfillment function that routes requests based on the release channel. Google adds an X-Goog-Release-Channel HTTP header to every fulfillment request, with values like alpha, beta, or production. In your Node.js function, you can access this with req.get('X-Goog-Release-Channel') to route to the correct backend service.

Step 2: Assign endpoints to each channel

  • In the Google Actions Console, go to Deploy > Release Management > Release Channels.
  • For each channel (Alpha, Beta, Production), click into the channel, then navigate to Fulfillment settings.
  • Paste the HTTPS URL for the fulfillment endpoint you want to use for that channel (e.g., your Alpha Firebase function URL for the Alpha channel).

Pros: No duplicate Action configuration—all intent/entity changes are managed in one project, and you just switch the fulfillment target per channel. This keeps your workflow clean and aligned with what you know from Alexa.
Cons: Less isolation than separate projects, but if your fulfillment logic handles channel routing properly, this shouldn’t be an issue.

Final Recommendation

For most teams, Option 2 is the best choice because it reduces overhead while still giving you the environment separation you need. If you’re testing a complete rewrite of your Action or need strict isolation between environments, go with Option 1.

内容的提问来源于stack exchange,提问作者Jerome E. Garcia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:10:52