External accounts are links to app stores from which sales and other data is imported. The /external_accounts
resource provides complete control and allows retrieving, updating, adding, and deleting external_accounts.
For a complete list of supported stores check out the integrations page.
Contents
Listing existing accounts
Request
GET /external_accounts
Scope: This resource requires the account:read scope.
Example Response
// GET /external_accounts { "50956": { "id": 50956, "account_id": 100101, "nickname": "Main iTunes", "username": "johnny@me.com", "auto_import": true, "store_id": 1, "store": "apple", "metadata": { "vendor_id": 85261205 } }, "31174": { "id": 31174, "account_id": 100101, "nickname": "Android apps", "username": "coolapps@gmail.com", "auto_import": true, "store_id": 2, "store": "google_play", "metadata": { } }, ... }
Looking up one account
Request
GET /external_accounts/{external_account_id}
Scope: This resource requires the account:read scope.
Example Response
// GET /external_accounts/31174 { "id": 31174, "account_id": 100101, "nickname": "Android apps", "username": "coolapps@gmail.com", "auto_import": true, "store_id": 2, "store": "google_play". "metadata": { } }
Creating a new external account
Request
POST /external_accounts/
Scope: This resource requires the account:write scope.
Arguments
Arguments should be passed in as a JSON object in the body of your request.
Argument | Type | Description |
---|---|---|
nickname | String | A friendly name for this account |
username | String | The username to the app store’s account |
password | String | The password to the app store account |
auto_import | Bool | true or false to import report for this account automatically |
store | String | The type of account being linked. Possible options: apple, google_play, amazon. More types will be available in the future |
metadata | JSON | Additional information related to this account. Currently, the only supported value is `vendor_id` for App Store Connect accounts. All other account types will have an empty object. |
Example Request
// POST /external_accounts/31174 { "nickname": "A new account", "username": "myusername", "password": "p455w0rd!" "auto_import": true, "store": "apple" }
Example Response
// POST /external_accounts/31174 { "id": 31175, "account_id": 100101, "nickname": "A new account", "username": "myusername", "auto_import": true, "store_id": 1, "store": "apple" }
Updating an external account
Request
PUT /external_accounts/{accountId}
Scope: This resource requires the account:write scope.
Arguments
Arguments should be passed in as a JSON object in the body of your request.
Argument | Type | Description |
---|---|---|
nickname | String | A friendly name for this account |
username | String | The username to the app store’s account |
password | String | The password to the app store account |
auto_import | String | true or false to import report for this account automatically |
Example Request
// GET /external_accounts/31175 { "id": 31175, "nickname": "Games Account", "username": "awesomegames@me.com", "auto_import": true, "store": "apple" }
// PUT /external_accounts/31175 { "nickname": "A new Nickname(Games Account)", "username": "awesomegames+edited@me.com", "password": "ipl4yallth3timexx", "auto_import": false, "store": "apple" }
Example Response
// PUT /external_accounts/31175 with above request body { "id": 31175, "nickname": "A new Nickname(Games Account)", "username": "awesomegames+edited@me.com", "auto_import": false, "store": "apple" }
Deleting an external account
Request
DELETE /external_account/{id}
Scope: This resource requires the account:write scope.
Arguments
Example Response
// DELETE /external_accounts/90438 // HTTP 204
Note: Deleting an external account will not remove products or data associated with it.