Skip to content

Instantly share code, notes, and snippets.

@ken39arg
Last active December 28, 2018 02:53
Show Gist options
  • Select an option

  • Save ken39arg/1910ce953461feee289597f13c34efad to your computer and use it in GitHub Desktop.

Select an option

Save ken39arg/1910ce953461feee289597f13c34efad to your computer and use it in GitHub Desktop.
apple store tier 価格出すやつ
package main
import (
"encoding/json"
"flag"
"fmt"
"log"
"net/http"
"os"
"strings"
"github.com/olekukonko/tablewriter"
)
const (
apiURL = "https://itunesconnect.apple.com/WebObjects/iTunesConnect.woa/ra/apps/pricing/matrix"
)
func main() {
countries := flag.String("contries", "JP,US", "coutrie codes separate by `,`")
flag.Parse()
if err := run(strings.Split(*countries, ",")); err != nil {
log.Fatal(err)
}
}
type Res struct {
Data Data `json:"data"`
Messages map[string]interface{} `json:"messages"`
StatusCode string `json:"statusCode"`
}
type Data struct {
PricingTiers []Tier `json:"pricingTiers"`
CountryCurrencyMap map[string]string `json:"countryCurrencyMap"`
}
type Tier struct {
TierStem string `json:"tierStem"`
TierName string `json:"tierName"`
PricingInfo []PricingInfo `json:"pricingInfo"`
}
type PricingInfo struct {
CountryCode string `json:"countryCode"`
CurrencyCode string `json:"currencyCode"`
WholesalePrice float64 `json:"wholesalePrice"`
WholesalePrice2 float64 `json:"wholesalePrice2"`
RetailPrice float64 `json:"retailPrice"`
CurrencySymbol string `json:"currencySymbol"`
}
func run(countries []string) error {
res, err := http.Get(apiURL)
if err != nil {
return err
}
defer res.Body.Close()
var r Res
if err = json.NewDecoder(res.Body).Decode(&r); err != nil {
return err
}
if r.StatusCode != "SUCCESS" {
return fmt.Errorf("statusCode is not success %#v", r)
}
table := tablewriter.NewWriter(os.Stdout)
table.SetHeader(append([]string{"Tier Name"}, countries...))
for _, tier := range r.Data.PricingTiers {
line := make([]string, 0, len(countries)+1)
line = append(line, tier.TierName)
for _, c := range countries {
for _, p := range tier.PricingInfo {
if p.CountryCode == c {
line = append(line, fmt.Sprintf("%s%.3f (%s)", p.CurrencySymbol, p.RetailPrice, p.CurrencyCode))
break
}
}
}
table.Append(line)
}
table.Render()
return nil
}
@ken39arg

Copy link
Copy Markdown
Author
+------------------+------------------+---------------+
|    TIER NAME     |        JP        |      US       |
+------------------+------------------+---------------+
| Free             | ¥0.00 (JPY)      | $0.00 (USD)   |
| Tier 1           | ¥120.00 (JPY)    | $0.99 (USD)   |
| Tier 2           | ¥240.00 (JPY)    | $1.99 (USD)   |
| Tier 3           | ¥360.00 (JPY)    | $2.99 (USD)   |
| Tier 4           | ¥480.00 (JPY)    | $3.99 (USD)   |
| Tier 5           | ¥600.00 (JPY)    | $4.99 (USD)   |
| Tier 6           | ¥720.00 (JPY)    | $5.99 (USD)   |
| Tier 7           | ¥840.00 (JPY)    | $6.99 (USD)   |
| Tier 8           | ¥960.00 (JPY)    | $7.99 (USD)   |
| Tier 9           | ¥1080.00 (JPY)   | $8.99 (USD)   |
| Tier 10          | ¥1200.00 (JPY)   | $9.99 (USD)   |
| Tier 11          | ¥1300.00 (JPY)   | $10.99 (USD)  |
| Tier 12          | ¥1400.00 (JPY)   | $11.99 (USD)  |
| Tier 13          | ¥1600.00 (JPY)   | $12.99 (USD)  |
| Tier 14          | ¥1700.00 (JPY)   | $13.99 (USD)  |
| Tier 15          | ¥1800.00 (JPY)   | $14.99 (USD)  |
| Tier 16          | ¥1900.00 (JPY)   | $15.99 (USD)  |
| Tier 17          | ¥2000.00 (JPY)   | $16.99 (USD)  |
| Tier 18          | ¥2200.00 (JPY)   | $17.99 (USD)  |
| Tier 19          | ¥2300.00 (JPY)   | $18.99 (USD)  |
| Tier 20          | ¥2400.00 (JPY)   | $19.99 (USD)  |
| Tier 21          | ¥2500.00 (JPY)   | $20.99 (USD)  |
| Tier 22          | ¥2600.00 (JPY)   | $21.99 (USD)  |
| Tier 23          | ¥2800.00 (JPY)   | $22.99 (USD)  |
| Tier 24          | ¥2900.00 (JPY)   | $23.99 (USD)  |
| Tier 25          | ¥3000.00 (JPY)   | $24.99 (USD)  |
| Tier 26          | ¥3100.00 (JPY)   | $25.99 (USD)  |
| Tier 27          | ¥3200.00 (JPY)   | $26.99 (USD)  |
| Tier 28          | ¥3400.00 (JPY)   | $27.99 (USD)  |
| Tier 29          | ¥3500.00 (JPY)   | $28.99 (USD)  |
| Tier 30          | ¥3600.00 (JPY)   | $29.99 (USD)  |
| Tier 31          | ¥3700.00 (JPY)   | $30.99 (USD)  |
| Tier 32          | ¥3800.00 (JPY)   | $31.99 (USD)  |
| Tier 33          | ¥4000.00 (JPY)   | $32.99 (USD)  |
| Tier 34          | ¥4100.00 (JPY)   | $33.99 (USD)  |
| Tier 35          | ¥4200.00 (JPY)   | $34.99 (USD)  |
| Tier 36          | ¥4300.00 (JPY)   | $35.99 (USD)  |
| Tier 37          | ¥4500.00 (JPY)   | $36.99 (USD)  |
| Tier 38          | ¥4600.00 (JPY)   | $37.99 (USD)  |
| Tier 39          | ¥4700.00 (JPY)   | $38.99 (USD)  |
| Tier 40          | ¥4800.00 (JPY)   | $39.99 (USD)  |
| Tier 41          | ¥5000.00 (JPY)   | $40.99 (USD)  |
| Tier 42          | ¥5100.00 (JPY)   | $41.99 (USD)  |
| Tier 43          | ¥5200.00 (JPY)   | $42.99 (USD)  |
| Tier 44          | ¥5300.00 (JPY)   | $43.99 (USD)  |
| Tier 45          | ¥5400.00 (JPY)   | $44.99 (USD)  |
| Tier 46          | ¥5600.00 (JPY)   | $45.99 (USD)  |
| Tier 47          | ¥5700.00 (JPY)   | $46.99 (USD)  |
| Tier 48          | ¥5800.00 (JPY)   | $47.99 (USD)  |
| Tier 49          | ¥5900.00 (JPY)   | $48.99 (USD)  |
| Tier 50          | ¥6000.00 (JPY)   | $49.99 (USD)  |
| Tier 51          | ¥6800.00 (JPY)   | $54.99 (USD)  |
| Tier 52          | ¥7400.00 (JPY)   | $59.99 (USD)  |
| Tier 53          | ¥7800.00 (JPY)   | $64.99 (USD)  |
| Tier 54          | ¥8400.00 (JPY)   | $69.99 (USD)  |
| Tier 55          | ¥8800.00 (JPY)   | $74.99 (USD)  |
| Tier 56          | ¥9800.00 (JPY)   | $79.99 (USD)  |
| Tier 57          | ¥10400.00 (JPY)  | $84.99 (USD)  |
| Tier 58          | ¥10800.00 (JPY)  | $89.99 (USD)  |
| Tier 59          | ¥11400.00 (JPY)  | $94.99 (USD)  |
| Tier 60          | ¥11800.00 (JPY)  | $99.99 (USD)  |
| Tier 61          | ¥12800.00 (JPY)  | $109.99 (USD) |
| Tier 62          | ¥13800.00 (JPY)  | $119.99 (USD) |
| Tier 63          | ¥14800.00 (JPY)  | $124.99 (USD) |
| Tier 64          | ¥15800.00 (JPY)  | $129.99 (USD) |
| Tier 65          | ¥16800.00 (JPY)  | $139.99 (USD) |
| Tier 66          | ¥17800.00 (JPY)  | $149.99 (USD) |
| Tier 67          | ¥18800.00 (JPY)  | $159.99 (USD) |
| Tier 68          | ¥19800.00 (JPY)  | $169.99 (USD) |
| Tier 69          | ¥20800.00 (JPY)  | $174.99 (USD) |
| Tier 70          | ¥21800.00 (JPY)  | $179.99 (USD) |
| Tier 71          | ¥22800.00 (JPY)  | $189.99 (USD) |
| Tier 72          | ¥23800.00 (JPY)  | $199.99 (USD) |
| Tier 73          | ¥24800.00 (JPY)  | $209.99 (USD) |
| Tier 74          | ¥26800.00 (JPY)  | $219.99 (USD) |
| Tier 75          | ¥27800.00 (JPY)  | $229.99 (USD) |
| Tier 76          | ¥28800.00 (JPY)  | $239.99 (USD) |
| Tier 77          | ¥29800.00 (JPY)  | $249.99 (USD) |
| Tier 78          | ¥34800.00 (JPY)  | $299.99 (USD) |
| Tier 79          | ¥42800.00 (JPY)  | $349.99 (USD) |
| Tier 80          | ¥48800.00 (JPY)  | $399.99 (USD) |
| Tier 81          | ¥54800.00 (JPY)  | $449.99 (USD) |
| Tier 82          | ¥58800.00 (JPY)  | $499.99 (USD) |
| Tier 83          | ¥74800.00 (JPY)  | $599.99 (USD) |
| Tier 84          | ¥84800.00 (JPY)  | $699.99 (USD) |
| Tier 85          | ¥98800.00 (JPY)  | $799.99 (USD) |
| Tier 86          | ¥108800.00 (JPY) | $899.99 (USD) |
| Tier 87          | ¥118800.00 (JPY) | $999.99 (USD) |
| Alternate Tier A | ¥120.00 (JPY)    | $0.99 (USD)   |
| Alternate Tier B | ¥120.00 (JPY)    | $0.99 (USD)   |
| Alternate Tier 1 | ¥150.00 (JPY)    | $0.99 (USD)   |
| Alternate Tier 2 | ¥250.00 (JPY)    | $1.99 (USD)   |
| Alternate Tier 3 | ¥400.00 (JPY)    | $2.99 (USD)   |
| Alternate Tier 4 | ¥500.00 (JPY)    | $3.99 (USD)   |
| Alternate Tier 5 | ¥600.00 (JPY)    | $4.99 (USD)   |
+------------------+------------------+---------------+

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment