app_store_connect-0.38.0/ 0000755 0000041 0000041 00000000000 14453372134 015345 5 ustar www-data www-data app_store_connect-0.38.0/Gemfile.lock 0000644 0000041 0000041 00000011212 14453372134 017564 0 ustar www-data www-data PATH
remote: .
specs:
app_store_connect (0.38.0)
activesupport (>= 6.0.0)
jwt (>= 1.4)
zeitwerk (>= 2.6.7)
GEM
remote: https://rubygems.org/
specs:
activesupport (7.0.4.3)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
addressable (2.8.1)
public_suffix (>= 2.0.2, < 6.0)
ast (2.4.2)
async (1.30.3)
console (~> 1.10)
nio4r (~> 2.3)
timers (~> 4.1)
async-http (0.60.1)
async (>= 1.25)
async-io (>= 1.28)
async-pool (>= 0.2)
protocol-http (~> 0.24.0)
protocol-http1 (~> 0.15.0)
protocol-http2 (~> 0.15.0)
traces (>= 0.8.0)
async-http-faraday (0.11.0)
async-http (~> 0.42)
faraday
async-io (1.34.3)
async
async-pool (0.3.12)
async (>= 1.25)
cgi (0.3.6)
coderay (1.1.3)
concurrent-ruby (1.2.2)
console (1.16.2)
fiber-local
crack (0.4.5)
rexml
diff-lcs (1.5.0)
docile (1.4.0)
erb (4.0.2)
cgi (>= 0.3.3)
factory_bot (6.2.1)
activesupport (>= 5.0.0)
faraday (2.7.4)
faraday-net_http (>= 2.0, < 3.1)
ruby2_keywords (>= 0.0.4)
faraday-http-cache (2.4.1)
faraday (>= 0.8)
faraday-net_http (3.0.2)
ffi (1.15.5)
fiber-local (1.0.0)
formatador (1.1.0)
github_changelog_generator (1.16.4)
activesupport
async (>= 1.25.0)
async-http-faraday
faraday-http-cache
multi_json
octokit (~> 4.6)
rainbow (>= 2.2.1)
rake (>= 10.0)
guard (2.18.0)
formatador (>= 0.2.4)
listen (>= 2.7, < 4.0)
lumberjack (>= 1.0.12, < 2.0)
nenv (~> 0.1)
notiffany (~> 0.0)
pry (>= 0.13.0)
shellany (~> 0.0)
thor (>= 0.18.1)
guard-compat (1.2.1)
guard-rspec (4.7.3)
guard (~> 2.1)
guard-compat (~> 1.1)
rspec (>= 2.99.0, < 4.0)
hashdiff (1.0.1)
i18n (1.12.0)
concurrent-ruby (~> 1.0)
json (2.6.3)
jwt (2.7.0)
listen (3.7.1)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
lumberjack (1.2.8)
method_source (1.0.0)
minitest (5.18.0)
multi_json (1.15.0)
nenv (0.3.0)
nio4r (2.5.8)
notiffany (0.1.3)
nenv (~> 0.1)
shellany (~> 0.0)
octokit (4.25.1)
faraday (>= 1, < 3)
sawyer (~> 0.9)
parallel (1.23.0)
parser (3.2.2.0)
ast (~> 2.4.1)
protocol-hpack (1.4.2)
protocol-http (0.24.0)
protocol-http1 (0.15.0)
protocol-http (~> 0.22)
protocol-http2 (0.15.0)
protocol-hpack (~> 1.4)
protocol-http (~> 0.18)
pry (0.14.2)
coderay (~> 1.1)
method_source (~> 1.0)
public_suffix (5.0.0)
rainbow (3.1.1)
rake (13.0.6)
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
ffi (~> 1.0)
regexp_parser (2.8.0)
rexml (3.2.5)
rspec (3.12.0)
rspec-core (~> 3.12.0)
rspec-expectations (~> 3.12.0)
rspec-mocks (~> 3.12.0)
rspec-core (3.12.1)
rspec-support (~> 3.12.0)
rspec-expectations (3.12.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.12.0)
rspec-mocks (3.12.3)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.12.0)
rspec-support (3.12.0)
rubocop (1.50.2)
json (~> 2.3)
parallel (~> 1.10)
parser (>= 3.2.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.28.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.28.0)
parser (>= 3.2.1.0)
ruby-progressbar (1.13.0)
ruby2_keywords (0.0.5)
rubyzip (2.3.2)
sawyer (0.9.2)
addressable (>= 2.3.5)
faraday (>= 0.17.3, < 3)
semantic (1.6.1)
shellany (0.0.1)
simplecov (0.22.0)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov_json_formatter (~> 0.1)
simplecov-html (0.12.3)
simplecov_json_formatter (0.1.4)
thor (1.2.1)
timecop (0.9.6)
timers (4.3.5)
traces (0.8.0)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
unicode-display_width (2.4.2)
webmock (3.18.1)
addressable (>= 2.8.0)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
zeitwerk (2.6.8)
PLATFORMS
arm64-darwin-21
arm64-darwin-22
x86_64-darwin-22
x86_64-linux
DEPENDENCIES
app_store_connect!
bundler
erb (~> 4.0.2)
factory_bot (~> 6.2.1)
github_changelog_generator (= 1.16.4)
guard-rspec (~> 4.7.3)
pry (~> 0.14.1)
rake (~> 13.0.6)
rspec (~> 3.12.0)
rubocop (~> 1.50.1)
rubyzip
semantic (~> 1.6.1)
simplecov (~> 0.22.0)
timecop (~> 0.9.5)
webmock (~> 3.18.1)
BUNDLED WITH
2.3.24
app_store_connect-0.38.0/.rspec 0000644 0000041 0000041 00000000065 14453372134 016463 0 ustar www-data www-data --format documentation
--color
--require spec_helper
app_store_connect-0.38.0/README.md 0000644 0000041 0000041 00000010760 14453372134 016630 0 ustar www-data www-data
App Store Connect for Ruby
[](https://github.com/kyledecot/app_store_connect/actions/workflows/default.yml)
A Ruby interface to the [App Store Connect API](https://developer.apple.com/app-store-connect/api/)
## Installation
Add this line to your application's Gemfile:
```Ruby
gem 'app_store_connect'
```
And then execute:
```Bash
$ bundle
```
Or install it yourself as:
```Bash
$ gem install app_store_connect
```
## Usage
```ruby
AppStoreConnect.config = {
issuer_id: 'issuer_id',
key_id: 'key_id',
private_key: File.read(File.new("/Path/AuthKey.p8"))
}
app_store_connect = AppStoreConnect::Client.new
app_store_connect.apps
app_store_connect.app(id: '1234')
app_store_connect.builds(id: '1234')
```
### Create Bundle ID
```ruby
app_store_connect.create_bundle_id(
name: 'Example',
identifier: 'com.kyledecot.Example',
platform: 'IOS'
)
```
### Sales Reports
```ruby
app_store_connect.sales_reports(
filter: {
report_type: 'SALES',
report_sub_type: 'SUMMARY',
frequency: 'DAILY',
vendor_number: '123456'
}
)
```
### Fetch All Devices
```ruby
devices = app_store_connect.devices
puts JSON.pretty_generate(devices)
```
### Register a New Device
```ruby
created_device = app_store_connect.create_device(
name: 'name',
platform: 'IOS',
udid: 'udid'
)
puts JSON.pretty_generate(created_device)
```
### Update an App Store Version
```ruby
app_store_connect.update_app_store_version(
id: '',
version_string: '1.0'
)
```
### Link a Build to an App Store Version
```ruby
app_store_connect.update_app_store_version_build(
id: '',
build_id: ''
)
```
### Create a Review Submission Item
```ruby
app_store_connect.create_review_submission_item(
relationships: {
reviewSubmission: {
data: {
id: '',
type: 'reviewSubmissions'
}
},
appStoreVersion: {
data: {
id: '',
type: 'appStoreVersions'
}
}
}
)
```
### Create In-App Purchase Price Schedule
```ruby
app_store_connect.create_in_app_purchase_price_schedule(
relationships: {
manual_prices: {
data: [
{
type: 'inAppPurchasePrices',
id: '${price1}'
}
]
},
in_app_purchase: {
data: {
type: 'inAppPurchases',
id: ''
}
}
},
included: [
{
type: 'inAppPurchasePrices',
id: '${price1}',
attributes: {
startDate: nil
},
relationships: {
inAppPurchaseV2: {
data: {
type: 'inAppPurchases',
id: ''
}
},
inAppPurchasePricePoint: {
data: {
type: 'inAppPurchasePricePoints',
id: ''
}
}
}
}
]
)
```
### Add or remove access for a Beta Group to a Build
```ruby
app_store_connect.add_build_beta_groups(
id: '',
data: [{id: ''}]
)
app_store_connect.delete_build_beta_groups(
id: '',
data: [{id: ''}]
)
```
## FAQ
### How to understand the `devices, sales_reports, create_bundle_id` keyword seen in the demo?
It's function key from `schema.json` file.
### How to understand `()` in the demo, and when should use it? eg: `create_bundle_id()`, `sales_reports()`
`()` is mean: you have mapped to `http_body_type` in file `schema.json`
### How to set this content in `()`
`http_body_type` have a value type. Based on this value, we can find the definition of the relevant configuration in the source code of ruby.
### How to include related resources?
```ruby
app_store_connect.in_app_purchase(id: 123, include: 'appStoreReviewScreenshot,pricePoints')
```
### How to filter fields?
```ruby
app_store_connect.in_app_purchase(id: 123, fields: 'name,productId')
```
## Development
After checking out the repo, run `bundle install` to install dependencies. Then, run `rake spec` to run the tests. You can also run `rake console` for an interactive prompt that will allow you to experiment.
## Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/kyledecot/app_store_connect.
## License
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
app_store_connect-0.38.0/bin/ 0000755 0000041 0000041 00000000000 14453372134 016115 5 ustar www-data www-data app_store_connect-0.38.0/bin/console 0000755 0000041 0000041 00000000266 14453372134 017511 0 ustar www-data www-data #!/usr/bin/env ruby
# frozen_string_literal: true
require 'bundler/setup'
require 'app_store_connect'
require 'rake'
load './lib/tasks/console.rake'
Rake::Task['console'].execute
app_store_connect-0.38.0/CHANGELOG.md 0000644 0000041 0000041 00000066775 14453372134 017203 0 ustar www-data www-data # Changelog
## [v0.38.0](https://github.com/kyledecot/app_store_connect/tree/v0.38.0) (2023-05-02)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.37.0...v0.38.0)
**Closed issues:**
- execution expired \(Net::OpenTimeout\) [\#128](https://github.com/kyledecot/app_store_connect/issues/128)
**Merged pull requests:**
- Bump zeitwerk from 2.6.7 to 2.6.8 [\#166](https://github.com/kyledecot/app_store_connect/pull/166) ([dependabot[bot]](https://github.com/apps/dependabot))
- Bump rubocop from 1.50.1 to 1.50.2 [\#165](https://github.com/kyledecot/app_store_connect/pull/165) ([dependabot[bot]](https://github.com/apps/dependabot))
- Add ability to add or remove access for beta groups to a build [\#164](https://github.com/kyledecot/app_store_connect/pull/164) ([zormandi](https://github.com/zormandi))
- Update rubocop requirement from ~\> 1.49.0 to ~\> 1.50.1 [\#163](https://github.com/kyledecot/app_store_connect/pull/163) ([dependabot[bot]](https://github.com/apps/dependabot))
- Update rubocop requirement from ~\> 1.48.0 to ~\> 1.49.0 [\#162](https://github.com/kyledecot/app_store_connect/pull/162) ([dependabot[bot]](https://github.com/apps/dependabot))
- Update deprecated app price points endpoint [\#161](https://github.com/kyledecot/app_store_connect/pull/161) ([tmarkanov](https://github.com/tmarkanov))
- Bump rubocop from 1.48.0 to 1.48.1 [\#160](https://github.com/kyledecot/app_store_connect/pull/160) ([dependabot[bot]](https://github.com/apps/dependabot))
- Bump activesupport from 7.0.4.2 to 7.0.4.3 [\#159](https://github.com/kyledecot/app_store_connect/pull/159) ([dependabot[bot]](https://github.com/apps/dependabot))
- Update rubocop requirement from ~\> 1.47.0 to ~\> 1.48.0 [\#157](https://github.com/kyledecot/app_store_connect/pull/157) ([dependabot[bot]](https://github.com/apps/dependabot))
- Fix bug in BetaBuildLocalizationModifyRequest [\#156](https://github.com/kyledecot/app_store_connect/pull/156) ([zormandi](https://github.com/zormandi))
- Update rubocop requirement from ~\> 1.46.0 to ~\> 1.47.0 [\#155](https://github.com/kyledecot/app_store_connect/pull/155) ([dependabot[bot]](https://github.com/apps/dependabot))
- Update rubocop requirement from ~\> 1.45.1 to ~\> 1.46.0 [\#153](https://github.com/kyledecot/app_store_connect/pull/153) ([dependabot[bot]](https://github.com/apps/dependabot))
- Add Spec for Request Body [\#152](https://github.com/kyledecot/app_store_connect/pull/152) ([kyledecot](https://github.com/kyledecot))
- Add Spec for Object::Properties [\#151](https://github.com/kyledecot/app_store_connect/pull/151) ([kyledecot](https://github.com/kyledecot))
- Add App Store Version Localization management capability [\#150](https://github.com/kyledecot/app_store_connect/pull/150) ([zormandi](https://github.com/zormandi))
- Commit In-App Purchase Review Screenshot [\#149](https://github.com/kyledecot/app_store_connect/pull/149) ([gregg-platogo](https://github.com/gregg-platogo))
- Add Client Builder [\#147](https://github.com/kyledecot/app_store_connect/pull/147) ([kyledecot](https://github.com/kyledecot))
- Add Request Body \(Create/Update\) [\#146](https://github.com/kyledecot/app_store_connect/pull/146) ([kyledecot](https://github.com/kyledecot))
- Use zeitwerk for autoloading [\#145](https://github.com/kyledecot/app_store_connect/pull/145) ([kyledecot](https://github.com/kyledecot))
- Ability to build create request from schema [\#144](https://github.com/kyledecot/app_store_connect/pull/144) ([kyledecot](https://github.com/kyledecot))
- Add ability to read/file specification [\#143](https://github.com/kyledecot/app_store_connect/pull/143) ([kyledecot](https://github.com/kyledecot))
- Add ability to download OpenAPI Specification [\#142](https://github.com/kyledecot/app_store_connect/pull/142) ([kyledecot](https://github.com/kyledecot))
- Add Create Request Builder [\#141](https://github.com/kyledecot/app_store_connect/pull/141) ([kyledecot](https://github.com/kyledecot))
- Update rubocop requirement from ~\> 1.36.0 to ~\> 1.45.1 [\#140](https://github.com/kyledecot/app_store_connect/pull/140) ([dependabot[bot]](https://github.com/apps/dependabot))
- Bump timecop from 0.9.5 to 0.9.6 [\#139](https://github.com/kyledecot/app_store_connect/pull/139) ([dependabot[bot]](https://github.com/apps/dependabot))
- Update simplecov requirement from ~\> 0.21.2 to ~\> 0.22.0 [\#138](https://github.com/kyledecot/app_store_connect/pull/138) ([dependabot[bot]](https://github.com/apps/dependabot))
- Update rspec requirement from ~\> 3.11.0 to ~\> 3.12.0 [\#137](https://github.com/kyledecot/app_store_connect/pull/137) ([dependabot[bot]](https://github.com/apps/dependabot))
- Bump pry from 0.14.1 to 0.14.2 [\#136](https://github.com/kyledecot/app_store_connect/pull/136) ([dependabot[bot]](https://github.com/apps/dependabot))
- Create Included Concern [\#135](https://github.com/kyledecot/app_store_connect/pull/135) ([kyledecot](https://github.com/kyledecot))
## [v0.37.0](https://github.com/kyledecot/app_store_connect/tree/v0.37.0) (2023-02-14)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.36.0...v0.37.0)
**Merged pull requests:**
- Manage In-App Purchase Localizations and Price Points [\#133](https://github.com/kyledecot/app_store_connect/pull/133) ([tmarkanov](https://github.com/tmarkanov))
## [v0.36.0](https://github.com/kyledecot/app_store_connect/tree/v0.36.0) (2023-02-08)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.35.0...v0.36.0)
## [v0.35.0](https://github.com/kyledecot/app_store_connect/tree/v0.35.0) (2023-02-08)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.34.0...v0.35.0)
## [v0.34.0](https://github.com/kyledecot/app_store_connect/tree/v0.34.0) (2023-02-08)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.33.0...v0.34.0)
**Merged pull requests:**
- Readme [\#132](https://github.com/kyledecot/app_store_connect/pull/132) ([kyledecot](https://github.com/kyledecot))
## [v0.33.0](https://github.com/kyledecot/app_store_connect/tree/v0.33.0) (2023-02-07)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.32.0...v0.33.0)
**Merged pull requests:**
- Manage in app purchases [\#131](https://github.com/kyledecot/app_store_connect/pull/131) ([gregg-platogo](https://github.com/gregg-platogo))
## [v0.32.0](https://github.com/kyledecot/app_store_connect/tree/v0.32.0) (2023-02-02)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.31.0...v0.32.0)
## [v0.31.0](https://github.com/kyledecot/app_store_connect/tree/v0.31.0) (2023-02-02)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.30.0...v0.31.0)
**Merged pull requests:**
- Bump activesupport from 7.0.4 to 7.0.4.2 [\#130](https://github.com/kyledecot/app_store_connect/pull/130) ([dependabot[bot]](https://github.com/apps/dependabot))
- Add `create_beta_build_localization` & `modify_beta_build_localization` support [\#106](https://github.com/kyledecot/app_store_connect/pull/106) ([RishatShamsutdinov](https://github.com/RishatShamsutdinov))
## [v0.30.0](https://github.com/kyledecot/app_store_connect/tree/v0.30.0) (2023-02-02)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.29.0...v0.30.0)
**Merged pull requests:**
- Support Ruby versions 3.x [\#129](https://github.com/kyledecot/app_store_connect/pull/129) ([tmarkanov](https://github.com/tmarkanov))
- Remove max version limit for jwt dependency [\#127](https://github.com/kyledecot/app_store_connect/pull/127) ([darbyfrey](https://github.com/darbyfrey))
- Fix bug where manual app release failed because of missing required class [\#126](https://github.com/kyledecot/app_store_connect/pull/126) ([zormandi](https://github.com/zormandi))
## [v0.29.0](https://github.com/kyledecot/app_store_connect/tree/v0.29.0) (2022-11-17)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.28.0...v0.29.0)
**Merged pull requests:**
- Add new endpoint for creating App Store Version Release Requests [\#125](https://github.com/kyledecot/app_store_connect/pull/125) ([zormandi](https://github.com/zormandi))
- Create FUNDING.yml [\#124](https://github.com/kyledecot/app_store_connect/pull/124) ([kyledecot](https://github.com/kyledecot))
## [v0.28.0](https://github.com/kyledecot/app_store_connect/tree/v0.28.0) (2022-10-28)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.27.0...v0.28.0)
**Closed issues:**
- Can we remove tracking? [\#121](https://github.com/kyledecot/app_store_connect/issues/121)
- How does use it? [\#119](https://github.com/kyledecot/app_store_connect/issues/119)
**Merged pull requests:**
- Add new endpoints and remove MixPanel [\#123](https://github.com/kyledecot/app_store_connect/pull/123) ([zormandi](https://github.com/zormandi))
- Update README.md [\#120](https://github.com/kyledecot/app_store_connect/pull/120) ([RbBtSn0w](https://github.com/RbBtSn0w))
## [v0.27.0](https://github.com/kyledecot/app_store_connect/tree/v0.27.0) (2022-09-30)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.26.0...v0.27.0)
**Merged pull requests:**
- Add new endpoints [\#118](https://github.com/kyledecot/app_store_connect/pull/118) ([zormandi](https://github.com/zormandi))
## [v0.26.0](https://github.com/kyledecot/app_store_connect/tree/v0.26.0) (2022-09-28)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.25.0...v0.26.0)
**Closed issues:**
- Ruby 2.7 compatibility [\#111](https://github.com/kyledecot/app_store_connect/issues/111)
**Merged pull requests:**
- Use Ruby 2.7 in GHA [\#117](https://github.com/kyledecot/app_store_connect/pull/117) ([kyledecot](https://github.com/kyledecot))
- Bring back Ruby 2.7 compatibility [\#116](https://github.com/kyledecot/app_store_connect/pull/116) ([zormandi](https://github.com/zormandi))
- Updates for Ruby 3 [\#110](https://github.com/kyledecot/app_store_connect/pull/110) ([kyledecot](https://github.com/kyledecot))
- Bump jwt version to 2.5.0 [\#109](https://github.com/kyledecot/app_store_connect/pull/109) ([bejczib](https://github.com/bejczib))
## [v0.25.0](https://github.com/kyledecot/app_store_connect/tree/v0.25.0) (2022-06-25)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.23.0...v0.25.0)
**Merged pull requests:**
- Bump addressable from 2.6.0 to 2.8.0 [\#103](https://github.com/kyledecot/app_store_connect/pull/103) ([dependabot[bot]](https://github.com/apps/dependabot))
- Add `create_bundle_id` & `create_bundle_id_capability` support [\#101](https://github.com/kyledecot/app_store_connect/pull/101) ([pranav-g10](https://github.com/pranav-g10))
- Bump json from 2.2.0 to 2.3.1 [\#99](https://github.com/kyledecot/app_store_connect/pull/99) ([dependabot[bot]](https://github.com/apps/dependabot))
## [v0.23.0](https://github.com/kyledecot/app_store_connect/tree/v0.23.0) (2020-06-16)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.22.0...v0.23.0)
## [v0.22.0](https://github.com/kyledecot/app_store_connect/tree/v0.22.0) (2020-06-16)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.21.0...v0.22.0)
**Merged pull requests:**
- Refactor Workflows [\#98](https://github.com/kyledecot/app_store_connect/pull/98) ([kyledecot](https://github.com/kyledecot))
## [v0.21.0](https://github.com/kyledecot/app_store_connect/tree/v0.21.0) (2020-06-16)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.20.0...v0.21.0)
**Closed issues:**
- require 'app\_store\_connect' is not working [\#96](https://github.com/kyledecot/app_store_connect/issues/96)
**Merged pull requests:**
- Require ActiveSupport \>= 6.0.3.1 [\#97](https://github.com/kyledecot/app_store_connect/pull/97) ([kyledecot](https://github.com/kyledecot))
- Bump activesupport from 5.2.3 to 6.0.3.1 [\#95](https://github.com/kyledecot/app_store_connect/pull/95) ([dependabot[bot]](https://github.com/apps/dependabot))
## [v0.20.0](https://github.com/kyledecot/app_store_connect/tree/v0.20.0) (2020-02-17)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.19.0...v0.20.0)
**Merged pull requests:**
- add support for parsing gzip responses [\#93](https://github.com/kyledecot/app_store_connect/pull/93) ([addbrick](https://github.com/addbrick))
## [v0.19.0](https://github.com/kyledecot/app_store_connect/tree/v0.19.0) (2019-10-26)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.18.0...v0.19.0)
**Closed issues:**
- How do I set GET query parameters? [\#90](https://github.com/kyledecot/app_store_connect/issues/90)
**Merged pull requests:**
- Symbolize/Underscore Response [\#91](https://github.com/kyledecot/app_store_connect/pull/91) ([kyledecot](https://github.com/kyledecot))
- Add Client::Utils [\#88](https://github.com/kyledecot/app_store_connect/pull/88) ([kyledecot](https://github.com/kyledecot))
## [v0.18.0](https://github.com/kyledecot/app_store_connect/tree/v0.18.0) (2019-10-22)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.17.0...v0.18.0)
**Merged pull requests:**
- Track Version [\#87](https://github.com/kyledecot/app_store_connect/pull/87) ([kyledecot](https://github.com/kyledecot))
- Update Rubocop [\#86](https://github.com/kyledecot/app_store_connect/pull/86) ([kyledecot](https://github.com/kyledecot))
## [v0.17.0](https://github.com/kyledecot/app_store_connect/tree/v0.17.0) (2019-10-22)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.16.0...v0.17.0)
**Implemented enhancements:**
- Adds Script to Publish to Github Package Registry/Rubygems.org [\#81](https://github.com/kyledecot/app_store_connect/pull/81) ([kyledecot](https://github.com/kyledecot))
**Fixed bugs:**
- Fix Client Option Merging [\#85](https://github.com/kyledecot/app_store_connect/pull/85) ([kyledecot](https://github.com/kyledecot))
**Closed issues:**
- Key Not Found :schema [\#84](https://github.com/kyledecot/app_store_connect/issues/84)
**Merged pull requests:**
- Use bin/publish in Workflow [\#83](https://github.com/kyledecot/app_store_connect/pull/83) ([kyledecot](https://github.com/kyledecot))
- Update Workflows [\#82](https://github.com/kyledecot/app_store_connect/pull/82) ([kyledecot](https://github.com/kyledecot))
## [v0.16.0](https://github.com/kyledecot/app_store_connect/tree/v0.16.0) (2019-10-18)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.15.0...v0.16.0)
**Fixed bugs:**
- Use send for \#define\_method [\#80](https://github.com/kyledecot/app_store_connect/pull/80) ([kyledecot](https://github.com/kyledecot))
**Closed issues:**
- require 'app\_store\_connect' failed [\#78](https://github.com/kyledecot/app_store_connect/issues/78)
## [v0.15.0](https://github.com/kyledecot/app_store_connect/tree/v0.15.0) (2019-09-25)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.14.0...v0.15.0)
**Merged pull requests:**
- Update publish.yml [\#79](https://github.com/kyledecot/app_store_connect/pull/79) ([kyledecot](https://github.com/kyledecot))
## [v0.14.0](https://github.com/kyledecot/app_store_connect/tree/v0.14.0) (2019-09-20)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.13.0...v0.14.0)
**Merged pull requests:**
- ActiveSupport [\#77](https://github.com/kyledecot/app_store_connect/pull/77) ([kyledecot](https://github.com/kyledecot))
- Add Schema::Object [\#76](https://github.com/kyledecot/app_store_connect/pull/76) ([kyledecot](https://github.com/kyledecot))
- Remove Rake [\#75](https://github.com/kyledecot/app_store_connect/pull/75) ([kyledecot](https://github.com/kyledecot))
- Extract Usage from Client [\#74](https://github.com/kyledecot/app_store_connect/pull/74) ([kyledecot](https://github.com/kyledecot))
## [v0.13.0](https://github.com/kyledecot/app_store_connect/tree/v0.13.0) (2019-09-13)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.12.2...v0.13.0)
**Merged pull requests:**
- Remove Dynamic Type Classes [\#73](https://github.com/kyledecot/app_store_connect/pull/73) ([kyledecot](https://github.com/kyledecot))
- Replaces Travis CI w/ Github Actions [\#72](https://github.com/kyledecot/app_store_connect/pull/72) ([kyledecot](https://github.com/kyledecot))
- Renames Workflows [\#71](https://github.com/kyledecot/app_store_connect/pull/71) ([kyledecot](https://github.com/kyledecot))
- Add Lint Workflow [\#70](https://github.com/kyledecot/app_store_connect/pull/70) ([kyledecot](https://github.com/kyledecot))
- Adds Test Workflow [\#69](https://github.com/kyledecot/app_store_connect/pull/69) ([kyledecot](https://github.com/kyledecot))
## [v0.12.2](https://github.com/kyledecot/app_store_connect/tree/v0.12.2) (2019-09-04)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.12.1...v0.12.2)
**Merged pull requests:**
- Fix Open Ended Dependencies [\#68](https://github.com/kyledecot/app_store_connect/pull/68) ([kyledecot](https://github.com/kyledecot))
## [v0.12.1](https://github.com/kyledecot/app_store_connect/tree/v0.12.1) (2019-09-04)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.12.0...v0.12.1)
**Merged pull requests:**
- Add Action [\#58](https://github.com/kyledecot/app_store_connect/pull/58) ([kyledecot](https://github.com/kyledecot))
## [v0.12.0](https://github.com/kyledecot/app_store_connect/tree/v0.12.0) (2019-08-28)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.11.0...v0.12.0)
**Merged pull requests:**
- Add Analytics [\#65](https://github.com/kyledecot/app_store_connect/pull/65) ([kyledecot](https://github.com/kyledecot))
- Add GET Endpoints [\#64](https://github.com/kyledecot/app_store_connect/pull/64) ([kyledecot](https://github.com/kyledecot))
- Add Remaining DELETE Endpoints [\#63](https://github.com/kyledecot/app_store_connect/pull/63) ([kyledecot](https://github.com/kyledecot))
- Delete User [\#62](https://github.com/kyledecot/app_store_connect/pull/62) ([kyledecot](https://github.com/kyledecot))
- Add Finance Reports [\#61](https://github.com/kyledecot/app_store_connect/pull/61) ([kyledecot](https://github.com/kyledecot))
## [v0.11.0](https://github.com/kyledecot/app_store_connect/tree/v0.11.0) (2019-08-23)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.10.0...v0.11.0)
**Merged pull requests:**
- Add Sales Reports [\#60](https://github.com/kyledecot/app_store_connect/pull/60) ([kyledecot](https://github.com/kyledecot))
- Add CamelCase Support to Query [\#59](https://github.com/kyledecot/app_store_connect/pull/59) ([kyledecot](https://github.com/kyledecot))
- Refactors Client [\#57](https://github.com/kyledecot/app_store_connect/pull/57) ([kyledecot](https://github.com/kyledecot))
- Adds Schema::Type [\#56](https://github.com/kyledecot/app_store_connect/pull/56) ([kyledecot](https://github.com/kyledecot))
## [v0.10.0](https://github.com/kyledecot/app_store_connect/tree/v0.10.0) (2019-08-20)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.9.0...v0.10.0)
**Merged pull requests:**
- Rename invite\_user to create\_user\_invitation [\#55](https://github.com/kyledecot/app_store_connect/pull/55) ([kyledecot](https://github.com/kyledecot))
- Add Certificate/Device/Profile Create [\#54](https://github.com/kyledecot/app_store_connect/pull/54) ([kyledecot](https://github.com/kyledecot))
- Config -\> Schema [\#53](https://github.com/kyledecot/app_store_connect/pull/53) ([kyledecot](https://github.com/kyledecot))
## [v0.9.0](https://github.com/kyledecot/app_store_connect/tree/v0.9.0) (2019-08-19)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.8.0...v0.9.0)
**Merged pull requests:**
- Add List/Show for Devices [\#52](https://github.com/kyledecot/app_store_connect/pull/52) ([kyledecot](https://github.com/kyledecot))
- Add List/Delete Bundle ID Capabilities [\#51](https://github.com/kyledecot/app_store_connect/pull/51) ([kyledecot](https://github.com/kyledecot))
- Add DELETE support [\#50](https://github.com/kyledecot/app_store_connect/pull/50) ([kyledecot](https://github.com/kyledecot))
## [v0.8.0](https://github.com/kyledecot/app_store_connect/tree/v0.8.0) (2019-08-14)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.7.0...v0.8.0)
**Merged pull requests:**
- Use inherited hook [\#49](https://github.com/kyledecot/app_store_connect/pull/49) ([kyledecot](https://github.com/kyledecot))
- Add .DS\_Store to .gitignore [\#48](https://github.com/kyledecot/app_store_connect/pull/48) ([kyledecot](https://github.com/kyledecot))
- Cleanup [\#47](https://github.com/kyledecot/app_store_connect/pull/47) ([kyledecot](https://github.com/kyledecot))
- Remove HTTParty [\#46](https://github.com/kyledecot/app_store_connect/pull/46) ([kyledecot](https://github.com/kyledecot))
- Use Net/HTTP for GET Requests [\#45](https://github.com/kyledecot/app_store_connect/pull/45) ([kyledecot](https://github.com/kyledecot))
## [v0.7.0](https://github.com/kyledecot/app_store_connect/tree/v0.7.0) (2019-08-13)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.6.0...v0.7.0)
**Implemented enhancements:**
- Read ENVs [\#44](https://github.com/kyledecot/app_store_connect/pull/44) ([kyledecot](https://github.com/kyledecot))
**Merged pull requests:**
- Add WebServiceEndpoint [\#43](https://github.com/kyledecot/app_store_connect/pull/43) ([kyledecot](https://github.com/kyledecot))
- Dynamic Client [\#42](https://github.com/kyledecot/app_store_connect/pull/42) ([kyledecot](https://github.com/kyledecot))
- Add Config [\#41](https://github.com/kyledecot/app_store_connect/pull/41) ([kyledecot](https://github.com/kyledecot))
- Add Property Module [\#38](https://github.com/kyledecot/app_store_connect/pull/38) ([kyledecot](https://github.com/kyledecot))
## [v0.6.0](https://github.com/kyledecot/app_store_connect/tree/v0.6.0) (2019-07-06)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.5.0...v0.6.0)
**Merged pull requests:**
- Remove CLI [\#37](https://github.com/kyledecot/app_store_connect/pull/37) ([kyledecot](https://github.com/kyledecot))
## [v0.5.0](https://github.com/kyledecot/app_store_connect/tree/v0.5.0) (2019-07-05)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.4.0...v0.5.0)
**Merged pull requests:**
- Refactor FactoryNotRegistered [\#36](https://github.com/kyledecot/app_store_connect/pull/36) ([kyledecot](https://github.com/kyledecot))
- Add B Builder Concept [\#35](https://github.com/kyledecot/app_store_connect/pull/35) ([kyledecot](https://github.com/kyledecot))
- Add Factory spec [\#34](https://github.com/kyledecot/app_store_connect/pull/34) ([kyledecot](https://github.com/kyledecot))
- Add CapabilityType [\#32](https://github.com/kyledecot/app_store_connect/pull/32) ([kyledecot](https://github.com/kyledecot))
- Add CertificateType [\#31](https://github.com/kyledecot/app_store_connect/pull/31) ([kyledecot](https://github.com/kyledecot))
- Add UserRole and Shared Example [\#30](https://github.com/kyledecot/app_store_connect/pull/30) ([kyledecot](https://github.com/kyledecot))
- Add Config [\#29](https://github.com/kyledecot/app_store_connect/pull/29) ([kyledecot](https://github.com/kyledecot))
- Add Enum Type Factory [\#28](https://github.com/kyledecot/app_store_connect/pull/28) ([kyledecot](https://github.com/kyledecot))
- Move fixtures and factories into spec/support [\#27](https://github.com/kyledecot/app_store_connect/pull/27) ([kyledecot](https://github.com/kyledecot))
- Update .travis.yml [\#25](https://github.com/kyledecot/app_store_connect/pull/25) ([kyledecot](https://github.com/kyledecot))
- Update authorization.rb [\#24](https://github.com/kyledecot/app_store_connect/pull/24) ([kyledecot](https://github.com/kyledecot))
- Configures simplecov [\#23](https://github.com/kyledecot/app_store_connect/pull/23) ([kyledecot](https://github.com/kyledecot))
- Adds CodeClimate Test Coverage Integration Travis [\#22](https://github.com/kyledecot/app_store_connect/pull/22) ([kyledecot](https://github.com/kyledecot))
- Adds specs for Authorization\#token [\#21](https://github.com/kyledecot/app_store_connect/pull/21) ([kyledecot](https://github.com/kyledecot))
- Updates BundleIdRequest\#to\_h to conditionally include seed\_id [\#20](https://github.com/kyledecot/app_store_connect/pull/20) ([kyledecot](https://github.com/kyledecot))
- Adds spec for Authorization\#payload [\#19](https://github.com/kyledecot/app_store_connect/pull/19) ([kyledecot](https://github.com/kyledecot))
- Update issue templates [\#18](https://github.com/kyledecot/app_store_connect/pull/18) ([kyledecot](https://github.com/kyledecot))
- Removes sudo: false from .travis.yml [\#17](https://github.com/kyledecot/app_store_connect/pull/17) ([kyledecot](https://github.com/kyledecot))
- Updates .ruby-version [\#16](https://github.com/kyledecot/app_store_connect/pull/16) ([kyledecot](https://github.com/kyledecot))
- Uses Default Travis Settings [\#15](https://github.com/kyledecot/app_store_connect/pull/15) ([kyledecot](https://github.com/kyledecot))
- Adds spec for /users [\#14](https://github.com/kyledecot/app_store_connect/pull/14) ([kyledecot](https://github.com/kyledecot))
- Adds Webmock [\#13](https://github.com/kyledecot/app_store_connect/pull/13) ([kyledecot](https://github.com/kyledecot))
## [v0.4.0](https://github.com/kyledecot/app_store_connect/tree/v0.4.0) (2019-06-21)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.3.2...v0.4.0)
**Merged pull requests:**
- Adds limit query param to users [\#10](https://github.com/kyledecot/app_store_connect/pull/10) ([coreycarvalho](https://github.com/coreycarvalho))
- Adds Guard [\#9](https://github.com/kyledecot/app_store_connect/pull/9) ([kyledecot](https://github.com/kyledecot))
## [v0.3.2](https://github.com/kyledecot/app_store_connect/tree/v0.3.2) (2019-06-21)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.3.1...v0.3.2)
**Merged pull requests:**
- Fix error in sending user invitations [\#8](https://github.com/kyledecot/app_store_connect/pull/8) ([atareshawty](https://github.com/atareshawty))
## [v0.3.1](https://github.com/kyledecot/app_store_connect/tree/v0.3.1) (2019-06-21)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.3.0...v0.3.1)
**Merged pull requests:**
- Adds Rubygems Description [\#7](https://github.com/kyledecot/app_store_connect/pull/7) ([kyledecot](https://github.com/kyledecot))
## [v0.3.0](https://github.com/kyledecot/app_store_connect/tree/v0.3.0) (2019-06-21)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.2.0...v0.3.0)
**Merged pull requests:**
- Update client to take private\_key string [\#6](https://github.com/kyledecot/app_store_connect/pull/6) ([atareshawty](https://github.com/atareshawty))
- Adds Build Status to README.md [\#5](https://github.com/kyledecot/app_store_connect/pull/5) ([kyledecot](https://github.com/kyledecot))
- Adds Rubocop [\#4](https://github.com/kyledecot/app_store_connect/pull/4) ([kyledecot](https://github.com/kyledecot))
- Adds BundleIdCreateRequest [\#2](https://github.com/kyledecot/app_store_connect/pull/2) ([kyledecot](https://github.com/kyledecot))
- Adds ability to invite users [\#1](https://github.com/kyledecot/app_store_connect/pull/1) ([coreycarvalho](https://github.com/coreycarvalho))
## [v0.2.0](https://github.com/kyledecot/app_store_connect/tree/v0.2.0) (2019-06-06)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/v0.1.0...v0.2.0)
## [v0.1.0](https://github.com/kyledecot/app_store_connect/tree/v0.1.0) (2019-03-01)
[Full Changelog](https://github.com/kyledecot/app_store_connect/compare/f462ff35c61e0d95bf987b9915df9488c68512c7...v0.1.0)
\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
app_store_connect-0.38.0/.rubocop.yml 0000644 0000041 0000041 00000001414 14453372134 017617 0 ustar www-data www-data # The behavior of RuboCop can be controlled via the .rubocop.yml
# configuration file. It makes it possible to enable/disable
# certain cops (checks) and to alter their behavior if they accept
# any parameters. The file can be placed either in your home
# directory or in some project directory.
#
# RuboCop will start looking for the configuration file in the directory
# where the inspected file is and continue its way up to the root directory.
#
# See https://github.com/rubocop-hq/rubocop/blob/master/manual/configuration.md
#
AllCops:
NewCops: disable
TargetRubyVersion: 2.7
Metrics/MethodLength:
Enabled: false
Metrics/BlockLength:
Enabled: false
Style/Documentation:
Enabled: false
Layout/LineLength:
Enabled: false
Metrics/ClassLength:
Enabled: false
app_store_connect-0.38.0/.gitignore 0000644 0000041 0000041 00000000150 14453372134 017331 0 ustar www-data www-data /.bundle/
/.yardoc
/_yardoc/
/coverage/
/doc/
/pkg/
/spec/reports/
/tmp/
.rspec_status
.DS_Store
*.gem
app_store_connect-0.38.0/CODE_OF_CONDUCT.md 0000644 0000041 0000041 00000006431 14453372134 020150 0 ustar www-data www-data # Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment
include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.
## Scope
This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at kyle.decot@icloud.com. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see
https://www.contributor-covenant.org/faq
app_store_connect-0.38.0/Rakefile 0000644 0000041 0000041 00000000246 14453372134 017014 0 ustar www-data www-data # frozen_string_literal: true
require 'rspec/core/rake_task'
Dir.glob('lib/tasks/*.rake').each { |r| load r }
RSpec::Core::RakeTask.new(:spec)
task default: :spec
app_store_connect-0.38.0/lib/ 0000755 0000041 0000041 00000000000 14453372134 016113 5 ustar www-data www-data app_store_connect-0.38.0/lib/tasks/ 0000755 0000041 0000041 00000000000 14453372134 017240 5 ustar www-data www-data app_store_connect-0.38.0/lib/tasks/changelog.rake 0000644 0000041 0000041 00000000757 14453372134 022044 0 ustar www-data www-data # frozen_string_literal: true
require 'github_changelog_generator'
task :changelog, [:release] do |_task, args|
options = GitHubChangelogGenerator::Parser.default_options
options[:user] = 'kyledecot'
options[:project] = 'app_store_connect'
options[:future_release] = args[:release]
generator = GitHubChangelogGenerator::Generator.new(options)
log = generator.compound_changelog
output_filename = 'CHANGELOG.md'
File.open(output_filename, 'w') { |file| file.write(log) }
end
app_store_connect-0.38.0/lib/tasks/git.rake 0000644 0000041 0000041 00000000561 14453372134 020671 0 ustar www-data www-data # frozen_string_literal: true
namespace :git do
task :add, [:extra] do |_task, args|
`git add #{args[:extra]}`
end
task :commit, [:message] do |_task, args|
`git commit -m "#{args[:message]}"`
end
task :tag, [:tag] do |_task, args|
`git tag #{args[:tag]}`
end
task :push, [:extra] do |_task, args|
`git push #{args[:extra]}`
end
end
app_store_connect-0.38.0/lib/tasks/bundle.rake 0000644 0000041 0000041 00000000146 14453372134 021356 0 ustar www-data www-data # frozen_string_literal: true
namespace :bundle do
task :install do
`bundle install`
end
end
app_store_connect-0.38.0/lib/tasks/push.rake 0000644 0000041 0000041 00000000703 14453372134 021063 0 ustar www-data www-data # frozen_string_literal: true
require 'app_store_connect/version'
version = AppStoreConnect::VERSION
desc "Push app_store_connect-#{version}.gem"
task :push, [:key] do |_task, args|
args.with_defaults(key: 'rubygems')
key = args.key.to_sym
host = {
rubygems: 'https://rubygems.org',
github: 'https://rubygems.pkg.github.com/kyledecot'
}.fetch(key)
sh %(gem push --key=#{key} --host=#{host} app_store_connect-#{version}.gem)
end
app_store_connect-0.38.0/lib/tasks/console.rake 0000644 0000041 0000041 00000000243 14453372134 021545 0 ustar www-data www-data # frozen_string_literal: true
require 'pry'
require 'app_store_connect'
desc 'Start a pry console'
task :console do
Pry.start(AppStoreConnect::Client.new)
end
app_store_connect-0.38.0/lib/tasks/version.rake 0000644 0000041 0000041 00000001220 14453372134 021564 0 ustar www-data www-data # frozen_string_literal: true
require 'app_store_connect/version'
require 'semantic'
namespace :version do
desc 'Print current version'
task :current do
puts AppStoreConnect::VERSION
end
desc 'Increment version'
task :increment do
version = Semantic::Version.new(AppStoreConnect::VERSION)
path = File.expand_path(File.join('..', 'app_store_connect', 'version.rb'), __dir__)
new_version = version.increment!(:minor).to_s
File.open(path, 'r+') do |file|
contents = file.read
contents.gsub!(AppStoreConnect::VERSION, new_version)
file.rewind
file.write(contents)
new_version
end
end
end
app_store_connect-0.38.0/lib/tasks/build.rake 0000644 0000041 0000041 00000000302 14453372134 021176 0 ustar www-data www-data # frozen_string_literal: true
require 'app_store_connect/version'
desc "Build app_store_connect-#{AppStoreConnect::VERSION}.gem"
task :build do
sh %(gem build app_store_connect.gemspec)
end
app_store_connect-0.38.0/lib/tasks/release.rake 0000644 0000041 0000041 00000001011 14453372134 021515 0 ustar www-data www-data # frozen_string_literal: true
require 'app_store_connect/version'
desc 'Release'
task :release do
version_increment, = Rake::Task['version:increment'].invoke
version = version_increment.call
Rake::Task['bundle:install'].invoke
Rake::Task['changelog'].invoke("v#{version}")
Rake::Task['git:add'].invoke('-A')
Rake::Task['git:commit'].invoke("v#{version}")
Rake::Task['git:tag'].invoke("v#{version}")
Rake::Task['git:push'].invoke('origin main')
Rake::Task['git:push'].invoke("origin v#{version}")
end
app_store_connect-0.38.0/lib/app_store_connect/ 0000755 0000041 0000041 00000000000 14453372134 021620 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/app_store_version_phased_release_update_request.rb 0000644 0000041 0000041 00000000420 14453372134 034040 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class AppStoreVersionPhasedReleaseUpdateRequest < Request::Body
data do
id
type 'appStoreVersionPhasedReleases'
attributes do
property :phased_release_state
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/client/ 0000755 0000041 0000041 00000000000 14453372134 023076 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/client/authorization.rb 0000644 0000041 0000041 00000001400 14453372134 026316 0 ustar www-data www-data # frozen_string_literal: true
require 'jwt'
module AppStoreConnect
class Client
class Authorization
OPTIONS = %i[key_id issuer_id private_key].freeze
AUDIENCE = 'appstoreconnect-v1'
ALGORITHM = 'ES256'
attr_reader(*OPTIONS)
def initialize(options)
@key_id = options.fetch(:key_id)
@issuer_id = options.fetch(:issuer_id)
@private_key = OpenSSL::PKey.read(options.fetch(:private_key))
end
def payload
{
exp: Time.now.to_i + 20 * 60,
iss: issuer_id,
aud: AUDIENCE
}
end
def header_fields
{ kid: key_id }
end
def token
JWT.encode(payload, private_key, ALGORITHM, header_fields)
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/client/utils.rb 0000644 0000041 0000041 00000001505 14453372134 024564 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class Client
class Utils
def self.encode(hash)
hash
.deep_transform_keys { |s| s.to_s.camelize(:lower) }
.to_json
end
# Right now this only supports gzip and json responses.
# If you need to support a different type then add it.
def self.decode(string, content_type = 'application/json')
decoded_data = nil
case content_type
when 'application/a-gzip'
sio = StringIO.new string
gz = Zlib::GzipReader.new sio
decoded_data = gz.read
else # Assume JSON
decoded_data = JSON
.parse(string)
.deep_transform_keys { |k| k.underscore.to_sym }
end
decoded_data
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/client/options.rb 0000644 0000041 0000041 00000001775 14453372134 025130 0 ustar www-data www-data # frozen_string_literal: true
require 'delegate'
module AppStoreConnect
class Client
class Options < SimpleDelegator
attr_reader :kwargs, :config, :env
DEFAULTS = {
analytics_enabled: true,
schema: Schema.new(File.join(__dir__, '..', '..', 'config', 'schema.json'))
}.freeze
private_constant :DEFAULTS
ENV_REGEXP = /APP_STORE_CONNECT_(?[A-Z_]+)/.freeze
private_constant :ENV_REGEXP
def initialize(kwargs = {})
@kwargs = kwargs
@config = build_config
@env = build_env
options = DEFAULTS.merge(@env.merge(@config.merge(kwargs)))
super(options)
end
private
def build_config
AppStoreConnect.config.dup
end
def build_env
{}.tap do |hash|
ENV.each do |key, value|
match = key.match(ENV_REGEXP)
next unless match
hash[match[:suffix].downcase.to_sym] = value
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/client/builder.rb 0000644 0000041 0000041 00000005525 14453372134 025060 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class Client
class Builder
TEMPLATE = <<~'SOURCE'
# frozen_string_literal: true
# WARNING ABOUT GENERATED CODE
#
# This file is generated.
#
# WARNING ABOUT GENERATED CODE
module AppStoreConnect
class Client < Base
<%- web_service_endpoints.each do |web_service_endpoint| -%>
#
# @see <%= web_service_endpoint.delete(:see) %>
#
def <%= web_service_endpoint.delete(:alias) -%>(**kwargs)
web_service_endpoint = Schema::WebServiceEndpoint.new(
<%= web_service_endpoint.sort.to_h %>
)
call(web_service_endpoint, **kwargs)
end
<%- end -%>
end
end
SOURCE
private_constant :TEMPLATE
def web_service_endpoints
[
{
"alias": 'create_certificate',
"http_method": 'post',
"url": 'https://api.appstoreconnect.apple.com/v1/certificates',
"http_body_type": 'CertificateCreateRequest',
"see": 'https://developer.apple.com/documentation/appstoreconnectapi'
},
{
"http_method": 'delete',
"url": 'https://api.appstoreconnect.apple.com/v1/users/{id}/relationships/visibleApps',
"alias": 'delete_visible_app',
"see": 'https://developer.apple.com/documentation/appstoreconnectapi'
},
{
"alias": 'create_bundle_id',
"url": 'https://api.appstoreconnect.apple.com/v1/bundleIds',
"http_body_type": 'BundleIdCreateRequest',
"http_method": 'post',
"see": 'https://developer.apple.com/documentation/appstoreconnectapi/register_a_new_bundle_id'
},
{
"alias": 'create_bundle_id_capability',
"url": 'https://api.appstoreconnect.apple.com/v1/bundleIdCapabilities',
"http_body_type": 'BundleIdCapabilityCreateRequest',
"http_method": 'post',
"see": 'https://developer.apple.com/documentation/appstoreconnectapi'
},
{
"alias": 'create_beta_build_localization',
"url": 'https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations',
"http_body_type": 'BetaBuildLocalizationCreateRequest',
"http_method": 'post',
"see": 'https://developer.apple.com/documentation/appstoreconnectapi'
}
].map(&:symbolize_keys)
end
def write
File.write('lib/app_store_connect/client.rb', source)
end
def source
@source ||= begin
require 'erb'
erb = ERB.new(TEMPLATE, trim_mode: '%-')
erb.result(binding)
end
@source
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/client/registry.rb 0000644 0000041 0000041 00000000472 14453372134 025276 0 ustar www-data www-data # frozen_string_literal: true
require 'delegate'
module AppStoreConnect
class Client
class Registry < SimpleDelegator
OPTIONS = %i[schema].freeze
def initialize(options = {})
super(options.fetch(:schema).web_service_endpoints.map { |s| [s.alias, s] }.to_h)
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/profile_create_request.rb 0000644 0000041 0000041 00000000414 14453372134 026677 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class ProfileCreateRequest < Request::Body
data do
type 'profiles'
attributes do
property :name, required: true
property :profile_type, required: true
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/version.rb 0000644 0000041 0000041 00000000117 14453372134 023631 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
VERSION = '0.38.0'
end
app_store_connect-0.38.0/lib/app_store_connect/requests/ 0000755 0000041 0000041 00000000000 14453372134 023473 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v2/ 0000755 0000041 0000041 00000000000 14453372134 024022 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v2/in_app_purchase/ 0000755 0000041 0000041 00000000000 14453372134 027162 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v2/in_app_purchase/create.rb 0000644 0000041 0000041 00000001111 14453372134 030744 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V2
module InAppPurchase
class Create < Request::Body
data do
type 'inAppPurchases'
attributes do
property :name, required: true
property :product_id, required: true
property :in_app_purchase_type, required: true
property :available_in_all_territories
property :family_sharable
property :review_note
end
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v2/in_app_purchase/update.rb 0000644 0000041 0000041 00000000730 14453372134 030771 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V2
module InAppPurchase
class Update < Request::Body
data do
id
type 'inAppPurchases'
attributes do
property :name
property :available_in_all_territories
property :family_sharable
property :review_note
end
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/ 0000755 0000041 0000041 00000000000 14453372134 024021 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_submission/ 0000755 0000041 0000041 00000000000 14453372134 031434 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_submission/create.rb 0000644 0000041 0000041 00000000424 14453372134 033224 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module InAppPurchaseSubmission
class Create < Request::Body
data do
type 'inAppPurchaseSubmissions'
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/beta_app_review_submission/ 0000755 0000041 0000041 00000000000 14453372134 031430 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v1/beta_app_review_submission/create.rb 0000644 0000041 0000041 00000000424 14453372134 033220 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module BetaAppReviewSubmission
class Create < Request::Body
data do
type 'betaAppReviewSubmissions'
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_price_schedule/ 0000755 0000041 0000041 00000000000 14453372134 032217 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_price_schedule/create.rb 0000644 0000041 0000041 00000000432 14453372134 034006 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module InAppPurchasePriceSchedule
class Create < Request::Body
data do
type 'inAppPurchasePriceSchedules'
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_review_screenshot/ 0000755 0000041 0000041 00000000000 14453372134 032777 5 ustar www-data www-data ././@LongLink 0000644 0000000 0000000 00000000147 00000000000 011605 L ustar root root app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_review_screenshot/create.rb app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_review_screenshot/create.0000644 0000041 0000041 00000000667 14453372134 034254 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module InAppPurchaseReviewScreenshot
class Create < Request::Body
data do
type 'inAppPurchaseAppStoreReviewScreenshots'
attributes do
property :file_name, required: true
property :file_size, required: true
end
end
end
end
end
end
end
././@LongLink 0000644 0000000 0000000 00000000147 00000000000 011605 L ustar root root app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_review_screenshot/update.rb app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_review_screenshot/update.0000644 0000041 0000041 00000000660 14453372134 034264 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module InAppPurchaseReviewScreenshot
class Update < Request::Body
data do
id
type 'inAppPurchaseAppStoreReviewScreenshots'
attributes do
property :uploaded
property :source_file_checksum
end
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/build_beta_groups/ 0000755 0000041 0000041 00000000000 14453372134 027512 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v1/build_beta_groups/create.rb 0000644 0000041 0000041 00000000424 14453372134 031302 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module BuildBetaGroups
class Create < Request::Body
data(Array) do
id
type 'betaGroups'
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/build_beta_groups/delete.rb 0000644 0000041 0000041 00000000424 14453372134 031301 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module BuildBetaGroups
class Delete < Request::Body
data(Array) do
id
type 'betaGroups'
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/app_store_version_localization/ 0000755 0000041 0000041 00000000000 14453372134 032332 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v1/app_store_version_localization/create.rb 0000644 0000041 0000041 00000001120 14453372134 034114 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module AppStoreVersionLocalization
class Create < Request::Body
data do
type 'appStoreVersionLocalizations'
attributes do
property :description
property :keywords
property :locale, required: true
property :marketing_url
property :promotional_text
property :support_url
property :whats_new
end
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/app_store_version_localization/update.rb 0000644 0000041 0000041 00000001060 14453372134 034136 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module AppStoreVersionLocalization
class Update < Request::Body
data do
id
type 'appStoreVersionLocalizations'
attributes do
property :description
property :keywords
property :marketing_url
property :promotional_text
property :support_url
property :whats_new
end
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/build_beta_detail/ 0000755 0000041 0000041 00000000000 14453372134 027435 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v1/build_beta_detail/update.rb 0000644 0000041 0000041 00000000552 14453372134 031246 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module BuildBetaDetail
class Update < Request::Body
data do
id
type 'buildBetaDetails'
attributes do
property :auto_notify_enabled
end
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_localization/ 0000755 0000041 0000041 00000000000 14453372134 031731 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_localization/create.rb 0000644 0000041 0000041 00000000703 14453372134 033521 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module InAppPurchaseLocalization
class Create < Request::Body
data do
type 'inAppPurchaseLocalizations'
attributes do
property :description
property :locale, required: true
property :name, required: true
end
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/v1/in_app_purchase_localization/update.rb 0000644 0000041 0000041 00000000623 14453372134 033541 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
module V1
module InAppPurchaseLocalization
class Update < Request::Body
data do
id
type 'inAppPurchaseLocalizations'
attributes do
property :description
property :name
end
end
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/requests/delete_with_body.rb 0000644 0000041 0000041 00000000333 14453372134 027331 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
module Requests
class DeleteWithBody < Net::HTTPRequest
METHOD = 'DELETE'
REQUEST_HAS_BODY = true
RESPONSE_HAS_BODY = true
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/app_store_version_build_linkage_request.rb 0000644 0000041 0000041 00000000266 14453372134 032333 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class AppStoreVersionBuildLinkageRequest < Request::Body
data do
id :build_id
type 'builds'
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/schema/ 0000755 0000041 0000041 00000000000 14453372134 023060 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/schema/web_service_endpoint.rb 0000644 0000041 0000041 00000000665 14453372134 027611 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class Schema
class WebServiceEndpoint
def initialize(options)
@options = options
end
def alias
@options.fetch(:alias).to_sym
end
def http_method
@options[:http_method].to_sym
end
def http_body_type
@options[:http_body_type]
end
def url
@options[:url]
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/schema/type.rb 0000644 0000041 0000041 00000000427 14453372134 024371 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class Schema
class Type
attr_reader :type, :options, :values
def initialize(options)
@type = options[:type]
@values = options[:values]
@options = options
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/schema/object.rb 0000644 0000041 0000041 00000000414 14453372134 024652 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class Schema
class Object
attr_reader :type, :properties
def initialize(options)
@type = options.fetch(:type)
@properties = options.fetch(:properties)
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/app_store_version_release_request_create_request.rb 0000644 0000041 0000041 00000000303 14453372134 034245 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class AppStoreVersionReleaseRequestCreateRequest < Request::Body
data do
type 'appStoreVersionReleaseRequests'
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/certificate_create_request.rb 0000644 0000041 0000041 00000000437 14453372134 027526 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class CertificateCreateRequest < Request::Body
data do
type 'certificates'
attributes do
property :certificate_type, required: true
property :csr_content, required: true
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/schema.rb 0000644 0000041 0000041 00000001241 14453372134 023403 0 ustar www-data www-data # frozen_string_literal: true
require 'app_store_connect/schema/type'
require 'app_store_connect/schema/object'
require 'app_store_connect/schema/web_service_endpoint'
module AppStoreConnect
class Schema
attr_reader :types, :web_service_endpoints, :objects
def initialize(path)
schema = JSON.parse(File.read(path)).deep_symbolize_keys
@types = schema[:types].map do |options|
Type.new(options)
end
@web_service_endpoints = schema[:web_service_endpoints].map do |options|
WebServiceEndpoint.new(options)
end
@objects = schema[:objects].map do |options|
Object.new(options)
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/app_store_version_create_request.rb 0000644 0000041 0000041 00000000605 14453372134 031002 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class AppStoreVersionCreateRequest < Request::Body
data do
type 'appStoreVersions'
attributes do
property :copyright
property :earliest_release_date
property :platform, required: true
property :release_type
property :version_string, required: true
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/client.rb 0000644 0000041 0000041 00000004132 14453372134 023423 0 ustar www-data www-data # frozen_string_literal: true
# WARNING ABOUT GENERATED CODE
#
# This file is generated.
#
# WARNING ABOUT GENERATED CODE
module AppStoreConnect
class Client < Base
#
# @see https://developer.apple.com/documentation/appstoreconnectapi
#
def create_certificate(**kwargs)
web_service_endpoint = Schema::WebServiceEndpoint.new(
{ http_body_type: 'CertificateCreateRequest', http_method: 'post', url: 'https://api.appstoreconnect.apple.com/v1/certificates' }
)
call(web_service_endpoint, **kwargs)
end
#
# @see https://developer.apple.com/documentation/appstoreconnectapi
#
def delete_visible_app(**kwargs)
web_service_endpoint = Schema::WebServiceEndpoint.new(
{ http_method: 'delete', url: 'https://api.appstoreconnect.apple.com/v1/users/{id}/relationships/visibleApps' }
)
call(web_service_endpoint, **kwargs)
end
#
# @see https://developer.apple.com/documentation/appstoreconnectapi/register_a_new_bundle_id
#
def create_bundle_id(**kwargs)
web_service_endpoint = Schema::WebServiceEndpoint.new(
{ http_body_type: 'BundleIdCreateRequest', http_method: 'post', url: 'https://api.appstoreconnect.apple.com/v1/bundleIds' }
)
call(web_service_endpoint, **kwargs)
end
#
# @see https://developer.apple.com/documentation/appstoreconnectapi
#
def create_bundle_id_capability(**kwargs)
web_service_endpoint = Schema::WebServiceEndpoint.new(
{ http_body_type: 'BundleIdCapabilityCreateRequest', http_method: 'post', url: 'https://api.appstoreconnect.apple.com/v1/bundleIdCapabilities' }
)
call(web_service_endpoint, **kwargs)
end
#
# @see https://developer.apple.com/documentation/appstoreconnectapi
#
def create_beta_build_localization(**kwargs)
web_service_endpoint = Schema::WebServiceEndpoint.new(
{ http_body_type: 'BetaBuildLocalizationCreateRequest', http_method: 'post', url: 'https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations' }
)
call(web_service_endpoint, **kwargs)
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/request/ 0000755 0000041 0000041 00000000000 14453372134 023310 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/request/builder/ 0000755 0000041 0000041 00000000000 14453372134 024736 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/request/builder/create.rb 0000644 0000041 0000041 00000003070 14453372134 026526 0 ustar www-data www-data # frozen_string_literal: true
require 'active_support/inflector'
module AppStoreConnect
class Request
module Builder
class Create
TEMPLATE = <<~SOURCE
class <%= name %>CreateRequest < Request::Body
data do
type '<%= type %>'
<%- if properties.any? -%>
attributes do
<%- properties.each do |property| -%>
property :<%= property %>
<%- end -%>
end
<%- end -%>
end
end
SOURCE
private_constant :TEMPLATE
attr_reader :name, :type, :properties
def self.from(schema)
type = schema.properties['data']['properties']['type']['enum'][0]
properties = schema.properties['data']['properties']['attributes']['properties'].keys
new(type, properties)
end
def initialize(type, properties, version = 'v1')
@name = type.singularize.classify
@name = name
@type = type
@properties = properties
@version = version
end
def source
@source ||= begin
require 'erb'
erb = ERB.new(TEMPLATE, trim_mode: '%<>-')
erb.result(binding)
end
@source
end
def alias
"create_#{@type.underscore.singularize}"
end
def url
"https://api.appstoreconnect.apple.com/#{@version}/#{@type}"
end
def http_method
'post'
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/request/body.rb 0000644 0000041 0000041 00000001002 14453372134 024563 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class Request
class Body
def self.inherited(klass)
super
klass.include(Object::Included)
klass.include(Object::Data)
end
def initialize(**kwargs)
@included = self.class::Included.new([*kwargs.delete(:included)])
@data = self.class::Data.new(**kwargs)
end
def to_h
{
data: data.to_data_type,
included: included.to_a
}
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/base.rb 0000644 0000041 0000041 00000004434 14453372134 023064 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class Base
def initialize(**kwargs)
@options = Client::Options.new(kwargs)
@authorization = Client::Authorization.new(@options.slice(*Client::Authorization::OPTIONS))
@registry = Client::Registry.new(@options.slice(*Client::Registry::OPTIONS))
end
def respond_to_missing?(method_name, include_private = false)
web_service_endpoint_aliases.include?(method_name) || super
end
def method_missing(method_name, **kwargs)
super unless web_service_endpoint_aliases.include?(method_name)
web_service_endpoint = web_service_endpoint_by(method_name)
call(web_service_endpoint, **kwargs)
end
# :nocov:
def inspect
"#<#{self.class.name}:#{object_id}>"
end
# :nocov:
def web_service_endpoint_aliases
@registry.keys
end
private
def call(web_service_endpoint, **kwargs)
raise "invalid http method: #{web_service_endpoint.http_method}" unless %i[get delete post patch].include?(web_service_endpoint.http_method)
request = build_request(web_service_endpoint, **kwargs)
response = request.execute
Client::Utils.decode(response.body, response.content_type) if response.body
end
def build_uri(web_service_endpoint, **kwargs)
URI(web_service_endpoint
.url
.gsub(/(\{(\w+)\})/) { kwargs.fetch(Regexp.last_match(2).to_sym) })
end
def web_service_endpoint_by(alias_sym)
@registry[alias_sym]
end
def http_body(web_service_endpoint, **kwargs)
Client::Utils.encode("AppStoreConnect::#{web_service_endpoint.http_body_type}"
.constantize
.new(**kwargs)
.to_h)
end
def build_request(web_service_endpoint, **kwargs)
options = {
kwargs: kwargs,
web_service_endpoint: web_service_endpoint,
http_method: web_service_endpoint.http_method,
uri: build_uri(web_service_endpoint, **kwargs),
headers: headers
}
options[:http_body] = http_body(web_service_endpoint, **kwargs) if web_service_endpoint.http_body_type.present?
Request.new(**options)
end
def headers
{
'Authorization' => "Bearer #{@authorization.token}",
'Content-Type' => 'application/json'
}
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/request.rb 0000644 0000041 0000041 00000003601 14453372134 023635 0 ustar www-data www-data # frozen_string_literal: true
require 'net/http'
module AppStoreConnect
class Request
class UnsupportedHTTPMethod < ArgumentError
def initialize(http_method)
super "Unsupported HTTP Method: #{http_method}"
end
end
def initialize(**options)
@uri = options.fetch(:uri)
@options = options
end
def execute
Net::HTTP.start(uri.host, uri.port, net_http_options) do |http|
http.request(request)
end
end
private
def web_service_endpoint
@options.fetch(:web_service_endpoint)
end
def query
return unless http_method == :get
names = url_parameter_names(web_service_endpoint)
kwargs
.reject { |n| names.include?(n) }
.deep_transform_keys { |k| k.to_s.camelize(:lower) }
.to_query
end
def http_method
@options.fetch(:http_method).to_sym
end
def net_http_options
{ use_ssl: uri.scheme == 'https' }
end
def kwargs
@options.fetch(:kwargs, {})
end
def uri
@options.fetch(:uri).tap do |uri|
uri.query = query if http_method == :get
end
end
def headers
@options.fetch(:headers, {})
end
def body
return if http_method == :get
@options.fetch(:http_body, nil)
end
def url_parameter_names(web_service_endpoint)
web_service_endpoint
.url
.scan(/(\{(\w+)\})/)
.map { |_, n| n.to_sym }
end
def net_http_request_class
case http_method
when :get then Net::HTTP::Get
when :post then Net::HTTP::Post
when :delete then Requests::DeleteWithBody
when :patch then Net::HTTP::Patch
else
raise UnsupportedHTTPMethod, http_method
end
end
def request
net_http_request_class
.new(uri, headers)
.tap { |r| r.body = body if r.request_body_permitted? }
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/device_create_request.rb 0000644 0000041 0000041 00000000455 14453372134 026503 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class DeviceCreateRequest < Request::Body
data do
type 'devices'
attributes do
property :name, required: true
property :platform, required: true
property :udid, required: true
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/review_submission_create_request.rb 0000644 0000041 0000041 00000000363 14453372134 031016 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class ReviewSubmissionCreateRequest < Request::Body
data do
type 'reviewSubmissions'
attributes do
property :platform, required: true
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/app_store_version_update_request.rb 0000644 0000041 0000041 00000000562 14453372134 031023 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class AppStoreVersionUpdateRequest < Request::Body
data do
id
type 'appStoreVersions'
attributes do
property :copyright
property :earliest_release_date
property :release_type
property :version_string
property :downloadable
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/beta_build_localization_modify_request.rb 0000644 0000041 0000041 00000000367 14453372134 032134 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class BetaBuildLocalizationModifyRequest < Request::Body
data do
id
type 'betaBuildLocalizations'
attributes do
property :whats_new
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/review_submission_item_create_request.rb 0000644 0000041 0000041 00000000261 14453372134 032031 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class ReviewSubmissionItemCreateRequest < Request::Body
data do
type 'reviewSubmissionItems'
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/specification.rb 0000644 0000041 0000041 00000002351 14453372134 024766 0 ustar www-data www-data # frozen_string_literal: true
require 'net/http'
require 'app_store_connect/specification/component/schema'
module AppStoreConnect
class Specification
def initialize(hash)
@hash = hash
end
def find(version, type)
@hash['paths'].find do |path, _declaration|
path == "/#{version}/#{type}"
end&.[](-1)
end
def component_schema(ref)
Component::Schema.new(traverse(ref))
end
def traverse(ref)
_, *parts = ref.split('/')
@hash.dig(*parts)
end
def create_request_schema_ref(version, type)
declarations = find(version, type)
declarations['post']['requestBody']['content']['application/json']['schema']['$ref']
end
def self.read(path)
require 'zip'
Zip::File.open(path) do |zip_file|
entry, = zip_file.entries
content = entry.get_input_stream(&:read)
JSON.parse(content)
end
end
def self.download(path)
uri = URI('https://developer.apple.com/sample-code/app-store-connect/app-store-connect-openapi-specification.zip')
Net::HTTP.start(uri.host, uri.port, { use_ssl: true }) do |http|
response = http.get(uri.path)
File.write(path, response.body)
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/specification/ 0000755 0000041 0000041 00000000000 14453372134 024440 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/specification/component/ 0000755 0000041 0000041 00000000000 14453372134 026442 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/specification/component/schema.rb 0000644 0000041 0000041 00000000662 14453372134 030233 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class Specification
module Component
class Schema
def initialize(declaration)
@declaration = declaration
end
def properties
@declaration['properties']
end
def required
@declaration['required']
end
def title
@declaration['title']
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/user_invitation_create_request.rb 0000644 0000041 0000041 00000000667 14453372134 030473 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class UserInvitationCreateRequest < Request::Body
data do
type 'userInvitations'
attributes do
property :first_name, required: true
property :last_name, required: true
property :email, required: true
property :roles, required: true
property :all_apps_visible
property :provisioning_allowed
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/beta_build_localization_create_request.rb 0000644 0000041 0000041 00000000427 14453372134 032105 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class BetaBuildLocalizationCreateRequest < Request::Body
data do
type 'betaBuildLocalizations'
attributes do
property :locale, required: true
property :whats_new
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/review_submission_update_request.rb 0000644 0000041 0000041 00000000410 14453372134 031026 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class ReviewSubmissionUpdateRequest < Request::Body
data do
id
type 'reviewSubmissions'
attributes do
property :canceled
property :submitted
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/build_update_request.rb 0000644 0000041 0000041 00000000402 14453372134 026352 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class BuildUpdateRequest < Request::Body
data do
id
type 'builds'
attributes do
property :expired
property :uses_non_exempt_encryption
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/bundle_id_create_request.rb 0000644 0000041 0000041 00000000521 14453372134 027163 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class BundleIdCreateRequest < Request::Body
data do
type 'bundleIds'
attributes do
property :identifier, required: true
property :name, required: true
property :platform, required: true
property :seed_id
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/bundle_id_capability_create_request.rb 0000644 0000041 0000041 00000000377 14453372134 031375 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class BundleIdCapabilityCreateRequest < Request::Body
data do
type 'bundleIdCapabilities'
attributes do
property :capability_type, required: true
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/object/ 0000755 0000041 0000041 00000000000 14453372134 023066 5 ustar www-data www-data app_store_connect-0.38.0/lib/app_store_connect/object/properties.rb 0000644 0000041 0000041 00000000626 14453372134 025613 0 ustar www-data www-data # frozen_string_literal: true
require 'active_support/concern'
module AppStoreConnect
module Object
module Properties
extend ActiveSupport::Concern
class_methods do
def properties
@properties ||= {}
end
def property(name, options = {})
properties[name] = options
attr_accessor name.to_sym
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/object/included.rb 0000644 0000041 0000041 00000000773 14453372134 025211 0 ustar www-data www-data # frozen_string_literal: true
require 'active_support/concern'
module AppStoreConnect
module Object
module Included
extend ActiveSupport::Concern
included do
attr_reader :included
klass = Class.new do |i|
i.send(:define_method, :initialize) do |objects|
instance_variable_set('@objects', [*objects])
end
def to_a
@objects
end
end
const_set('Included', klass)
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/object/id.rb 0000644 0000041 0000041 00000001033 14453372134 024004 0 ustar www-data www-data # frozen_string_literal: true
require 'active_support/concern'
module AppStoreConnect
module Object
module Id
extend ActiveSupport::Concern
class_methods do
def id(arg_name = :id)
@include_id_in_body = true
@id_arg_name = arg_name
end
end
included do
def id?
self.class.instance_variable_get('@include_id_in_body')
end
def id_arg_name
self.class.instance_variable_get('@id_arg_name')
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/object/attributes.rb 0000644 0000041 0000041 00000002150 14453372134 025577 0 ustar www-data www-data # frozen_string_literal: true
require 'active_support/concern'
module AppStoreConnect
module Object
module Attributes
extend ActiveSupport::Concern
class_methods do
def attributes(&block)
self::Attributes.class_eval(&block)
end
end
included do
attr_reader :attributes
klass = Class.new do |attributes|
include Object::Properties
attributes.send(:define_method, :initialize) do |**kwargs|
self.class.properties.each do |name, options|
raise ArgumentError, "#{name} required" if options[:required] && !kwargs[name]
value = kwargs.fetch(name, options[:default])
instance_variable_set("@#{name}", value)
end
end
def to_h
{}.tap do |hash|
self.class.properties.each_key do |name|
value = instance_variable_get("@#{name}")
hash[name] = value unless value.nil?
end
end
end
end
const_set('Attributes', klass)
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/object/data_type.rb 0000644 0000041 0000041 00000000621 14453372134 025364 0 ustar www-data www-data # frozen_string_literal: true
require 'active_support/concern'
module AppStoreConnect
module Object
module DataType
extend ActiveSupport::Concern
class_methods do
def data_type=(type)
@data_type = type
end
end
included do
def data_type
self.class.instance_variable_get('@data_type')
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/object/data.rb 0000644 0000041 0000041 00000002775 14453372134 024337 0 ustar www-data www-data # frozen_string_literal: true
require 'active_support/concern'
module AppStoreConnect
module Object
module Data
extend ActiveSupport::Concern
included do
attr_reader :data
klass = Class.new do |data|
include Object::DataType
include Object::Attributes
include Object::Type
include Object::Id
data.send(:define_method, :initialize) do |**kwargs|
instance_variable_set('@relationships', kwargs.delete(:relationships).to_h)
instance_variable_set('@data', Array(kwargs.delete(:data)))
instance_variable_set('@attributes', data::Attributes.new(**kwargs))
instance_variable_set('@id', kwargs[id_arg_name])
end
def to_h
props = {
relationships: @relationships,
attributes: attributes.to_h,
type: type
}
props[:id] = @id if id?
props.reject { |_k, v| v.blank? }
end
def to_a
@data.each do |item|
item[:type] = type
end
@data
end
def to_data_type
if data_type == Array
to_a
else
to_h
end
end
end
const_set('Data', klass)
end
class_methods do
def data(type = Hash, &block)
self::Data.data_type = type
self::Data.class_eval(&block)
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/object/type.rb 0000644 0000041 0000041 00000000570 14453372134 024376 0 ustar www-data www-data # frozen_string_literal: true
require 'active_support/concern'
module AppStoreConnect
module Object
module Type
extend ActiveSupport::Concern
class_methods do
def type(type)
@type = type
end
end
included do
def type
self.class.instance_variable_get('@type')
end
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect/app_store_version_phased_release_create_request.rb 0000644 0000041 0000041 00000000407 14453372134 034026 0 ustar www-data www-data # frozen_string_literal: true
module AppStoreConnect
class AppStoreVersionPhasedReleaseCreateRequest < Request::Body
data do
type 'appStoreVersionPhasedReleases'
attributes do
property :phased_release_state
end
end
end
end
app_store_connect-0.38.0/lib/app_store_connect.rb 0000644 0000041 0000041 00000000662 14453372134 022151 0 ustar www-data www-data # frozen_string_literal: true
require 'zeitwerk'
require 'active_support/all'
APP_STORE_CONNECT_LOADER = Zeitwerk::Loader.for_gem
APP_STORE_CONNECT_LOADER.setup
module AppStoreConnect
@config = {}
class << self
attr_accessor :config
def rel(id, type, array: false)
if array
{ data: [{ id: id, type: type }] }.freeze
else
{ data: { id: id, type: type } }.freeze
end
end
end
end
app_store_connect-0.38.0/lib/config/ 0000755 0000041 0000041 00000000000 14453372134 017360 5 ustar www-data www-data app_store_connect-0.38.0/lib/config/schema.json 0000644 0000041 0000041 00000102233 14453372134 021514 0 ustar www-data www-data {
"objects": [],
"web_service_endpoints": [
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/users/{id}",
"alias": "delete_user"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/bundleIdCapabilities/{id}",
"alias": "delete_bundle_id_capability"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/userInvitations/{id}",
"alias": "delete_user_invitation"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/certificates/{id}",
"alias": "delete_certificate"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/bundleIds/{id}",
"alias": "delete_bundle_id"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/profiles/{id}",
"alias": "delete_profile"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}",
"alias": "delete_beta_tester"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/relationships/betaGroups",
"alias": "delete_beta_tester_beta"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/relationships/builds",
"alias": "delete_beta_tester_builds"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/relationships/apps",
"alias": "delete_beta_tester_apps"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}",
"alias": "delete_beta_group"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}/relationships/betaTesters",
"alias": "delete_beta_group_beta_testers"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}/relationships/builds",
"alias": "delete_beta_group_builds"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/relationships/betaTesters",
"alias": "delete_app_beta_testers"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppLocalizations/{id}",
"alias": "delete_beta_app_localization"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/betaGroups",
"http_body_type": "Requests::V1::BuildBetaGroups::Delete",
"alias": "delete_build_beta_groups"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/individualTesters",
"alias": "delete_build_individual_testers"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations/{id}",
"alias": "delete_beta_build_localizations"
},
{
"alias": "create_profile",
"http_method": "post",
"url": "https://api.appstoreconnect.apple.com/v1/profiles",
"http_body_type": "ProfileCreateRequest"
},
{
"alias": "create_device",
"http_method": "post",
"url": "https://api.appstoreconnect.apple.com/v1/devices",
"http_body_type": "DeviceCreateRequest"
},
{
"alias": "create_user_invitation",
"url": "https://api.appstoreconnect.apple.com/v1/userInvitations",
"http_body_type": "UserInvitationCreateRequest",
"http_method": "post"
},
{
"http_method": "post",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/betaGroups",
"http_body_type": "Requests::V1::BuildBetaGroups::Create",
"alias": "add_build_beta_groups"
},
{
"alias": "create_beta_build_localization",
"url": "https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations",
"http_body_type": "BetaBuildLocalizationCreateRequest",
"http_method": "post"
},
{
"alias": "modify_beta_build_localization",
"url": "https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations/{id}",
"http_body_type": "BetaBuildLocalizationModifyRequest",
"http_method": "patch"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/users",
"alias": "users"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/users/{id}",
"alias": "user"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/users/{id}/visibleApps",
"alias": "user_visible_apps"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/users/{id}/relationships/visibleApps",
"alias": "user_relationships_visible_apps"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/userInvitations/{id}",
"alias": "user_invitation"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/userInvitations",
"alias": "user_invitations"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/userInvitations/{id}/visibleApps",
"alias": "user_invitation_visible_apps"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/userInvitations/{id}/relationships/visibleApps",
"alias": "user_invitation_relationships_visible_apps"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/bundleIds/{id}",
"alias": "bundle_id"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/bundleIds",
"alias": "bundle_ids"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/bundleIds/{id}/relationships/profiles",
"alias": "bundle_id_relationships_profiles"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/bundleIds/{id}/bundleIdCapabilities",
"alias": "bundle_id_bundle_id_capabilities"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/bundleIds/{id}/profiles",
"alias": "bundle_id_profiles"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/bundleIds/{id}/relationships/bundleIdCapabilities",
"alias": "bundle_id_relationships_bundle_id_capabilities"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/certificates",
"alias": "certificates"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/certificates/{id}",
"alias": "certificate"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/devices",
"alias": "devices"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/devices/{id}",
"alias": "device"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/financeReports",
"alias": "financial_reports"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/salesReports",
"alias": "sales_reports"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/profiles",
"alias": "profiles"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/profiles/{id}",
"alias": "profile"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/profiles/{id}/bundleId",
"alias": "profile_bundle_id"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/profiles/{id}/relationships/bundleId",
"alias": "profile_relationships_bundle_id"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/profiles/{id}/relationships/certificates",
"alias": "profile_relationships_certificates"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/profiles/{id}/devices",
"alias": "profile_devices"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/profiles/{id}/certificates",
"alias": "profile_certificates"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/profiles/{id}/relationships/devices",
"alias": "profile_relationships_devices"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters",
"alias": "beta_testers"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}",
"alias": "beta_tester"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/apps",
"alias": "beta_tester_apps"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/builds",
"alias": "beta_tester_builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/relationships/builds",
"alias": "beta_tester_relationships_builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/relationships/apps",
"alias": "beta_tester_relationships_apps"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/betaGroups",
"alias": "beta_tester_beta_groups"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaTesters/{id}/relationships/betaGroups",
"alias": "beta_tester_relationships_beta_groups"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps",
"alias": "apps"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}",
"alias": "app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/appPricePoints",
"alias": "app_price_points"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v2/inAppPurchases/{id}",
"alias": "in_app_purchase"
},
{
"alias": "create_in_app_purchase",
"http_body_type": "Requests::V2::InAppPurchase::Create",
"http_method": "post",
"url": "https://api.appstoreconnect.apple.com/v2/inAppPurchases"
},
{
"alias": "update_in_app_purchase",
"http_body_type": "Requests::V2::InAppPurchase::Update",
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v2/inAppPurchases/{id}"
},
{
"alias": "delete_in_app_purchase",
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v2/inAppPurchases/{id}"
},
{
"alias": "create_in_app_purchase_submission",
"http_body_type": "Requests::V1::InAppPurchaseSubmission::Create",
"http_method": "post",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchaseSubmissions"
},
{
"alias": "review_screenshot_for_in_app_purchase",
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchaseAppStoreReviewScreenshots/{id}"
},
{
"alias": "in_app_purchase_review_screenshot",
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v2/inAppPurchases/{id}/appStoreReviewScreenshot"
},
{
"alias": "create_in_app_purchase_review_screenshot",
"http_body_type": "Requests::V1::InAppPurchaseReviewScreenshot::Create",
"http_method": "post",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchaseAppStoreReviewScreenshots"
},
{
"alias": "update_in_app_purchase_app_store_review_screenshot",
"http_body_type": "Requests::V1::InAppPurchaseReviewScreenshot::Update",
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchaseAppStoreReviewScreenshots/{id}"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/inAppPurchasesV2",
"alias": "app_in_app_purchases"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v2/inAppPurchases/{id}/pricePoints",
"alias": "in_app_purchase_price_points"
},
{
"alias": "create_in_app_purchase_price_schedule",
"http_body_type": "Requests::V1::InAppPurchasePriceSchedule::Create",
"http_method": "post",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchasePriceSchedules"
},
{
"alias": "in_app_purchase_price_schedule",
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchasePriceSchedules/{id}"
},
{
"alias": "in_app_purchase_current_price_point",
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchasePriceSchedules/{id}/manualPrices"
},
{
"alias": "in_app_purchase_localizations",
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v2/inAppPurchases/{id}/inAppPurchaseLocalizations"
},
{
"alias": "in_app_purchase_localization",
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchaseLocalizations/{id}"
},
{
"alias": "create_in_app_purchase_localization",
"http_body_type": "Requests::V1::InAppPurchaseLocalization::Create",
"http_method": "post",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchaseLocalizations"
},
{
"alias": "update_in_app_purchase_localization",
"http_body_type": "Requests::V1::InAppPurchaseLocalization::Update",
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchaseLocalizations/{id}"
},
{
"alias": "delete_in_app_purchase_localization",
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/inAppPurchaseLocalizations/{id}"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/betaGroups",
"alias": "app_beta_groups"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/relationships/betaGroups",
"alias": "app_relationships_beta_groups"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/builds",
"alias": "app_builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/relationships/builds",
"alias": "app_relationships_builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/preReleaseVersions",
"alias": "app_pre_release_versions"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/relationships/preReleaseVersions",
"alias": "app_relationships_pre_release_versions"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/betaAppReviewDetail",
"alias": "app_beta_app_review_detail"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/betaLicenseAgreement",
"alias": "app_beta_license_agreement"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/betaAppLocalizations",
"alias": "app_beta_app_localizations"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/relationships/betaAppReviewDetail",
"alias": "app_relationships_beta_app_review_detail"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/relationships/betaLicenseAgreement",
"alias": "app_relationships_beta_license_agreement"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/relationships/betaAppLocalizations",
"alias": "app_relationships_beta_app_localizations"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/preReleaseVersions",
"alias": "pre_release_versions"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/preReleaseVersions/{id}",
"alias": "pre_release_version"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/preReleaseVersions/{id}/relationships/app",
"alias": "pre_release_version_relationships_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/preReleaseVersions/{id}/builds",
"alias": "pre_release_version_builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/preReleaseVersions/{id}/app",
"alias": "pre_release_version_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/preReleaseVersions/{id}/relationships/builds",
"alias": "pre_release_version_relationships_builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups",
"alias": "beta_groups"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}",
"alias": "beta_group"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}/app",
"alias": "beta_group_apps"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}/relationships/app",
"alias": "beta_group_relationships_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}/betaTesters",
"alias": "beta_group_beta_testers"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}/relationships/builds",
"alias": "beta_group_relationships_builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}/relationships/betaTesters",
"alias": "beta_group_relationships_beta_testers"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds",
"alias": "builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}",
"alias": "build"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/app",
"alias": "build_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaGroups/{id}/builds",
"alias": "beta_group_builds"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/preReleaseVersion",
"alias": "build_pre_release_version"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/preReleaseVersion",
"alias": "build_relationships_pre_release_version"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/app",
"alias": "build_relationships_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/individualTesters",
"alias": "build_individual_testers"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/betaAppReviewSubmission",
"alias": "build_relationships_beta_app_review_submission"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/individualTesters",
"alias": "build_relationships_individual_testers"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/buildBetaDetail",
"alias": "build_build_beta_detail"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/buildBetaDetail",
"alias": "build_relationships_build_beta_detail"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/betaAppReviewSubmission",
"alias": "build_beta_app_review_submission"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/appEncryptionDeclaration",
"alias": "build_relationships_app_encryption_declaration"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/betaBuildLocalizations",
"alias": "build_beta_build_localizations"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/relationships/betaBuildLocalizations",
"alias": "build_relationships_beta_build_localizations"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}/appEncryptionDeclaration",
"alias": "build_app_encryption_declaration"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/appEncryptionDeclarations",
"alias": "app_encryption_declarations"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/appEncryptionDeclarations/{id}",
"alias": "app_encryption_declaration"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/appEncryptionDeclarations/{id}/app",
"alias": "app_encryption_declaration_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/appEncryptionDeclarations/{id}/relationships/app",
"alias": "app_encryption_declaration_relationships_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/buildBetaDetails",
"alias": "build_beta_details"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/buildBetaDetails/{id}",
"alias": "build_beta_detail"
},
{
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/buildBetaDetails/{id}",
"http_body_type": "Requests::V1::BuildBetaDetail::Update",
"alias": "update_build_beta_detail"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/buildBetaDetails/{id}/build",
"alias": "build_beta_detail_build"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/buildBetaDetails/{id}/relationships/build",
"alias": "build_beta_detail_relationships_build"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppLocalizations",
"alias": "beta_app_localizations"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppLocalizations/{id}/app",
"alias": "beta_app_localization_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppLocalizations/{id}",
"alias": "beta_app_localization"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppLocalizations/{id}/relationships/app",
"alias": "beta_app_localization_relationships_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaLicenseAgreements",
"alias": "beta_license_agreements"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaLicenseAgreements/{id}/relationships/app",
"alias": "beta_license_agreement_relationships_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaLicenseAgreements/{id}/app",
"alias": "beta_license_agreement_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaLicenseAgreements/{id}",
"alias": "beta_license_agreement"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations/{id}/relationships/build",
"alias": "beta_build_localization_relationships_build"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations/{id}/build",
"alias": "beta_build_localization_build"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations",
"alias": "beta_build_localizations"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaBuildLocalizations/{id}",
"alias": "beta_build_localization"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewDetails",
"alias": "beta_app_review_details"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewDetails/{id}",
"alias": "beta_app_review_detail"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewDetails/{id}/relationships/app",
"alias": "beta_app_review_detail_relationships_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewDetails/{id}/app",
"alias": "beta_app_review_detail_app"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewSubmissions",
"alias": "beta_app_review_submissions"
},
{
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewSubmissions",
"http_body_type": "Requests::V1::BetaAppReviewSubmission::Create",
"http_method": "post",
"alias": "create_beta_app_review_submission"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewSubmissions/{id}",
"alias": "beta_app_review_submission"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewSubmissions/{id}/relationships/build",
"alias": "beta_app_review_submission_relationships_build"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/betaAppReviewSubmissions/{id}/build",
"alias": "beta_app_review_submission_build"
},
{
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/builds/{id}",
"http_body_type": "BuildUpdateRequest",
"alias": "update_build"
},
{
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersions",
"http_body_type": "AppStoreVersionCreateRequest",
"http_method": "post",
"alias": "create_app_store_version"
},
{
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersions/{id}",
"http_body_type": "AppStoreVersionUpdateRequest",
"alias": "update_app_store_version"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersions/{id}",
"alias": "delete_app_store_version"
},
{
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersions/{id}/relationships/build",
"http_body_type": "AppStoreVersionBuildLinkageRequest",
"alias": "update_app_store_version_build"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/apps/{id}/appStoreVersions",
"alias": "apps_app_store_versions"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersions/{id}",
"alias": "app_store_version"
},
{
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersionLocalizations",
"http_body_type": "Requests::V1::AppStoreVersionLocalization::Create",
"http_method": "post",
"alias": "create_app_store_version_localization"
},
{
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersionLocalizations/{id}",
"http_body_type": "Requests::V1::AppStoreVersionLocalization::Update",
"alias": "update_app_store_version_localization"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersionLocalizations/{id}",
"alias": "delete_app_store_version_localization"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersionLocalizations/{id}",
"alias": "app_store_version_localization"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersions/{id}/appStoreVersionLocalizations",
"alias": "app_store_version_app_store_version_localizations"
},
{
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersionReleaseRequests",
"http_body_type": "AppStoreVersionReleaseRequestCreateRequest",
"http_method": "post",
"alias": "create_app_store_version_release_request"
},
{
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersionPhasedReleases",
"http_body_type": "AppStoreVersionPhasedReleaseCreateRequest",
"http_method": "post",
"alias": "create_app_store_version_phased_release"
},
{
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersionPhasedReleases/{id}",
"http_body_type": "AppStoreVersionPhasedReleaseUpdateRequest",
"alias": "update_app_store_version_phased_release"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/appStoreVersionPhasedReleases/{id}",
"alias": "delete_app_store_version_phased_release"
},
{
"url": "https://api.appstoreconnect.apple.com/v1/reviewSubmissions",
"http_body_type": "ReviewSubmissionCreateRequest",
"http_method": "post",
"alias": "create_review_submission"
},
{
"http_method": "patch",
"url": "https://api.appstoreconnect.apple.com/v1/reviewSubmissions/{id}",
"http_body_type": "ReviewSubmissionUpdateRequest",
"alias": "update_review_submission"
},
{
"http_method": "delete",
"url": "https://api.appstoreconnect.apple.com/v1/reviewSubmissions/{id}",
"alias": "delete_review_submission"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/reviewSubmissions",
"alias": "review_submissions"
},
{
"http_method": "get",
"url": "https://api.appstoreconnect.apple.com/v1/reviewSubmissions/{id}",
"alias": "review_submission"
},
{
"url": "https://api.appstoreconnect.apple.com/v1/reviewSubmissionItems",
"http_body_type": "ReviewSubmissionItemCreateRequest",
"http_method": "post",
"alias": "create_review_submission_item"
},
{
"url": "https://api.appstoreconnect.apple.com/v1/reviewSubmissions/{id}/items",
"http_method": "get",
"alias": "review_submissions_items"
}
],
"types": [
{
"type": "BundleIdPlatform",
"values": [
"IOS",
"MAC_OS"
]
},
{
"type": "CapabilityType",
"values": [
"ICLOUD",
"IN_APP_PURCHASE",
"GAME_CENTER",
"PUSH_NOTIFICATIONS",
"WALLET",
"INTER_APP_AUDIO",
"MAPS",
"ASSOCIATED_DOMAINS",
"PERSONAL_VPN",
"APP_GROUPS",
"HEALTHKIT",
"HOMEKIT",
"WIRELESS_ACCESSORY_CONFIGURATION",
"APPLE_PAY",
"DATA_PROTECTION",
"SIRIKIT",
"NETWORK_EXTENSIONS",
"MULTIPATH",
"HOT_SPOT",
"NFC_TAG_READING",
"CLASSKIT",
"AUTOFILL_CREDENTIAL_PROVIDER",
"ACCESS_WIFI_INFORMATION"
]
},
{
"type": "CertificateType",
"values": [
"OS_DEVELOPMENT",
"IOS_DISTRIBUTION",
"MAC_APP_DISTRIBUTION",
"MAC_INSTALLER_DISTRIBUTION",
"MAC_APP_DEVELOPMENT",
"DEVELOPER_ID_KEXT",
"DEVELOPER_ID_APPLICATION"
]
},
{
"type": "InAppPurchaseType",
"values": [
"CONSUMABLE",
"NON_CONSUMABLE",
"NON_RENEWING_SUBSCRIPTION"
]
},
{
"type": "Platform",
"values": [
"IOS",
"MAC_OS",
"TV_OS"
]
},
{
"type": "PhasedReleaseState",
"values": [
"INACTIVE",
"ACTIVE",
"PAUSED",
"COMPLETE"
]
},
{
"type": "UserRole",
"values": [
"ADMIN",
"FINANCE",
"TECHNICAL",
"SALES",
"MARKETING",
"DEVELOPER",
"ACCOUNT_HOLDER",
"READ_ONLY",
"APP_MANAGER",
"ACCESS_TO_REPORTS",
"CUSTOMER_REPORTS"
]
}
]
}
app_store_connect-0.38.0/Guardfile 0000644 0000041 0000041 00000000527 14453372134 017176 0 ustar www-data www-data # frozen_string_literal: true
guard :rspec, cmd: 'bundle exec rspec' do
require 'guard/rspec/dsl'
dsl = Guard::RSpec::Dsl.new(self)
rspec = dsl.rspec
watch(rspec.spec_helper) { rspec.spec_dir }
watch(rspec.spec_support) { rspec.spec_dir }
watch(rspec.spec_files)
ruby = dsl.ruby
dsl.watch_spec_files_for(ruby.lib_files)
end
app_store_connect-0.38.0/Gemfile 0000644 0000041 0000041 00000000106 14453372134 016635 0 ustar www-data www-data # frozen_string_literal: true
source 'https://rubygems.org'
gemspec
app_store_connect-0.38.0/assets/ 0000755 0000041 0000041 00000000000 14453372134 016647 5 ustar www-data www-data app_store_connect-0.38.0/assets/banner.png 0000644 0000041 0000041 00000032662 14453372134 020633 0 ustar www-data www-data PNG
IHDR =2 sRGB eXIfMM * b j( 1 r2 i H H Pixelmator Pro 3.2.3 2019:08:08 06:08:67 24 pHYs iTXtXML:com.adobe.xmp
1
180
180
Pixelmator Pro 3.2.3
2019-08-08T06:08:67
2023-02-08T18:56:06+08:00
2
0
1
720000/10000
720000/10000
@Tl /IDATx}\řn%PB&g2&u [}ֻ6k/^{v>1s` ґH(Qir}tL鞩:}V}UUWk,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|mk8f=Zl^{mqpfyyhT*:*UW|YCtFGᦦ &%5-+<\ឋk.h5CSm x0aݍ1l߾u+L z۶mf͚"_zO ͧ]`LLrN-7C`L),, ycFNkk뤒@+@iF^yӁh ߉kE(zjO[Jk7 ':nrQOZ):2#GAYQQp7"y57 aOaAjpe yPx rm+wXi߾}SN=@ $-"}l\@g _?}iiF(n
+++}Os[gG)*(($ܱ5c`zpZIB2h4iiibFI.4! n }iӦ57@3ZpQ-Y3F)b3@cVSS3{҅(`Ђy4}]:03NɎI; ?+E
utt,Fm*AfGf3"Ҍ|czsh5 Ɠ6y>kh5Ȗ;]GKИY |#eg4FWW8~2J'L
Z
k&4o4b
yJ]ȸЋ
Qn hˋO`ݮ<^?Ff|AnU`L?]xSīͥ9 IyGu[LR vve&;e@S@guo
М;[c$+HmmmJm!DJYJ!nJP>8+Մa:7k-)0W*<