Publish Android Application

POST Parameters

NameTypeDescription
name
Required
StringThe name of the action.
trigger_time
Required
StringSpecifies when the action should be executed. Can be one of ON_EVERY_EXECUTION, ON_FAILURE or ON_BACK_TO_SUCCESS.
type
Required
StringThe type of the action. Should be set to ANDROID_PLAY.
application_id
Required
StringThe ID of the Adroid Application.
track
Required
StringThe track type to read or modify. Can be one of production, alpha, beta, rollout, internal.
key_path
Required
StringThe path to the private key in JSON format with permissions to Google Play Developer Console.
apk_files
Required
APKs[]The list of sets of paths to the APKs.
user_fractionFloatPortion of the users who should get the staged rollout version of the APK (range 0.0 - 1.0). Required if track is set to rollout.
mapping_pathStringThe path to the deobfuscated file of the specified APK.
changes_pathStringThe path to the changelog file.
supersede_versionsBooleanCheck and disable superseded versions in other tracks (if any).
after_action_idIntegerThe numerical ID of the action, after which this action should be added.
trigger_conditionStringDefines when the build action should be run. Can be one of ALWAYS, ON_CHANGE or ON_CHANGE_AT_PATH.
trigger_condition_pathsString[]Required when trigger_condition is set to ON_CHANGE_AT_PATH.
variablesVariable []The list of variables defined for this action.

Example

Request

POST https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions

JSON

{
"name": "Publish Android App",
"type": "ANDROID_PLAY",
"trigger_time": "ON_EVERY_EXECUTION",
"application_id": "com.mycompany.mylovelyapp",
"track": "rollout",
"user_fraction": 0.05,
"key_path": "my-release-key.jks",
"mapping_path": "",
"changes_path": "changes.xml",
"supersede_versions": true,
"variables": [
{
"key": "ftp_login",
"value": "userLogin123",
"description": "The name of user to FTP.",
"encrypted": false,
"settable": false
},
{
"key": "ftp_password",
"value": "secure!14ivLMxPgv7TX6c9+ITX/g==",
"description": "The password for ftp.",
"encrypted": true
}
]
"apk_files": [
{
"apk_path": "my-app-release9.apk",
"main_expansion_path": "ss",
"patch_expansion_path": ""
}
]
}

Sample Response

HTTP

Status: 201 Created
X-Rate-Limit-Limit: 1
X-Rate-Limit-Remaining: 999

JSON

{
"url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions/2",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/action/2/edit",
"id": 2,
"name": "Publish Android App",
"type": "ANDROID_PLAY",
"trigger_time": "ON_EVERY_EXECUTION",
"last_execution_status": "INITIAL",
"run_only_on_first_failure": false,
"application_id": "com.mycompany.mylovelyapp",
"track": "rollout",
"user_fraction": 0.05,
"key_path": "my-release-key.jks",
"mapping_path": "",
"changes_path": "changes.xml",
"supersede_versions": true,
"variables": [
{
"key": "ftp_login",
"value": "userLogin123",
"description": "The name of user to FTP.",
"encrypted": false,
"settable": false
},
{
"key": "ftp_password",
"value": "secure!14ivLMxPgv7TX6c9+ITX/g==",
"description": "The password for ftp.",
"encrypted": true
}
]
"apk_files": [
{
"apk_path": "my-app-release9.apk",
"main_expansion_path": "ss",
"patch_expansion_path": ""
}
],
"pipeline": {
"url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/2",
"id": 2,
"name": "Live mirror",
"trigger_mode": "MANUAL",
"ref_name": "master",
"last_execution_status": "SUCCESSFUL",
"last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08"
}
}