This error occurs if the <CacheResource> element in the PopulateCache policy is set to a name that does not exist in the environment where the API proxy is being deployed.
Diagnosis
Identify the PopulateCache policy name, the invalid cache used in the <CacheResource> element of the policy, and the environment where the error occurred. You can find all these items in the error message. For example, in the following error, the PopulateCache policy name is PopulateCache-Token, the name of the invalid cache is tokencache and the environment name is test.
Verify if the cache (determined in step #1) has been defined in the specific environment (identified in step #1).
In the Apigee UI, navigate to ADMIN > Environment > test and check if the cache exists in the Caches tab of Environment Configuration. If the cache does not exist, then that's the cause of the error.
For example, notice in the screenshot below that the cache named tokencache does not exist.
Because the cache named tokencache is not defined in the test environment, you get the error:
Ensure that the cache specified in the <CacheResource> element of PopulateCache policy has been created in the environment where you want to deploy the API proxy.
CacheNotFound
Error Message
Deployment of the API proxy through either the Apigee UI or API results in an error message like this, and the deployment status of the API Proxy is marked as partially deployed:
Error: Cache : cache_resource, not found in organization : organization__environment.
Example Error Message
Error Cache : configCache, not found in organization : kkalckstein-eval__test
Cause
This error occurs if the specific cache mentioned in the error message has not
been created on a specific Message Processor component. A Message Processor is an internal Apigee component that processes the flow of API traffic through Apigee.
[[["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-26 UTC."],[[["\u003cp\u003eThis documentation addresses deployment errors in Apigee and Apigee hybrid related to invalid cache resource references in PopulateCache policies.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eInvalidCacheResourceReference\u003c/code\u003e error occurs when the \u003ccode\u003e<CacheResource>\u003c/code\u003e element in a PopulateCache policy references a cache that doesn't exist in the deployment environment.\u003c/p\u003e\n"],["\u003cp\u003eTo resolve the \u003ccode\u003eInvalidCacheResourceReference\u003c/code\u003e error, you must ensure the specified cache in the PopulateCache policy's \u003ccode\u003e<CacheResource>\u003c/code\u003e element exists in the target environment's cache list.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCacheNotFound\u003c/code\u003e error indicates that the specified cache is missing from a specific Message Processor component, requiring Apigee Support assistance for resolution.\u003c/p\u003e\n"]]],[],null,["*You're viewing **Apigee** and **Apigee hybrid** documentation.\nView [Apigee Edge](https://docs.apigee.com/api-platform/troubleshoot/policies/deployment/populate-cache-deployment-errors) documentation.*\n| Was this troubleshooting playbook helpful? Please let us know by clicking [Send Feedback]().\n\nInvalidCacheResourceReference\n\nError Message\n\nDeployment of the API proxy through either the Apigee UI or API fails with this error message: \n\n```\nError Deploying Revision revision_number to environment\nInvalid cache resource reference [cache_resource] in Step definition [populate_cache_policy_name]. Context Revision:[revision_number];APIProxy:[apiproxy_name];Organization:[organization];Environment:[environment]\n```\n\nExample Error Message \n\n Error Deploying Revision 2 to test\n Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test\n\nExample Error Screenshot\n\nCause\n\nThis error occurs if the `\u003cCacheResource\u003e` element in the PopulateCache policy is set to a name that does not exist in the environment where the API proxy is being deployed.\n\nDiagnosis\n\n1. Identify the PopulateCache policy name, the invalid cache used in the `\u003cCacheResource\u003e` element of the policy, and the environment where the error occurred. You can find all these items in the error message. For example, in the following error, the PopulateCache policy name is `PopulateCache-Token`, the name of the invalid cache is `tokencache` and the environment name is `test`.\n\n Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test\n\n2. Examine the failed PopulateCache policy XML and verify if the cache name specified for the `\u003cCacheResource\u003e` element matches the error message.\n\n In this example, the cache name specified in the `\u003cCacheResource\u003e` element is `tokencache`: \n\n \u003c?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?\u003e\n \u003cPopulateCache async=\"false\" continueOnError=\"false\" enabled=\"true\" name=\"PopulateCache-Token\"\u003e\n \u003cDisplayName\u003ePopulateCache-Token\u003c/DisplayName\u003e\n \u003cProperties/\u003e\n \u003cCacheKey\u003e\n \u003cPrefix/\u003e\n \u003cKeyFragment ref=\"request.queryparam.client_id\"/\u003e\n \u003c/CacheKey\u003e\n \u003cCacheResource\u003etokencache\u003c/CacheResource\u003e\n \u003cScope\u003eExclusive\u003c/Scope\u003e\n \u003cExpirySettings\u003e\n \u003cTimeoutInSec\u003e3600\u003c/TimeoutInSec\u003e\n \u003c/ExpirySettings\u003e\n \u003cSource\u003etoken\u003c/Source\u003e\n \u003c/PopulateCache\u003e\n\n3. Verify if the cache (determined in step #1) has been defined in the specific environment (identified in step #1).\n\n In the Apigee UI, navigate to **ADMIN \\\u003e Environment \\\u003e test** and check if the cache exists in the **Caches** tab of **Environment Configuration**. If the cache does not exist, then that's the cause of the error.\n\n For example, notice in the screenshot below that the cache named `tokencache` does not exist.\n\n Because the cache named `tokencache` is not defined in the `test` environment, you get the error: \n\n Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test\n\nResolution\n\nEnsure that the cache specified in the `\u003cCacheResource\u003e` element of PopulateCache policy has been created in the environment where you want to deploy the API proxy.\n\nCacheNotFound\n\nError Message\n\nDeployment of the API proxy through either the Apigee UI or API results in an error message like this, and the deployment status of the API Proxy is marked as partially deployed: \n\n```\nError: Cache : cache_resource, not found in organization : organization__environment.\n```\n\nExample Error Message \n\n Error Cache : configCache, not found in organization : kkalckstein-eval__test\n\nCause\n\nThis error occurs if the specific cache mentioned in the error message has not\nbeen created on a specific Message Processor component. A Message Processor is an internal Apigee component that processes the flow of API traffic through Apigee.\n\nResolution\n\nContact [Apigee Support](https://apigee.com/about/support/portal) for assistance."]]