{
  "$type": "site.standard.document",
  "canonicalUrl": "https://rickymoorhouse.uk/blog/2025/apic-global/index",
  "path": "/blog/2025/apic-global/index",
  "publishedAt": "2025-09-17T00:00:00.000Z",
  "site": "at://did:plc:r53zv4vpzeihop3aliwyejlu/site.standard.publication/3mos5q3a7jf2w",
  "tags": [
    "apiconnect",
    "global"
  ],
  "textContent": "Why Global API Deployment Matters\n\nIf you have customers around the world, serving your APIs from a global footprint significantly improves their experience by reducing latency and increasing reliability. With API Connect's multi-region capabilities, you can ensure users call your APIs from locations closest to them, providing faster response times and better resilience against regional outages.\n\nIn this guide, I'll walk through deploying APIs to the 6 current regions of the API Connect Multi-tenant SaaS service on AWS. At the time of writing, these regions are:\n- North America: N. Virginia\n- Europe: Frankfurt, London\n- Asia-Pacific: Sydney, Mumbai, Jakarta\n\nI'll use N. Virginia as the initial source location and demonstrate how to synchronize configuration across all regions.\n\nAutomatically Deploy APIs and Products to all locations\n\nTo maintain consistency across regions, you'll need a reliable deployment pipeline. This pipeline should handle the deployment of APIs and products to all regions whenever changes are made to your source code repository.\n\nYou can build this pipeline using either:\n- The sample GitHub Action workflow provided by IBM\n- Custom scripts based on the example CLI scripts in the devops repository\n\nThis automation ensures that whenever you merge changes to your main branch, your APIs and products are consistently deployed across all regions without manual intervention.\n\nCreate an API Connect instance in each region\n\nBefore configuring your global deployment, you'll need to:\n\n1. Create an API Connect instance in each target region\n2. Use the same configuration as your source location (N. Virginia in this example)\n3. Specify a unique hostname for each regional instance\n\nPro Tip: Each paid subscription for API Connect SaaS includes up to 3 instances which can be distributed across the available regions as needed. For a truly global footprint covering all 6 regions, you'll need two subscriptions.\n\nConfigure the portal for the source location\n\nFor developer engagement, you'll need a portal where API consumers can discover and subscribe to your APIs. In my implementation, I chose the new Consumer Catalog for its simplicity and ease of setup.\n\nWhile I didn't need custom branding for this example, I did enable approval workflows for sign-ups. This allows me to:\n- Review all registration requests\n- Control access to sensitive APIs\n- Manage who can subscribe to which products\n\nConfigure ConfigSync to push configuration changes to all regions\n\nThe key to maintaining consistency across regions is ConfigSync, which pushes configuration changes from your source region to all target regions. Since ConfigSync operates on a source-to-target basis, you'll need to run it for each target region individually.\n\nMy implementation uses a bash script that:\n1. Sets the source region (N. Virginia)\n2. Defines common properties for all target regions\n3. Loops through each target region, setting region-specific properties\n4. Runs the ConfigSync tool for each region\n\nHere's the script I use:\n\nFor managing API keys, I store them in a configuration file at ~/.apikeys.cfg where each line contains a region-key pair in the format region: apikey. This approach keeps sensitive credentials out of the script itself - for a more production ready version this api key handling would be handed off to a secret manager.\n\nVerify that everything works as expected\n\nAfter setting up your global deployment, it's crucial to verify that everything works correctly across all regions. Follow these steps:\n\n1. Test the source region first:\n   - Register a consumer organization in the portal\n   - Subscribe to a product containing an API you want to test\n   - Use the \"Try now\" feature to invoke the API and verify it works\n\n2. Verify ConfigSync completion:\n   - Check logs to ensure the ConfigSync job has completed successfully for each region\n   - Verify that all configuration changes have been properly synchronized\n\n3. Test each target region:\n   - Call the same API from each region using the appropriate regional endpoint\n   - Verify that response times, behavior, and results are consistent\n   - Check analytics to confirm that traffic is being properly recorded in each region\n\n4. Monitor for any issues:\n   - Watch for any synchronization failures or configuration discrepancies\n   - Address any region-specific issues that might arise\n\nPossible next steps\n\nOnce your global API deployment is working, consider these enhancements:\n\n- Implement global load balancing to automatically route customers to the closest region based on their location\n- Set up cross-region monitoring to track performance and availability across all regions\n- Implement disaster recovery procedures to handle regional outages gracefully\n\nConclusion\n\nA global API deployment strategy with API Connect provides significant benefits for organizations with worldwide customers. By following the approach outlined in this guide, you can:\n\n- Reduce latency for API consumers regardless of their location\n- Improve reliability through geographic redundancy\n- Maintain consistent configuration across all regions\n- Simplify management through automation\n\nWhile setting up a global footprint requires some initial configuration, the long-term benefits for your API consumers make it well worth the effort.",
  "title": "Global Deployment with API Connect - Serving APIs Worldwide"
}