Use in a Fastfile

More options

Available options

All the options below can easily be added to your Deliverfile. The great thing: if you use fastlane you can use all these options from your Fastfile too, for example:

deliver(
submit_for_review: true,
metadata_path: "../folder"
)

app_identifier

The bundle identifier (e.g. "com.krausefx.app")

username

Your Apple ID email address

ipa

A path to a signed ipa file, which will be uploaded. If you don't provide this value, only app metadata will be uploaded. If you want to submit the app for review make sure to either use fastlane deliver --submit_for_review or add submit_for_review true to your Deliverfile

You can also provide these values by creating files in a metadata/trade_representative_contact_information/ directory. The file names must match the pattern <key>.txt (e.g. first_name.txt, address_line1.txt etc.). The contents of each file will be used as the value for the matching key. Values provided in the Deliverfile or Fastfile will be take priority over values from these files.

is_displayed_on_app_store is the option on iTunes Connect described as: Display Trade Representative Contact Information on the Korean App Store

You can also provide these values by creating files in a metadata/review_information/ directory. The file names must match the pattern <key>.txt (e.g. first_name.txt, notes.txt etc.). The contents of each file will be used as the value for the matching key. Values provided in the Deliverfile or Fastfile will be take priority over values from these files.

submission_information

Must be a hash. This is used as the last step for the deployment process, where you define if you use third party content or use encryption. A list of available options.

submission_information({
add_id_info_serves_ads: true,
...
})

automatic_release

Should the app be released to all users once Apple approves it? If set to false, you'll have to manually release the update once it got approved.

automatic_release(true)
# or
automatic_release(false)

phased_release

Enable or disable the phased releases feature of iTunes Connect. If set to true, the update will be released over a 7 day period. Default behavior is to leave whatever you defined on iTunes Connect.

phased_release(true)
# or
phased_release(false)

app_rating_config_path

You can set the app age ratings using deliver. You'll have to create and store a JSON configuration file. Copy the template to your project folder and pass the path to the JSON file using the app_rating_config_path option.

The keys/values on the top allow values from 0-2, and the items on the bottom allow only 0 or 1. More information in #reference.

Metadata

All options below are useful if you want to specify certain app metadata in your Deliverfile or Fastfile

Tips

Available language codes

Available Metadata Folder Options

deliver allows for metadata to be set through .txt files in the metadata folder. This metadata folder location is defaulted to ./fastlane/metadata but can be overridden through the metadata_path parameter. Below are all allowed metadata options.

Non-Localized Metadata

Key

Editable While Live

Directory

Filename

copyright

Yes

<metadata_path>

copyright.txt

primary_category

No

<metadata_path>

primary_category.txt

secondary_category

No

<metadata_path>

secondary_category.txt

primary_first_sub_category

No

<metadata_path>

primary_first_sub_category.txt

primary_second_sub_category

No

<metadata_path>

primary_second_sub_category.txt

secondary_first_sub_category

No

<metadata_path>

secondary_first_sub_category.txt

secondary_second_sub_category

No

<metadata_path>

secondary_second_sub_category.txt

Localized Metadata

Key

Editable While Live

Directory

Filename

name

No

<metadata_path>/<lang>/

name.txt

subtitle

No

<metadata_path>/<lang>/

subtitle.txt

privacy_url

Yes

<metadata_path>/<lang>/

privacy_url.txt

description

Yes

<metadata_path>/<lang>/

description.txt

keywords

No

<metadata_path>/<lang>/

keywords.txt

release_notes

Yes

<metadata_path>/<lang>/

release_notes.txt

support_url

Yes

<metadata_path>/<lang>/

support_url.txt

marketing_url

Yes

<metadata_path>/<lang>/

marketing_url.txt

promotional_text

Yes

<metadata_path>/<lang>/

promotional_text.txt

Trade Representative Contact Information Metadata

Key

Editable While Live

Directory

Filename

trade_name

Yes

<metadata_path>/trade_representative_contact_information

trade_name.txt

first_name

Yes

<metadata_path>/trade_representative_contact_information

first_name.txt

last_name

Yes

<metadata_path>/trade_representative_contact_information

last_name.txt

address_line1

Yes

<metadata_path>/trade_representative_contact_information

address_line1.txt

address_line2

Yes

<metadata_path>/trade_representative_contact_information

address_line2.txt

address_line3

Yes

<metadata_path>/trade_representative_contact_information

address_line3.txt

city_name

Yes

<metadata_path>/trade_representative_contact_information

city_name.txt

state

Yes

<metadata_path>/trade_representative_contact_information

state.txt

country

Yes

<metadata_path>/trade_representative_contact_information

country.txt

postal_code

Yes

<metadata_path>/trade_representative_contact_information

postal_code.txt

phone_number

Yes

<metadata_path>/trade_representative_contact_information

phone_number.txt

email_address

Yes

<metadata_path>/trade_representative_contact_information

email_address.txt

is_displayed_on_app_store

Yes

<metadata_path>/trade_representative_contact_information

is_displayed_on_app_store.txt

Review Information Metadata

Key

Editable While Live

Directory

Filename

first_name

Yes

<metadata_path>/review_information

first_name.txt

last_name

Yes

<metadata_path>/review_information

last_name.txt

phone_number

Yes

<metadata_path>/review_information

phone_number.txt

email_address

Yes

<metadata_path>/review_information

email_address.txt

demo_user

Yes

<metadata_path>/review_information

demo_user.txt

demo_password

Yes

<metadata_path>/review_information

demo_password.txt

notes

Yes

<metadata_path>/review_information

notes.txt

Reference

View all available categories, languages, etc.

Available Categories

You can always prefix the category using MZGenre. (e.g. MZGenre.Book). deliver supports both notations.

Book

Business

Apps.Catalogs

Education

Entertainment

Finance

Apps.Food_Drink

Games

Healthcare_Fitness

Lifestyle

Medical

Music

Navigation

News

Apps.Newsstand

Photography

Productivity

Reference

Apps.Shopping

SocialNetworking

Sports

Stickers

Travel

Utilities

Weather

Available Game Subcategories

MZGenre.Action

MZGenre.Adventure

MZGenre.Arcade

MZGenre.Board

MZGenre.Card

MZGenre.Casino

MZGenre.Dice

MZGenre.Educational

MZGenre.Family

MZGenre.Music

MZGenre.Puzzle

MZGenre.Racing

MZGenre.RolePlaying

MZGenre.Simulation

MZGenre.Sports

MZGenre.Strategy

MZGenre.Trivia

MZGenre.Word

Available Magazines & Newspapers Subcategories

MZGenre.Apps.Arts_Photography

MZGenre.Apps.Automotive

MZGenre.Apps.Brides_Weddings

MZGenre.Apps.Business_Investing

MZGenre.Apps.Childrens_Magazines

MZGenre.Apps.Computers_Internet

MZGenre.Apps.Cooking_Food_Drink

MZGenre.Apps.Crafts_Hobbies

MZGenre.Apps.Electronics_Audio

MZGenre.Apps.Entertainment

MZGenre.Apps.Fashion_Style

MZGenre.Apps.Health_Mind_Body

MZGenre.Apps.History

MZGenre.Apps.Home_Garden

MZGenre.Apps.Literary_Magazines_Journals

MZGenre.Apps.Mens_Interest

MZGenre.Apps.Movies_Music

MZGenre.Apps.News_Politics

MZGenre.Apps.Outdoors_Nature

MZGenre.Apps.Parenting_Family

MZGenre.Apps.Pets

MZGenre.Apps.Professional_Trade

MZGenre.Apps.Regional_News

MZGenre.Apps.Science

MZGenre.Apps.Sports_Leisure

MZGenre.Apps.Teens

MZGenre.Apps.Travel_Regional

MZGenre.Apps.Womens_Interest

Available Stickers Subcategories

MZGenre.Apps.Stickers.Animals

MZGenre.Apps.Stickers.Art

MZGenre.Apps.Stickers.BirthdaysAndCelebrations

MZGenre.Apps.Stickers.Celebrities

MZGenre.Apps.Stickers.Characters

MZGenre.Apps.Stickers.FoodAndDrink

MZGenre.Apps.Stickers.Emotions

MZGenre.Apps.Stickers.Fashion

MZGenre.Apps.Stickers.Games

MZGenre.Apps.Stickers.KidsAndFamily

MZGenre.Apps.Stickers.MoviesAndTV

MZGenre.Apps.Stickers.Music

MZGenre.Apps.Stickers.People

MZGenre.Apps.Stickers.Places

MZGenre.Apps.Stickers.Sports

Available Languages

da

de-DE

el

en-AU

en-CA

en-GB

en-US

es-ES

es-MX

fi

fr-CA

fr-FR

id

it

ja

ko

ms

nl-NL

no

pt-BR

pt-PT

ru

sv

th

tr

vi

zh-Hans

zh-Hant

Available age rating groups

Non Boolean

Values

0: None

1: Infrequent/Mild

2: Frequent/Intense

Keys

CARTOON_FANTASY_VIOLENCE

REALISTIC_VIOLENCE

PROLONGED_GRAPHIC_SADISTIC_REALISTIC_VIOLENCE

PROFANITY_CRUDE_HUMOR

MATURE_SUGGESTIVE

HORROR

MEDICAL_TREATMENT_INFO

ALCOHOL_TOBACCO_DRUGS

GAMBLING

SEXUAL_CONTENT_NUDITY

GRAPHIC_SEXUAL_CONTENT_NUDITY

Boolean

Keys

UNRESTRICTED_WEB_ACCESS

GAMBLING_CONTESTS

Default values

Deliver has a special default language code which allows you to provide values that are not localized, and which will be used as defaults when you don’t provide a specific localized value.

In order to use default, you will need to tell deliver which languages your app uses. You can do this in either of two ways:

Create the folders named with the language in the metadata folder (i.e. fastlane/metadata/en-US or fastlane/metadata/de-DE)

Add the following to your Deliverfilelanguages(['en-US','de-DE'])

You can use this either in json within your Deliverfile and/or as folders in your metadata folder. deliver will take the union of both language sets from the Deliverfile and from the metadata folder and create on single set of languages which will be enabled.

Imagine that you have localized data for the following language codes: en-US, de-DE, el, it

HTTP Proxy

iTunes Transporter is a Java application bundled with Xcode. In addition to utilizing the DELIVER_ITMSTRANSPORTER_ADDITIONAL_UPLOAD_PARAMETERS="-t DAV", you need to configure the transporter application to use the proxy independently from the system proxy or any environment proxy settings. You can find the configuration file within Xcode:

The provider short name to be used with the iTMSTransporter to identify your team. To get provider short name run pathToXcode.app/Contents/Applications/Application\ Loader.app/Contents/itms/bin/iTMSTransporter -m provider -u 'USERNAME' -p 'PASSWORD' -account_type itunes_connect -v off. The short names of providers should be listed in the second column

overwrite_screenshots

Clear all previously uploaded screenshots before uploading the new ones

false

run_precheck_before_submit

Run precheck before submitting to app review

true

precheck_default_rule_level

The default rule level unless otherwise configured

:warn

app_icon

Metadata: The path to the app icon

apple_watch_app_icon

Metadata: The path to the Apple Watch app icon

copyright

Metadata: The copyright notice

primary_category

Metadata: The english name of the primary category (e.g. Business, Books)

secondary_category

Metadata: The english name of the secondary category (e.g. Business, Books)

primary_first_sub_category

Metadata: The english name of the primary first sub category (e.g. Educational, Puzzle)

primary_second_sub_category

Metadata: The english name of the primary second sub category (e.g. Educational, Puzzle)

secondary_first_sub_category

Metadata: The english name of the secondary first sub category (e.g. Educational, Puzzle)

secondary_second_sub_category

Metadata: The english name of the secondary second sub category (e.g. Educational, Puzzle)