Sha256: db82fce9e013525a854f04b541ef69aeca83d08eebcff0fda3c0f9907bb6e163
Contents?: true
Size: 1.84 KB
Versions: 2
Compression:
Stored size: 1.84 KB
Contents
require 'connector_kit/httpclient.rb' require 'connector_kit/token_generator' require 'connector_kit/version' require 'connector_kit/mappers/app_list_response_mapper' require 'connector_kit/mappers/app_response_mapper' require 'connector_kit/mappers/user_list_response_mapper' require 'connector_kit/mappers/build_list_response_mapper' require 'connector_kit/mappers/build_details_response_mapper' require 'connector_kit/mappers/app_version_mapper' module ConnectorKit # Class used for communicating with the App Store Connect API class Client def initialize(issuer_id, key_id, private_key) token_generator = TokenGenerator.new( issuer_id, key_id, private_key ) @httpclient = HTTPClient.new('https://api.appstoreconnect.apple.com/v1') @httpclient.class.headers( 'Authorization' => "Bearer #{token_generator.generate_token}" ) end def apps(bundle_id) @httpclient.get "/apps?filter[bundleId]=#{bundle_id}", AppListResponseMapper.new end def users @httpclient.get '/users', UserListResponseMapper.new end def app_builds(app) @httpclient.get "/apps/#{app.id}/builds", BuildListResponseMapper.new end def app(id) @httpclient.get "/apps/#{id}", AppResponseMapper.new end def prepare_submission_versions(id, platform) release_version(id, "PREPARE_FOR_SUBMISSION", platform) end def ready_sale_versions(id, platform) release_version(id, "READY_FOR_SALE", platform) end def release_version(id, state, platform) @httpclient.get "/apps/#{id}/appStoreVersions?filter[appStoreState]=#{state}&filter[platform]=#{platform}", VersionResponseMapper.new end def build_beta_details(build) @httpclient.get( "/buildBetaDetails/#{build.id}", BuildDetailsResponseMapper.new ) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
appstore_kit_fork-0.0.5 | lib/connector_kit.rb |
appstore_kit_fork-0.0.4 | lib/connector_kit.rb |