Uploading binary files to Ivanti incapptic Connect through an API

You can upload app binary files (*.apk, *.ipa) without a web interface through the Ivanti incapptic Connect command line. This is done by using the cURL utility to send the file to Ivanti incapptic Connect, along with a verification token, and information about the app being uploaded.

curl -X POST

https://<<domain_name>>/apps/upload-artifact \

-H 'x-connect-token: <<token>>' \

-F '[email protected]/Users/developer/apps/built_app_v13.ipa'

The cURL request would be similar to this example:

curl -X POST

https://connect.incapptic.net/apps/upload-artifact \

-H 'x-connect-token: 1:T7NH978v9qwyVH64HgqQrGqEX6NvH3dvm9f6vsUarJVs3NXBcf5AGDNmtZ4rvxt2' \

-F '[email protected]/Users/developer/apps/built_app_v13.ipa'

Creating a cURL request

Before you begin 

Obtain a valid API token. See Modifying your user profile.

Procedure 

  1. From the Apps page, click an app to open it.

  2. Click the API tab. The API section opens.

    Figure 1. Application API tab

    A screenshot of a cell phone

Description automatically generated

  3. Click the API upload switch to enable it. The Upload URL and the Application ID fields become visible.

  4. Copy the fields and paste them into your cURL snippet.

  5. Enter the API token value you obtained in Modifying your user profile.

    The number preceding the token is a reference to the user’s ID and must be included as part of the token.

Limitations:

  • The API can only be used to upload a version if a version of the App with all the associated metadata (copyright, content rating etc.) has previously been uploaded. In other words, the API can only be used to upload a binary file. A new version of the app will be created, using the metadata from the previous version.

  • The binary file must be valid, and it must be a different version to the version that currently exists.

The reference to artifact in the API arises from the fact that the API was originally developed to work together with Jenkins, a continuous integration platform. Jenkins has the concept of an "artifact" which essentially refers to the file, or the binary.