List the connected App Store Connect, Play Console and Apple Ads accounts (ids, linked apps, status; never secrets).
curl --request GET \
--url https://api.appgoat.ai/v1/connections \
--header 'x-api-key: <api-key>'const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.appgoat.ai/v1/connections', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.appgoat.ai/v1/connections"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "con_x8Hq2mXc0aLpQwRtYb",
"provider": "asc",
"label": "<string>",
"mode": "actions",
"status": "active",
"account": {},
"apps": [
{
"store": "apple",
"app_id": "<string>",
"external_id": "<string>",
"title": "<string>",
"bundle_id": "<string>"
}
],
"last_verified_at": "2023-11-07T05:31:56Z",
"last_error": "<string>",
"last_synced_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"available_apps": [
{
"store": "apple",
"app_id": "<string>",
"external_id": "<string>",
"title": "<string>",
"bundle_id": "<string>"
}
]
}
],
"meta": {
"credits_used": 123,
"credits_remaining": 123,
"request_id": "<string>",
"freshness": {
"fetched_at": "2023-11-07T05:31:56Z",
"age_seconds": 123,
"stale": true,
"refreshing": true,
"job_id": "<string>"
},
"next_cursor": "<string>",
"store": "apple",
"warnings": [
"<string>"
]
}
}Connections
List connections
Use the connection id in POST /v1/actions (or omit it when only one connection fits). status: invalid
means the provider rejected the credentials since they were added (last_error says why); fix them and call
POST /v1/connections/{id}/verify. mode: read_only connections can dry-run actions but not apply them.
GET
/
connections
List the connected App Store Connect, Play Console and Apple Ads accounts (ids, linked apps, status; never secrets).
curl --request GET \
--url https://api.appgoat.ai/v1/connections \
--header 'x-api-key: <api-key>'const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.appgoat.ai/v1/connections', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.appgoat.ai/v1/connections"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": [
{
"id": "con_x8Hq2mXc0aLpQwRtYb",
"provider": "asc",
"label": "<string>",
"mode": "actions",
"status": "active",
"account": {},
"apps": [
{
"store": "apple",
"app_id": "<string>",
"external_id": "<string>",
"title": "<string>",
"bundle_id": "<string>"
}
],
"last_verified_at": "2023-11-07T05:31:56Z",
"last_error": "<string>",
"last_synced_at": "2023-11-07T05:31:56Z",
"created_at": "2023-11-07T05:31:56Z",
"available_apps": [
{
"store": "apple",
"app_id": "<string>",
"external_id": "<string>",
"title": "<string>",
"bundle_id": "<string>"
}
]
}
],
"meta": {
"credits_used": 123,
"credits_remaining": 123,
"request_id": "<string>",
"freshness": {
"fetched_at": "2023-11-07T05:31:56Z",
"age_seconds": 123,
"stale": true,
"refreshing": true,
"job_id": "<string>"
},
"next_cursor": "<string>",
"store": "apple",
"warnings": [
"<string>"
]
}
}Authorizations
Create a key at https://dash.appgoat.ai.
Query Parameters
asc = App Store Connect, play_console = Google Play Console, apple_ads = Apple Ads (Search Ads).
Available options:
asc, play_console, apple_ads