Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
デバイス管理を App Store Connect API でやってみよう
Search
Shota Kashihara
June 18, 2019
Technology
2
710
デバイス管理を App Store Connect API でやってみよう
Shota Kashihara
June 18, 2019
Tweet
Share
More Decks by Shota Kashihara
See All by Shota Kashihara
ふりかえり “Demystify SwiftUI”
shotakashihara
0
260
UI デザインシステム
shotakashihara
2
2.4k
アプリのログをチーム外で活用してもらうためにやったこと
shotakashihara
0
590
iOS エンジニアが KMM で2つの アプリのログイン処理を共通化した話
shotakashihara
1
680
iOS 14 からの Universal Links
shotakashihara
1
3.8k
iOSアプリ自動ログテストのススメ
shotakashihara
2
1.3k
Trace outside of stack trace
shotakashihara
11
2.3k
App startup time with Dynamic/Static frameworks
shotakashihara
4
890
Other Decks in Technology
See All in Technology
モノレポ開発のエラー、誰が見る?Datadog で実現する適切なトリアージとエスカレーション
biwashi
6
800
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
730
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.6k
開発組織のための セキュアコーディング研修の始め方
flatt_security
3
2.3k
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
16
3.8k
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
2.1k
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
360
Classmethod AI Talks(CATs) #16 司会進行スライド(2025.02.12) / classmethod-ai-talks-aka-cats_moderator-slides_vol16_2025-02-12
shinyaa31
0
110
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
260
表現を育てる
kiyou77
1
210
ビジネスモデリング道場 目的と背景
masuda220
PRO
9
520
技術的負債解消の取り組みと専門チームのお話 #技術的負債_Findy
bengo4com
1
1.3k
Featured
See All Featured
Practical Orchestrator
shlominoach
186
10k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Writing Fast Ruby
sferik
628
61k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Building Your Own Lightsaber
phodgson
104
6.2k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Statistics for Hackers
jakevdp
797
220k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Visualization
eitanlees
146
15k
Music & Morning Musume
bryan
46
6.3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Transcript
©2019 Wantedly, Inc. σόΠεཧΛ App Store Connect API Ͱ ͬͯΈΑ͏
potatotips #62 June 18, 2019 - @kashihararara
©2019 Wantedly, Inc. Introduction Shota Kashihara Wantedly People / iOS
©2019 Wantedly, Inc. App Store Connect API ͱ Introduction
©2019 Wantedly, Inc. Introduction App Store Connect API ͱ Ϋϥογϡͷൃੜॴɺൃੜܦ࿏Λهͨ͠ϩά
https://developer.apple.com/jp/app-store-connect/api/
©2019 Wantedly, Inc. Introduction App Store Connect API ͱ Ϋϥογϡͷൃੜॴɺൃੜܦ࿏Λهͨ͠ϩά
https://developer.apple.com/jp/app-store-connect/api/
©2019 Wantedly, Inc. ϓϩϏδϣχϯά͕͑ΔΑ͏ʹͳͬͯͨ Introduction (͍ͭͷ·ʹ͔)
©2019 Wantedly, Inc. ͬͦͬͯ͘͞ΈΑ͏ Introduction
©2019 Wantedly, Inc. Introduction ϓϩϏδϣχϯά API Ͱ͑ΔϦιʔε - Bundle ID,
Bundle ID Capabilities - Certificates - Devices - Profiles https://developer.apple.com/jp/app-store-connect/api/
©2019 Wantedly, Inc. $ swift package init --type executable Introduction
͔ͤͬ͘ͳͷͰ Swift CLI Ͱ࡞Δ $ mkdir <PROJECT> && cd ./<PROJECT>
©2019 Wantedly, Inc. Introduction App Store Connect API Λ͏ 2εςοϓ
- JWT (JSON Web Token) ͷൃߦ - ϦΫΤετϔομʹ Token Λ͚ͭͯ API Λୟ͘
©2019 Wantedly, Inc. Introduction App Store Connect API Λ͏ 2εςοϓ
- JWT (JSON Web Token) ͷൃߦ - ϦΫΤετϔομʹ Token Λ͚ͭͯ API Λୟ͘ - GET σόΠεҰཡ - POST σόΠεՃ
©2019 Wantedly, Inc. Introduction App Store Connect API Λ͏ 2εςοϓ
- JWT (JSON Web Token) ͷൃߦ - ϦΫΤετϔομʹ Token Λ͚ͭͯ API Λୟ͘ - GET σόΠεҰཡ - POST σόΠεՃ
©2019 Wantedly, Inc. Introduction JWT (JSON Web Token) ͷൃߦ -
Issuer ID - Key ID - Private Key(.p8) IUUQTBQQTUPSFDPOOFDUBQQMFDPNBDDFTTBQJ https://appstoreconnect.apple.com/access/api
©2019 Wantedly, Inc. Introduction JWT (JSON Web Token) ͷൃߦ -
Issuer ID - Key ID - Private Key(.p8)
©2019 Wantedly, Inc. Introduction IBM-Swift/SwiftJWT
©2019 Wantedly, Inc. Introduction - Issuer ID - Key ID
- Private Key(.p8) IBM-Swift/SwiftJWT
©2019 Wantedly, Inc. Introduction - Issuer ID - Key ID
- Private Key(.p8) IBM-Swift/SwiftJWT
©2019 Wantedly, Inc. Introduction IBM-Swift/SwiftJWT
©2019 Wantedly, Inc. Introduction App Store Connect API Λ͏ 2εςοϓ
- JWT (JSON Web Token) ͷൃߦ - ϦΫΤετϔομʹ Token Λ͚ͭͯ API Λୟ͘ - GET σόΠεҰཡ - POST σόΠεՃ
©2019 Wantedly, Inc. Introduction App Store Connect API Λ͏ 2εςοϓ
- JWT (JSON Web Token) ͷൃߦ - ϦΫΤετϔομʹ Token Λ͚ͭͯ API Λୟ͘ - GET σόΠεҰཡ - POST σόΠεՃ
©2019 Wantedly, Inc. Introduction GET σόΠεҰཡ https://developer.apple.com/documentation/appstoreconnectapi/list_devices
©2019 Wantedly, Inc. Introduction GET σόΠεҰཡ https://developer.apple.com/documentation/appstoreconnectapi/list_devices
©2019 Wantedly, Inc. Introduction Response Spec https://developer.apple.com/documentation/appstoreconnectapi/devicesresponse
©2019 Wantedly, Inc. Introduction - Codable ·ͣ Response Λఆٛ
©2019 Wantedly, Inc. Introduction GET σόΠεҰཡ
©2019 Wantedly, Inc. Introduction GET σόΠεҰཡ
©2019 Wantedly, Inc. Introduction GET σόΠεҰཡ
©2019 Wantedly, Inc. Introduction App Store Connect API Λ͏ 2εςοϓ
- JWT (JSON Web Token) ͷൃߦ - ϦΫΤετϔομʹ Token Λ͚ͭͯ API Λୟ͘ - GET σόΠεҰཡ - POST σόΠεՃ
©2019 Wantedly, Inc. Introduction App Store Connect API Λ͏ 2εςοϓ
- JWT (JSON Web Token) ͷൃߦ - ϦΫΤετϔομʹ Token Λ͚ͭͯ API Λୟ͘ - GET σόΠεҰཡ - POST σόΠεՃ
©2019 Wantedly, Inc. Introduction POST σόΠεՃ https://developer.apple.com/documentation/appstoreconnectapi/register_a_new_device
©2019 Wantedly, Inc. Introduction POST σόΠεՃ https://developer.apple.com/documentation/appstoreconnectapi/register_a_new_device
©2019 Wantedly, Inc. Introduction https://developer.apple.com/documentation/appstoreconnectapi/devicecreaterequ Request Spec
©2019 Wantedly, Inc. Introduction - Codable Request body Λఆٛ
©2019 Wantedly, Inc. Introduction POST σόΠεՃ
©2019 Wantedly, Inc. Introduction POST σόΠεՃ
©2019 Wantedly, Inc. Introduction POST σόΠεՃ
©2019 Wantedly, Inc. Introduction ·ͱΊ - App Store Connect API
Swift Ͱ ؆୯ʹ͑ΔΑ - ࣍ Github ͱ Bitrise Ͱ͍͍ײ͡ʹ͍ͨ͠ - ͍ͭͰʹ Swift Ͱ CLI πʔϧ Λ֮͑Δ͖͔͚ͬʹͳΔΑ