Problem
Users encounter errors when adding services, cabins, or costing items in a Salesforce sandbox environment. Error messages include ‘item_option_id(s) do not exist’, ‘insufficient access rights on cross-reference id’, or ‘The given parameters are not supported on this endpoint’. The referenced IDs exist in production but not in the sandbox.
What We Found
The KTAPI protected endpoint custom setting in the sandbox was configured to point to the production_gcp environment instead of the staging_gcp environment. This causes the sandbox to communicate with Kaptio’s production backend, which has different record IDs than the sandbox data.
Solution
- Check the debug logs for the API endpoint URL being called. If you see ‘https://core.kaptioapis.com/v1.0/…’ in a sandbox, this confirms the misconfiguration - this URL is for production only, not sandboxes.
- Navigate to Setup > Custom Settings > KTAPI Protected Endpoint (or similar KTAPI configuration setting).
- Verify the environment setting is configured to point to the correct GCP environment: ‘staging_gcp’ for sandbox orgs, ‘production_gcp’ for production orgs.
- Verify the client name matches the correct sandbox client (e.g., ‘Viking Full UAT - Fiji’ for the Full UAT sandbox).
- Save the changes and retry the operation that was failing.
- If unsure of the correct client name or environment values, contact Kaptio support to verify the correct configuration for your sandbox.
Notes
- This issue commonly occurs after a sandbox refresh when custom settings may retain production values.
- The endpoint URL in error logs is the quickest diagnostic clue - production URLs in sandbox logs indicate misconfiguration.
- Each sandbox environment needs its own corresponding client configuration in Kaptio’s staging environment.
Warnings
⚠️ Do not change these settings in production unless instructed by Kaptio support. ⚠️ After sandbox refresh, always verify KTAPI custom settings are pointing to the correct staging environment.
Source: KHELP-12305