| xcode-version | The version of Xcode to use for building the Xcode project. Defaults to the [latest version of Xcode on the runner](https://github.com/actions/runner-images#available-images). | no | latest |
| project-path | The directory that contains the exported xcode project from Unity. | no | — |
| app-store-connect-key | The App Store Connect API AuthKey_*.p8 key encoded as base64 string. | yes | — |
| app-store-connect-key-id | The App Store Connect API key id. | yes | — |
| app-store-connect-issuer-id | The issuer ID of the App Store Connect API key. | yes | — |
| certificate | Exported signing certificate.p12 encoded as base64 string. Overrides the automatic signing in Xcode. | no | — |
| manual-signing-certificate | Exported signing certificate.p12 encoded as base64 string. Overrides the automatic signing in Xcode. | no | — |
| certificate-password | The password for the exported certificate. Required if `certificate` is provided. | no | — |
| manual-signing-certificate-password | The password for the exported certificate. Required if `manual-signing-certificate` is provided. | no | — |
| signing-identity | The signing identity to use for signing the Xcode project. Parsed from the `manual-signing-certificate` if not provided. | no | — |
| manual-signing-identity | The signing identity to use for signing the Xcode project. Parsed from the `manual-signing-certificate` if not provided. | no | — |
| provisioning-profile | The provisioning profile to use as base64 string. Use when manually signing the Xcode project. | no | — |
| provisioning-profile-name | The name of the provisioning profile file, including the type to use for signing the Xcode project. Must end with either `.mobileprovision` or `.provisionprofile`. Required if `provisioning-profile` is provided. | no | — |
| team-id | The team ID to use for signing the Xcode project. Defaults to parsing team ID from `manual-signing-certificate` if provided. | no | — |
| bundle-id | The bundle ID of the Xcode project. Overrides the value in the exported Unity project. Defaults to parsing bundle ID from `.xcodeproj`. | no | — |
| configuration | The configuration to build the Xcode project with. Defaults to `Release`. | no | Release |
| scheme | The scheme to use when building the xcode project. | no | — |
| destination | The destination to use when building the xcode project. Defaults to `generic/platform={platform}`. | no | — |
| platform | The platform to build for. Can be one of `iOS`, `macOS`, `tvOS`, `visionOS`. Defaults to parsing platform from `.xcodeproj`. | no | — |
| platform-sdk-version | The version of the platform SDK to use for building the Xcode project. Defaults to the latest version of the platform SDK defined in the `.xcodeproj`. | no | — |
| export-option | The export option to use for exporting the Xcode project. Can be one of `app-store-connect`, `steam`, `release-testing`, `enterprise`, `debugging`, `developer-id`, `mac-application`. Defaults to `development` | no | development |
| export-option-plist | The path to custom export option plist file to use when exporting the Xcode project. Overrides `export-option`. | no | — |
| entitlements-plist | The path to custom entitlements plist file. Generates [default hardened runtime entitlements](https://developer.apple.com/documentation/security/hardened-runtime) if not provided. | no | — |
| notarize | Whether to notarize the exported Xcode project. Defaults to `true` if `export-option !== app-store-connect`. | no | — |
| archive-type | The archive type to use when exporting macOS applications when not uploading to the App Store. Can be one of `app` or `pkg`. Defaults to `app`. Forces `app` if `export-option === steam`. | no | app |
| upload | Whether to upload the exported Xcode project to App Store Connect. Defaults to `true` if `export-option === app-store-connect`. | no | — |
| whats-new | When `uploading === true`, Let your testers know what you would like them to test in this build. This information will be available to testers in all groups who have access to this build. Defaults to the last git commit sha, current branch name, and commit message up to 4000 characters. | no | — |
| auto-increment-build-number | Whether to automatically increment the `CFBundleVersion` in the Xcode project. Defaults to `true` if `export-option === app-store-connect`. | no | true |
| test-groups | One or more test groups to automatically add to the build when uploading to TestFlight. When using multiple groups, separate them with commas. None by default. | no | — |
| submit-for-review | Whether to submit the build for review when uploading to TestFlight. Defaults to `false`. | no | — |
| developer-id-application-certificate | The `Developer ID Application` certificate encoded as base64 string. Required if `export-option === steam` or `export-option === developer-id` or `notarize === true`. | no | — |
| developer-id-application-certificate-password | The password for the `Developer ID Application` certificate. Required if `developer-id-application-certificate` is provided. | no | — |
| developer-id-installer-certificate | The `Developer ID Installer` certificate encoded as base64 string. Required when creating an installer package for macOS application. | no | — |
| developer-id-installer-certificate-password | The password for the `Developer ID Installer` certificate. Required if `developer-id-installer-certificate` is provided. | no | — |