Intro
Star Wars: Commander (here on in 'SWC') is a GSAT based game with three separate data stores - one for each of the Windows, iOS, and Android versions. With the deprecation of GSAT, it will need to migrate to Axis 6 for account management.
Integration
SWC will require two points of integration – basic account management as well as dynamic account management.
Account
SWC will need to implement a minimal subset of the (internal) Account APIs, namely
- Search
- Get Account
- Update Account
There are some minor differences between the APIs to be implemented vs. the (internal) Account APIs linked to
The
{product}variable place holder is to be omitted- eg: https://example.com/account/v1/{product}/search should be modified to be https://example.com/account/v1/search
- The
/axis/path segment is not necessary and can be removed or altered as needed - The
productproperty may be omitted from both account search results and accounts. This is an internal-use property that is added by Axis.
Normally, Axis only has one account back-end per product. In the case of SWC, there are three – Windows, iOS, and Android – each with their own account data store. It is recommended that the SWC Account API implementation route the calls to the appropriate backend system.
|
In the above sequence diagram, the Guest Support Representative (GSR) searches for a SWC account. The search call then is forwarded to the SWC Account APIs, which will then search against the appropriate data stores. It can do this sequentially, or for improved performance, in parallel. The SWC Account APIs will then merge the results, ensuring the IDs are unique across all SWC sub-systems. The easiest way to accomplish this is likely to prepend an account type key to the account ID (eg: win.12345, ios.12345, and.12345). This may also be useful in routing any update requests.