iOS app analytics
curl --request GET \
--url https://api.growi.io/api/public/v1/apps/ios/analytics \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.growi.io/api/public/v1/apps/ios/analytics"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.growi.io/api/public/v1/apps/ios/analytics', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.growi.io/api/public/v1/apps/ios/analytics",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.growi.io/api/public/v1/apps/ios/analytics"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.growi.io/api/public/v1/apps/ios/analytics")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.growi.io/api/public/v1/apps/ios/analytics")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"total_link_clicks": 123,
"total_asc_impressions": 123,
"total_asc_downloads": 123,
"total_app_installs": 123,
"total_app_uninstalls": 123,
"retention_rate": 123,
"total_attributed_revenue_cents": 123,
"total_asc_proceeds_cents": 123,
"last_synced_at": "2023-11-07T05:31:56Z",
"chart_data": [
{}
]
},
"date_range": {
"start_date": "2023-12-25",
"end_date": "2023-12-25"
}
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}iOS app analytics
Your App Store app’s creator funnel for the range: link clicks, store impressions and downloads, installs and uninstalls attributed to creators, retention, attributed revenue and store proceeds, as totals and per day (chart_data). Money is in cents.
GET
/
apps
/
ios
/
analytics
iOS app analytics
curl --request GET \
--url https://api.growi.io/api/public/v1/apps/ios/analytics \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.growi.io/api/public/v1/apps/ios/analytics"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.growi.io/api/public/v1/apps/ios/analytics', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.growi.io/api/public/v1/apps/ios/analytics",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.growi.io/api/public/v1/apps/ios/analytics"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.growi.io/api/public/v1/apps/ios/analytics")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.growi.io/api/public/v1/apps/ios/analytics")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"success": true,
"data": {
"total_link_clicks": 123,
"total_asc_impressions": 123,
"total_asc_downloads": 123,
"total_app_installs": 123,
"total_app_uninstalls": 123,
"retention_rate": 123,
"total_attributed_revenue_cents": 123,
"total_asc_proceeds_cents": 123,
"last_synced_at": "2023-11-07T05:31:56Z",
"chart_data": [
{}
]
},
"date_range": {
"start_date": "2023-12-25",
"end_date": "2023-12-25"
}
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Read one of your child brands instead of the organization that owns the key. Any id that is not one of your brands answers 404.
First day, YYYY-MM-DD. Default: 30 days before end_date.
Last day, YYYY-MM-DD. Default: today. At most 366 days in all.