diff --git a/appstoreconnect/api.py b/appstoreconnect/api.py index d0416c5..a23f256 100644 --- a/appstoreconnect/api.py +++ b/appstoreconnect/api.py @@ -496,6 +496,13 @@ def create_beta_app_localization(self, app: App, locale: str, description: str = """ return self._create_resource(BetaAppLocalization, locals()) + def modify_a_beta_app_localization(self, betaAppLocalization: BetaAppLocalization, description: str = None, feedbackEmail: str = None, marketingUrl: str = None, privacyPolicyUrl: str = None, tvOsPrivacyPolicy: str = None): + """ + :reference: https://developer.apple.com/documentation/appstoreconnectapi/modify_a_beta_app_localization + :return: an BetaAppLocalization resource + """ + return self._modify_resource(betaAppLocalization, locals()) + def list_app_encryption_declarations(self, filters=None): """ :reference: https://developer.apple.com/documentation/appstoreconnectapi/list_app_encryption_declarations @@ -692,6 +699,14 @@ def read_beta_app_review_submission_information(self, beta_app_id: str): """ return self._get_resource(BetaAppReviewSubmission, beta_app_id) + def modify_a_beta_app_review_detail(self, beta_app_review_detail: BetaAppReviewDetail, demoAccountName: str, demoAccountPassword: str, demoAccountRequired: bool, contactFirstName: str, contactLastName: str, contactEmail: str, contactPhone: str, notes: str = None) -> AppStoreReviewDetail: + """ + :reference: https://developer.apple.com/documentation/appstoreconnectapi/modify_a_beta_app_review_detail + :return: an BetaAppReviewDetail resource + """ + attributes = {'demoAccountName':demoAccountName, 'demoAccountPassword':demoAccountPassword, 'demoAccountRequired':demoAccountRequired, 'contactFirstName':contactFirstName, 'contactLastName':contactLastName, 'contactEmail': contactEmail, 'contactPhone':contactPhone, 'notes': notes} + return self._modify_resource(beta_app_review_detail, attributes) + def create_an_app_store_version_submission(self, appStoreVersion: AppStoreVersion): """ :reference: https://developer.apple.com/documentation/appstoreconnectapi/create_an_app_store_version_submission diff --git a/appstoreconnect/resources.py b/appstoreconnect/resources.py index c4d1643..b440fe9 100644 --- a/appstoreconnect/resources.py +++ b/appstoreconnect/resources.py @@ -258,11 +258,28 @@ class Build(Resource): endpoint = '/v1/builds' type = 'builds' attributes = ['expired', 'iconAssetToken', 'minOsVersion', 'processingState', 'version', 'usesNonExemptEncryption', 'uploadedDate', 'expirationDate'] + relationships = { + 'app': {'multiple': False}, + 'appEncryptionDeclaration': {'multiple': False}, + 'individualTesters': {'multiple': True}, + 'preReleaseVersion': {'multiple': False}, + 'betaBuildLocalizations': {'multiple': True}, + 'buildBetaDetail': {'multiple': False}, + 'betaAppReviewSubmission': {'multiple': False}, + 'appStoreVersion': {'multiple': False}, + 'icons': {'multiple': True}, + 'buildBundles': {'multiple': True}, + 'betaGroups': {'multiple': True}, + } documentation = 'https://developer.apple.com/documentation/appstoreconnectapi/build/attributes' class BuildBetaDetail(Resource): endpoint = '/v1/buildBetaDetails' + attributes = ['autoNotifyEnabled', 'externalBuildState', 'internalBuildState'] + relationships = { + 'build': {'multiple': False}, + } type = 'buildBetaDetails' documentation = 'https://developer.apple.com/documentation/appstoreconnectapi/buildBetaDetail/attributes' @@ -280,6 +297,10 @@ class BetaBuildLocalization(Resource): class BetaAppReviewDetail(Resource): endpoint = '/v1/betaAppReviewDetails' type = 'betaAppReviewDetails' + attributes = ['contactEmail', 'contactFirstName', 'contactLastName', 'contactPhone', 'demoAccountName', 'demoAccountPassword', 'demoAccountRequired', 'notes'] + relationships = { + 'app': {'multiple': False}, + } documentation = 'https://developer.apple.com/documentation/appstoreconnectapi/betaAppReviewDetail/attributes'