<commit_before>---
layout:     post
title:      如何抓取appstoreconnect数据
category:   [go,ruby]
tags:       [spaceship,appstoreconnect]
description: 本文主要介绍如何通过API方式拉取appstoreconnect的数据
---


## App Store Connect API

不需要登录，也不需要提供开发者账号密码，它是通过私钥生成 token 来访问 API 的

它是官方 API，维护有保障，即使后续苹果调整了网页内容，其相应 API 也不会受影响。

不过它的功能受限很大，提供的 API 很少，主要包括下面这些：

- **TestFlight**. Manage beta builds of your app, testers, and groups.

- **Xcode Cloud**. Read Xcode Cloud data, manage workflows, and start builds.

- **Users and Roles**. Send invitations for users to join your team. Adjust their level of access or remove users.

- **Provisioning**. Manage bundle IDs, capabilities, signing certificates, devices, and provisioning profiles.

- **App Metadata**. Create new versions, manage App Store information, and submit your app to the App Store.

- **App Clip Experiences**. Create an App Clip and manage App Clip experiences.
<commit_msg>Update 2022-04-09-appstoreconnect.md<commit_after>---
layout:     post
title:      如何抓取appstoreconnect数据
category:   [golang,ruby]
tags:       [spaceship,appstoreconnect]
description: 本文主要介绍如何通过API方式拉取appstoreconnect的数据
---


## App Store Connect API

不需要登录，也不需要提供开发者账号密码，它是通过私钥生成 token 来访问 API 的

它是官方 API，维护有保障，即使后续苹果调整了网页内容，其相应 API 也不会受影响。

不过它的功能受限很大，提供的 API 很少，主要包括下面这些：

- **TestFlight**. Manage beta builds of your app, testers, and groups.

- **Xcode Cloud**. Read Xcode Cloud data, manage workflows, and start builds.

- **Users and Roles**. Send invitations for users to join your team. Adjust their level of access or remove users.

- **Provisioning**. Manage bundle IDs, capabilities, signing certificates, devices, and provisioning profiles.

- **App Metadata**. Create new versions, manage App Store information, and submit your app to the App Store.

- **App Clip Experiences**. Create an App Clip and manage App Clip experiences.

{'fraction_non_alphanumeric': 0.09222520107238606, 'fraction_numerical': 0.004289544235924933, 'mean_word_length': 4.456140350877193, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6701883', 'n_tokens_mistral': 716, 'n_tokens_neox': 730, 'n_words': 215}