Skip to content

grine4ka/appstoreconnectapi-ktor

Repository files navigation

App Store Connect API Kotlin Sandbox

Небольшой sandbox-проект для экспериментов с App Store Connect API на Kotlin.

Цель проекта — попробовать работу с API Apple через:

  • Kotlin/JVM
  • Ktor HTTP client
  • kotlinx.serialization
  • JWT-аутентификацию для App Store Connect API

Проект не претендует на полноценную production-библиотеку. Это рабочая площадка для изучения API, проверки запросов и моделирования ответов.

Что уже есть

  • базовый AppStoreConnectClient
  • авторизация через API key
  • клиенты для builds, reviews и app store versions
  • модели ответов API на kotlinx.serialization
  • пример запуска из App.kt

Структура

src/main/kotlin/ru/bykov/appstoreconnectapi
├── App.kt
├── AppStoreConnectClient.kt
├── auth/
├── clients/
└── models/

Запуск

Для сборки проекта:

./gradlew build

Для запуска примера:

./gradlew run --args="com.example.app"

В качестве аргумента передается bundleId приложения.

Credentials

Пример ожидает файл:

src/main/resources/credentials.json

Этот файл должен содержать данные API key для App Store Connect. Реальные credentials не нужно коммитить в репозиторий: файл уже добавлен в .gitignore.

Структура файла:

{
  "ISSUER_ID": "00000000-0000-0000-0000-000000000000",
  "KEY_ID": "ABC123DEFG",
  "APP_STORE_CONNECT_API_KEY": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----"
}

ISSUER_ID и KEY_ID можно найти в App Store Connect рядом с созданным API key. APP_STORE_CONNECT_API_KEY — это содержимое приватного .p8 ключа.

Статус

Проект находится в экспериментальном состоянии. API, структура моделей и поведение клиентов могут меняться по мере изучения App Store Connect API.

About

Небольшой sandbox-проект для экспериментов с App Store Connect API на Kotlin.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages