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
800
デバイス管理を 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
340
UI デザインシステム
shotakashihara
2
2.9k
アプリのログをチーム外で活用してもらうためにやったこと
shotakashihara
0
640
iOS エンジニアが KMM で2つの アプリのログイン処理を共通化した話
shotakashihara
1
740
iOS 14 からの Universal Links
shotakashihara
1
4k
iOSアプリ自動ログテストのススメ
shotakashihara
2
1.4k
Trace outside of stack trace
shotakashihara
11
2.4k
App startup time with Dynamic/Static frameworks
shotakashihara
4
930
Other Decks in Technology
See All in Technology
激動の2025年、Modern Data Stackの最新技術動向
sagara
0
890
InsightX 会社説明資料/ Company deck
insightx
0
210
AIがコードを書いてくれるなら、新米エンジニアは何をする? / komekaigi2025
nkzn
25
17k
[AWS 秋のオブザーバビリティ祭り 2025 〜最新アップデートと生成 AI × オブザーバビリティ〜] Amazon Bedrock AgentCore で実現!お手軽 AI エージェントオブザーバビリティ
0nihajim
2
370
戦えるAIエージェントの作り方
iwiwi
22
11k
Data Engineering Guide 2025 #data_summit_findy by @Kazaneya_PR / 20251106
kazaneya
PRO
8
1.5k
新米エンジニアをTech Leadに任命する ー 成長を支える挑戦的な人と組織のマネジメント
naopr
1
360
ピープルウエア x スタートアップ
operando
2
3.4k
設計に疎いエンジニアでも始めやすいアーキテクチャドキュメント
phaya72
27
19k
書籍『実践 Apache Iceberg』の歩き方
ishikawa_satoru
1
480
データエンジニアとして生存するために 〜界隈を盛り上げる「お祭り」が必要な理由〜 / data_summit_findy_Session_1
sansan_randd
1
980
龍昌餃子で理解するWebサーバーの並行処理モデル - 東葛.dev #9
kozy4324
1
110
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
950
Being A Developer After 40
akosma
91
590k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
KATA
mclloyd
PRO
32
15k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
Designing for humans not robots
tammielis
254
26k
Done Done
chrislema
186
16k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
How STYLIGHT went responsive
nonsquared
100
5.9k
Making Projects Easy
brettharned
120
6.4k
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 πʔϧ Λ֮͑Δ͖͔͚ͬʹͳΔΑ