Unity DevOps Build Automation
NOTE: As of February 15, 2023, any automation using this API should support redirects for all endpoints to avoid any disruptions in the future.
This API is intended to be used in conjunction with Unity DevOps Build Automation.
Making requests
This website is built to allow requests to be made against the API. If you are currently logged into Unity DevOps you should be able to make requests without entering an API key.
You can find your API key in the Unity Cloud Services portal by clicking on 'Build Automation Settings' in the sidebar. Copy the API Key and paste it into the upper left corner of this website. It will be used in all subsequent requests.
Clients
The Build Automation API is based upon Swagger. Client libraries to integrate with your projects can easily be generated with the Swagger Code Generator.
The JSON schema required to generate a client for this API version is located here:
https://build-api.cloud.unity3d.com/api/v1/api.json
Authorization
The Build Automation API requires an access token from your Unity DevOps account, which can be found by selecting Settings under DevOps > Build Automation at https://cloud.unity.com/home/cloud-build
To authenticate requests, include a Basic Authentication header with your API key as the value. e.g.
Authorization: Basic [YOUR API KEY]
Pagination
Paged results will take two parameters. A page number that is calculated based upon the per_page amount. For instance if there are 40 results and you specify page 2 with per_page set to 10 you will receive records 11-20.
Paged results will also return a Content-Range header. For the example above the content range header would look like this:
Content-Range: items 11-20/40
Versioning
The API version is indicated in the request URL. Upgrading to a newer API version can be done by changing the path.
The API will receive a new version in the following cases:
- removal of a path or request type
- addition of a required field
- removal of a required field
The following changes are considered backwards compatible and will not trigger a new API version:
- addition of an endpoint or request type
- addition of an optional field
- removal of an optional field
- changes to the format of ids
Identifiers
It should not be assumed that any of the identifiers used in paths will be a perfect match
for your user-entered information. If you see unexpected 403s or 404s from API calls then check your
identifiers match the ones used by the API. In particular, projectId
does NOT typically
change when the project is renamed and in fact may not be a direct match for the project name even
at initial creation time.
To avoid confusion we recommend that instead of using the human-readable autogenerated orgId and projectId available from the API you should instead use:
- org foreign key for
orgId
(available from project APIs asorgFk
and org APIs ascoreForeignKey
) guid
forprojectId
All links generated by the API and the Dashboard should follow this format already, making it easy to figure out the correct parameters by making a comparison.
Rate Limiting
Requests against the Build Automation API are limited to a rate of 100 per minute. To preserve the quality of service throughout Build Automation, additional rate limits may apply to some actions. For example, polling aggressively instead of using webhooks or making API calls with a high concurrency may result in rate limiting.
It is not intended for these rate limits to interfere with any legitimate use of the API. Please contact support at cloudbuild@unity3d.com if your use is affected by this rate limit.
You can check the returned HTTP headers for any API request to see your current rate limit status.
- X-RateLimit-Limit: maximum number of requests per minute
- X-RateLimit-Remaining: remaining number of requests in the current window
- X-RateLimit-Reset: time at which the current window will reset (UTC epoch seconds)
Once you go over the rate limit you will receive an error response:
HTTP Status: 429
{
"error": "Rate limit exceeded, retry in XX seconds"
}
# initialize the API client
configuration = Configuration();
configuration.username = "[YOUR API KEY]";
client = CloudBuild.ApiClient("https://build-api.cloud.unity3d.com/api/v1")
Paths
Get billing plan
Description
Get the billing plan for the specified organization (but pull from project)
Required Permissions
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
List all build target groups for a project
Description
Required Permissions
Request Parameters
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildTargetGroups
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- data: object[]
-
object - id: string
-
- name: string
-
- description: string
-
- created: string (date-time)
-
- lastModified: string (date-time)
-
- deleted: boolean
-
- enabled: boolean
-
- buildTargets: object[]
-
object - buildTargetId: string
-
- name: string
-
- enabled: boolean
-
- platform: string
-
- builderOperatingSystem: string
-
{
"data": [
{
"id": "63e31979d9efa30438dcbee5",
"name": "test group number 3",
"description": "hi this is a description",
"created": "2023-02-08T03:39:37.545Z",
"lastModified": "2023-02-08T03:39:37.548Z",
"deleted": false,
"enabled": true,
"buildTargets": [
{
"buildTargetId": "default-mac-desktop-universal",
"name": "Default Mac desktop Universal",
"enabled": true,
"platform": "standaloneosx",
"builderOperatingSystem": "mac"
}
]
},
{
"id": "63e31979d9efa30438dcbee6",
"name": "test group number 4",
"description": "hi this is a description",
"created": "2023-02-11T03:39:37.545Z",
"lastModified": "2023-02-11T03:39:37.548Z",
"deleted": false,
"enabled": true,
"buildTargets": [
{
"buildTargetId": "default-mac-desktop-universal",
"name": "Default Mac desktop Universal",
"enabled": true,
"platform": "standaloneosx",
"builderOperatingSystem": "mac"
}
]
}
]
}
Create build target group for a project
Description
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-d '{"name": "test group number 3", "description": "hi this is a description", "buildTargetIds": ["default-mac-desktop-universal"]}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildTargetGroups
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- id: string
-
- name: string
-
- description: string
-
- created: string (date-time)
-
- lastModified: string (date-time)
-
- deleted: boolean
-
- enabled: boolean
-
- buildTargets: object[]
-
object - buildTargetId: string
-
- name: string
-
- enabled: boolean
-
- platform: string
-
- builderOperatingSystem: string
-
{
"id": "63e31979d9efa30438dcbee5",
"name": "test group number 3",
"description": "hi this is a description",
"created": "2023-02-08T03:39:37.545Z",
"lastModified": "2023-02-08T03:39:37.548Z",
"deleted": false,
"enabled": true,
"buildTargets": [
{
"buildTargetId": "default-mac-desktop-universal",
"name": "Default Mac desktop Universal",
"enabled": true,
"platform": "standaloneosx",
"builderOperatingSystem": "mac"
}
]
}
Delete build target groups for a project
Description
Required Permissions
Request Parameters
curl
-X DELETE
-H "Content-Type: application/json"
-d '{"buildTargetGroupIds": ["643777304e3edf0016865fbc", "643858504af6150017aa3b6b"]}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildTargetGroups
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Set enabled state of build target groups for a project
Description
Required Permissions
Request Parameters
curl
-X PUT
-H "Content-Type: application/json"
-d '{"enabled": true, "buildTargetGroupIds": ["63e31979d9efa30438dcbee5"]}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildTargetGroups/enabled
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- data: object[]
-
object - id: string
-
- name: string
-
- description: string
-
- created: string (date-time)
-
- lastModified: string (date-time)
-
- deleted: boolean
-
- enabled: boolean
-
- buildTargets: object[]
-
object - buildTargetId: string
-
- name: string
-
- enabled: boolean
-
- platform: string
-
- builderOperatingSystem: string
-
{
"data": [
{
"id": "63e31979d9efa30438dcbee5",
"name": "test group number 3",
"description": "hi this is a description",
"created": "2023-02-08T03:39:37.545Z",
"lastModified": "2023-02-08T03:39:37.548Z",
"deleted": false,
"enabled": false,
"buildTargets": [
{
"buildTargetId": "default-mac-desktop-universal",
"name": "Default Mac desktop Universal",
"enabled": true,
"platform": "standaloneosx",
"builderOperatingSystem": "mac"
}
]
}
]
}
Update build target group for a project
Description
Required Permissions
Request Parameters
curl
-X PATCH
-H "Content-Type: application/json"
-d '{"name": "test group number 3", "description": "This is a newly added description", "buildTargetIds": ["default-mac-desktop-universal"]}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildTargetGroups/{buildtargetgroupid}
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- id: string
-
- name: string
-
- description: string
-
- created: string (date-time)
-
- lastModified: string (date-time)
-
- deleted: boolean
-
- enabled: boolean
-
- buildTargets: object[]
-
object - buildTargetId: string
-
- name: string
-
- enabled: boolean
-
- platform: string
-
- builderOperatingSystem: string
-
{
"id": "63e31979d9efa30438dcbee5",
"name": "test group number 3",
"description": "This is a newly added description",
"created": "2023-02-08T03:39:37.545Z",
"lastModified": "2023-02-08T03:39:37.548Z",
"deleted": false,
"enabled": true,
"buildTargets": [
{
"buildTargetId": "default-mac-desktop-universal",
"name": "Default Mac desktop Universal",
"enabled": true,
"platform": "standaloneosx",
"builderOperatingSystem": "mac"
}
]
}
Set enabled state of build target group for a project
Description
Required Permissions
Request Parameters
curl
-X PUT
-H "Content-Type: application/json"
-d '{"enabled": true}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildTargetGroups/{buildtargetgroupid}/enabled
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- id: string
-
- name: string
-
- description: string
-
- created: string (date-time)
-
- lastModified: string (date-time)
-
- deleted: boolean
-
- enabled: boolean
-
- buildTargets: object[]
-
object - buildTargetId: string
-
- name: string
-
- enabled: boolean
-
- platform: string
-
- builderOperatingSystem: string
-
{
"id": "63e31979d9efa30438dcbee5",
"name": "test group number 3",
"description": "This is a newly added description",
"created": "2023-02-08T03:39:37.545Z",
"lastModified": "2023-02-08T03:39:37.548Z",
"deleted": false,
"enabled": true,
"buildTargets": [
{
"buildTargetId": "default-mac-desktop-universal",
"name": "Default Mac desktop Universal",
"enabled": true,
"platform": "standaloneosx",
"builderOperatingSystem": "mac"
}
]
}
Builds Introduction
Builds contain the output of building a Build Target for a Project. They contain metadata about the build itself as well as links to the build artifacts.
For certain operations, you can substitute "_all" for the buildtargetid to operate across all configured build targets.
Get audit log
Description
Retrieve a list of historical settings changes for this build target.
Required Permissions
Request Parameters
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/auditlog
buildsApi = BuildsApi(client)
auditlog = buildsApi.get_audit_log('{orgid}', '{projectid}', '{buildtargetid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- updatingUserEmail: string
-
- updated: string (dateTime)
-
- lines: object[]
-
object - label: string
-
- field: string
-
- to: string
-
- from: string
-
[
{
"updatingUserEmail": "julie.smith@example.org",
"updated": "2015-08-04T17:18:24.532Z",
"lines": [{
"from": "Latest 4.x",
"to": "4.6.5",
"label": "Unity version",
"field": "buildtarget.settings.unityVersion"
}]
},
{
"updatingUserEmail": "sandra.johnson@example.org",
"updated": "2015-08-02T12:02:44.532Z",
"lines": [{
"label": "Keypass",
"field": "buildtarget.settings.platform.keystoreInfo.keypass",
"from": "",
"to": "changed"
}]
}
]
Get all build targets that can share caches with the specified build target
Description
Retrieve a list of build targets that are able to share caches with the specified build target.
Required Permissions
Request Parameters
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/compatibletargets
buildsApi = BuildsApi(client)
buildtargets = buildsApi.get_compatible_targets('{orgid}', '{projectid}', '{buildtargetid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- createdBy: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- enabled: boolean
-
whether this target can be built by the API
- settings: object
-
- autoBuild: boolean
-
start builds automatically when your repo is updated
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- autoDetectUnityVersion: boolean
-
attempt to automatically detect which unity version to use, fallback to specified unityVersion if unable to.
- fallbackPatchVersion: boolean
-
attempt to get a similar unity patch version to use, applies to unavailable auto-detected Unity versions only.
- executablename: string
-
- buildProfilePath: string
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- isUnityCloudDrive: boolean
-
If true, the build will use the Unity Cloud Drive for the source code (only applies to UVCS projects).
- repo: string
-
Which repo to use. Only applies to Plastic SCM, other SCM types configure repo on the project level.
- branch: string
-
- subdirectory: string
-
subdirectory to build from
- client: string
-
perforce only client workspace to build from
- platform: object
-
- bundleId: string
-
a unique identifier (com.example.name)
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- buildSchedule: object
-
For Scheduling builds
- isEnabled: boolean
-
- date: string (date-time)
-
- repeatCycle: string , x ∈ { none , once (default) , daily , weekly , monthly , yearly }
-
- cleanBuild: boolean
-
- autoBuildCancellation: boolean
-
- machineTypeLabel: string
-
- operatingSystemSelected: string , x ∈ { mac , windows }
-
- operatingSystemVersion: string
-
Choose the version of the operating system for building your project.
- rubyVersion: string
-
- remoteCacheStrategy: string , x ∈ { none , library , workspace , boostdisk , inherit }
-
Specifies the caching strategy (none, library, workspace, or inherit) for remote data storage and retrieval
- windowsGitBinary: string , x ∈ { inherit (default) , native , cygwin }
-
Specifies the Git binary that will be used for Windows builds
- buildTargetCopyCache: string
-
Specifies the id of the build target that this target's cache was copied from
- architecture: string
-
Specifies the Unity editor architecture to use for building the project.
- cacheCompressionLevel: string , x ∈ { inherit (default) , none , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
Specifies the compression level for caching workspace or Library.
- advanced: object
-
- cache: object
-
- xcode: object
-
- useArchiveAndExport: boolean
-
- customFastlaneConfigPath: string
-
The path (including file name) from the project root to the custom FastLane configuration json file to configure multiple provisioning files, or customize the FastLane build process. See https://forum.unity.com/threads/xcode-9-multiple-provisioning-profiles.545121/ Will look for Assets/ucb_xcode_fastlane.json by default, if not specified.
- uploadXCArchive: boolean
-
Upload the XCArchive file produced by the build. This file will be downloadable from the dashboard if this property is true.
- shouldNotarize: boolean
-
Only used with OSX targets, this triggers signing and notarization process for the executable.
- android: object
-
- buildAppBundle: boolean
-
- buildAssetPacks: boolean
-
- androidSDKVersion: string
-
Android SDK Version
- unity: object
-
- preExportMethod: string
-
The fully-qualified name of a public static method you want us to call before we start the Unity build process. For example: ClassName.NeatMethod or NameSpace.ClassName.NeatMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method!
- postExportMethod: string
-
The fully-qualified name of a public static method you want us to call after we finish the Unity build process (but before Xcode). For example: ClassName.CoolMethod or NameSpace.ClassName.CoolMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method! This method must accept a string parameter, which will receive the path to the exported Unity player (or Xcode project in the case of iOS).
- preBuildScript: string
-
Relative path to the script that should be run before the build process starts.
- postBuildScript: string
-
Relative path to the script that should be run after the build process finishes.
- preBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your preBuildScript will cause your build to be marked as Failed
- postBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your postBuildScript will cause your build to be marked as Failed
- scriptingDefineSymbols: string
-
Enter the names of the symbols you want to define for iOS. These symbols can then be used as the conditions for #if directives just like the built-in ones. (i.e. #IF MYDEFINE or #IF AMAZON)
- playerExporter: object
-
- sceneList: string[]
-
A list of scenes to build overriding those specified in the Build Settings menu of your Unity project.
string scene names
- buildOptions: string[]
-
Unity Editor build options. Use BuildOptions.Development and BuildOptions.AllowDebugging to create a development build.
string - export: boolean true
-
Enable exporting a player from Unity (i.e. running BuildPipeline.BuildPlayer). Enabling this is equivalent to disabling Content-only Build in Build Target on Developer Dashboard. In general, this should be true, unless you are doing something something like an asset bundle only build or unit test only build without generating an actual build artifact.
- playerSettings: object
-
- Android: object
-
- useAPKExpansionFiles: boolean
-
break up android apk into an installable apk and expansion files
- Switch: object
-
- useSwitchCPUProfiler: boolean
-
Weather to use CPU profiler or not
- editorUserBuildSettings: object
-
- androidBuildSystem: string , x ∈ { internal , gradle }
-
which android build system to build with (android only, supported in Unity 5.5+)
- standaloneBuildSubtarget: string , x ∈ { Player (default) , Server }
-
standalone build subtarget for Dedicated Server Build (supported in Unity 2021.2+). see https://docs.unity3d.com/2021.2/Documentation/ScriptReference/StandaloneBuildSubtarget.html
- assetBundles: object
-
- buildBundles: boolean
-
enable asset bundle builds for this target
- basePath: string
-
base path relative to Assets folder where asset bundles are output. Default is 'AssetBundles'
- buildAssetBundleOptions: string
-
comma separated list of flags from BuildAssetBundleOptions. see https://docs.unity3d.com/ScriptReference/BuildAssetBundleOptions.html
- copyToStreamingAssets: boolean
-
copy bundles to streaming assets folder, which will be packaged into the exported player.
- copyBundlePatterns: string[]
-
array of patterns to match (C# Regular Expressions) when copying asset bundle files. By default, all bundles will be copied.
string
- addressables: object
-
- buildAddressables: boolean
-
enable addressable builds for this target
- contentUpdate: boolean
-
Update a previously built player with new Addressable Content.
- profileName: string
-
which addressables profile should be used for the build
- failedAddressablesFailsBuild: boolean true
-
Exit and mark the build as failed if an error occurs when addressables are built
- contentUpdateSettings: object
-
- contentStatePath: string
-
The path to a Content State .bin file relative to the project root
- linkedTargetId: string
-
The Id of the build target to obtain a Content State .bin file from
- generateBuildLayout: boolean
-
Whether to generate the bundle build layout report.
- buildLayoutReportFileFormat: string , x ∈ { JSON (default) , TXT }
-
The format of the bundle build layout report.
- runUnitTests: boolean
-
Run any unit tests your project has when a build happens.
- runEditModeTests: boolean
-
Should Edit Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- runPlayModeTests: boolean
-
Should Play Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- failedUnitTestFailsBuild: boolean
-
Mark builds as failed if the unit tests do not pass.
- unitTestMethod: string
-
LEGACY - The Unity method to call when running unit tests (only supported in Unity 5.2 and lower).
- enableLightBake: boolean
-
Enable lightmap baking (disabled by default since it is very slow and usually unnecessary)
- uwp: object
-
- windowsSDKVersion: string , x ∈ { 10.0.17134.0 , 10.0.17763.0 , 10.0.18362.0 , 10.0.19041.0 , 10.0.20348.0 , 10.0.22621.0 , 10.0.22000.0 }
-
Sets Windows SDK Version to use when building UWP
- visualStudioVersion: string , x ∈ { 2019 , 2022 }
-
Sets the Visual Studio Version to use when building UWP
- wsaArchitecture: string,null , x ∈ { x64 , x86 , ARM , ARM64 }
-
Sets target architecture for Exectuable Only builds
- capabilities: array,null
-
Sets the capabilities of the build UWP application
- targetFamily: string[]
-
Sets the target device family for the build
string , x ∈ { Universal , Desktop , Mobile , Xbox , Holographic , IoT , IoTHeadless } The target device family
- buildType: string , x ∈ { ExecutableOnly , D3D , XAML }
-
Sets the build type for UWP. Executable
- msbuildConfiguration: string,null , x ∈ { Debug , Release , Master , MasterWithLTCG }
-
Sets the ms build configuration for UWP
- platforms: array,null
-
Sets the target platforms for the AppXBundle
- publishVisualStudioSolution: boolean
-
Enable publishing of the visual studio .sln file
- gamecorescarlett: object
-
- ps5: object
-
- ignorePlasticCheckedInLibrary: boolean
-
Ignore the checked-in Library folder when building from Plastic SCM.
- buildTargetGroups: object[]
-
object - id: string
-
- name: string
-
- lastBuilt: object
-
- unityVersion: string
-
Last Unity version built by this target. Setting this has no effect.
- credentials: object
-
- signing: object
-
- credentialid: string
-
- credentialResourceRef: object
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- uuid: string
-
generated UUID of the profile
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
expiration date
- links: object
-
- builds: object[]
-
object buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
- links: object
-
[
{
"name": "Default WebGL",
"platform": "webgl",
"buildtargetid": "default-webgl",
"enabled": true,
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/polling"
}
}
},
{
"name": "Default Linux desktop Universal",
"platform": "standalonelinuxuniversal",
"buildtargetid": "default-linux-desktop-universal",
"enabled": true,
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/polling"
}
}
}
]
Delete all artifacts associated with all non-favorited builds for a specified buildtargetid (_all is allowed).
Description
Required Permissions
Request Parameters
curl
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/artifacts
buildsApi = BuildsApi(client)
build = buildsApi.delete_all_build_artifacts('{orgid}', '{projectid}', '{buildtargetid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Delete all artifacts associated with a specific build
Description
Required Permissions
Request Parameters
curl
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}/artifacts
buildsApi = BuildsApi(client)
build = buildsApi.delete_build_artifacts('{orgid}', '{projectid}', '{buildtargetid}', '{number}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Delete artifacts for a batch of builds
Description
Delete all artifacts whose build target ids and build numbers are included in the builds array. Alternatively, delete all builds that match a given filter, excluding builds from the operation by including their build target ids and build numbers in the excludedBuilds array (the allWithExclusions query parameter must be set to true for this to work). Builds that are favorited, or whose status does not match one of the following statuses, will not be deleted: success, failure, canceled, unknown.
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
-d '{builds: [{buildtargetid:"default-android",build:1}]}'
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/artifacts/delete
buildsApi = BuildsApi(client)
build = buildsApi.batch_delete_build_artifacts('{orgid}', '{projectid}', '{builds: [{buildtargetid:"default-android",build:1}]}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- numberOfDeletedBuildArtifacts: number
-
List all builds
Description
List all running and finished builds, sorted by build number (optionally paginating the results). Use '_all' as the buildtargetid to get all configured build targets. The response includes a Content-Range header that identifies the range of results returned and the total number of results matching the given query parameters.
Required Permissions
Request Parameters
Default List
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds
With Paging
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds?per_page=5&page=2
With Filtering
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds?buildStatus=success&platform=ios
# Default List
buildsApi = BuildsApi(client)
builds = buildsApi.get_builds('{orgid}', '{projectid}', '{buildtargetid}')
# With Paging
buildsApi = BuildsApi(client)
builds = buildsApi.get_builds('{orgid}', '{projectid}', '{buildtargetid}', per_page=5, page=2)
# With Filtering
buildsApi = BuildsApi(client)
builds = buildsApi.get_builds('{orgid}', '{projectid}', '{buildtargetid}', build_status='success', platform='ios')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
[
{
"orgId": "example-org-id",
"projectId": "new-project-id",
"projectName": "new-project-name",
"build": 2,
"buildtargetid": "android-builder",
"buildTargetName": "Android Builder",
"buildStatus": "success",
"platform": "android",
"workspaceSize": 8911006,
"created": "2015-07-14T21:56:28.202Z",
"finished": "2015-07-14T22:04:10.000Z",
"checkoutStartTime": "2015-07-14T22:00:20.000Z",
"checkoutTimeInSeconds": 40,
"buildStartTime": "2015-07-14T22:01:00.000Z",
"buildTimeInSeconds": 152.386056,
"publishStartTime": "2015-07-14T22:03:33.000Z",
"publishTimeInSeconds": 10.371839,
"totalTimeInSeconds": 461.798,
"lastBuiltRevision": "88e565df27ca35c2603c29eb924dc018f32a22c1",
"changeset": [],
"favorited": false,
"scmBranch": "master",
"unityVersion": "latest",
"auditChanges": 0,
"projectVersion": {
"name": "android-builder-2",
"filename": "example-org/new-project/android-builder-2/android-builder.apk",
"projectName": "New Project",
"platform": "android",
"size": 14452762,
"created": "2015-07-14T22:03:45.847Z",
"lastMod": "2015-07-14T22:03:46.251Z",
"bundleId": "com.unity3d.example",
"udids": []
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2"
},
"log": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/log"
},
"auditlog": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/auditlog"
},
"download_primary": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-build.s3.amazonaws.com/example-org/new-project/android-builder-2/android-builder.apk?AWSAccessKeyId=AKIAI6ZGSQWNDMF7X33A&Expires=1447890477&Signature=e9Hs%2FYECpVlrMITqCRY5dSWXChE%3D&response-content-disposition=attachment%3B%20filename%3Dexample-org%2Fnew-project-android-2-1436910988202.apk&response-content-type=application%2Foctet-stream",
"meta": {
"type": "APK"
}
},
"create_share": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/share"
},
"revoke_share": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/share"
},
"icon": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-project/android-builder-2/icon.png"
}
}
},
{
"orgId": "example-org-id",
"projectId": "new-project-id",
"projectName": "new-project-name",
"build": 1,
"buildtargetid": "android-builder",
"buildTargetName": "Android Builder",
"buildStatus": "success",
"cleanBuild": "false",
"platform": "android",
"workspaceSize": 8910982,
"created": "2015-07-14T21:51:26.520Z",
"finished": "2015-07-14T21:54:43.000Z",
"checkoutStartTime": "2015-07-14T21:51:45.000Z",
"checkoutTimeInSeconds": 41,
"buildStartTime": "2015-07-14T21:52:26.000Z",
"buildTimeInSeconds": 120.410226,
"publishStartTime": "2015-07-14T21:54:27.000Z",
"publishTimeInSeconds": 4.846675,
"totalTimeInSeconds": 196.48,
"lastBuiltRevision": "88e565df27ca35c2603c29eb924dc018f32a22c1",
"changeset": [],
"favorited": false,
"scmBranch": "master",
"unityVersion": "latest",
"auditChanges": 0,
"projectVersion": {
"name": "android-builder-1",
"filename": "example-org/new-project/android-builder-1/android-builder.apk",
"projectName": "Example Unity Project",
"platform": "android",
"size": 14443743,
"created": "2015-07-14T21:54:34.395Z",
"lastMod": "2015-07-14T21:54:34.776Z",
"bundleId": "com.tsugi.example",
"udids": []
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1"
},
"log": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1/log"
},
"auditlog": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1/auditlog"
},
"download_primary": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-build.s3.amazonaws.com/example-org/new-project/android-builder-1/android-builder.apk?AWSAccessKeyId=AKIAI6ZGSQWNDMF7X33A&Expires=1447890477&Signature=5Z4ouUFyVIJ8jaChE%2F6K%2FMHHpiM%3D&response-content-disposition=attachment%3B%20filename%3Dexample-org%2Fnew-project-android-1-1436910686520.apk&response-content-type=application%2Foctet-stream",
"meta": {
"type": "APK"
}
},
"create_share": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1/share"
},
"revoke_share": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1/share"
},
"icon": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-project/android-builder-1/icon.png"
}
}
}
]
Create new build
Description
Start the build process for this build target (or all targets, if '_all' is specified as the buildtargetid), if there is not one currently in process.
If a build is currently in process that information will be related in the 'error' field.
Required Permissions
Request Parameters
curl
-X POST
-d '{"clean": true, "delay": 30}'
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds
buildsApi = BuildsApi(client)
status = buildsApi.start_builds('{orgid}', '{projectid}', '{buildtargetid}', options={"clean": True, "delay": 30})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
Build Accepted
[
{
"build": 3,
"buildtargetid": "android-builder",
"buildTargetName": "Android Builder",
"buildStatus": "queued",
"cleanBuild": "false",
"platform": "a ndroid",
"created": "2015-11-19T22:02:20.244Z",
"changeset": [],
"favorited": false,
"auditChanges": 1,
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-ios/builds/3"
},
"log": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-ios/builds/3/log"
},
"auditlog": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-ios/builds/3/auditlog"
},
"cancel": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-ios/builds/3"
}
}
}
]
Build Already Started
[
{
"buildtargetid": "android-builder",
"buildTargetName": "Android Builder",
"error": "Cannot start build - already a build pending."
}
]
Cancel all builds
Description
Cancel all builds in progress for this build target (or all targets, if '_all' is specified as the buildtargetid). Canceling an already finished build will do nothing and respond successfully.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds
buildsApi = BuildsApi(client)
buildsApi.cancel_all_builds('{orgid}', '{projectid}', '{buildtargetid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Build Status
Description
Retrieve information for a specific build. A Build resource contains information related to a build attempt for a build target, including the build number, changeset, build times, and other pertinent data.
Required Permissions
Request Parameters
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}
buildsApi = BuildsApi(client)
build = buildsApi.get_build('{orgid}', '{projectid}', '{buildtargetid}', '{number}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
{
"build": 2,
"buildtargetid": "android-builder",
"buildTargetName": "Android Builder",
"buildStatus": "success",
"cleanBuild": "false",
"platform": "android",
"workspaceSize": 8911006,
"created": "2015-07-14T21:56:28.202Z",
"finished": "2015-07-14T22:04:10.000Z",
"checkoutStartTime": "2015-07-14T22:00:20.000Z",
"checkoutTimeInSeconds": 40,
"buildStartTime": "2015-07-14T22:01:00.000Z",
"buildTimeInSeconds": 152.386056,
"publishStartTime": "2015-07-14T22:03:33.000Z",
"publishTimeInSeconds": 10.371839,
"totalTimeInSeconds": 461.798,
"lastBuiltRevision": "88e565df27ca35c2603c29eb924dc018f32a22c1",
"changeset": [],
"favorited": true,
"auditChanges": 0,
"projectVersion": {
"name": "android-builder-2",
"filename": "example-org/new-project/android-builder-2/android-builder.apk",
"projectName": "Example Unity Project",
"platform": "android",
"size": 14452762,
"created": "2015-07-14T22:03:45.847Z",
"lastMod": "2015-07-14T22:03:46.251Z",
"bundleId": "com.tsugi.example",
"udids": []
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2"
},
"log": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/log"
},
"auditlog": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/auditlog"
},
"download_primary": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-build.s3.amazonaws.com/example-org/new-project/android-builder-2/android-builder.apk?AWSAccessKeyId=AKIAI6ZGSQWNDMF7X33A&Expires=1447973385&Signature=ffKQIKOJsKN6qrwzxObXSSyCVts%3D&response-content-disposition=attachment%3B%20filename%3Dexample-org%2Fnew-project-android-2-1436910988202.apk&response-content-type=application%2Foctet-stream",
"meta": {
"type": "APK"
}
},
"create_share": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/share"
},
"revoke_share": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/share"
},
"icon": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-project/android-builder-2/icon.png"
}
}
}
Cancel build
Description
Cancel a build in progress. Canceling an already finished build will do nothing and respond successfully.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}
buildsApi = BuildsApi(client)
build = buildsApi.cancel_build('{orgid}', '{projectid}', '{buildtargetid}', '{number}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Update build information
Description
Required Permissions
Request Parameters
curl
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
-d '{"favorited": true}'
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}
buildsApi = BuildsApi(client)
build = buildsApi.cancel_build('{orgid}', '{projectid}', '{buildtargetid}', '{number}', {"favorited": true}) responses:
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
{
"build": 2,
"buildtargetid": "android-builder",
"buildTargetName": "Android Builder",
"buildStatus": "success",
"cleanBuild": "false",
"platform": "android",
"workspaceSize": 8911006,
"created": "2015-07-14T21:56:28.202Z",
"finished": "2015-07-14T22:04:10.000Z",
"checkoutStartTime": "2015-07-14T22:00:20.000Z",
"checkoutTimeInSeconds": 40,
"buildStartTime": "2015-07-14T22:01:00.000Z",
"buildTimeInSeconds": 152.386056,
"publishStartTime": "2015-07-14T22:03:33.000Z",
"publishTimeInSeconds": 10.371839,
"totalTimeInSeconds": 461.798,
"lastBuiltRevision": "88e565df27ca35c2603c29eb924dc018f32a22c1",
"changeset": [],
"favorited": true,
"auditChanges": 0,
"projectVersion": {
"name": "android-builder-2",
"filename": "example-org/new-project/android-builder-2/android-builder.apk",
"projectName": "Example Unity Project",
"platform": "android",
"size": 14452762,
"created": "2015-07-14T22:03:45.847Z",
"lastMod": "2015-07-14T22:03:46.251Z",
"bundleId": "com.tsugi.example",
"udids": []
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2"
},
"log": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/log"
},
"auditlog": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/auditlog"
},
"download_primary": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-build.s3.amazonaws.com/example-org/new-project/android-builder-2/android-builder.apk?AWSAccessKeyId=AKIAI6ZGSQWNDMF7X33A&Expires=1447973385&Signature=ffKQIKOJsKN6qrwzxObXSSyCVts%3D&response-content-disposition=attachment%3B%20filename%3Dexample-org%2Fnew-project-android-2-1436910988202.apk&response-content-type=application%2Foctet-stream",
"meta": {
"type": "APK"
}
},
"create_share": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/share"
},
"revoke_share": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/share"
},
"icon": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-project/android-builder-2/icon.png"
}
}
}
Get audit log
Description
Retrieve a list of settings changes between the last and current build.
Required Permissions
Request Parameters
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}/auditlog
buildsApi = BuildsApi(client)
auditlog = buildsApi.get_audit_log('{orgid}', '{projectid}', '{buildtargetid}', '{number}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- updatingUserEmail: string
-
- updated: string (dateTime)
-
- lines: object[]
-
object - label: string
-
- field: string
-
- to: string
-
- from: string
-
[
{
"updatingUserEmail": "julie.smith@example.org",
"updated": "2015-08-04T17:18:24.532Z",
"lines": [{
"from": "Latest 4.x",
"to": "4.6.5",
"label": "Unity version",
"field": "buildtarget.settings.unityVersion"
}]
},
{
"updatingUserEmail": "sandra.johnson@example.org",
"updated": "2015-08-02T12:02:44.532Z",
"lines": [{
"label": "Keypass",
"field": "buildtarget.settings.platform.keystoreInfo.keypass",
"from": "",
"to": "changed"
}]
}
]
Re-sign a build artifact
Description
Re-sign a build artifact using the most recent credentials associated with the buildtarget.
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}/resign
buildsApi = BuildsApi(client)
build = buildsApi.resign_build_artifact('{orgid}', '{projectid}', '{buildtargetid}', '{number}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
Resign Accepted
[
{
"build": 3,
"buildtargetid": "default-ios",
"buildTargetName": "iOS Builder",
"buildStatus": "queued",
"cleanBuild": "false",
"platform": "ios",
"created": "2015-11-19T22:02:20.244Z",
"changeset": [],
"favorited": false,
"auditChanges": 1,
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-ios/builds/3"
},
"log": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-ios/builds/3/log"
},
"auditlog": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-ios/builds/3/auditlog"
},
"cancel": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-ios/builds/3"
}
}
}
]
Resign Already Started
[
{
"buildtargetid": "default-ios",
"buildTargetName": "iOS Builder",
"error": "Cannot start build - already a build pending."
}
]
Cancel artifacts for a batch of builds
Description
Cancel all builds whose build target ids and build numbers are included in the builds array. Builds that are not currently in progress will be ignored
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
-d '{builds: [{buildtargetid:"default-android",build:1}]}'
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/builds/cancel
buildsApi = BuildsApi(client)
build = buildsApi.batch_cancel_build_artifacts('{orgid}', '{projectid}', '{builds: [{buildtargetid:"default-android",build:1}]}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
List all builds for org
Description
List all running and finished builds, sorted by build number (optionally paginating the results). The response includes a Content-Range header that identifies the range of results returned and the total number of results matching the given query parameters.
Required Permissions
Request Parameters
Default List
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/builds
With Paging
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/builds?per_page=5&page=2
With Filtering
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/builds?buildStatus=success&platform=ios
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
[
{
"orgId": "example-org-id",
"projectId": "new-project-id",
"projectName": "new-project-name",
"build": 2,
"buildtargetid": "android-builder",
"buildTargetName": "Android Builder",
"buildStatus": "success",
"cleanBuild": "true",
"platform": "android",
"workspaceSize": 8911006,
"created": "2015-07-14T21:56:28.202Z",
"finished": "2015-07-14T22:04:10.000Z",
"checkoutStartTime": "2015-07-14T22:00:20.000Z",
"checkoutTimeInSeconds": 40,
"buildStartTime": "2015-07-14T22:01:00.000Z",
"buildTimeInSeconds": 152.386056,
"publishStartTime": "2015-07-14T22:03:33.000Z",
"publishTimeInSeconds": 10.371839,
"totalTimeInSeconds": 461.798,
"lastBuiltRevision": "88e565df27ca35c2603c29eb924dc018f32a22c1",
"changeset": [],
"favorited": false,
"scmBranch": "master",
"unityVersion": "latest",
"auditChanges": 0,
"projectVersion": {
"name": "android-builder-2",
"filename": "example-org/new-project/android-builder-2/android-builder.apk",
"projectName": "New Project",
"platform": "android",
"size": 14452762,
"created": "2015-07-14T22:03:45.847Z",
"lastMod": "2015-07-14T22:03:46.251Z",
"bundleId": "com.unity3d.example",
"udids": []
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2"
},
"log": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/log"
},
"auditlog": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/auditlog"
},
"download_primary": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-build.s3.amazonaws.com/example-org/new-project/android-builder-2/android-builder.apk?AWSAccessKeyId=AKIAI6ZGSQWNDMF7X33A&Expires=1447890477&Signature=e9Hs%2FYECpVlrMITqCRY5dSWXChE%3D&response-content-disposition=attachment%3B%20filename%3Dexample-org%2Fnew-project-android-2-1436910988202.apk&response-content-type=application%2Foctet-stream",
"meta": {
"type": "APK"
}
},
"create_share": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/share"
},
"revoke_share": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/2/share"
},
"icon": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-project/android-builder-2/icon.png"
}
}
},
{
"orgId": "example-org-id",
"projectId": "new-project-id",
"projectName": "new-project-name",
"build": 1,
"buildtargetid": "android-builder",
"buildTargetName": "Android Builder",
"buildStatus": "success",
"cleanBuild": "false",
"platform": "android",
"workspaceSize": 8910982,
"created": "2015-07-14T21:51:26.520Z",
"finished": "2015-07-14T21:54:43.000Z",
"checkoutStartTime": "2015-07-14T21:51:45.000Z",
"checkoutTimeInSeconds": 41,
"buildStartTime": "2015-07-14T21:52:26.000Z",
"buildTimeInSeconds": 120.410226,
"publishStartTime": "2015-07-14T21:54:27.000Z",
"publishTimeInSeconds": 4.846675,
"totalTimeInSeconds": 196.48,
"lastBuiltRevision": "88e565df27ca35c2603c29eb924dc018f32a22c1",
"changeset": [],
"favorited": false,
"scmBranch": "master",
"unityVersion": "latest",
"auditChanges": 0,
"projectVersion": {
"name": "android-builder-1",
"filename": "example-org/new-project/android-builder-1/android-builder.apk",
"projectName": "Example Unity Project",
"platform": "android",
"size": 14443743,
"created": "2015-07-14T21:54:34.395Z",
"lastMod": "2015-07-14T21:54:34.776Z",
"bundleId": "com.tsugi.example",
"udids": []
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1"
},
"log": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1/log"
},
"auditlog": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1/auditlog"
},
"download_primary": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-build.s3.amazonaws.com/example-org/new-project/android-builder-1/android-builder.apk?AWSAccessKeyId=AKIAI6ZGSQWNDMF7X33A&Expires=1447890477&Signature=5Z4ouUFyVIJ8jaChE%2F6K%2FMHHpiM%3D&response-content-disposition=attachment%3B%20filename%3Dexample-org%2Fnew-project-android-1-1436910686520.apk&response-content-type=application%2Foctet-stream",
"meta": {
"type": "APK"
}
},
"create_share": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1/share"
},
"revoke_share": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/android-builder/builds/1/share"
},
"icon": {
"method": "get",
"href": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-project/android-builder-1/icon.png"
}
}
}
]
Cancel builds for org
Description
Cancel all in progress builds for an organization. Canceling an already finished build will do nothing and respond successfully.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/builds
buildsApi = BuildsApi(client)
build = buildsApi.cancel_builds_for_org('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get build log
Description
Retrieve the plain text log for a specific build.
Please note that this route will normally redirect with a 303 code to the build log for a completed job, so it is important to follow redirects.
Required Permissions
Request Parameters
Retrieve full log
curl
-L GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}/log
Retrieve HTML compact log
curl
-L GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}/log?compact=true&withHtml=true
# Retrieve full log
buildsApi = BuildsApi(client)
log = buildsApi.get_build_log('{orgid}', '{projectid}', '{buildtargetid}', '{number}')
# Retrieve HTML compact log
log = buildsApi.get_build_log('{orgid}', '{projectid}', '{buildtargetid}', '{number}', 1, compact='true', with_html='true')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Full text log
Running Prebuild steps
done.
bvr 0.2.47
bvr-api 0.0.41
Using strategy: Default
Cloning the remote Git repository
...
WORKSPACESIZE | ARTIFACTSSIZE
8.50 MiB | 13.81 MiB
Publishing build 2 of example-org/new-project for target 'android-builder'...
Uploading /BUILD_PATH/example-org.new-project.android-builder/.build/last/android-builder/android-builder.apk ...done
Uploading /BUILD_PATH/example-org.new-project.android-builder/.build/last/android-builder/extra_data/artifacts/icon.png ...done
publishing finished successfully.
done.
postbuildstatus finished successfully.
Deleting project workspace...
Finished: SUCCESS
Compact text log
[Unity] Initialize engine version: 4.6.4f1 (99f88340878d)
[Unity] Initialize engine version: 4.6.4f1 (99f88340878d)
[Unity] Finished exporting player successfully.
Warning:
publishing finished successfully.
Finished: SUCCESS
Compact HTML log
<span class="log_important_line">[Unity] <span class="log_important">Initialize engine version: </span>4.6.4f1 (99f88340878d)</span>
<span class="log_important_line">[Unity] <span class="log_important">Initialize engine version: </span>4.6.4f1 (99f88340878d)</span>
<span class="log_success_line">[Unity] <span class="log_success">Finished exporting player successfully.</span></span>
<span class="log_warning_line"> <span class="log_warning">Warning</span>: </span>
<span class="log_success_line"><span class="log_success">publishing finished successfully</span>.</span>
<span class="log_success_line"><span class="log_success">Finished: SUCCESS</span></span>
- error: string
-
- errorCode: string
-
- detail: string[]
-
string
Get the build steps for a given build
Description
Retrieves all build steps for a build, this replaces the old method where we would manually download the build report artifacts and allows us to add more functionality into build steps.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/builds/{number}/steps
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- depth: integer
-
- duration: number
-
- name: string
-
- messages: object[]
-
object - content: string
-
- typeCode: integer
-
[{
"depth": 0,
"duration": 67138.5108,
"name": "Build player",
"messages": []
}, {
"depth": 1,
"duration": 2839.5708,
"name": "Compile scripts",
"messages": [{
"content": "Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.cs(28,13): warning CS0618: 'Application.ExternalEval(string)' is obsolete: 'Application.ExternalEval is deprecated. See https://docs.unity3d.com/Manual/webgl-interactingwithbrowserscripting.html for alternatives.'",
"typeCode": 2,
}]
}, {
"depth": 1,
"duration": 0.027,
"name": "Prepare splash screen",
"messages": []
}])
Buildtargets Introduction
Build Targets are the configuration to build a project for a specific platform and/or source control branch.
List all build targets for a project
Description
Gets all configured build targets for a project, regardless of whether they are enabled. Add "?include=settings,credentials" as a query parameter to include the build target settings and credentials with the response.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets
buildtargetsApi = BuildtargetsApi(client)
buildtargets = buildtargetsApi.get_build_targets('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- createdBy: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- enabled: boolean
-
whether this target can be built by the API
- settings: object
-
- autoBuild: boolean
-
start builds automatically when your repo is updated
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- autoDetectUnityVersion: boolean
-
attempt to automatically detect which unity version to use, fallback to specified unityVersion if unable to.
- fallbackPatchVersion: boolean
-
attempt to get a similar unity patch version to use, applies to unavailable auto-detected Unity versions only.
- executablename: string
-
- buildProfilePath: string
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- isUnityCloudDrive: boolean
-
If true, the build will use the Unity Cloud Drive for the source code (only applies to UVCS projects).
- repo: string
-
Which repo to use. Only applies to Plastic SCM, other SCM types configure repo on the project level.
- branch: string
-
- subdirectory: string
-
subdirectory to build from
- client: string
-
perforce only client workspace to build from
- platform: object
-
- bundleId: string
-
a unique identifier (com.example.name)
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- buildSchedule: object
-
For Scheduling builds
- isEnabled: boolean
-
- date: string (date-time)
-
- repeatCycle: string , x ∈ { none , once (default) , daily , weekly , monthly , yearly }
-
- cleanBuild: boolean
-
- autoBuildCancellation: boolean
-
- machineTypeLabel: string
-
- operatingSystemSelected: string , x ∈ { mac , windows }
-
- operatingSystemVersion: string
-
Choose the version of the operating system for building your project.
- rubyVersion: string
-
- remoteCacheStrategy: string , x ∈ { none , library , workspace , boostdisk , inherit }
-
Specifies the caching strategy (none, library, workspace, or inherit) for remote data storage and retrieval
- windowsGitBinary: string , x ∈ { inherit (default) , native , cygwin }
-
Specifies the Git binary that will be used for Windows builds
- buildTargetCopyCache: string
-
Specifies the id of the build target that this target's cache was copied from
- architecture: string
-
Specifies the Unity editor architecture to use for building the project.
- cacheCompressionLevel: string , x ∈ { inherit (default) , none , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
Specifies the compression level for caching workspace or Library.
- advanced: object
-
- cache: object
-
- xcode: object
-
- useArchiveAndExport: boolean
-
- customFastlaneConfigPath: string
-
The path (including file name) from the project root to the custom FastLane configuration json file to configure multiple provisioning files, or customize the FastLane build process. See https://forum.unity.com/threads/xcode-9-multiple-provisioning-profiles.545121/ Will look for Assets/ucb_xcode_fastlane.json by default, if not specified.
- uploadXCArchive: boolean
-
Upload the XCArchive file produced by the build. This file will be downloadable from the dashboard if this property is true.
- shouldNotarize: boolean
-
Only used with OSX targets, this triggers signing and notarization process for the executable.
- android: object
-
- buildAppBundle: boolean
-
- buildAssetPacks: boolean
-
- androidSDKVersion: string
-
Android SDK Version
- unity: object
-
- preExportMethod: string
-
The fully-qualified name of a public static method you want us to call before we start the Unity build process. For example: ClassName.NeatMethod or NameSpace.ClassName.NeatMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method!
- postExportMethod: string
-
The fully-qualified name of a public static method you want us to call after we finish the Unity build process (but before Xcode). For example: ClassName.CoolMethod or NameSpace.ClassName.CoolMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method! This method must accept a string parameter, which will receive the path to the exported Unity player (or Xcode project in the case of iOS).
- preBuildScript: string
-
Relative path to the script that should be run before the build process starts.
- postBuildScript: string
-
Relative path to the script that should be run after the build process finishes.
- preBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your preBuildScript will cause your build to be marked as Failed
- postBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your postBuildScript will cause your build to be marked as Failed
- scriptingDefineSymbols: string
-
Enter the names of the symbols you want to define for iOS. These symbols can then be used as the conditions for #if directives just like the built-in ones. (i.e. #IF MYDEFINE or #IF AMAZON)
- playerExporter: object
-
- sceneList: string[]
-
A list of scenes to build overriding those specified in the Build Settings menu of your Unity project.
string scene names
- buildOptions: string[]
-
Unity Editor build options. Use BuildOptions.Development and BuildOptions.AllowDebugging to create a development build.
string - export: boolean true
-
Enable exporting a player from Unity (i.e. running BuildPipeline.BuildPlayer). Enabling this is equivalent to disabling Content-only Build in Build Target on Developer Dashboard. In general, this should be true, unless you are doing something something like an asset bundle only build or unit test only build without generating an actual build artifact.
- playerSettings: object
-
- Android: object
-
- useAPKExpansionFiles: boolean
-
break up android apk into an installable apk and expansion files
- Switch: object
-
- useSwitchCPUProfiler: boolean
-
Weather to use CPU profiler or not
- editorUserBuildSettings: object
-
- androidBuildSystem: string , x ∈ { internal , gradle }
-
which android build system to build with (android only, supported in Unity 5.5+)
- standaloneBuildSubtarget: string , x ∈ { Player (default) , Server }
-
standalone build subtarget for Dedicated Server Build (supported in Unity 2021.2+). see https://docs.unity3d.com/2021.2/Documentation/ScriptReference/StandaloneBuildSubtarget.html
- assetBundles: object
-
- buildBundles: boolean
-
enable asset bundle builds for this target
- basePath: string
-
base path relative to Assets folder where asset bundles are output. Default is 'AssetBundles'
- buildAssetBundleOptions: string
-
comma separated list of flags from BuildAssetBundleOptions. see https://docs.unity3d.com/ScriptReference/BuildAssetBundleOptions.html
- copyToStreamingAssets: boolean
-
copy bundles to streaming assets folder, which will be packaged into the exported player.
- copyBundlePatterns: string[]
-
array of patterns to match (C# Regular Expressions) when copying asset bundle files. By default, all bundles will be copied.
string
- addressables: object
-
- buildAddressables: boolean
-
enable addressable builds for this target
- contentUpdate: boolean
-
Update a previously built player with new Addressable Content.
- profileName: string
-
which addressables profile should be used for the build
- failedAddressablesFailsBuild: boolean true
-
Exit and mark the build as failed if an error occurs when addressables are built
- contentUpdateSettings: object
-
- contentStatePath: string
-
The path to a Content State .bin file relative to the project root
- linkedTargetId: string
-
The Id of the build target to obtain a Content State .bin file from
- generateBuildLayout: boolean
-
Whether to generate the bundle build layout report.
- buildLayoutReportFileFormat: string , x ∈ { JSON (default) , TXT }
-
The format of the bundle build layout report.
- runUnitTests: boolean
-
Run any unit tests your project has when a build happens.
- runEditModeTests: boolean
-
Should Edit Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- runPlayModeTests: boolean
-
Should Play Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- failedUnitTestFailsBuild: boolean
-
Mark builds as failed if the unit tests do not pass.
- unitTestMethod: string
-
LEGACY - The Unity method to call when running unit tests (only supported in Unity 5.2 and lower).
- enableLightBake: boolean
-
Enable lightmap baking (disabled by default since it is very slow and usually unnecessary)
- uwp: object
-
- windowsSDKVersion: string , x ∈ { 10.0.17134.0 , 10.0.17763.0 , 10.0.18362.0 , 10.0.19041.0 , 10.0.20348.0 , 10.0.22621.0 , 10.0.22000.0 }
-
Sets Windows SDK Version to use when building UWP
- visualStudioVersion: string , x ∈ { 2019 , 2022 }
-
Sets the Visual Studio Version to use when building UWP
- wsaArchitecture: string,null , x ∈ { x64 , x86 , ARM , ARM64 }
-
Sets target architecture for Exectuable Only builds
- capabilities: array,null
-
Sets the capabilities of the build UWP application
- targetFamily: string[]
-
Sets the target device family for the build
string , x ∈ { Universal , Desktop , Mobile , Xbox , Holographic , IoT , IoTHeadless } The target device family
- buildType: string , x ∈ { ExecutableOnly , D3D , XAML }
-
Sets the build type for UWP. Executable
- msbuildConfiguration: string,null , x ∈ { Debug , Release , Master , MasterWithLTCG }
-
Sets the ms build configuration for UWP
- platforms: array,null
-
Sets the target platforms for the AppXBundle
- publishVisualStudioSolution: boolean
-
Enable publishing of the visual studio .sln file
- gamecorescarlett: object
-
- ps5: object
-
- ignorePlasticCheckedInLibrary: boolean
-
Ignore the checked-in Library folder when building from Plastic SCM.
- buildTargetGroups: object[]
-
object - id: string
-
- name: string
-
- lastBuilt: object
-
- unityVersion: string
-
Last Unity version built by this target. Setting this has no effect.
- credentials: object
-
- signing: object
-
- credentialid: string
-
- credentialResourceRef: object
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- uuid: string
-
generated UUID of the profile
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
expiration date
- links: object
-
- builds: object[]
-
object buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
- links: object
-
[
{
"name": "Default WebGL",
"platform": "webgl",
"buildtargetid": "default-webgl",
"enabled": true,
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/polling"
}
}
},
{
"name": "Default Linux desktop Universal",
"platform": "standalonelinuxuniversal",
"buildtargetid": "default-linux-desktop-universal",
"enabled": true,
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/polling"
}
}
}
]
Create build target for a project
Description
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-d '{"name": "Default Mac desktop Universal", "platform": "standaloneosx", "enabled": true}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets
buildtargetsApi = BuildtargetsApi(client)
buildtarget = buildtargetsApi.add_build_target('{orgid}', '{projectid}', options={"name": "Default Mac desktop Universal", "platform": "standaloneosx", "enabled": True})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- createdBy: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- enabled: boolean
-
whether this target can be built by the API
- settings: object
-
- autoBuild: boolean
-
start builds automatically when your repo is updated
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- autoDetectUnityVersion: boolean
-
attempt to automatically detect which unity version to use, fallback to specified unityVersion if unable to.
- fallbackPatchVersion: boolean
-
attempt to get a similar unity patch version to use, applies to unavailable auto-detected Unity versions only.
- executablename: string
-
- buildProfilePath: string
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- isUnityCloudDrive: boolean
-
If true, the build will use the Unity Cloud Drive for the source code (only applies to UVCS projects).
- repo: string
-
Which repo to use. Only applies to Plastic SCM, other SCM types configure repo on the project level.
- branch: string
-
- subdirectory: string
-
subdirectory to build from
- client: string
-
perforce only client workspace to build from
- platform: object
-
- bundleId: string
-
a unique identifier (com.example.name)
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- buildSchedule: object
-
For Scheduling builds
- isEnabled: boolean
-
- date: string (date-time)
-
- repeatCycle: string , x ∈ { none , once (default) , daily , weekly , monthly , yearly }
-
- cleanBuild: boolean
-
- autoBuildCancellation: boolean
-
- machineTypeLabel: string
-
- operatingSystemSelected: string , x ∈ { mac , windows }
-
- operatingSystemVersion: string
-
Choose the version of the operating system for building your project.
- rubyVersion: string
-
- remoteCacheStrategy: string , x ∈ { none , library , workspace , boostdisk , inherit }
-
Specifies the caching strategy (none, library, workspace, or inherit) for remote data storage and retrieval
- windowsGitBinary: string , x ∈ { inherit (default) , native , cygwin }
-
Specifies the Git binary that will be used for Windows builds
- buildTargetCopyCache: string
-
Specifies the id of the build target that this target's cache was copied from
- architecture: string
-
Specifies the Unity editor architecture to use for building the project.
- cacheCompressionLevel: string , x ∈ { inherit (default) , none , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
Specifies the compression level for caching workspace or Library.
- advanced: object
-
- cache: object
-
- xcode: object
-
- useArchiveAndExport: boolean
-
- customFastlaneConfigPath: string
-
The path (including file name) from the project root to the custom FastLane configuration json file to configure multiple provisioning files, or customize the FastLane build process. See https://forum.unity.com/threads/xcode-9-multiple-provisioning-profiles.545121/ Will look for Assets/ucb_xcode_fastlane.json by default, if not specified.
- uploadXCArchive: boolean
-
Upload the XCArchive file produced by the build. This file will be downloadable from the dashboard if this property is true.
- shouldNotarize: boolean
-
Only used with OSX targets, this triggers signing and notarization process for the executable.
- android: object
-
- buildAppBundle: boolean
-
- buildAssetPacks: boolean
-
- androidSDKVersion: string
-
Android SDK Version
- unity: object
-
- preExportMethod: string
-
The fully-qualified name of a public static method you want us to call before we start the Unity build process. For example: ClassName.NeatMethod or NameSpace.ClassName.NeatMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method!
- postExportMethod: string
-
The fully-qualified name of a public static method you want us to call after we finish the Unity build process (but before Xcode). For example: ClassName.CoolMethod or NameSpace.ClassName.CoolMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method! This method must accept a string parameter, which will receive the path to the exported Unity player (or Xcode project in the case of iOS).
- preBuildScript: string
-
Relative path to the script that should be run before the build process starts.
- postBuildScript: string
-
Relative path to the script that should be run after the build process finishes.
- preBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your preBuildScript will cause your build to be marked as Failed
- postBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your postBuildScript will cause your build to be marked as Failed
- scriptingDefineSymbols: string
-
Enter the names of the symbols you want to define for iOS. These symbols can then be used as the conditions for #if directives just like the built-in ones. (i.e. #IF MYDEFINE or #IF AMAZON)
- playerExporter: object
-
- sceneList: string[]
-
A list of scenes to build overriding those specified in the Build Settings menu of your Unity project.
string scene names
- buildOptions: string[]
-
Unity Editor build options. Use BuildOptions.Development and BuildOptions.AllowDebugging to create a development build.
string - export: boolean true
-
Enable exporting a player from Unity (i.e. running BuildPipeline.BuildPlayer). Enabling this is equivalent to disabling Content-only Build in Build Target on Developer Dashboard. In general, this should be true, unless you are doing something something like an asset bundle only build or unit test only build without generating an actual build artifact.
- playerSettings: object
-
- Android: object
-
- useAPKExpansionFiles: boolean
-
break up android apk into an installable apk and expansion files
- Switch: object
-
- useSwitchCPUProfiler: boolean
-
Weather to use CPU profiler or not
- editorUserBuildSettings: object
-
- androidBuildSystem: string , x ∈ { internal , gradle }
-
which android build system to build with (android only, supported in Unity 5.5+)
- standaloneBuildSubtarget: string , x ∈ { Player (default) , Server }
-
standalone build subtarget for Dedicated Server Build (supported in Unity 2021.2+). see https://docs.unity3d.com/2021.2/Documentation/ScriptReference/StandaloneBuildSubtarget.html
- assetBundles: object
-
- buildBundles: boolean
-
enable asset bundle builds for this target
- basePath: string
-
base path relative to Assets folder where asset bundles are output. Default is 'AssetBundles'
- buildAssetBundleOptions: string
-
comma separated list of flags from BuildAssetBundleOptions. see https://docs.unity3d.com/ScriptReference/BuildAssetBundleOptions.html
- copyToStreamingAssets: boolean
-
copy bundles to streaming assets folder, which will be packaged into the exported player.
- copyBundlePatterns: string[]
-
array of patterns to match (C# Regular Expressions) when copying asset bundle files. By default, all bundles will be copied.
string
- addressables: object
-
- buildAddressables: boolean
-
enable addressable builds for this target
- contentUpdate: boolean
-
Update a previously built player with new Addressable Content.
- profileName: string
-
which addressables profile should be used for the build
- failedAddressablesFailsBuild: boolean true
-
Exit and mark the build as failed if an error occurs when addressables are built
- contentUpdateSettings: object
-
- contentStatePath: string
-
The path to a Content State .bin file relative to the project root
- linkedTargetId: string
-
The Id of the build target to obtain a Content State .bin file from
- generateBuildLayout: boolean
-
Whether to generate the bundle build layout report.
- buildLayoutReportFileFormat: string , x ∈ { JSON (default) , TXT }
-
The format of the bundle build layout report.
- runUnitTests: boolean
-
Run any unit tests your project has when a build happens.
- runEditModeTests: boolean
-
Should Edit Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- runPlayModeTests: boolean
-
Should Play Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- failedUnitTestFailsBuild: boolean
-
Mark builds as failed if the unit tests do not pass.
- unitTestMethod: string
-
LEGACY - The Unity method to call when running unit tests (only supported in Unity 5.2 and lower).
- enableLightBake: boolean
-
Enable lightmap baking (disabled by default since it is very slow and usually unnecessary)
- uwp: object
-
- windowsSDKVersion: string , x ∈ { 10.0.17134.0 , 10.0.17763.0 , 10.0.18362.0 , 10.0.19041.0 , 10.0.20348.0 , 10.0.22621.0 , 10.0.22000.0 }
-
Sets Windows SDK Version to use when building UWP
- visualStudioVersion: string , x ∈ { 2019 , 2022 }
-
Sets the Visual Studio Version to use when building UWP
- wsaArchitecture: string,null , x ∈ { x64 , x86 , ARM , ARM64 }
-
Sets target architecture for Exectuable Only builds
- capabilities: array,null
-
Sets the capabilities of the build UWP application
- targetFamily: string[]
-
Sets the target device family for the build
string , x ∈ { Universal , Desktop , Mobile , Xbox , Holographic , IoT , IoTHeadless } The target device family
- buildType: string , x ∈ { ExecutableOnly , D3D , XAML }
-
Sets the build type for UWP. Executable
- msbuildConfiguration: string,null , x ∈ { Debug , Release , Master , MasterWithLTCG }
-
Sets the ms build configuration for UWP
- platforms: array,null
-
Sets the target platforms for the AppXBundle
- publishVisualStudioSolution: boolean
-
Enable publishing of the visual studio .sln file
- gamecorescarlett: object
-
- ps5: object
-
- ignorePlasticCheckedInLibrary: boolean
-
Ignore the checked-in Library folder when building from Plastic SCM.
- buildTargetGroups: object[]
-
object - id: string
-
- name: string
-
- lastBuilt: object
-
- unityVersion: string
-
Last Unity version built by this target. Setting this has no effect.
- credentials: object
-
- signing: object
-
- credentialid: string
-
- credentialResourceRef: object
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- uuid: string
-
generated UUID of the profile
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
expiration date
- links: object
-
- builds: object[]
-
object buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
- links: object
-
{
"name": "Default Mac desktop Universal",
"platform": "standaloneosx",
"buildtargetid": "default-mac-desktop-universal",
"enabled": true,
"settings": {
"autoBuild": false,
"unityVersion": "latest",
"autoDetectUnityVersion": "false",
"fallbackPatchVersion": "false",
"executablename": "Default Mac desktop Universal",
"scm": {
"type": "git"
},
"platform": {},
"advanced": {}
},
"credentials": {
"signing": {}
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-mac-desktop-universal"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-mac-desktop-universal/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-mac-desktop-universal/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-mac-desktop-universal/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-mac-desktop-universal/polling"
}
}
}
Get a build target
Description
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}
buildtargetsApi = BuildtargetsApi(client)
buildtarget = buildtargetsApi.get_build_target('{orgid}', '{projectid}', '{buildtargetid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- createdBy: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- enabled: boolean
-
whether this target can be built by the API
- settings: object
-
- autoBuild: boolean
-
start builds automatically when your repo is updated
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- autoDetectUnityVersion: boolean
-
attempt to automatically detect which unity version to use, fallback to specified unityVersion if unable to.
- fallbackPatchVersion: boolean
-
attempt to get a similar unity patch version to use, applies to unavailable auto-detected Unity versions only.
- executablename: string
-
- buildProfilePath: string
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- isUnityCloudDrive: boolean
-
If true, the build will use the Unity Cloud Drive for the source code (only applies to UVCS projects).
- repo: string
-
Which repo to use. Only applies to Plastic SCM, other SCM types configure repo on the project level.
- branch: string
-
- subdirectory: string
-
subdirectory to build from
- client: string
-
perforce only client workspace to build from
- platform: object
-
- bundleId: string
-
a unique identifier (com.example.name)
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- buildSchedule: object
-
For Scheduling builds
- isEnabled: boolean
-
- date: string (date-time)
-
- repeatCycle: string , x ∈ { none , once (default) , daily , weekly , monthly , yearly }
-
- cleanBuild: boolean
-
- autoBuildCancellation: boolean
-
- machineTypeLabel: string
-
- operatingSystemSelected: string , x ∈ { mac , windows }
-
- operatingSystemVersion: string
-
Choose the version of the operating system for building your project.
- rubyVersion: string
-
- remoteCacheStrategy: string , x ∈ { none , library , workspace , boostdisk , inherit }
-
Specifies the caching strategy (none, library, workspace, or inherit) for remote data storage and retrieval
- windowsGitBinary: string , x ∈ { inherit (default) , native , cygwin }
-
Specifies the Git binary that will be used for Windows builds
- buildTargetCopyCache: string
-
Specifies the id of the build target that this target's cache was copied from
- architecture: string
-
Specifies the Unity editor architecture to use for building the project.
- cacheCompressionLevel: string , x ∈ { inherit (default) , none , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
Specifies the compression level for caching workspace or Library.
- advanced: object
-
- cache: object
-
- xcode: object
-
- useArchiveAndExport: boolean
-
- customFastlaneConfigPath: string
-
The path (including file name) from the project root to the custom FastLane configuration json file to configure multiple provisioning files, or customize the FastLane build process. See https://forum.unity.com/threads/xcode-9-multiple-provisioning-profiles.545121/ Will look for Assets/ucb_xcode_fastlane.json by default, if not specified.
- uploadXCArchive: boolean
-
Upload the XCArchive file produced by the build. This file will be downloadable from the dashboard if this property is true.
- shouldNotarize: boolean
-
Only used with OSX targets, this triggers signing and notarization process for the executable.
- android: object
-
- buildAppBundle: boolean
-
- buildAssetPacks: boolean
-
- androidSDKVersion: string
-
Android SDK Version
- unity: object
-
- preExportMethod: string
-
The fully-qualified name of a public static method you want us to call before we start the Unity build process. For example: ClassName.NeatMethod or NameSpace.ClassName.NeatMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method!
- postExportMethod: string
-
The fully-qualified name of a public static method you want us to call after we finish the Unity build process (but before Xcode). For example: ClassName.CoolMethod or NameSpace.ClassName.CoolMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method! This method must accept a string parameter, which will receive the path to the exported Unity player (or Xcode project in the case of iOS).
- preBuildScript: string
-
Relative path to the script that should be run before the build process starts.
- postBuildScript: string
-
Relative path to the script that should be run after the build process finishes.
- preBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your preBuildScript will cause your build to be marked as Failed
- postBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your postBuildScript will cause your build to be marked as Failed
- scriptingDefineSymbols: string
-
Enter the names of the symbols you want to define for iOS. These symbols can then be used as the conditions for #if directives just like the built-in ones. (i.e. #IF MYDEFINE or #IF AMAZON)
- playerExporter: object
-
- sceneList: string[]
-
A list of scenes to build overriding those specified in the Build Settings menu of your Unity project.
string scene names
- buildOptions: string[]
-
Unity Editor build options. Use BuildOptions.Development and BuildOptions.AllowDebugging to create a development build.
string - export: boolean true
-
Enable exporting a player from Unity (i.e. running BuildPipeline.BuildPlayer). Enabling this is equivalent to disabling Content-only Build in Build Target on Developer Dashboard. In general, this should be true, unless you are doing something something like an asset bundle only build or unit test only build without generating an actual build artifact.
- playerSettings: object
-
- Android: object
-
- useAPKExpansionFiles: boolean
-
break up android apk into an installable apk and expansion files
- Switch: object
-
- useSwitchCPUProfiler: boolean
-
Weather to use CPU profiler or not
- editorUserBuildSettings: object
-
- androidBuildSystem: string , x ∈ { internal , gradle }
-
which android build system to build with (android only, supported in Unity 5.5+)
- standaloneBuildSubtarget: string , x ∈ { Player (default) , Server }
-
standalone build subtarget for Dedicated Server Build (supported in Unity 2021.2+). see https://docs.unity3d.com/2021.2/Documentation/ScriptReference/StandaloneBuildSubtarget.html
- assetBundles: object
-
- buildBundles: boolean
-
enable asset bundle builds for this target
- basePath: string
-
base path relative to Assets folder where asset bundles are output. Default is 'AssetBundles'
- buildAssetBundleOptions: string
-
comma separated list of flags from BuildAssetBundleOptions. see https://docs.unity3d.com/ScriptReference/BuildAssetBundleOptions.html
- copyToStreamingAssets: boolean
-
copy bundles to streaming assets folder, which will be packaged into the exported player.
- copyBundlePatterns: string[]
-
array of patterns to match (C# Regular Expressions) when copying asset bundle files. By default, all bundles will be copied.
string
- addressables: object
-
- buildAddressables: boolean
-
enable addressable builds for this target
- contentUpdate: boolean
-
Update a previously built player with new Addressable Content.
- profileName: string
-
which addressables profile should be used for the build
- failedAddressablesFailsBuild: boolean true
-
Exit and mark the build as failed if an error occurs when addressables are built
- contentUpdateSettings: object
-
- contentStatePath: string
-
The path to a Content State .bin file relative to the project root
- linkedTargetId: string
-
The Id of the build target to obtain a Content State .bin file from
- generateBuildLayout: boolean
-
Whether to generate the bundle build layout report.
- buildLayoutReportFileFormat: string , x ∈ { JSON (default) , TXT }
-
The format of the bundle build layout report.
- runUnitTests: boolean
-
Run any unit tests your project has when a build happens.
- runEditModeTests: boolean
-
Should Edit Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- runPlayModeTests: boolean
-
Should Play Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- failedUnitTestFailsBuild: boolean
-
Mark builds as failed if the unit tests do not pass.
- unitTestMethod: string
-
LEGACY - The Unity method to call when running unit tests (only supported in Unity 5.2 and lower).
- enableLightBake: boolean
-
Enable lightmap baking (disabled by default since it is very slow and usually unnecessary)
- uwp: object
-
- windowsSDKVersion: string , x ∈ { 10.0.17134.0 , 10.0.17763.0 , 10.0.18362.0 , 10.0.19041.0 , 10.0.20348.0 , 10.0.22621.0 , 10.0.22000.0 }
-
Sets Windows SDK Version to use when building UWP
- visualStudioVersion: string , x ∈ { 2019 , 2022 }
-
Sets the Visual Studio Version to use when building UWP
- wsaArchitecture: string,null , x ∈ { x64 , x86 , ARM , ARM64 }
-
Sets target architecture for Exectuable Only builds
- capabilities: array,null
-
Sets the capabilities of the build UWP application
- targetFamily: string[]
-
Sets the target device family for the build
string , x ∈ { Universal , Desktop , Mobile , Xbox , Holographic , IoT , IoTHeadless } The target device family
- buildType: string , x ∈ { ExecutableOnly , D3D , XAML }
-
Sets the build type for UWP. Executable
- msbuildConfiguration: string,null , x ∈ { Debug , Release , Master , MasterWithLTCG }
-
Sets the ms build configuration for UWP
- platforms: array,null
-
Sets the target platforms for the AppXBundle
- publishVisualStudioSolution: boolean
-
Enable publishing of the visual studio .sln file
- gamecorescarlett: object
-
- ps5: object
-
- ignorePlasticCheckedInLibrary: boolean
-
Ignore the checked-in Library folder when building from Plastic SCM.
- buildTargetGroups: object[]
-
object - id: string
-
- name: string
-
- lastBuilt: object
-
- unityVersion: string
-
Last Unity version built by this target. Setting this has no effect.
- credentials: object
-
- signing: object
-
- credentialid: string
-
- credentialResourceRef: object
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- uuid: string
-
generated UUID of the profile
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
expiration date
- links: object
-
- builds: object[]
-
object buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
- links: object
-
{
"name": "Default WebGL",
"platform": "webgl",
"buildtargetid": "default-webgl",
"enabled": true,
"settings": {
"autoBuild": true,
"unityVersion": "latest5",
"autoDetectUnityVersion": "false",
"fallbackPatchVersion": "false",
"executablename": "Default WebGL",
"scm": {
"type": "git",
"branch": "master"
},
"platform": {},
"advanced": {}
},
"credentials": {
"signing": {}
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/polling"
}
}
}
Update build target details
Description
Required Permissions
Request Parameters
curl
-X PUT
-H "Content-Type: application/json"
-d '{"name": "Mac", "enabled": false}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}
buildtargetsApi = BuildtargetsApi(client)
buildtarget = buildtargetsApi.update_build_target('{orgid}', '{projectid}', '{buildtargetid}', options={"name": "Mac", "enabled": False})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- createdBy: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- enabled: boolean
-
whether this target can be built by the API
- settings: object
-
- autoBuild: boolean
-
start builds automatically when your repo is updated
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- autoDetectUnityVersion: boolean
-
attempt to automatically detect which unity version to use, fallback to specified unityVersion if unable to.
- fallbackPatchVersion: boolean
-
attempt to get a similar unity patch version to use, applies to unavailable auto-detected Unity versions only.
- executablename: string
-
- buildProfilePath: string
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- isUnityCloudDrive: boolean
-
If true, the build will use the Unity Cloud Drive for the source code (only applies to UVCS projects).
- repo: string
-
Which repo to use. Only applies to Plastic SCM, other SCM types configure repo on the project level.
- branch: string
-
- subdirectory: string
-
subdirectory to build from
- client: string
-
perforce only client workspace to build from
- platform: object
-
- bundleId: string
-
a unique identifier (com.example.name)
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- buildSchedule: object
-
For Scheduling builds
- isEnabled: boolean
-
- date: string (date-time)
-
- repeatCycle: string , x ∈ { none , once (default) , daily , weekly , monthly , yearly }
-
- cleanBuild: boolean
-
- autoBuildCancellation: boolean
-
- machineTypeLabel: string
-
- operatingSystemSelected: string , x ∈ { mac , windows }
-
- operatingSystemVersion: string
-
Choose the version of the operating system for building your project.
- rubyVersion: string
-
- remoteCacheStrategy: string , x ∈ { none , library , workspace , boostdisk , inherit }
-
Specifies the caching strategy (none, library, workspace, or inherit) for remote data storage and retrieval
- windowsGitBinary: string , x ∈ { inherit (default) , native , cygwin }
-
Specifies the Git binary that will be used for Windows builds
- buildTargetCopyCache: string
-
Specifies the id of the build target that this target's cache was copied from
- architecture: string
-
Specifies the Unity editor architecture to use for building the project.
- cacheCompressionLevel: string , x ∈ { inherit (default) , none , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
Specifies the compression level for caching workspace or Library.
- advanced: object
-
- cache: object
-
- xcode: object
-
- useArchiveAndExport: boolean
-
- customFastlaneConfigPath: string
-
The path (including file name) from the project root to the custom FastLane configuration json file to configure multiple provisioning files, or customize the FastLane build process. See https://forum.unity.com/threads/xcode-9-multiple-provisioning-profiles.545121/ Will look for Assets/ucb_xcode_fastlane.json by default, if not specified.
- uploadXCArchive: boolean
-
Upload the XCArchive file produced by the build. This file will be downloadable from the dashboard if this property is true.
- shouldNotarize: boolean
-
Only used with OSX targets, this triggers signing and notarization process for the executable.
- android: object
-
- buildAppBundle: boolean
-
- buildAssetPacks: boolean
-
- androidSDKVersion: string
-
Android SDK Version
- unity: object
-
- preExportMethod: string
-
The fully-qualified name of a public static method you want us to call before we start the Unity build process. For example: ClassName.NeatMethod or NameSpace.ClassName.NeatMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method!
- postExportMethod: string
-
The fully-qualified name of a public static method you want us to call after we finish the Unity build process (but before Xcode). For example: ClassName.CoolMethod or NameSpace.ClassName.CoolMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method! This method must accept a string parameter, which will receive the path to the exported Unity player (or Xcode project in the case of iOS).
- preBuildScript: string
-
Relative path to the script that should be run before the build process starts.
- postBuildScript: string
-
Relative path to the script that should be run after the build process finishes.
- preBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your preBuildScript will cause your build to be marked as Failed
- postBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your postBuildScript will cause your build to be marked as Failed
- scriptingDefineSymbols: string
-
Enter the names of the symbols you want to define for iOS. These symbols can then be used as the conditions for #if directives just like the built-in ones. (i.e. #IF MYDEFINE or #IF AMAZON)
- playerExporter: object
-
- sceneList: string[]
-
A list of scenes to build overriding those specified in the Build Settings menu of your Unity project.
string scene names
- buildOptions: string[]
-
Unity Editor build options. Use BuildOptions.Development and BuildOptions.AllowDebugging to create a development build.
string - export: boolean true
-
Enable exporting a player from Unity (i.e. running BuildPipeline.BuildPlayer). Enabling this is equivalent to disabling Content-only Build in Build Target on Developer Dashboard. In general, this should be true, unless you are doing something something like an asset bundle only build or unit test only build without generating an actual build artifact.
- playerSettings: object
-
- Android: object
-
- useAPKExpansionFiles: boolean
-
break up android apk into an installable apk and expansion files
- Switch: object
-
- useSwitchCPUProfiler: boolean
-
Weather to use CPU profiler or not
- editorUserBuildSettings: object
-
- androidBuildSystem: string , x ∈ { internal , gradle }
-
which android build system to build with (android only, supported in Unity 5.5+)
- standaloneBuildSubtarget: string , x ∈ { Player (default) , Server }
-
standalone build subtarget for Dedicated Server Build (supported in Unity 2021.2+). see https://docs.unity3d.com/2021.2/Documentation/ScriptReference/StandaloneBuildSubtarget.html
- assetBundles: object
-
- buildBundles: boolean
-
enable asset bundle builds for this target
- basePath: string
-
base path relative to Assets folder where asset bundles are output. Default is 'AssetBundles'
- buildAssetBundleOptions: string
-
comma separated list of flags from BuildAssetBundleOptions. see https://docs.unity3d.com/ScriptReference/BuildAssetBundleOptions.html
- copyToStreamingAssets: boolean
-
copy bundles to streaming assets folder, which will be packaged into the exported player.
- copyBundlePatterns: string[]
-
array of patterns to match (C# Regular Expressions) when copying asset bundle files. By default, all bundles will be copied.
string
- addressables: object
-
- buildAddressables: boolean
-
enable addressable builds for this target
- contentUpdate: boolean
-
Update a previously built player with new Addressable Content.
- profileName: string
-
which addressables profile should be used for the build
- failedAddressablesFailsBuild: boolean true
-
Exit and mark the build as failed if an error occurs when addressables are built
- contentUpdateSettings: object
-
- contentStatePath: string
-
The path to a Content State .bin file relative to the project root
- linkedTargetId: string
-
The Id of the build target to obtain a Content State .bin file from
- generateBuildLayout: boolean
-
Whether to generate the bundle build layout report.
- buildLayoutReportFileFormat: string , x ∈ { JSON (default) , TXT }
-
The format of the bundle build layout report.
- runUnitTests: boolean
-
Run any unit tests your project has when a build happens.
- runEditModeTests: boolean
-
Should Edit Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- runPlayModeTests: boolean
-
Should Play Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- failedUnitTestFailsBuild: boolean
-
Mark builds as failed if the unit tests do not pass.
- unitTestMethod: string
-
LEGACY - The Unity method to call when running unit tests (only supported in Unity 5.2 and lower).
- enableLightBake: boolean
-
Enable lightmap baking (disabled by default since it is very slow and usually unnecessary)
- uwp: object
-
- windowsSDKVersion: string , x ∈ { 10.0.17134.0 , 10.0.17763.0 , 10.0.18362.0 , 10.0.19041.0 , 10.0.20348.0 , 10.0.22621.0 , 10.0.22000.0 }
-
Sets Windows SDK Version to use when building UWP
- visualStudioVersion: string , x ∈ { 2019 , 2022 }
-
Sets the Visual Studio Version to use when building UWP
- wsaArchitecture: string,null , x ∈ { x64 , x86 , ARM , ARM64 }
-
Sets target architecture for Exectuable Only builds
- capabilities: array,null
-
Sets the capabilities of the build UWP application
- targetFamily: string[]
-
Sets the target device family for the build
string , x ∈ { Universal , Desktop , Mobile , Xbox , Holographic , IoT , IoTHeadless } The target device family
- buildType: string , x ∈ { ExecutableOnly , D3D , XAML }
-
Sets the build type for UWP. Executable
- msbuildConfiguration: string,null , x ∈ { Debug , Release , Master , MasterWithLTCG }
-
Sets the ms build configuration for UWP
- platforms: array,null
-
Sets the target platforms for the AppXBundle
- publishVisualStudioSolution: boolean
-
Enable publishing of the visual studio .sln file
- gamecorescarlett: object
-
- ps5: object
-
- ignorePlasticCheckedInLibrary: boolean
-
Ignore the checked-in Library folder when building from Plastic SCM.
- buildTargetGroups: object[]
-
object - id: string
-
- name: string
-
- lastBuilt: object
-
- unityVersion: string
-
Last Unity version built by this target. Setting this has no effect.
- credentials: object
-
- signing: object
-
- credentialid: string
-
- credentialResourceRef: object
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- uuid: string
-
generated UUID of the profile
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
expiration date
- links: object
-
- builds: object[]
-
object buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
- links: object
-
{
"name": "Mac",
"platform": "webplayer",
"buildtargetid": "mac",
"enabled": false,
"settings": {
"autoBuild": false,
"unityVersion": "latest",
"autoDetectUnityVersion": "false",
"fallbackPatchVersion": "false",
"executablename": "Mac",
"scm": {
"type": "git"
},
"platform": {},
"advanced": {}
},
"credentials": {
"signing": {}
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/mac"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/mac/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/mac/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/mac/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/mac/polling"
}
}
}
Delete build target
Description
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}
buildtargetsApi = BuildtargetsApi(client)
buildtargetsApi.delete_build_target('{orgid}', '{projectid}', '{buildtargetid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get environment variables
Description
Get all configured environment variables for a given build target
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/envvars
buildtargetsApi = BuildtargetsApi(client)
buildtargetsApi.get_env_variables_for_build_target('{orgid}', '{projectid}', '{buildtargetid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Object containing env variables. Name must follow env variable spec - a word consisting solely of underscores, digits, and alphabetics from the portable character set. The first character of a name is not a digit. May not override widely used env variables (see IEEE Std 1003.1-2008).
Set environment variables
Description
Set all configured environment variables for a given build target
Required Permissions
Request Parameters
curl
-X PUT
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/envvars
buildtargetsApi = BuildtargetsApi(client)
buildtargetsApi.set_env_variables_for_build_target('{orgid}', '{projectid}', '{buildtargetid}', '{envvars}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Object containing env variables. Name must follow env variable spec - a word consisting solely of underscores, digits, and alphabetics from the portable character set. The first character of a name is not a digit. May not override widely used env variables (see IEEE Std 1003.1-2008).
Get build target statistics
Description
Get statistics for the specified build target
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/buildtargets/{buildtargetid}/stats
buildsApi = BuildsApi(client)
stats = buildsApi.get_stats('{orgid}', '{projectid}', '{buildtargetid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- totalBuilds: number
-
- successfulBuilds: number
-
- canceledBuilds: number
-
- failedBuilds: number
-
- averageWorkspaceSize: number
-
- averageTotalTime: number
-
- averageWaitTime: number
-
- averageCheckoutTime: number
-
- averageBuildTime: number
-
- averagePublishTime: number
-
{
"totalBuilds":100,
"successfulBuilds":60,
"canceledBuilds":20,
"failedBuilds":20,
"averageWorkspaceSize":8386947559
"averageTotalTime":4628,
"averageWaitTime":100,
"averageCheckoutTime":828,
"averageBuildTime":3200,
"averagePublishTime":500
}
List all build targets for an org
Description
Gets all configured build targets for an org, regardless of whether they are enabled. Add "?include=settings,credentials" as a query parameter to include the build target settings and credentials with the response.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/buildtargets
buildtargetsApi = BuildtargetsApi(client)
buildtargets = buildtargetsApi.get_build_targets('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- createdBy: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- enabled: boolean
-
whether this target can be built by the API
- settings: object
-
- autoBuild: boolean
-
start builds automatically when your repo is updated
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- autoDetectUnityVersion: boolean
-
attempt to automatically detect which unity version to use, fallback to specified unityVersion if unable to.
- fallbackPatchVersion: boolean
-
attempt to get a similar unity patch version to use, applies to unavailable auto-detected Unity versions only.
- executablename: string
-
- buildProfilePath: string
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- isUnityCloudDrive: boolean
-
If true, the build will use the Unity Cloud Drive for the source code (only applies to UVCS projects).
- repo: string
-
Which repo to use. Only applies to Plastic SCM, other SCM types configure repo on the project level.
- branch: string
-
- subdirectory: string
-
subdirectory to build from
- client: string
-
perforce only client workspace to build from
- platform: object
-
- bundleId: string
-
a unique identifier (com.example.name)
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- buildSchedule: object
-
For Scheduling builds
- isEnabled: boolean
-
- date: string (date-time)
-
- repeatCycle: string , x ∈ { none , once (default) , daily , weekly , monthly , yearly }
-
- cleanBuild: boolean
-
- autoBuildCancellation: boolean
-
- machineTypeLabel: string
-
- operatingSystemSelected: string , x ∈ { mac , windows }
-
- operatingSystemVersion: string
-
Choose the version of the operating system for building your project.
- rubyVersion: string
-
- remoteCacheStrategy: string , x ∈ { none , library , workspace , boostdisk , inherit }
-
Specifies the caching strategy (none, library, workspace, or inherit) for remote data storage and retrieval
- windowsGitBinary: string , x ∈ { inherit (default) , native , cygwin }
-
Specifies the Git binary that will be used for Windows builds
- buildTargetCopyCache: string
-
Specifies the id of the build target that this target's cache was copied from
- architecture: string
-
Specifies the Unity editor architecture to use for building the project.
- cacheCompressionLevel: string , x ∈ { inherit (default) , none , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
Specifies the compression level for caching workspace or Library.
- advanced: object
-
- cache: object
-
- xcode: object
-
- useArchiveAndExport: boolean
-
- customFastlaneConfigPath: string
-
The path (including file name) from the project root to the custom FastLane configuration json file to configure multiple provisioning files, or customize the FastLane build process. See https://forum.unity.com/threads/xcode-9-multiple-provisioning-profiles.545121/ Will look for Assets/ucb_xcode_fastlane.json by default, if not specified.
- uploadXCArchive: boolean
-
Upload the XCArchive file produced by the build. This file will be downloadable from the dashboard if this property is true.
- shouldNotarize: boolean
-
Only used with OSX targets, this triggers signing and notarization process for the executable.
- android: object
-
- buildAppBundle: boolean
-
- buildAssetPacks: boolean
-
- androidSDKVersion: string
-
Android SDK Version
- unity: object
-
- preExportMethod: string
-
The fully-qualified name of a public static method you want us to call before we start the Unity build process. For example: ClassName.NeatMethod or NameSpace.ClassName.NeatMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method!
- postExportMethod: string
-
The fully-qualified name of a public static method you want us to call after we finish the Unity build process (but before Xcode). For example: ClassName.CoolMethod or NameSpace.ClassName.CoolMethod. No trailing parenthesis, and it can't have the same name as your Post-Export method! This method must accept a string parameter, which will receive the path to the exported Unity player (or Xcode project in the case of iOS).
- preBuildScript: string
-
Relative path to the script that should be run before the build process starts.
- postBuildScript: string
-
Relative path to the script that should be run after the build process finishes.
- preBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your preBuildScript will cause your build to be marked as Failed
- postBuildScriptFailsBuild: boolean
-
If this is true, a non-zero exit code on your postBuildScript will cause your build to be marked as Failed
- scriptingDefineSymbols: string
-
Enter the names of the symbols you want to define for iOS. These symbols can then be used as the conditions for #if directives just like the built-in ones. (i.e. #IF MYDEFINE or #IF AMAZON)
- playerExporter: object
-
- sceneList: string[]
-
A list of scenes to build overriding those specified in the Build Settings menu of your Unity project.
string scene names
- buildOptions: string[]
-
Unity Editor build options. Use BuildOptions.Development and BuildOptions.AllowDebugging to create a development build.
string - export: boolean true
-
Enable exporting a player from Unity (i.e. running BuildPipeline.BuildPlayer). Enabling this is equivalent to disabling Content-only Build in Build Target on Developer Dashboard. In general, this should be true, unless you are doing something something like an asset bundle only build or unit test only build without generating an actual build artifact.
- playerSettings: object
-
- Android: object
-
- useAPKExpansionFiles: boolean
-
break up android apk into an installable apk and expansion files
- Switch: object
-
- useSwitchCPUProfiler: boolean
-
Weather to use CPU profiler or not
- editorUserBuildSettings: object
-
- androidBuildSystem: string , x ∈ { internal , gradle }
-
which android build system to build with (android only, supported in Unity 5.5+)
- standaloneBuildSubtarget: string , x ∈ { Player (default) , Server }
-
standalone build subtarget for Dedicated Server Build (supported in Unity 2021.2+). see https://docs.unity3d.com/2021.2/Documentation/ScriptReference/StandaloneBuildSubtarget.html
- assetBundles: object
-
- buildBundles: boolean
-
enable asset bundle builds for this target
- basePath: string
-
base path relative to Assets folder where asset bundles are output. Default is 'AssetBundles'
- buildAssetBundleOptions: string
-
comma separated list of flags from BuildAssetBundleOptions. see https://docs.unity3d.com/ScriptReference/BuildAssetBundleOptions.html
- copyToStreamingAssets: boolean
-
copy bundles to streaming assets folder, which will be packaged into the exported player.
- copyBundlePatterns: string[]
-
array of patterns to match (C# Regular Expressions) when copying asset bundle files. By default, all bundles will be copied.
string
- addressables: object
-
- buildAddressables: boolean
-
enable addressable builds for this target
- contentUpdate: boolean
-
Update a previously built player with new Addressable Content.
- profileName: string
-
which addressables profile should be used for the build
- failedAddressablesFailsBuild: boolean true
-
Exit and mark the build as failed if an error occurs when addressables are built
- contentUpdateSettings: object
-
- contentStatePath: string
-
The path to a Content State .bin file relative to the project root
- linkedTargetId: string
-
The Id of the build target to obtain a Content State .bin file from
- generateBuildLayout: boolean
-
Whether to generate the bundle build layout report.
- buildLayoutReportFileFormat: string , x ∈ { JSON (default) , TXT }
-
The format of the bundle build layout report.
- runUnitTests: boolean
-
Run any unit tests your project has when a build happens.
- runEditModeTests: boolean
-
Should Edit Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- runPlayModeTests: boolean
-
Should Play Mode unit tests be run? NOTE: requires runUnitTests to be true and building with Unity 5.6 or newer.
- failedUnitTestFailsBuild: boolean
-
Mark builds as failed if the unit tests do not pass.
- unitTestMethod: string
-
LEGACY - The Unity method to call when running unit tests (only supported in Unity 5.2 and lower).
- enableLightBake: boolean
-
Enable lightmap baking (disabled by default since it is very slow and usually unnecessary)
- uwp: object
-
- windowsSDKVersion: string , x ∈ { 10.0.17134.0 , 10.0.17763.0 , 10.0.18362.0 , 10.0.19041.0 , 10.0.20348.0 , 10.0.22621.0 , 10.0.22000.0 }
-
Sets Windows SDK Version to use when building UWP
- visualStudioVersion: string , x ∈ { 2019 , 2022 }
-
Sets the Visual Studio Version to use when building UWP
- wsaArchitecture: string,null , x ∈ { x64 , x86 , ARM , ARM64 }
-
Sets target architecture for Exectuable Only builds
- capabilities: array,null
-
Sets the capabilities of the build UWP application
- targetFamily: string[]
-
Sets the target device family for the build
string , x ∈ { Universal , Desktop , Mobile , Xbox , Holographic , IoT , IoTHeadless } The target device family
- buildType: string , x ∈ { ExecutableOnly , D3D , XAML }
-
Sets the build type for UWP. Executable
- msbuildConfiguration: string,null , x ∈ { Debug , Release , Master , MasterWithLTCG }
-
Sets the ms build configuration for UWP
- platforms: array,null
-
Sets the target platforms for the AppXBundle
- publishVisualStudioSolution: boolean
-
Enable publishing of the visual studio .sln file
- gamecorescarlett: object
-
- ps5: object
-
- ignorePlasticCheckedInLibrary: boolean
-
Ignore the checked-in Library folder when building from Plastic SCM.
- buildTargetGroups: object[]
-
object - id: string
-
- name: string
-
- lastBuilt: object
-
- unityVersion: string
-
Last Unity version built by this target. Setting this has no effect.
- credentials: object
-
- signing: object
-
- credentialid: string
-
- credentialResourceRef: object
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- uuid: string
-
generated UUID of the profile
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
expiration date
- links: object
-
- builds: object[]
-
object buildattempt
- build: number
-
- buildtargetid: string
-
unique id auto-generated from the build target name
- buildTargetName: string
-
- buildGUID: string
-
unique GUID identifying this build
- buildStatus: string , x ∈ { created , queued , sentToBuilder , started , restarted , success , failure , canceled , unknown , processing }
-
- cleanBuild: boolean
-
if the build was built without using data cached from previous builds
- failureDetails: object[]
-
list of failure details for this build attempt, when available
object - label: string
-
- resolutionHint: string
-
- stages: string[]
-
string - failureType: string
-
- count: number
-
- canceledBy: string , x ∈ { api , service , service-timelimit , concurrency-timelimit , restart-limit , evaluation-timelimit , jenkins-timelimit , service-badconfiguration , billing-invalidsubscription }
-
- causedBy: string
-
What triggered the build to be created
- causedByUser: string
-
Name of the user who caused the build to be created
- buildProfilePath: string
-
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- formattedPlatformName: string
-
- editorIcon: string
-
- workspaceSize: number
-
size of workspace in bytes
- created: string
-
when the build was created
- finished: string
-
when the build completely finished
- checkoutStartTime: string
-
when the build starting checking out code
- checkoutTimeInSeconds: number
-
amount of time spent checking out code
- buildStartTime: string
-
when the build started compiling
- buildTimeInSeconds: number
-
amount of time spend compiling
- publishStartTime: string
-
when the build started saving build artifacts
- publishTimeInSeconds: number
-
amount of time spent saving build artifacts
- totalTimeInSeconds: number
-
total time for the build
- billableTimeInSeconds: number
-
total billable time for the build
- unitTestTimeInSeconds: number
-
total time for unit test execution step
- editModeTestTimeInSeconds: number
-
total time for unit test execution step
- playModeTestTimeInSeconds: number
-
total time for unit test execution step
- lastBuiltRevision: string
-
source control commit id for the build
- changeset: object[]
-
a list of source control changes between this and the last build
object - favorited: boolean
-
if the build is marked as do not delete or not
- label: string
-
description given when a build is favorited
- deleted: boolean
-
if the build is deleted or not
- headless: object
-
if the build was built to run in linux headless mode
- credentialsOutdated: boolean
-
if a newer credential has been attached to this buildtarget and the build can be re-signed
- groupBuildId: string (uuid)
-
the unique ID used to launch a group of attempts
- buildTargetGroups: object[]
-
list of build target groups this build attempt is a part of
object - name: string
-
- id: string
-
- deleted: boolean
-
- enabled: boolean
-
- machineType: object
-
the type of machine used to build this build
- name: string
-
- label: string
-
- enabled: boolean
-
- operatingSystem: string
-
- deletedBy: string
-
email address of the user who deleted this attempt
- queuedReason: string , x ∈ { targetConcurrency , cooldown , buildConcurrency , concurrency , waitingForBuildAgent , evaluating , sentToBuilder , notPending }
-
reason the build is currently waiting
- cooldownDate: string
-
time until this build will be reconsidered for building
- scmBranch: string
-
scm branch to be built
- unityVersion: string
-
'latest' or a unity dot version with underscores (ex. '4_6_5')
- architecture: string
-
The Unity editor architecture used for building
- operatingSystemVersion: string
-
a supported operating system version (ex. 'monterey')
- operatingSystem: string
-
the OS that this build ran (or will run) on (ex. 'windows' / 'mac')
- xcodeVersion: string
-
a supported xcode version (ex. 'xcode13_0_0')
- androidSdkVersion: string
-
a supported android sdk version (ex. 'android_sdk_34')
- auditChanges: number
-
- projectVersion: object
-
- name: string
-
automatically generated name for the build
- filename: string
-
filename for the primary artifact
- projectName: string
-
name of the project
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- size: number
-
size of the the primary build artifact in bytes
- created: string
-
creation date
- lastMod: string
-
last modified date
- bundleId: string
-
a unique identifier (com.example.name)
- udids: string[]
-
iPhone unique identifiers that are able to install this build
string - links: object
-
links to build artifacts
- projectName: string
-
- projectId: string
-
- projectGuid: string
-
- orgId: string
-
- orgFk: string
-
- filetoken: string
-
- links: object
-
- artifacts: object[]
-
object
object - href: string
-
- method: string
-
- meta: object
-
- buildReport: object
-
- errors: integer
-
- warnings: integer
-
- testResults: object
-
results from the build's unit tests, if any
- unit_test: object
-
- unit_test_editmode: object
-
- unit_test_playmode: object
-
- machineTypeLabel: string
-
- requestedRevision: string
-
- error: string
-
- links: object
-
[
{
"name": "Default WebGL",
"platform": "webgl",
"buildtargetid": "default-webgl",
"enabled": true,
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-webgl/polling"
}
}
},
{
"name": "Default Linux desktop Universal",
"platform": "standalonelinuxuniversal",
"buildtargetid": "default-linux-desktop-universal",
"enabled": true,
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal"
},
"start_builds": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"list_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"cancel_builds": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/builds"
},
"polling": {
"method": "post",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/default-linux-desktop-universal/polling"
}
}
}
]
Config Introduction
Global config values used throughout the API.
List all unity versions
Description
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/versions/unity
configApi = ConfigApi(client)
versions = configApi.list_unity_versions()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- value: string
-
- xcode_versions: string[]
-
string - hidden: boolean
-
- deprecated: boolean
-
- cloudRenderingEnabled: boolean
-
- entitledPlatformsSupported: string[]
-
string - architectures: string[]
-
string
[
{
"name": "Always Use Latest 5.2 ALPHA/BETA",
"value": "latest5AB",
"xcode_versions": [
"xcode5",
"xcode6",
"xcode7"
],
"hidden": false
},
{
"name": "Always Use Latest 5.x",
"value": "latest5",
"xcode_versions": [
"xcode5",
"xcode6",
"xcode7"
],
"hidden": false
},
{
"name": "Always Use Latest 4.x (Non Beta)",
"value": "latest",
"xcode_versions": [
"xcode5",
"xcode6"
],
"hidden": false
},
{
"name": "Unity 5.3.0a1",
"value": "5_3_0a1",
"xcode_versions": [
"xcode5",
"xcode6",
"xcode7"
],
"hidden": false
},
{
"name": "Unity 4.6.9",
"value": "4_6_9",
"xcode_versions": [
"xcode5",
"xcode6"
],
"hidden": false,
"deprecated": true
}
]
Get a unity version by value
Description
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/versions/unity/{value}
configApi = ConfigApi(client);
versions = configApi.get_version('{value}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- value: string
-
- xcode_versions: string[]
-
string - hidden: boolean
-
- deprecated: boolean
-
- cloudRenderingEnabled: boolean
-
- entitledPlatformsSupported: string[]
-
string - architectures: string[]
-
string
{
"name": "Always Use Latest 5.2 ALPHA/BETA",
"value": "latest5AB",
"xcode_versions": [
"xcode5",
"xcode6",
"xcode7"
],
"hidden": false
}
List all visual studio versions for UWP applications
Description
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/versions/visual-studio
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- visual_studio_version: string
-
- windows_sdk_versions: string[]
-
string
[
{
"visual_studio_version": "2019",
"windows_sdk_versions": [
'10.0.17134.0',
'10.0.17763.0',
'10.0.18362.0',
'10.0.19041.0',
'10.0.20348.0',
'10.0.22000.0',
'10.0.22621.0' ],
},
{
"visual_studio_version": "2022",
"windows_sdk_versions": [
'10.0.17134.0',
'10.0.17763.0',
'10.0.18362.0',
'10.0.19041.0',
'10.0.20348.0',
'10.0.22000.0',
'10.0.22621.0' ],
}
]
List all xcode versions
Description
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/versions/xcode
configApi = ConfigApi(client);
versions = configApi.list_xcode_versions()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- value: string
-
- hidden: boolean
-
- deprecated: boolean
-
[
{
"name": "Xcode 10.2",
"value": "xcode10_2_0",
"hidden": false
},
{
"name": "Xcode 10.1",
"value": "xcode10_1_0",
"hidden": false
},
{
"name": "Xcode 9.3",
"value": "xcode9_3_0",
"hidden": false
},
{
"name": "Xcode 9.2",
"value": "xcode9_2_0",
"hidden": true,
"deprecated":true
},
{
"name": "Always Use Latest",
"value": "latest",
"hidden": false
}
]
List all SCM types supporting auto detecting the project Unity version
Description
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
['oauth', 'svn']
List Android SDK Config
Description
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- maxUnityVersion: string
-
- minUnityVersion: string
-
- ndkVersion: string
-
- sdkVersion: string
-
- allowAlphas: boolean
-
- allowBetas: boolean
-
[
{
"minUnityVersion": "2022_2",
"ndkVersion": "android_ndk_r23b",
"sdkVersion": "android_sdk_33"
}
]
Get an Android SDK for a Unity Version
Description
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- value: string
-
[
{
"name": "Android SDK 31",
"value": "android_sdk_31"
},
{
"name": "Android SDK 32",
"value": "android_sdk_32"
},
]
List all operating system versions
Description
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/versions/operatingsystem
configApi = ConfigApi(client)
versions = configApi.list_operating_system_versions()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- value: string
-
- family: string
-
- version: string
-
- min_unity_version: string
-
- max_unity_version: string
-
- unity_versions: object[]
-
- xcode_versions: object[]
-
- default_xcode_version: string
-
- hidden: boolean
-
- deprecated: boolean
-
- created: string
-
- architectures: string[]
-
string
[]
Get an operating system version by key
Description
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/versions/operatingsystem/{key}
configApi = ConfigApi(client)
versions = configApi.get_operating_system_version()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- value: string
-
- family: string
-
- version: string
-
- min_unity_version: string
-
- max_unity_version: string
-
- unity_versions: object[]
-
- xcode_versions: object[]
-
- default_xcode_version: string
-
- hidden: boolean
-
- deprecated: boolean
-
- created: string
-
- architectures: string[]
-
string
{}
List cache compression levels for projects and build targets
Description
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- levels: object[]
-
[
{name: 'projects', levels: [1,2,3,4,5,6,7,8,9] },
{name: 'build_targets', levels: [0,1,2,3,4,5,6,7,8,9] },
]
Get cache compression levels for projects or build targets
Description
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- levels: object[]
-
{name: 'projects', levels: [1,2,3,4,5,6,7,8,9] }
List supported platforms
Description
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/platforms/supported
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string
-
- name: string
-
- editorIcon: string
-
- operatingSystems: object[]
-
object - family: string
-
- defaultVersion: string
-
- versions: object[]
-
object - value: string
-
- name: string
-
- default: boolean
-
- deprecated: boolean
-
- credentials: string , x ∈ { required , optional , none }
-
[
{
"platform": "ios",
"name": "iOS",
"editorIcon": "BuildSettings.iPhone",
"operatingSystems": [
{
"family": "mac",
"defaultVersion": "ventura",
"versions": [
{
"value": "monterey",
"name": "macOS Monterey",
"default": false,
"deprecated": true
},
{
"value": "ventura",
"name": "macOS Ventura",
"default": true,
"deprecated": false
}
]
}
],
"credentials": "required"
}
]
Validate a provider
Description
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
List all enabled machine types
Description
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/machinetypes
machineTypeApi = MachineTypeApi(client);
machinetypes = machineTypeApi.list_machine_types()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- shortName: string
-
- label: string
-
- operatingSystem: string , x ∈ { mac , windows }
-
- operatingSystemVersions: string[]
-
string - enabled: boolean
-
- default: boolean
-
- isBestValue: boolean
-
- sku: string
-
- cpuCores: integer
-
- memoryGB: integer
-
- diskSizeGB: integer
-
- osDiskSizeGB: integer
-
- dataDriveType: string , x ∈ { pooled , substitute }
-
[
{
"name": "Standard_v1",
"label": "win_standard_v1",
"operatingSystem": "windows",
"enabled": true
},
{
"name": "Premium_v1",
"label": "win_premium_v1",
"operatingSystem": "windows",
"enabled": true
},
{
"name": "Premium_v2",
"label": "win_premium_v2",
"operatingSystem": "windows",
"enabled": false
},
{
"name": "Standard_v1",
"label": "win_standard_v1",
"operatingSystem": "mac",
"enabled": true
}
]
Credentials Introduction
Credentials for signing build artifacts are stored at the organizational level. Individual projects then point at the organizational level credentials.
Get All Android Credentials for an organization
Description
Get all credentials available for the organization. A list of projects using a credential is included in the links element.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/android
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.get_all_android_for_org('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
[
{
"platform": "android",
"label": "Auto Generated Debug Keystore",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "androiddebugkey",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
}
"projects": [
{
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/"
},
{
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project2/"
}
]
}
}
]
Upload Android Credentials
Description
Upload a new android keystore for an organization. NOTE: you must be a manager in the organization to add new credentials.
Required Permissions
Request Parameters
curl
-X POST
-F file=@/Full/Path/To/android.keystore
-F label=Beta%20Credentials
-F alias=betacred
-F keypass=betapass
-F storepass=unitypass
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/android
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.add_credentials_android_for_org('{orgid}', "Beta Credentials", "/Full/Path/To/android.keystore", "betacred", "betapass", "unitypass")
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
{
"platform": "android",
"label": "Beta Credentials",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "betacred",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"projects": [
]
}
}
Delete and Regenerate Android Debug Credentials for organization
Description
Delete and regenerate android debug credentials for an organization. NOTE: you must be a manager in the organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/android/
credentialsApi = CredentialsApi(client)
credential = credentialsApi.delete_android_for_org('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
{
"platform": "android",
"label": "Auto Generated Debug Keystore",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "androiddebugkey",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"projects": [
{
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/"
},
{
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project2/"
}
]
}
}
Get Android Credential Details for organization
Description
Get specific organization android credential details
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/android/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.get_one_android_for_org('{orgid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
{
"platform": "android",
"label": "Auto Generated Debug Keystore",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "androiddebugkey",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"projects": [
{
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/"
},
{
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project2/"
}
]
}
}
Update Android Credentials for organization
Description
Update an android keystore for the organization. NOTE: you must be a manager in the organization to update credentials.
Required Permissions
Request Parameters
curl
-X PUT
-F file=@/Full/Path/To/android.keystore
-F label=Renamed%20Credentials
-F alias=betacred
-F keypass=betapass
-F storepass=unitypass
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/android/{credentialid}
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.update_android_for_org('{orgid}', '{credentialid}', "Renamed Credentials", "/Full/Path/To/android.keystore", "betacred", "betapass", "unitypass")
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
{
"platform": "android",
"label": "Renamed Credentials",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "betacred",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"projects": [
{
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/"
},
{
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project2/"
}
]
}
}
Delete Android Credentials for organization
Description
Delete specific android credentials for an organization. NOTE: you must be a manager in the organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/android/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.delete_android_for_org('{orgid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get All Android Credentials
Description
Get all credentials available for the project. A user in the projects org will see all credentials uploaded for any project within the org, whereas a user with project-level permissions will only see credentials assigned to the specific project.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/android
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.get_all_android('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
[
{
"platform": "android",
"label": "Auto Generated Debug Keystore",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "androiddebugkey",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
}
}
}
]
Upload Android Credentials
Description
Upload a new android keystore for the project. NOTE: you must be a manager in the project's organization to add new credentials.
Required Permissions
Request Parameters
curl
-X POST
-F file=@/Full/Path/To/android.keystore
-F label=Beta%20Credentials
-F alias=betacred
-F keypass=betapass
-F storepass=unitypass
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/android
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.add_credentials_android('{orgid}', '{projectid}', "Beta Credentials", "/Full/Path/To/android.keystore", "betacred", "betapass", "unitypass")
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
{
"platform": "android",
"label": "Beta Credentials",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "betacred",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
}
}
}
Get Android Credential Details
Description
Get specific android credential details
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/android/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.get_one_android('{orgid}', '{projectid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
{
"platform": "android",
"label": "Auto Generated Debug Keystore",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "androiddebugkey",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
}
}
}
Update Android Credentials
Description
Update an android keystore for the project. NOTE: you must be a manager in the project's organization to add new credentials.
Required Permissions
Request Parameters
curl
-X PUT
-F file=@/Full/Path/To/android.keystore
-F label=Renamed%20Credentials
-F alias=betacred
-F keypass=betapass
-F storepass=unitypass
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/android/{credentialid}
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.update_android('{orgid}', '{projectid}', '{credentialid}', "Renamed Credentials", "/Full/Path/To/android.keystore", "betacred", "betapass", "unitypass")
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- keystore: object
-
- alias: string
-
friendly name for keystore
- debug: boolean
-
whether this is a debug or production keystore
- expiration: string
-
- links: object
-
{
"platform": "android",
"label": "Renamed Credentials",
"credentialid": "a7dba621-a877-43c5-8163-bda58247124e",
"created": "2015-08-27T22:29:00.023Z",
"lastMod": "2015-08-27T22:29:00.023Z",
"keystore": {
"alias": "betacred",
"debug": true
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/android/a7dba621-a877-43c5-8163-bda58247124e"
}
}
}
Delete Android Credentials
Description
Delete specific android credentials for a project. NOTE: you must be a manager in the project's organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/android/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.delete_android('{orgid}', '{projectid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get All iOS Credentials for an oganization
Description
Get all credentials available for the project. A user in the projects org will see all credentials uploaded for any project within the org, whereas a user with project-level permissions will only see credentials assigned to the specific project.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/ios
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.get_all_ios_for_org('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- provisionedDevices: string[]
-
provisoned udids
string
- links: object
-
[
{
"platform": "ios",
"label": "iOS Beta",
"credentialid": "89d503e6-0878-437f-a24f-2b93288d01c5",
"created": "2015-08-27T22:28:59.948Z",
"lastMod": "2015-08-27T22:28:59.948Z",
"certificate": {
"teamId": "AAAAAAAAAA",
"certName": "iPhone Developer: JULIE SMITH (BBBBBBBBB)",
"expiration": "2016-08-05T18:57:54.000Z",
"isDistribution": false,
"issuer": "/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority"
},
"provisioningProfile": {
"teamId": "AAAAAAAAAA",
"bundleId": "com.unity3d.cloudbuild.*",
"expiration": "2016-08-06T21:53:56.000Z",
"isEnterpriseProfile": false,
"type": "developer",
"numDevices": 2
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/89d503e6-0878-437f-a24f-2b93288d01c5"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/89d503e6-0878-437f-a24f-2b93288d01c5"
}
}
}
]
Upload iOS Credentials for organization
Description
Upload a new iOS certificate and provisioning profile for the organization. NOTE: you must be a manager in the organization to add new credentials.
Required Permissions
Request Parameters
curl
-X POST
-F label=iOS%20Alpha
-F fileCertificate=@/Full/Path/To/alphacert.p12
-F fileProvisioningProfile=@/Full/Path/To/alpha.mobileprovision
-F certificatePass=unity
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/ios
credentialsApi = CredentialsApi(client)
credential = credentialsApi.add_credentials_ios_for_org('{orgid}', "iOS Alpha", "/Full/Path/To/alphacert.p12", "/Full/Path/To/alpha.mobileprovision", certificate_pass="unity")
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- provisionedDevices: string[]
-
provisoned udids
string
- links: object
-
{
"platform": "ios",
"label": "iOS Alpha",
"credentialid": "fa5239b9-29a1-479b-bafc-247f19bf984f",
"created": "2015-11-18T22:57:01.755Z",
"lastMod": "2015-11-18T22:57:01.763Z",
"certificate": {
"teamId": "AAAAAAAAAA",
"certName": "iPhone Developer: JULIE SMITH (BBBBBBBBB)",
"expiration": "2016-08-05T18:57:54.000Z",
"isDistribution": false,
"issuer": "/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority"
},
"provisioningProfile": {
"teamId": "AAAAAAAAAA",
"bundleId": "com.unity3d.cloudbuild.*",
"expiration": "2016-08-06T21:53:56.000Z",
"isEnterpriseProfile": false,
"type": "developer",
"numDevices": 2
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/fa5239b9-29a1-479b-bafc-247f19bf984f"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/fa5239b9-29a1-479b-bafc-247f19bf984f"
}
}
}
Get iOS Credential Details for organization
Description
Get specific iOS credential details
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/ios/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.get_one_ios('{orgid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- provisionedDevices: string[]
-
provisoned udids
string
- links: object
-
{
"platform": "ios",
"label": "iOS Beta",
"credentialid": "89d503e6-0878-437f-a24f-2b93288d01c5",
"created": "2015-08-27T22:28:59.948Z",
"lastMod": "2015-08-27T22:28:59.948Z",
"certificate": {
"teamId": "AAAAAAAAAA",
"certName": "iPhone Developer: JULIE SMITH (BBBBBBBBB)",
"expiration": "2016-08-05T18:57:54.000Z",
"isDistribution": false,
"issuer": "/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority"
},
"provisioningProfile": {
"teamId": "AAAAAAAAAA",
"bundleId": "com.unity3d.cloudbuild.*",
"expiration": "2016-08-06T21:53:56.000Z",
"isEnterpriseProfile": false,
"type": "developer",
"numDevices": 2
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/89d503e6-0878-437f-a24f-2b93288d01c5"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/89d503e6-0878-437f-a24f-2b93288d01c5"
}
}
}
Update iOS Credentials for organization
Description
Update an iOS certificate / provisioning profile. NOTE: you must be a manager in the project's organization to update credentials.
Required Permissions
Request Parameters
curl
-X PUT
-F label=iOS%20Renamed
-F fileCertificate=@/Full/Path/To/alphacert.p12
-F fileProvisioningProfile=@/Full/Path/To/alpha.mobileprovision
-F certificatePass=unity
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/ios/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.update_ios_for_org('{orgid}', '{credentialid}', "iOS Renamed", "/Full/Path/To/alphacert.p12", "/Full/Path/To/alpha.mobileprovision", certificate_pass="unity")
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- provisionedDevices: string[]
-
provisoned udids
string
- links: object
-
{
"platform": "ios",
"label": "iOS Renamed",
"credentialid": "fa5239b9-29a1-479b-bafc-247f19bf984f",
"created": "2015-11-18T22:57:01.755Z",
"lastMod": "2015-11-18T22:57:01.763Z",
"certificate": {
"teamId": "AAAAAAAAAA",
"certName": "iPhone Developer: JULIE SMITH (BBBBBBBBB)",
"expiration": "2016-08-05T18:57:54.000Z",
"isDistribution": false,
"issuer": "/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority"
},
"provisioningProfile": {
"teamId": "AAAAAAAAAA",
"bundleId": "com.unity3d.cloudbuild.*",
"expiration": "2016-08-06T21:53:56.000Z",
"isEnterpriseProfile": false,
"type": "developer",
"numDevices": 2
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/fa5239b9-29a1-479b-bafc-247f19bf984f"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/fa5239b9-29a1-479b-bafc-247f19bf984f"
}
}
}
Delete iOS Credentials for organization
Description
Delete specific ios credentials. NOTE: you must be a manager in the project's organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/ios/{credentialid}
credentialsApi = CredentialsApi(client)
credentialsApi.delete_ios_for_org('{orgid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get All iOS Credentials
Description
Get all credentials available for the project. A user in the projects org will see all credentials uploaded for any project within the org, whereas a user with project-level permissions will only see credentials assigned to the specific project.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/ios
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.get_all_ios('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- provisionedDevices: string[]
-
provisoned udids
string
- links: object
-
[
{
"platform": "ios",
"label": "iOS Beta",
"credentialid": "89d503e6-0878-437f-a24f-2b93288d01c5",
"created": "2015-08-27T22:28:59.948Z",
"lastMod": "2015-08-27T22:28:59.948Z",
"certificate": {
"teamId": "AAAAAAAAAA",
"certName": "iPhone Developer: JULIE SMITH (BBBBBBBBB)",
"expiration": "2016-08-05T18:57:54.000Z",
"isDistribution": false,
"issuer": "/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority"
},
"provisioningProfile": {
"teamId": "AAAAAAAAAA",
"bundleId": "com.unity3d.cloudbuild.*",
"expiration": "2016-08-06T21:53:56.000Z",
"isEnterpriseProfile": false,
"type": "developer",
"numDevices": 2
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/89d503e6-0878-437f-a24f-2b93288d01c5"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/89d503e6-0878-437f-a24f-2b93288d01c5"
}
}
}
]
Upload iOS Credentials
Description
Upload a new iOS certificate and provisioning profile for the project. NOTE: you must be a manager in the project's organization to add new credentials.
Required Permissions
Request Parameters
curl
-X POST
-F label=iOS%20Alpha
-F fileCertificate=@/Full/Path/To/alphacert.p12
-F fileProvisioningProfile=@/Full/Path/To/alpha.mobileprovision
-F certificatePass=unity
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/ios
credentialsApi = CredentialsApi(client)
credential = credentialsApi.add_credentials_ios('{orgid}', '{projectid}', "iOS Alpha", "/Full/Path/To/alphacert.p12", "/Full/Path/To/alpha.mobileprovision", certificate_pass="unity")
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- provisionedDevices: string[]
-
provisoned udids
string
- links: object
-
{
"platform": "ios",
"label": "iOS Alpha",
"credentialid": "fa5239b9-29a1-479b-bafc-247f19bf984f",
"created": "2015-11-18T22:57:01.755Z",
"lastMod": "2015-11-18T22:57:01.763Z",
"certificate": {
"teamId": "AAAAAAAAAA",
"certName": "iPhone Developer: JULIE SMITH (BBBBBBBBB)",
"expiration": "2016-08-05T18:57:54.000Z",
"isDistribution": false,
"issuer": "/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority"
},
"provisioningProfile": {
"teamId": "AAAAAAAAAA",
"bundleId": "com.unity3d.cloudbuild.*",
"expiration": "2016-08-06T21:53:56.000Z",
"isEnterpriseProfile": false,
"type": "developer",
"numDevices": 2
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/fa5239b9-29a1-479b-bafc-247f19bf984f"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/fa5239b9-29a1-479b-bafc-247f19bf984f"
}
}
}
Get iOS Credential Details
Description
Get specific iOS credential details
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/ios/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.get_one_ios('{orgid}', '{projectid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- provisionedDevices: string[]
-
provisoned udids
string
- links: object
-
{
"platform": "ios",
"label": "iOS Beta",
"credentialid": "89d503e6-0878-437f-a24f-2b93288d01c5",
"created": "2015-08-27T22:28:59.948Z",
"lastMod": "2015-08-27T22:28:59.948Z",
"certificate": {
"teamId": "AAAAAAAAAA",
"certName": "iPhone Developer: JULIE SMITH (BBBBBBBBB)",
"expiration": "2016-08-05T18:57:54.000Z",
"isDistribution": false,
"issuer": "/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority"
},
"provisioningProfile": {
"teamId": "AAAAAAAAAA",
"bundleId": "com.unity3d.cloudbuild.*",
"expiration": "2016-08-06T21:53:56.000Z",
"isEnterpriseProfile": false,
"type": "developer",
"numDevices": 2
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/89d503e6-0878-437f-a24f-2b93288d01c5"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/89d503e6-0878-437f-a24f-2b93288d01c5"
}
}
}
Update iOS Credentials
Description
Update an iOS certificate / provisioning profile for the project. NOTE: you must be a manager in the project's organization to update credentials.
Required Permissions
Request Parameters
curl
-X PUT
-F label=iOS%20Renamed
-F fileCertificate=@/Full/Path/To/alphacert.p12
-F fileProvisioningProfile=@/Full/Path/To/alpha.mobileprovision
-F certificatePass=unity
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/ios/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.update_ios('{orgid}', '{projectid}', '{credentialid}', "iOS Renamed", "/Full/Path/To/alphacert.p12", "/Full/Path/To/alpha.mobileprovision", certificate_pass="unity")
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- teamId: string
-
generated team id from Apple
- certName: string
-
certificate name (from the certificate)
- expiration: string
-
expiration date
- isDistribution: boolean
-
if this is a distribution certificate
- issuer: string
-
issuer of the certificate
- uploaded: string
-
uploaded date
- provisioningProfile: object
-
- teamId: string
-
generated team id from Apple
- bundleId: string
-
a unique identifier (com.example.name)
- expiration: string
-
expiration date
- isEnterpriseProfile: boolean
-
is this compiled for Apple's enterprise program
- type: string , x ∈ { developer , adhoc , appstore }
-
- numDevices: number
-
number of devices provisioned for this certificate
- uploaded: string
-
uploaded date
- provisionedDevices: string[]
-
provisoned udids
string
- links: object
-
{
"platform": "ios",
"label": "iOS Renamed",
"credentialid": "fa5239b9-29a1-479b-bafc-247f19bf984f",
"created": "2015-11-18T22:57:01.755Z",
"lastMod": "2015-11-18T22:57:01.763Z",
"certificate": {
"teamId": "AAAAAAAAAA",
"certName": "iPhone Developer: JULIE SMITH (BBBBBBBBB)",
"expiration": "2016-08-05T18:57:54.000Z",
"isDistribution": false,
"issuer": "/C=US/O=Apple Inc./OU=Apple Worldwide Developer Relations/CN=Apple Worldwide Developer Relations Certification Authority"
},
"provisioningProfile": {
"teamId": "AAAAAAAAAA",
"bundleId": "com.unity3d.cloudbuild.*",
"expiration": "2016-08-06T21:53:56.000Z",
"isEnterpriseProfile": false,
"type": "developer",
"numDevices": 2
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/fa5239b9-29a1-479b-bafc-247f19bf984f"
},
"delete": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/credentials/signing/ios/fa5239b9-29a1-479b-bafc-247f19bf984f"
}
}
}
Delete iOS Credentials
Description
Delete specific ios credentials for a project. NOTE: you must be a manager in the project's organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/ios/{credentialid}
credentialsApi = CredentialsApi(client)
credentialsApi.delete_ios('{orgid}', '{projectid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get All OSX Credentials for an oganization
Description
Get all credentials available for the project. A user in the projects org will see all credentials uploaded for any project within the org, whereas a user with project-level permissions will only see credentials assigned to the specific project.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/osx
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.get_all_osx_for_org('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- providerName: string
-
- appleIdUsername: string
-
- links: object
-
[
{
"platform":"standaloneosx",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"Mac Developer: Unity Test (APRY987Y84)",
"expiration":"2021-03-05T19:38:25.000Z",
},
"appleIdUsername":"test user",
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
]
Upload OSX Credentials for organization
Description
Upload a new OSX certificate and provisioning profile for the organization. NOTE: you must be a manager in the organization to add new credentials.
Required Permissions
Request Parameters
curl
-X POST
-F label=OSX%20Alpha
-F certificate=@/Full/Path/To/alphacert.p12
-F certificatePass=unity
-F appleIdUsername=myUser
-F appleIdPassword=myPass
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/osx
credentialsApi = CredentialsApi(client)
credential = credentialsApi.add_credentials_osx_for_org('{orgid}', "OSX Alpha", "/Full/Path/To/alphacert.p12", {"certificate"="unity", "appleIdUsername"="myUser", "appleIdPassword"="myPass"})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- providerName: string
-
- appleIdUsername: string
-
- links: object
-
{
"platform":"standaloneosx",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"Mac Developer: Unity Test (APRY987Y84)",
"expiration":"2021-03-05T19:38:25.000Z",
},
"appleIdUsername":"test user",
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Get OSX Credential Details for organization
Description
Get specific OSX credential details
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/osx/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.get_one_osx('{orgid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- providerName: string
-
- appleIdUsername: string
-
- links: object
-
{
"platform":"standaloneosx",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"Mac Developer: Unity Test (APRY987Y84)",
"expiration":"2021-03-05T19:38:25.000Z",
},
"appleIdUsername":"test user",
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Update OSX Credentials for organization
Description
Update an OSX certificate / provisioning profile. NOTE: you must be a manager in the project's organization to update credentials.
Required Permissions
Request Parameters
curl
-X PUT
-F label=OSX%20Renamed
-F certificate=@/Full/Path/To/alphacert.p12
-F certificatePass=unity
-F appleIdUsername=myUser
-F appleIdPassword=myPass
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/osx/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.update_osx_for_org('{orgid}', '{credentialid}', "OSX Renamed", "/Full/Path/To/alphacert.p12", {"certificate"="unity", "appleIdUsername"="myUser", "appleIdPassword"="myPass"})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- providerName: string
-
- appleIdUsername: string
-
- links: object
-
{
"platform":"standaloneosx",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"Mac Developer: Unity Test (APRY987Y84)",
"expiration":"2021-03-05T19:38:25.000Z",
},
"appleIdUsername":"test user",
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Delete OSX Credentials for organization
Description
Delete specific OSX credentials. NOTE: you must be a manager in the project's organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/osx/{credentialid}
credentialsApi = CredentialsApi(client)
credentialsApi.delete_osx_for_org('{orgid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get All OSX Credentials
Description
Get all credentials available for the project. A user in the projects org will see all credentials uploaded for any project within the org, whereas a user with project-level permissions will only see credentials assigned to the specific project.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/osx
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.get_all_osx('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- providerName: string
-
- appleIdUsername: string
-
- links: object
-
[
{
"platform":"standaloneosx",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"Mac Developer: Unity Test (APRY987Y84)",
"expiration":"2021-03-05T19:38:25.000Z",
},
"appleIdUsername":"test user",
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
]
Upload OSX Credentials
Description
Upload a new OSX certificate and provisioning profile for the project. NOTE: you must be a manager in the project's organization to add new credentials.
Required Permissions
Request Parameters
curl
-X POST
-F label=OSX%20Alpha
-F certificate=@/Full/Path/To/alphacert.p12
-F certificatePass=unity
-F appleIdUsername=myUser
-F appleIdPassword=myPass
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/osx
credentialsApi = CredentialsApi(client)
credential = credentialsApi.add_credentials_osx('{orgid}', "OSX Alpha", "/Full/Path/To/alphacert.p12", {"certificate"="unity", "appleIdUsername"="myUser", "appleIdPassword"="myPass"})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- providerName: string
-
- appleIdUsername: string
-
- links: object
-
{
"platform":"standaloneosx",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"Mac Developer: Unity Test (APRY987Y84)",
"expiration":"2021-03-05T19:38:25.000Z",
},
"appleIdUsername":"test user",
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Get OSX Credential Details
Description
Get specific OSX credential details
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/osx/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.get_one_osx('{orgid}', '{projectid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- providerName: string
-
- appleIdUsername: string
-
- links: object
-
{
"platform":"standaloneosx",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"Mac Developer: Unity Test (APRY987Y84)",
"expiration":"2021-03-05T19:38:25.000Z",
},
"appleIdUsername":"test user",
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Update OSX Credentials
Description
Update an OSX certificate / provisioning profile for the project. NOTE: you must be a manager in the project's organization to update credentials.
Required Permissions
Request Parameters
curl
-X PUT
-F label=OSX%20Alpha
-F certificate=@/Full/Path/To/alphacert.p12
-F certificatePass=unity
-F appleIdUsername=myUser
-F appleIdPassword=myPass
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/osx/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.update_osx('{orgid}', '{projectid}', '{credentialid}', "OSX Renamed", "/Full/Path/To/alphacert.p12", {"certificate"="unity", "appleIdUsername"="myUser", "appleIdPassword"="myPass"})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- providerName: string
-
- appleIdUsername: string
-
- links: object
-
{
"platform":"standaloneosx",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"Mac Developer: Unity Test (APRY987Y84)",
"expiration":"2021-03-05T19:38:25.000Z",
},
"appleIdUsername":"test user",
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/osx/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Delete OSX Credentials
Description
Delete specific OSX credentials for a project. NOTE: you must be a manager in the project's organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/osx/{credentialid}
credentialsApi = CredentialsApi(client)
credentialsApi.delete_osx('{orgid}', '{projectid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get All UWP Credentials for an oganization
Description
Get all credentials available for the project. A user in the projects org will see all credentials uploaded for any project within the org, whereas a user with project-level permissions will only see credentials assigned to the specific project.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/uwp
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.get_all_uwp_for_org('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- links: object
-
[
{
"platform":"wsaplayer",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"UWP Developer",
"expiration":"2021-03-05T19:38:25.000Z",
},
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
]
Upload UWP Credentials for organization
Description
Upload a new UWP certificate and provisioning profile for the organization. NOTE: you must be a manager in the organization to add new credentials.
Required Permissions
Request Parameters
curl
-X POST
-F label=UWP%20Alpha
-F certificate=@/Full/Path/To/alphacert.pfx
-F certificatePass=unity
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/uwp
credentialsApi = CredentialsApi(client)
credential = credentialsApi.add_credentials_uwp_for_org('{orgid}', "UWP Alpha", "/Full/Path/To/alphacert.pfx", {"certificate"="unity"})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- links: object
-
{
"platform":"wsaplayer",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"UWP Developer",
"expiration":"2021-03-05T19:38:25.000Z",
},
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Get UWP Credential Details for organization
Description
Get specific UWP credential details
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/uwp/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.get_one_uwp('{orgid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- links: object
-
{
"platform":"wsaplayer",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"UWP Developer",
"expiration":"2021-03-05T19:38:25.000Z",
},
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Update UWP Credentials for organization
Description
Update an UWP certificate / provisioning profile. NOTE: you must be a manager in the project's organization to update credentials.
Required Permissions
Request Parameters
curl
-X PUT
-F label=UWP%20Renamed
-F certificate=@/Full/Path/To/alphacert.pfx
-F certificatePass=unity
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/uwp/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.update_uwp_for_org('{orgid}', '{credentialid}', "UWP Renamed", "/Full/Path/To/alphacert.pfx", {"certificate"="unity"})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- links: object
-
{
"platform":"wsaplayer",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"UWP Developer",
"expiration":"2021-03-05T19:38:25.000Z",
},
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Delete UWP Credentials for organization
Description
Delete specific UWP credentials. NOTE: you must be a manager in the project's organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/credentials/signing/uwp/{credentialid}
credentialsApi = CredentialsApi(client)
credentialsApi.delete_uwp_for_org('{orgid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Get All UWP Credentials
Description
Get all credentials available for the project. A user in the projects org will see all credentials uploaded for any project within the org, whereas a user with project-level permissions will only see credentials assigned to the specific project.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/uwp
credentialsApi = CredentialsApi(client)
credentials = credentialsApi.get_all_uwp('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- links: object
-
[
{
"platform":"wsaplayer",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"UWP Developer",
"expiration":"2021-03-05T19:38:25.000Z",
},
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
]
Upload UWP Credentials
Description
Upload a new UWP certificate and provisioning profile for the project. NOTE: you must be a manager in the project's organization to add new credentials.
Required Permissions
Request Parameters
curl
-X POST
-F label=UWP%20Alpha
-F certificate=@/Full/Path/To/alphacert.pfx
-F certificatePass=unity
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/uwp
credentialsApi = CredentialsApi(client)
credential = credentialsApi.add_credentials_uwp('{orgid}', "UWP Alpha", "/Full/Path/To/alphacert.pfx", {"certificate"="unity"})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- links: object
-
{
"platform":"wsaplayer",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"UWP Developer",
"expiration":"2021-03-05T19:38:25.000Z",
},
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Get UWP Credential Details
Description
Get specific UWP credential details
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/uwp/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.get_one_uwp('{orgid}', '{projectid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- links: object
-
{
"platform":"wsaplayer",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"UWP Developer",
"expiration":"2021-03-05T19:38:25.000Z",
},
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Update UWP Credentials
Description
Update an UWP certificate / provisioning profile for the project. NOTE: you must be a manager in the project's organization to update credentials.
Required Permissions
Request Parameters
curl
-X PUT
-F label=UWP%20Alpha
-F certificate=@/Full/Path/To/alphacert.pfx
-F certificatePass=unity
-H "Content-Type: multipart/form-data"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/uwp/{credentialid}
credentialsApi = CredentialsApi(client)
credential = credentialsApi.update_uwp('{orgid}', '{projectid}', '{credentialid}', "UWP Renamed", "/Full/Path/To/alphacert.pfx", {"certificate"="unity"})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- platform: string , x ∈ { ios , android , webplayer , webgl , standaloneosxintel , standaloneosxintel64 , standaloneosxuniversal , standaloneosx , standalonewindows , standalonewindows64 , standalonelinux , standalonelinux64 , standalonelinuxuniversal , wsaplayer , gamecorescarlett , ps5 , switch }
-
- label: string
-
- credentialid: string
-
- created: string
-
- lastMod: string
-
- certificate: object
-
- certName: string
-
- expiration: string
-
expiration date
- uploaded: string
-
uploaded date
- links: object
-
{
"platform":"wsaplayer",
"label":"demo new credentials",
"credentialid":"aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
"created":"2020-04-09T15:04:23.066Z",
"lastMod":"2020-04-09T15:04:23.069Z",
"certificate":{
"certName":"UWP Developer",
"expiration":"2021-03-05T19:38:25.000Z",
},
"links":{
"self":{
"method":"get",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
"delete":{
"method":"delete",
"href":"/api/v1/orgs/victorw/projects/e757c603-36f9-42b8-b921-6551bbbafb7d/credentials/signing/uwp/aff3518d-8d7b-45fc-9f04-e9f6b53247f7",
},
}
}
Delete UWP Credentials
Description
Delete specific UWP credentials for a project. NOTE: you must be a manager in the project's organization to delete credentials.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/credentials/signing/uwp/{credentialid}
credentialsApi = CredentialsApi(client)
credentialsApi.delete_uwp('{orgid}', '{projectid}', '{credentialid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Orgs Introduction
Organizations are managed at the Unity level. You can retrieve information about any organization a user belongs to and the entitlements the subscription grants.
Get organization data
Description
Get data for the specified organization based on UBA's cache
Required Permissions
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- orgName: string
-
- orgid: string
-
- orgFk: string
-
- location: object
-
- geographicRegion: string
-
{
"orgName": 'Test Org',
"orgid": 'test-org',
"orgFk": "246813579",
"location": { "geographicRegion": "amer" }
}
Update organization data
Description
Update specific data for the specified organization in UBA's cache
Required Permissions
Request Parameters
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- location: object
-
- geographicRegion: string , x ∈ { amer , eur }
-
{
"location": { "geographicRegion": "amer" }
}
Get billing plan
Description
Get the billing plan for the specified organization
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/billingplan
userdevicesApi = UserdevicesApi(client);
orgsApi.get_billing_plans('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- billing: object
-
actual billing plan
- label: string
-
- numProjects: number
-
- concurrentBuilds: number
-
- cooldownMinutes: number
-
- cooldownGracePeriodMinutes: number
-
- collaborators: number
-
- repoSizeLimitMB: number
-
- repoSizeLimitThresholdMB: number
-
- downloadLimitMB: number
-
- buildManifest: boolean
-
- libraryCaching: boolean
-
- pushExternalServices: boolean
-
- supportTickets: boolean
-
- apiAccess: boolean
-
- scheduledBuilds: boolean
-
- workspaceCaching: boolean
-
- buildingDisabled: boolean
-
- advancedFeatures: string[]
-
string - scmTypes: string[]
-
string
- effective: object
-
effective billing plan, this includes temporary overrides and specials
- label: string
-
- numProjects: number
-
- concurrentBuilds: number
-
- cooldownMinutes: number
-
- cooldownGracePeriodMinutes: number
-
- collaborators: number
-
- repoSizeLimitMB: number
-
- repoSizeLimitThresholdMB: number
-
- downloadLimitMB: number
-
- buildManifest: boolean
-
- libraryCaching: boolean
-
- pushExternalServices: boolean
-
- supportTickets: boolean
-
- apiAccess: boolean
-
- scheduledBuilds: boolean
-
- workspaceCaching: boolean
-
- buildingDisabled: boolean
-
- advancedFeatures: string[]
-
string - scmTypes: string[]
-
string
{
"billing": {
"label": "Studio",
"numProjects": 0,
"concurrentBuilds": 5,
"cooldownMinutes": 5,
"cooldownGracePeriodMinutes": 60,
"collaborators": 100000,
"repoSizeLimitMB": 5000,
"repoSizeLimitThresholdMB": 10,
"downloadLimitMB": 0,
"buildManifest": true,
"libraryCaching": true,
"pushExternalServices": true,
"supportTickets": true,
"apiAccess": true,
"scheduledBuilds": true,
"workspaceCaching": true,
"advancedFeatures": [
"debug",
"custom_defines",
"pre_export",
"post_export",
"custom_scenes",
"post_build_script"
],
"scmTypes": [
"git",
"svn",
"p4",
]
},
"effective": {
"label": "Studio",
"numProjects": 0,
"concurrentBuilds": 5,
"cooldownMinutes": 5,
"cooldownGracePeriodMinutes": 60,
"collaborators": 100000,
"repoSizeLimitMB": 5000,
"repoSizeLimitThresholdMB": 10,
"downloadLimitMB": 0,
"buildManifest": true,
"libraryCaching": true,
"pushExternalServices": true,
"supportTickets": true,
"apiAccess": true,
"scheduledBuilds": true,
"workspaceCaching": true,
"advancedFeatures": [
"debug",
"custom_defines",
"pre_export",
"post_export",
"custom_scenes",
"post_build_script"
],
"scmTypes": [
"git",
"svn",
"p4",
]
}
}
Get SSH Key
Description
Get the ssh public key for the specified org
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/sshkey
orgsApi = OrgsApi(client);
sshkey = orgsApi.get_ssh_key('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- publickey: string
-
{
"publickey": "ssh-rsa XXXXXXXX..."
}
Regenerate SSH Key
Description
Regenerate the ssh key for the specified org WARNING this is a destructive operation that will permanently remove your current SSH key.
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/sshkey
orgsApi = OrgsApi(client);
sshkey = orgsApi.get_ssh_key('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- publickey: string
-
{
"publickey": "ssh-rsa XXXXXXXX..."
}
Projects Introduction
Projects are the basic organization element in Unity DevOps Build Automation. Each project can contain multiple build targets across a variety of platforms and source control branches.
List all projects (user)
Description
List all projects that you have permission to access across all organizations. Add "?include=settings" as a query parameter to include the project settings with the response.
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/projects
projectsApi = ProjectsApi(client)
projects = projectsApi.list_projects_for_user()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
projects
- name: string
-
- projectid: string
-
- orgName: string
-
- orgid: string
-
- orgFk: string
-
- guid: string
-
- created: string
-
- cachedIcon: string
-
- serviceFlags: object
-
- links: object
-
- disabled: boolean
-
- disableNotifications: boolean
-
- generateShareLinks: boolean
-
- settings:
-
- remoteCacheStrategy: string , x ∈ { none , library (default) , workspace }
-
- cacheCompressionLevel: string , x ∈ { none , 1 (default) , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- url: string
-
- user: string
-
- pass: string
-
- fingerprint: string
-
- p4authtype: string
-
Deprecated p4-specific auth type - please use authType instead
- authType: string , x ∈ { LDAPWorkingMode , UPWorkingMode , SSOWorkingMode , ticket , password }
-
authType for Plastic and P4
- plasticAccessToken: string
-
- shallowclone: boolean
-
- windowsGitBinary: string , x ∈ { native (default) , cygwin }
-
- useEncryption: boolean
-
- encryptionKey: string
-
- encryptionMethod: string , x ∈ { AES128 , AES192 , AES256 }
-
- scm: object
-
- oauth:
-
- scm_provider: string
-
- temp_state: string
-
- github: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- gitlab: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- bitbucket: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- azure: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
{
"name": "Example Unity",
"projectid": "example-unity",
"orgName": "Example Other",
"orgid": "example-other",
"guid": "94837118-7ee1-4583-bf11-bf33fd4643fb",
"created": "2015-10-29T20:32:15.800Z",
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-other/projects/example-unity"
},
"list_buildtargets": {
"method": "get",
"href": "/api/v1/orgs/example-other/projects/example-unity/buildtargets"
},
"latest_builds": {
"method": "get",
"href": "/api/v1/orgs/example-other/projects/example-unity/buildtargets/_all/builds?per_page=1"
},
"revoke_all_shared": {
"method": "delete",
"href": "/api/v1/orgs/example-other/projects/example-unity/share"
}
}
},
{
"name": "new-projectangrybots",
"projectid": "new-projectangrybots",
"orgName": "Example Org",
"orgid": "example-org",
"guid": "2ebef061-6213-4433-8b98-80b2e78c5189",
"created": "2015-08-06T19:48:45.259Z",
"cachedIcon": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-projectangrybots/default-webgl-1/icon.png",
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots"
},
"list_buildtargets": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/buildtargets"
},
"latest_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/buildtargets/_all/builds?per_page=1"
},
"revoke_all_shared": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/share"
}
}
}
Get project details
Description
Gets the same data as /orgs/{orgid}/project/{projectid} but looks up the project by the Unity Project ID. This value is returned in the project's guid field.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/projects/{projectuid}
projectsApi = ProjectsApi(client)
project = projectsApi.get_project_by_upid('{projectupid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- projectid: string
-
- orgName: string
-
- orgid: string
-
- orgFk: string
-
- guid: string
-
- created: string
-
- cachedIcon: string
-
- serviceFlags: object
-
- links: object
-
- disabled: boolean
-
- disableNotifications: boolean
-
- generateShareLinks: boolean
-
- settings:
-
- remoteCacheStrategy: string , x ∈ { none , library (default) , workspace }
-
- cacheCompressionLevel: string , x ∈ { none , 1 (default) , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- url: string
-
- user: string
-
- pass: string
-
- fingerprint: string
-
- p4authtype: string
-
Deprecated p4-specific auth type - please use authType instead
- authType: string , x ∈ { LDAPWorkingMode , UPWorkingMode , SSOWorkingMode , ticket , password }
-
authType for Plastic and P4
- plasticAccessToken: string
-
- shallowclone: boolean
-
- windowsGitBinary: string , x ∈ { native (default) , cygwin }
-
- useEncryption: boolean
-
- encryptionKey: string
-
- encryptionMethod: string , x ∈ { AES128 , AES192 , AES256 }
-
- scm: object
-
- oauth:
-
- scm_provider: string
-
- temp_state: string
-
- github: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- gitlab: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- bitbucket: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- azure: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
{
"name": "new-projectangrybots",
"projectid": "new-projectangrybots",
"orgName": "Example Org",
"orgid": "example-org",
"guid": "2ebef061-6213-4433-8b98-80b2e78c5189",
"created": "2015-08-06T19:48:45.259Z",
"cachedIcon": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-projectangrybots/default-webgl-1/icon.png",
"settings": {
"remoteCacheStrategy": "none",
"scm": {
"type": "git",
"url": "git://github.com/example-org/new-projectangrybots.git",
"windowsGitBinary": "native"
}
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots"
},
"list_buildtargets": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/buildtargets"
},
"latest_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/buildtargets/_all/builds?per_page=1"
},
"revoke_all_shared": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/share"
}
}
}
List all projects (org)
Description
List all projects that belong to the specified organization. Add "?include=settings" as a query parameter to include the project settings with the response.
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects?include=settings
projectsApi = ProjectsApi(client)
projects = projectsApi.list_projects_for_org('{orgid}')
# Include project settings
projects = projectsApi.list_projects_for_org('timt-unity3d', include="settings");
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- projectid: string
-
- orgName: string
-
- orgid: string
-
- orgFk: string
-
- guid: string
-
- created: string
-
- cachedIcon: string
-
- serviceFlags: object
-
- links: object
-
- disabled: boolean
-
- disableNotifications: boolean
-
- generateShareLinks: boolean
-
- settings:
-
- remoteCacheStrategy: string , x ∈ { none , library (default) , workspace }
-
- cacheCompressionLevel: string , x ∈ { none , 1 (default) , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- url: string
-
- user: string
-
- pass: string
-
- fingerprint: string
-
- p4authtype: string
-
Deprecated p4-specific auth type - please use authType instead
- authType: string , x ∈ { LDAPWorkingMode , UPWorkingMode , SSOWorkingMode , ticket , password }
-
authType for Plastic and P4
- plasticAccessToken: string
-
- shallowclone: boolean
-
- windowsGitBinary: string , x ∈ { native (default) , cygwin }
-
- useEncryption: boolean
-
- encryptionKey: string
-
- encryptionMethod: string , x ∈ { AES128 , AES192 , AES256 }
-
- scm: object
-
- oauth:
-
- scm_provider: string
-
- temp_state: string
-
- github: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- gitlab: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- bitbucket: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- azure: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
Default:
[
{
"name": "new-projectangrybots",
"projectid": "new-projectangrybots",
"orgName": "Example Org",
"orgid": "example-org",
"guid": "2ebef061-6213-4433-8b98-80b2e78c5189",
"created": "2015-08-06T19:48:45.259Z",
"cachedIcon": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-projectangrybots/default-webgl-1/icon.png",
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots"
},
"list_buildtargets": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/buildtargets"
},
"latest_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/buildtargets/_all/builds?per_page=1"
},
"revoke_all_shared": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/share"
}
}
}
]
Using ?include=settings:
[
{
"name": "new-projectangrybots",
"projectid": "new-projectangrybots",
"orgName": "Example Org",
"orgid": "example-org",
"guid": "2ebef061-6213-4433-8b98-80b2e78c5189",
"created": "2015-08-06T19:48:45.259Z",
"cachedIcon": "https://unitycloud-build-user-svc-dev-extras-pub.s3.amazonaws.com/example-org/new-projectangrybots/default-webgl-1/icon.png",
"settings": {
"remoteCacheStrategy": "none",
"scm": {
"type": "git",
"url": "git://github.com/example-org/new-projectangrybots.git",
"windowsGitBinary": "native"
}
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots"
},
"list_buildtargets": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/buildtargets"
},
"latest_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/buildtargets/_all/builds?per_page=1"
},
"revoke_all_shared": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-projectangrybots/share"
}
}
}
]
Create project
Description
Create a project for the specified organization
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
-d '{"name": "New Project", "settings": { "remoteCacheStrategy": "library", "scm": { "type": "git", "url": "git://github.com/example-org/newproject.git", "user": "julie.smith", "pass": "password"}}}'
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects
projectsApi = ProjectsApi(client)
project = projectsApi.add_project('{orgid}', {"name": "New Project", "settings": { "remoteCacheStrategy": "library", "scm": { "type": "git", "url": "git://github.com/example-org/newproject.git", "user": "julie.smith", "pass": "password", "windowsGitBinary": "native"}}})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- projectid: string
-
- orgName: string
-
- orgid: string
-
- orgFk: string
-
- guid: string
-
- created: string
-
- cachedIcon: string
-
- serviceFlags: object
-
- links: object
-
- disabled: boolean
-
- disableNotifications: boolean
-
- generateShareLinks: boolean
-
- settings:
-
- remoteCacheStrategy: string , x ∈ { none , library (default) , workspace }
-
- cacheCompressionLevel: string , x ∈ { none , 1 (default) , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- url: string
-
- user: string
-
- pass: string
-
- fingerprint: string
-
- p4authtype: string
-
Deprecated p4-specific auth type - please use authType instead
- authType: string , x ∈ { LDAPWorkingMode , UPWorkingMode , SSOWorkingMode , ticket , password }
-
authType for Plastic and P4
- plasticAccessToken: string
-
- shallowclone: boolean
-
- windowsGitBinary: string , x ∈ { native (default) , cygwin }
-
- useEncryption: boolean
-
- encryptionKey: string
-
- encryptionMethod: string , x ∈ { AES128 , AES192 , AES256 }
-
- scm: object
-
{
"name": "New Project",
"projectid": "new-project",
"orgName": "Example Org",
"orgid": "example-org",
"guid": "49da3555-d775-4fc0-9a4f-f3e28a46ea4c",
"created": "2015-11-17T21:38:53.626Z",
"settings": {
"remoteCacheStrategy": "library",
"scm": {
"type": "git",
"url": "git://github.com/example-org/newproject.git",
"user": "juliesmith",
"pass": "********",
"windowsGitBinary": "native"
}
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/new-project/projects/new-project"
},
"list_buildtargets": {
"method": "get",
"href": "/api/v1/orgs/new-project/projects/new-projectbuildtargets"
},
"latest_builds": {
"method": "get",
"href": "/api/v1/orgs/new-project/projects/new-projectbuildtargets/_all/builds?per_page=1"
},
"revoke_all_shared": {
"method": "delete",
"href": "/api/v1/orgs/new-project/projects/new-project/share"
}
}
}
Get project details
Description
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}
projectsApi = ProjectsApi(client)
project = projectsApi.get_project('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- projectid: string
-
- orgName: string
-
- orgid: string
-
- orgFk: string
-
- guid: string
-
- created: string
-
- cachedIcon: string
-
- serviceFlags: object
-
- links: object
-
- disabled: boolean
-
- disableNotifications: boolean
-
- generateShareLinks: boolean
-
- settings:
-
- remoteCacheStrategy: string , x ∈ { none , library (default) , workspace }
-
- cacheCompressionLevel: string , x ∈ { none , 1 (default) , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- url: string
-
- user: string
-
- pass: string
-
- fingerprint: string
-
- p4authtype: string
-
Deprecated p4-specific auth type - please use authType instead
- authType: string , x ∈ { LDAPWorkingMode , UPWorkingMode , SSOWorkingMode , ticket , password }
-
authType for Plastic and P4
- plasticAccessToken: string
-
- shallowclone: boolean
-
- windowsGitBinary: string , x ∈ { native (default) , cygwin }
-
- useEncryption: boolean
-
- encryptionKey: string
-
- encryptionMethod: string , x ∈ { AES128 , AES192 , AES256 }
-
- scm: object
-
- oauth:
-
- scm_provider: string
-
- temp_state: string
-
- github: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- gitlab: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- bitbucket: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
- azure: object
-
- azureOrg: string
-
- azureProject: string
-
- repository: object
-
{
"name": "New Project",
"projectid": "new-project",
"orgName": "Example Org",
"orgid": "example-org",
"guid": "90d19efb-4b45-4025-8025-93cd365fcb52",
"created": "2015-11-18T16:43:49.777Z",
"settings": {
"remoteCacheStrategy": "library",
"windowsGitBinary": "native",
"scm": {
"type": "git",
"url": "git://github.com/example-org/newproject.git",
"user": "juliesmith",
"pass": "********"
}
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project"
},
"list_buildtargets": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets"
},
"latest_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/_all/builds?per_page=1"
},
"revoke_all_shared": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/share"
}
}
}
Update project details
Description
Required Permissions
Request Parameters
curl
-X PUT
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
-d '{"settings": { "remoteCacheStrategy": "none", "scm": { "pass": "newpassword"}}}'
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}
projectsApi = ProjectsApi(client)
project = projectsApi.update_project('{orgid}', '{projectid}', {"settings": { "remoteCacheStrategy": "none", "scm": { "pass": "newpassword"}}})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- name: string
-
- projectid: string
-
- orgName: string
-
- orgid: string
-
- orgFk: string
-
- guid: string
-
- created: string
-
- cachedIcon: string
-
- serviceFlags: object
-
- links: object
-
- disabled: boolean
-
- disableNotifications: boolean
-
- generateShareLinks: boolean
-
- settings:
-
- remoteCacheStrategy: string , x ∈ { none , library (default) , workspace }
-
- cacheCompressionLevel: string , x ∈ { none , 1 (default) , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 }
-
- scm: object
-
- type: string , x ∈ { git , svn , p4 , oauth , plastic }
-
- url: string
-
- user: string
-
- pass: string
-
- fingerprint: string
-
- p4authtype: string
-
Deprecated p4-specific auth type - please use authType instead
- authType: string , x ∈ { LDAPWorkingMode , UPWorkingMode , SSOWorkingMode , ticket , password }
-
authType for Plastic and P4
- plasticAccessToken: string
-
- shallowclone: boolean
-
- windowsGitBinary: string , x ∈ { native (default) , cygwin }
-
- useEncryption: boolean
-
- encryptionKey: string
-
- encryptionMethod: string , x ∈ { AES128 , AES192 , AES256 }
-
- scm: object
-
{
"name": "New Project",
"projectid": "new-project",
"orgName": "Example Org",
"orgid": "example-org",
"guid": "90d19efb-4b45-4025-8025-93cd365fcb52",
"created": "2015-11-18T16:43:49.777Z",
"settings": {
"remoteCacheStrategy": "none",
"windowsGitBinary": "native",
"scm": {
"type": "git",
"url": "git://github.com/example-org/newproject.git",
"user": "juliesmith",
"pass": "********"
}
},
"links": {
"self": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project"
},
"list_buildtargets": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets"
},
"latest_builds": {
"method": "get",
"href": "/api/v1/orgs/example-org/projects/new-project/buildtargets/_all/builds?per_page=1"
},
"revoke_all_shared": {
"method": "delete",
"href": "/api/v1/orgs/example-org/projects/new-project/share"
}
}
}
Archive project
Description
This will archive the project in Build Automation ONLY. Use with caution - this process is not reversible. The projects UPID will be removed from Build Automation allowing the project to be reconfigured.
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}
projectsApi = ProjectsApi(client)
projectsApi.archive_project('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- error: string
-
- errorCode: string
-
- detail: string[]
-
string
Get billing plan
Description
Get the billing plan for the specified project
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/billingplan
projectsApi = ProjectsApi(client)
billingplans = projectsApi.get_billing_plans('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- billing: object
-
actual billing plan
- label: string
-
- numProjects: number
-
- concurrentBuilds: number
-
- cooldownMinutes: number
-
- cooldownGracePeriodMinutes: number
-
- collaborators: number
-
- repoSizeLimitMB: number
-
- repoSizeLimitThresholdMB: number
-
- downloadLimitMB: number
-
- buildManifest: boolean
-
- libraryCaching: boolean
-
- pushExternalServices: boolean
-
- supportTickets: boolean
-
- apiAccess: boolean
-
- scheduledBuilds: boolean
-
- workspaceCaching: boolean
-
- buildingDisabled: boolean
-
- advancedFeatures: string[]
-
string - scmTypes: string[]
-
string
- effective: object
-
effective billing plan, this includes temporary overrides and specials
- label: string
-
- numProjects: number
-
- concurrentBuilds: number
-
- cooldownMinutes: number
-
- cooldownGracePeriodMinutes: number
-
- collaborators: number
-
- repoSizeLimitMB: number
-
- repoSizeLimitThresholdMB: number
-
- downloadLimitMB: number
-
- buildManifest: boolean
-
- libraryCaching: boolean
-
- pushExternalServices: boolean
-
- supportTickets: boolean
-
- apiAccess: boolean
-
- scheduledBuilds: boolean
-
- workspaceCaching: boolean
-
- buildingDisabled: boolean
-
- advancedFeatures: string[]
-
string - scmTypes: string[]
-
string
{
"billing": {
"label": "Studio",
"numProjects": 0,
"concurrentBuilds": 5,
"cooldownMinutes": 5,
"cooldownGracePeriodMinutes": 60,
"collaborators": 100000,
"repoSizeLimitMB": 5000,
"repoSizeLimitThresholdMB": 10,
"downloadLimitMB": 0,
"buildManifest": true,
"libraryCaching": true,
"pushExternalServices": true,
"supportTickets": true,
"apiAccess": true,
"scheduledBuilds": true,
"workspaceCaching": true,
"advancedFeatures": [
"debug",
"custom_defines",
"pre_export",
"post_export",
"custom_scenes",
"post_build_script"
],
"scmTypes": [
"git",
"svn",
"p4",
]
},
"effective": {
"label": "Studio",
"numProjects": 0,
"concurrentBuilds": 5,
"cooldownMinutes": 5,
"cooldownGracePeriodMinutes": 60,
"collaborators": 100000,
"repoSizeLimitMB": 5000,
"repoSizeLimitThresholdMB": 10,
"downloadLimitMB": 0,
"buildManifest": true,
"libraryCaching": true,
"pushExternalServices": true,
"supportTickets": true,
"apiAccess": true,
"scheduledBuilds": true,
"workspaceCaching": true,
"advancedFeatures": [
"debug",
"custom_defines",
"pre_export",
"post_export",
"custom_scenes",
"post_build_script"
],
"scmTypes": [
"git",
"svn",
"p4",
]
}
}
Get SSH Key
Description
Get the ssh public key for the specified project
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/sshkey
projectsApi = ProjectsApi(client)
sshkey = projectsApi.get_ssh_key('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- publickey: string
-
- type: string
-
{
"publickey": "ssh-rsa XXXXXXXX..."
}
Get project statistics
Description
Get statistics for the specified project
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/stats
projectsApi = ProjectsApi(client)
stats = projectsApi.get_stats('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- jobCount: number
-
- buildSuccessHealth: number
-
- buildPoorHealth: number
-
- buildCancelHealth: number
-
- buildPendingHealth: number
-
- successfulBuilds: number
-
- canceledBuilds: number
-
- failedBuilds: number
-
- averageTime: number
-
- averageWorkspaceSize: number
-
- averageWaitTime: number
-
- averageBillableTime: number
-
- averageBuildTime: number
-
- maxConcurrentBuilds: number
-
- availableConcurrentBuilds: number
-
{
"jobCount":100,
"buildSuccessHealth":60,
"buildPoorHealth":20,
"buildCancelHealth":20,
"successfulBuilds":60,
"canceledBuilds":20,
"failedBuilds":20,
"averageTime":4628,
"averageWorkspaceSize":8386947559
"averageWaitTime": 3200,
"averageBillableTime": 4500,
"averageBuildTime": 500,
"maxConcurrentBuilds": 5,
"availableConcurrentbuilds": 4
}
Get audit log
Description
Retrieve a list of historical settings changes for this project
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/auditlog
projectsApi = ProjectsApi(client)
stats = projectsApi.get_audit_log('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- updatingUserEmail: string
-
- updated: string (dateTime)
-
- lines: object[]
-
object - label: string
-
- field: string
-
- to: string
-
- from: string
-
[
{
"updatingUserEmail": "julie.smith@example.org",
"updated": "2015-08-04T17:18:24.532Z",
"lines": [{
"from": "Latest 4.x",
"to": "4.6.5",
"label": "Unity version",
"field": "buildtarget.settings.unityVersion"
}]
},
{
"updatingUserEmail": "sandra.johnson@example.org",
"updated": "2015-08-02T12:02:44.532Z",
"lines": [{
"label": "Keypass",
"field": "buildtarget.settings.platform.keystoreInfo.keypass",
"from": "",
"to": "changed"
}]
}
]
Get environment variables
Description
Get all configured environment variables for a given project
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/envvars
buildtargetsApi = BuildtargetsApi(client)
buildtargetsApi.get_env_variables_for_project('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Object containing env variables. Name must follow env variable spec - a word consisting solely of underscores, digits, and alphabetics from the portable character set. The first character of a name is not a digit. May not override widely used env variables (see IEEE Std 1003.1-2008).
Set environment variables
Description
Set all configured environment variables for a given project
Required Permissions
Request Parameters
curl
-X PUT
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/envvars
buildtargetsApi = BuildtargetsApi(client)
buildtargetsApi.set_env_variables_for_project('{orgid}', '{projectid}', '{envvars}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Object containing env variables. Name must follow env variable spec - a word consisting solely of underscores, digits, and alphabetics from the portable character set. The first character of a name is not a digit. May not override widely used env variables (see IEEE Std 1003.1-2008).
Public Introduction
General information about the Unity DevOps Build Automation API and functionality for end-user consumption (not user or project specific).
Get the Unity Build Automation changelogs
Description
Retrieves all changelog lines
Request Parameters
curl
-X GET
https://build-api.cloud.unity3d.com/api/v1/changelogs
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- logType: string
-
- message: string
-
- created: string (dateTime)
-
[{"message":"Released Xcode 11.2.1","logType":"xcode","created":"2019-11-20T17:06:43.458Z"},{"message":"Unity 2019.3.0b11 is now available","logType":"unity","created":"2019-11-20T17:01:32.774Z"}]
Status Introduction
Status messages used to inform users about the state of the service
Get Build Automation Status
Description
Request Parameters
curl
-X GET
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/status
buildsApi = BuildsApi(client)
status = buildsApi.get_status()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- text: string
-
- redirect: string
-
- priority: integer
-
- scmType: string
-
- billingPlan: string
-
- platform: string
-
- alertType: string
-
- autoClear: boolean
-
[
{
"text": "This platform is not actively supported anymore and will be removed soon",
"priority": 1,
"platform": "webplayer"
},
{
"text": "Hello everyone! This is a status message! In the real world this would be used to show issues with the server status. Here, it's just used as confirmation of the fact that we display status messages. That's pretty cool. You can remove this in the admin UI if it bothers you.",
"priority": 2
},
{
"text": "Hello! This status message is tied to the Personal billing plan.",
"priority": 500,
"billingPlan": "Personal"
},
{
"text": "Hello! This status message has a priority of 0 and would only be visible to git users",
"scmType": "git"
},
{
"text": "Hello! This is an info level status message that won't automatically disappear.",
"alertType": "info",
"autoClear": false
}
]
Userdevices Introduction
User devices are stored to make installation of builds easier by verifying that devices are allowed in a provisioning profile.
List iOS device profiles
Description
List all iOS device profiles for the current user
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
-X GET
-H "Content-Type: application/json"
https://build-api.cloud.unity3d.com/api/v1/users/me/devices
userdevicesApi = UserdevicesApi(client);
devices = userdevicesApi.list_devices_for_user();
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- udid: string (40 to 40 chars)
-
- devicename: string
-
- os: string
-
- osversion: string
-
- product: string
-
- status: string , x ∈ { disabled , active }
-
[
{
"udid": "00000000000000000000000000000000000000000",
"devicename": "",
"os": "iOS",
"osversion": "12D508",
"product": "iPad3,3",
"status": "active"
},
{
"udid": "11111111111111111111111111111111111111111",
"devicename": "",
"os": "iOS",
"osversion": "12A405",
"product": "iPhone7,1",
"status": "active"
}
]
Create iOS device profile
Description
Create iOS device profile for the current user
Request Parameters
curl
-X POST
-d '{"udid":"3333333333333333333333333333333333333333", "devicename": "Test Device", "os": "iOS", "osversion": "12D508", "product": "iPad3,3", "status": "active" }'
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/users/me/apikey
userdevicesApi = UserdevicesApi(client);
device = userdevicesApi.create_device(options={"udid":"3333333333333333333333333333333333333333", "devicename": "Test Device", "os": "iOS", "osversion": "12D508", "product": "iPad3,3", "status": "active" });
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- udid: string (40 to 40 chars)
-
- devicename: string
-
- os: string
-
- osversion: string
-
- product: string
-
- status: string , x ∈ { disabled , active }
-
{
"udid": "3333333333333333333333333333333333333333",
"devicename": "Test Device",
"os": "iOS",
"osversion": "12D508",
"product": "iPad3,3",
"status": "active"
}
Users Introduction
Users are managed at the Unity level. Users can be queried and CBuild Automation specific preferencs can be updated. Subscriptions for a given user can also be upgraded and downgraded.
Get current user
Description
Get the currently authenticated user.
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/users/me
usersApi = UsersApi(client);
user = usersApi.get_user_self()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- email: string
-
email address
- name: string
-
full name
- unityid: string
-
internal unity id that is shared across services
- waiting: boolean
-
when true the user is waiting to be approved for access to Build Automation
- disableNotifications: boolean
-
when true build status email notifications will no longer be sent
- primaryOrg: string
-
primary organization the user belongs to
- links: object
-
links for retrieving more information about the user
{
"email": "julie.smith@example.org",
"name": "juliesmith",
"unityid": "0000000",
"waiting": false,
"disableNotifications": false,
"apiKey": "[YOUR API KEY]",
"primaryOrg": "example-org",
"links": {
"self": {
"method": "get",
"href": "/api/v1/users/me"
}
}
}
Update current user
Description
You can update a few fields on the current user. Each field is optional and you do not need to specify all fields on update.
Request Parameters
curl -H "Authorization: Basic [YOUR API KEY]"
-X PUT
-H "Content-Type: application/json"
-d '{"disableNotifications": true}'
https://build-api.cloud.unity3d.com/api/v1/users/me'
usersApi = UsersApi(client);
user = usersApi.update_user_self(options={"disableNotifications": True})
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- email: string
-
email address
- name: string
-
full name
- unityid: string
-
internal unity id that is shared across services
- waiting: boolean
-
when true the user is waiting to be approved for access to Build Automation
- disableNotifications: boolean
-
when true build status email notifications will no longer be sent
- primaryOrg: string
-
primary organization the user belongs to
- links: object
-
links for retrieving more information about the user
{
"email": "julie.smith@example.org",
"name": "juliesmith",
"unityid": "0000000",
"waiting": false,
"disableNotifications": false,
"apiKey": "[YOUR API KEY]",
"primaryOrg": "example-org",
"links": {
"self": {
"method": "get",
"href": "/api/v1/users/me"
}
}
}
Get current user's API key
Description
Get the currently authenticated user's API key.
Request Parameters
curl
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/users/me/apiKey
usersApi = UsersApi(client);
user = usersApi.get_user_api_key()
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- apiKey: string
-
API key
{
"[YOUR API KEY]"
}
Regenerate API Key
Description
Remove current API key and generate a new one. WARNING you will need to use the returned API key in all subsequent calls.
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/users/me/apikey
usersApi = UsersApi(client);
newApiKey = usersApi.regen_api_key();
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- apiKey: string
-
{
"apiKey": "00000000000000000000000000000000",
}
Webhooks Introduction
Event | Trigger Condition |
---|---|
ProjectBuildQueued | When a build target is queued for building |
ProjectBuildStarted | When a build starts |
ProjectBuildRestarted | When an internal error occurs and the job is restarted |
ProjectBuildSuccess | When a build finishes successfully |
ProjectBuildFailure | When a build finishes with a failure condition |
ProjectBuildCanceled | When a build in progress is canceled |
Headers
Each hook delivery will contain these special headers:Name | Description |
---|---|
X-UnityCloudBuild-HookId | The record id of the hook |
X-UnityCloudBuild-Event | The name of the event that triggered this hook |
X-UnityCloudBuild-DeliveryId | A unique UUID that identifies this delivery instance |
X-UnityCloudBuild-Signature | The SHA256 HMAC signature of the payload When a secret is defined |
Example Web Hook Delivery
Content-Length: 873
X-Unitycloudbuild-Event: ProjectBuildQueued
X-Unitycloudbuild-Hookid: 7
X-Unitycloudbuild-Deliveryid: 81a4ab67-0176-4e4c-8ab2-bd0ab7d3cc70
Connection: Keep-Alive
Content-Type: application/json
{
"projectName": "My Project",
"buildTargetName": "Mac desktop 32-bit build",
"projectGuid": "0895432b-43a2-4fd3-85f0-822d8fb607ba",
"orgForeignKey": "13260",
"buildNumber": 14,
"buildStatus": "queued",
"startedBy": "Build User <builduser@domain.com>",
"platform": "standaloneosxintel",
"links": {
"api_self": {
"method": "get",
"href": "/api/orgs/my-org/projects/my-project/buildtargets/mac-desktop-32-bit-build/builds/14"
},
"dashboard_url": {
"method": "get",
"href": "https://build.cloud.unity3d.com"
},
"dashboard_project": {
"method": "get",
"href": "/build/orgs/stephenp/projects/assetbundle-demo-1"
},
"dashboard_summary": {
"method": "get",
"href": "/build/orgs/my-org/projects/my-project/buildtargets/mac-desktop-32-bit-build/builds/14/summary"
},
"dashboard_log": {
"method": "get",
"href": "/build/orgs/my-org/projects/my-project/buildtargets/mac-desktop-32-bit-build/builds/14/log"
}
}
}
List hooks for organization
Description
List all hooks configured for the specified organization
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks
hooksApi = WebhooksApi(client);
hooksApi.list_hooks_for_org('{orgid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- hookType: string , x ∈ { web , slack }
-
- events: string[]
-
string , x ∈ { ProjectBuildQueued , ProjectBuildStarted , ProjectBuildRestarted , ProjectBuildSuccess , ProjectBuildFailure , ProjectBuildCanceled , ProjectBuildUpload } - config: object
-
- active: boolean true
-
- id: string
-
[
{
"hookType": "web",
"events": [
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"encoding": "json",
"sslVerify": true,
"url": "http://unity3d.com/example"
},
"active": true,
"id": 7
},
{
"hookType": "web",
"events": [
"ProjectBuildQueued",
"ProjectBuildStarted",
"ProjectBuildRestarted",
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"url": "http://unity3d.com/example2"
},
"active": true,
"id": 8
}
]
Add hook for organization
Description
Adds a new organization level hook. An organization level hook is triggered by events from all projects belonging to the organziation. NOTE: you must be a manager in the organization to add new hooks.
Hook Type Configuration Parameters
Type | Configuration Options | ||||||||
---|---|---|---|---|---|---|---|---|---|
web
|
|
||||||||
slack
|
|
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-d '{"hookType":"web","events":["ProjectBuildSuccess","ProjectBuildFailure"],"config":{"url":"http://unity3d.com/example"}}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks
hooksApi = HooksApi(client)
hook = hooksApi.add_hook_for_org('{orgid}', config)
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- hookType: string , x ∈ { web , slack }
-
- events: string[]
-
string , x ∈ { ProjectBuildQueued , ProjectBuildStarted , ProjectBuildRestarted , ProjectBuildSuccess , ProjectBuildFailure , ProjectBuildCanceled , ProjectBuildUpload } - config: object
-
- active: boolean true
-
- id: string
-
{
"hookType": "web",
"events": [
"ProjectBuildQueued",
"ProjectBuildStarted",
"ProjectBuildRestarted",
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"url": "http://unity3d.com/example"
},
"active": true,
"id": 8
}
Get organization hook details
Description
Get details of a hook by id
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks/{id}
orgsApi = OrgsApi(client);
orgsApi.get_hook('{orgid}', '{id}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- hookType: string , x ∈ { web , slack }
-
- events: string[]
-
string , x ∈ { ProjectBuildQueued , ProjectBuildStarted , ProjectBuildRestarted , ProjectBuildSuccess , ProjectBuildFailure , ProjectBuildCanceled , ProjectBuildUpload } - config: object
-
- active: boolean true
-
- id: string
-
{
"hookType": "web",
"events": [
"ProjectBuildQueued",
"ProjectBuildStarted",
"ProjectBuildRestarted",
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"url": "http://unity3d.com/example"
},
"active": true,
"id": 8
}
Delete organization hook
Description
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks/{id}
orgsApi = OrgsApi(client)
orgsApi.delete_hook('{orgid}', '{id}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Update hook for organization
Description
Update a new hook. NOTE: you must be a manager in the organization to update hooks.
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-d '{"hookType":"web", "active":true, "config":{}}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks/{id}
hooksApi = HooksApi(client)
hook = hooksApi.update_hook('{hookid}', options)
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- hookType: string , x ∈ { web , slack }
-
- events: string[]
-
string , x ∈ { ProjectBuildQueued , ProjectBuildStarted , ProjectBuildRestarted , ProjectBuildSuccess , ProjectBuildFailure , ProjectBuildCanceled , ProjectBuildUpload } - config: object
-
- active: boolean true
-
- id: string
-
{
"hookType": "web",
"events": [
"ProjectBuildQueued",
"ProjectBuildStarted",
"ProjectBuildRestarted",
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"url": "http://unity3d.com/example"
},
"active": true,
"id": 8
}
Ping an org hook
Description
Send a ping event to an org hook.
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-d '{}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks/{id}/ping
hooksApi = HooksApi(client)
hook = hooksApi.ping_hook('{orgid}', '{hookid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
List hooks for project
Description
List all hooks configured for the specified project
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/hooks
hooksApi = WebhooksApi(client);
hooksApi.list_hooks_for_project('{orgid}', '{projectid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- hookType: string , x ∈ { web , slack }
-
- events: string[]
-
string , x ∈ { ProjectBuildQueued , ProjectBuildStarted , ProjectBuildRestarted , ProjectBuildSuccess , ProjectBuildFailure , ProjectBuildCanceled , ProjectBuildUpload } - config: object
-
- active: boolean true
-
- id: string
-
[
{
"hookType": "web",
"events": [
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"encoding": "json",
"sslVerify": true,
"url": "http://unity3d.com/example"
},
"active": true,
"id": 7
},
{
"hookType": "web",
"events": [
"ProjectBuildQueued",
"ProjectBuildStarted",
"ProjectBuildRestarted",
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"url": "http://unity3d.com/example2"
},
"active": true,
"id": 8
}
]
Add hook for project
Description
Adds a new project level hook. A project level hook is only triggered by events from the specific project. NOTE: you must be a manager in the organization to add new hooks.
Hook Type Configuration Parameters
Type | Configuration Options | ||||||||
---|---|---|---|---|---|---|---|---|---|
web
|
|
||||||||
slack
|
|
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-d '{"hookType":"web","events":["ProjectBuildSuccess","ProjectBuildFailure"],"config":{"url":"http://unity3d.com/example"}}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/hooks
hooksApi = HooksApi(client)
hook = hooksApi.add_hook_for_project('{orgid}', '{projectid}', config)
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- hookType: string , x ∈ { web , slack }
-
- events: string[]
-
string , x ∈ { ProjectBuildQueued , ProjectBuildStarted , ProjectBuildRestarted , ProjectBuildSuccess , ProjectBuildFailure , ProjectBuildCanceled , ProjectBuildUpload } - config: object
-
- active: boolean true
-
- id: string
-
{
"hookType": "web",
"events": [
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"encoding": "json",
"sslVerify": true,
"url": "http://unity3d.com/example"
},
"active": true,
"id": 7
}
Get project hook details
Description
Get details of a hook by id
Required Permissions
Request Parameters
curl
-X GET
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks/projects/{projectid}/hooks/{id}
orgsApi = ProjectsApi(client);
orgsApi.get_hook('{orgid}', '{projectid}', '{id}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- hookType: string , x ∈ { web , slack }
-
- events: string[]
-
string , x ∈ { ProjectBuildQueued , ProjectBuildStarted , ProjectBuildRestarted , ProjectBuildSuccess , ProjectBuildFailure , ProjectBuildCanceled , ProjectBuildUpload } - config: object
-
- active: boolean true
-
- id: string
-
{
"hookType": "web",
"events": [
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"encoding": "json",
"sslVerify": true,
"url": "http://unity3d.com/example"
},
"active": true,
"id": 7
}
Delete project hook
Description
Required Permissions
Request Parameters
curl
-X DELETE
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks/projects/{projectid}/hooks/{id}
orgsApi = ProjectsApi(client)
orgsApi.delete_hook('{orgid}', '{projectid}', '{id}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
Update hook for project
Description
Update an existing hook. NOTE: you must be a manager of the project to update hooks.
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-d '{"hookType":"web", "active":true, "config":{}}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/hooks/{id}
hooksApi = HooksApi(client)
hook = hooksApi.update_hook('{hookid}', options)
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic
- hookType: string , x ∈ { web , slack }
-
- events: string[]
-
string , x ∈ { ProjectBuildQueued , ProjectBuildStarted , ProjectBuildRestarted , ProjectBuildSuccess , ProjectBuildFailure , ProjectBuildCanceled , ProjectBuildUpload } - config: object
-
- active: boolean true
-
- id: string
-
{
"hookType": "web",
"events": [
"ProjectBuildSuccess",
"ProjectBuildFailure"
],
"config": {
"encoding": "json",
"sslVerify": true,
"url": "http://unity3d.com/example"
},
"active": true,
"id": 7
}
Ping a project hook
Description
Send a ping event to a project hook.
Required Permissions
Request Parameters
curl
-X POST
-H "Content-Type: application/json"
-d '{}'
-H "Authorization: Basic [YOUR API KEY]"
https://build-api.cloud.unity3d.com/api/v1/orgs/{orgid}/projects/{projectid}/hooks/{id}/ping
hooksApi = HooksApi(client)
hook = hooksApi.ping_hook('{orgid}', '{projectid}', '{hookid}')
Responses
Uses default content-types: application/json application/x-apple-aspen-config text/plain text/html text/csv text/x-generic