Set up shopping prompts from products and personas
Build product-linked prompts from categories, comparisons, personas, and consideration stage.
When to use this workflow
“Track comparison and recommendation questions for our key products by customer segment.”
Before fetching
Confirm products, specifications, competitors, personas, region, and platforms. Observed products are not a complete merchant catalog; use an approved catalog for missing products.
Complete the CLI quickstart and confirm the workspace with orc workspace current --json. Replace example IDs, URLs, dates, and settings. Apply only approved mutations.
1. Check the measurement channel
Fetch the stable channels available to this workspace. Use the returned channel id as YOUR_CHANNEL_ID throughout prompt creation, execution, and answer retrieval.
orc channels list --jsonRun the measurement flow in this order: channels list → prompts create --platforms <channel> → runs create --model-channel-id <channel> --wait → answers list.
2. Synchronize the approved product catalog
Review custom attribute keys and register missing products in bulk. Inspect created and rejected separately so rejected items are not reported as successful.
orc products attribute-keys list --workspace YOUR_WORKSPACE_ID --json
printf '%s' '{"products":[{"external_id":"YOUR_EXTERNAL_ID","brand_id":"YOUR_BRAND_ID","name":"YOUR_PRODUCT_NAME","attributes":{"category":"YOUR_CATEGORY"}}]}' \
| orc products create --workspace YOUR_WORKSPACE_ID --stdin --idempotency-key YOUR_CREATE_REQUEST_KEY --json
orc products list --brand-id YOUR_BRAND_ID --workspace YOUR_WORKSPACE_ID --json
orc products get YOUR_PRODUCT_ID --workspace YOUR_WORKSPACE_ID --jsonWhen a product changes, inspect every item in updated, skipped, and rejected.
printf '%s' '{"products":[{"id":"YOUR_PRODUCT_ID","name":"YOUR_UPDATED_PRODUCT_NAME"}]}' \
| orc products update --workspace YOUR_WORKSPACE_ID --stdin --idempotency-key YOUR_UPDATE_REQUEST_KEY --json3. Read products and existing prompts
Read product IDs, observed competitors and prompts, and personas. Do not invent unobserved product attributes.
orc products list --brand-id YOUR_BRAND_ID --json
orc products competitors list YOUR_PRODUCT_ID --json
orc products prompts list YOUR_PRODUCT_ID --json
orc personas list --json4. Build a persona-by-stage matrix
Have the agent propose category, comparison, and use-case recommendation questions. Reuse existing prompts and preview approved candidates for priority products first.
orc prompts create --topic-id YOUR_TOPIC_ID --text 'YOUR_APPROVED_SHOPPING_QUESTION' --persona-ids YOUR_PERSONA_ID --platforms YOUR_CHANNEL_ID --country-code JP --preview true --idempotency-key YOUR_REQUEST_KEY --json5. Verify saved prompts and product mapping
Save approved prompts with new request keys and read back the returned IDs. Prompt creation does not establish successful shopping-surface observation. Retain the product-to-prompt mapping in the deliverable. Run the saved prompt on the channel, then read answers back with the same channel filter.
orc prompts create --topic-id YOUR_TOPIC_ID --text 'YOUR_APPROVED_SHOPPING_QUESTION' --persona-ids YOUR_PERSONA_ID --platforms YOUR_CHANNEL_ID --country-code JP --idempotency-key YOUR_CREATE_REQUEST_KEY --json
orc prompts get YOUR_CREATED_PROMPT_ID --json
orc runs create --prompt-id YOUR_CREATED_PROMPT_ID --model-channel-id YOUR_CHANNEL_ID --idempotency-key YOUR_RUN_REQUEST_KEY --wait --json
orc answers list --prompt-id YOUR_CREATED_PROMPT_ID --platform YOUR_CHANNEL_ID --json6. Remove retired products from the catalog
Soft-delete only products confirmed as retired in the approved catalog. First use --dry-run to inspect the body and workspace; noninteractive execution requires --yes. Inspect deleted and skipped separately.
printf '%s' '{"ids":["YOUR_RETIRED_PRODUCT_ID"]}' \
| orc products delete --workspace YOUR_WORKSPACE_ID --stdin --dry-run --json
printf '%s' '{"ids":["YOUR_RETIRED_PRODUCT_ID"]}' \
| orc products delete --workspace YOUR_WORKSPACE_ID --stdin --idempotency-key YOUR_DELETE_REQUEST_KEY --yes --jsonDeliverable
Deliver the product-by-persona-by-stage matrix, prompt IDs, priorities, and unsupported products or collection conditions.
On fetch failure, retain the error and request scope. Do not count empty data, incomplete pagination, or missing permissions as a completed investigation.
Next steps
If a failure remains, report it and verify the fix, including this workflow and the failed step.