Skip to content

feat(region): add multi-region endpoint and workspace support - #189

Open
luk384090-cloud wants to merge 4 commits into
mainfrom
dev/issues-8
Open

feat(region): add multi-region endpoint and workspace support#189
luk384090-cloud wants to merge 4 commits into
mainfrom
dev/issues-8

Conversation

@luk384090-cloud

Copy link
Copy Markdown
Collaborator
  • Introduce set_region(region, workspace_id) to switch HTTP, WebSocket, and OpenAI-compatible endpoints
  • Add support for MaaS international regions including Singapore, US East, Hong Kong, Germany, Japan, besides Beijing
  • Enable environment variable configuration for region and workspace ID
  • Implement runtime resolution of endpoint URLs with {workspace_id} placeholder substitution
  • Update internal API methods to support per-call workspace parameter for endpoint resolution
  • Enhance documentation with detailed usage examples of multi-region configuration
  • Add comprehensive unit tests covering region switching, URL resolving, and environment variable handling

Description

[Describe what this PR does and why]

Related Issue: Fixes #[issue_number] or Relates to #[issue_number]

Security Considerations: [Check if API keys or sensitive credentials are exposed in code/logs]

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation
  • Refactoring

Component(s) Affected

  • Model
  • Application
  • Common
  • Documentation
  • Tests
  • CI/CD

Checklist

  • Pre-commit hooks pass
  • Tests pass locally
  • Documentation updated (if needed)
  • Ready for review

Testing

[How to test these changes]

Additional Notes

[Optional: any other context]

luk384090-cloud and others added 4 commits September 7, 2026 15:11
- Introduce `set_region(region, workspace_id)` to switch HTTP, WebSocket, and OpenAI-compatible endpoints
- Add support for MaaS international regions including Singapore, US East, Hong Kong, Germany, Japan, besides Beijing
- Enable environment variable configuration for region and workspace ID
- Implement runtime resolution of endpoint URLs with `{workspace_id}` placeholder substitution
- Update internal API methods to support per-call workspace parameter for endpoint resolution
- Enhance documentation with detailed usage examples of multi-region configuration
- Add comprehensive unit tests covering region switching, URL resolving, and environment variable handling
API keys cannot be mixed across regions (401 on mismatch), so document
this next to set_region in both READMEs and the sample. Also document
US -us model suffix, EU/JP workspace deployment scope, feature
availability limits, and shared-domain overrides. Derive the
set_region region list from env.MAAS_REGIONS to prevent drift.
Per the official realtime WebSocket API docs, wss endpoints exist only
for cn-beijing and ap-southeast-1; set_region still sets the URL for
other regions, so warn that WS-based realtime APIs are unavailable there.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant