Documentation
Age rating configuration
age_rating maps directly to the App Store Connect age rating declaration. ascdir init writes every value returned by Apple. In an existing configuration, omitted keys remain unmanaged.
Boolean declarations accept true or false:
advertisinggamblinghealth_or_wellness_topicsloot_boxmessaging_and_chatparental_controlsage_assurancesocial_mediasocial_media_age_restrictedunrestricted_web_accessuser_generated_content
Content-frequency declarations accept NONE, INFREQUENT_OR_MILD, FREQUENT_OR_INTENSE, INFREQUENT, or FREQUENT:
alcohol_tobacco_or_drug_use_or_referencescontestsgambling_simulatedguns_or_other_weaponsmedical_or_treatment_informationprofanity_or_crude_humorsexual_content_graphic_and_nuditysexual_content_or_nudityhorror_or_fear_themesmature_or_suggestive_themesviolence_cartoon_or_fantasyviolence_realistic_prolonged_graphic_or_sadisticviolence_realistic
Other declarations:
kids_age_band: empty,FIVE_AND_UNDER,SIX_TO_EIGHT, orNINE_TO_ELEVENage_rating_override: empty,NONE,NINE_PLUS,THIRTEEN_PLUS,SIXTEEN_PLUS,EIGHTEEN_PLUS, orUNRATEDkorea_age_rating_override: empty,NONE,FIFTEEN_PLUS, orNINETEEN_PLUSdeveloper_age_rating_info_url: empty or a public HTTP(S) URL
Apple treats kids_age_band as the Made for Kids declaration. Because changing it may become irreversible after App Review, a non-dry-run push containing that field requires --allow-irreversible.
Always inspect the complete change set first:
ascdir push --dry-run
ascdir push --allow-irreversible