When you implement the listener interface in your server app, your cloud app must use the app migration platform's Status REST API to:
Status updates are included in progress logs.
The Cloud Migration Assistant doesn't display status updates from your cloud app in real time. We recommend sending a progress update about once a minute so that customers know the migration isn’t stalled.
After you receive the first notification of your server app being triggered, you have 14 days to send status updates. After the 14-day period, the app migration platform will return a 400 error response to all requests using that transfer ID.
Use the Send migration progress operation of the Status API to report progress and settle the transfer. Your status update should include the status of the transfer, percent progress, and an optional message.
When reporting progress or settling the transfer, follow these best practices:
percent
parameter is lower than a previously reported value for the same transfer. When an update is ignored, it doesn't display in the Cloud Migration Assistant or in progress logs, and admin users may think the migration is stalled.To report migration progress, make a request to Send migration progress operation with these values:
IN_PROGRESS
We recommend reporting progress about once a minute.Here's an example request to report progress using curl. A successful request returns an HTTP 200 response. For details about composing messages, refer to the Status messages section.
1 2curl -X POST 'https://your-site.atlassian.net/rest/atlassian-connect/1/migration/progress/{transferId}' \ --header 'Content-Type: application/json' \ --data-raw '{ "status" : "IN_PROGRESS", "percent": 90, "message" : "App data migration is in the last stage. For more info, refer to http://documentation.example.com." }'
To settle the transfer at the end of migration, make a request to the Send migration progress operation with these values:
SUCCESS
: Use when the migration runs to completion and all entities are successfully migrated.INCOMPLETE
: Use when the migration finishes without failures but some entities aren't migrated or manual steps are required on the cloud site. When settling a canceled migration transfer, use this status to indicate the cloud app was able to finish cleaning up (see Transfer cancellation).FAILED
: Use when the migration doesn't run to completion because it encounters a problem. When settling a canceled migration transfer, use this status to indicate the cloud app failed to finish cleaning up.SUCCESS
, set percent
to 100. Otherwise, set the value to an integer between 1 and 99 that represents the proportion of entities migrated. If not provided (or set as zero), the previous value will be kept.INCOMPLETE
or FAILED
, always include a message that provides next steps or the reason for failure.Once you have submitted an update to settle the transfer, additional requests to the Status API for the same transfer ID return an HTTP 403 error.
Such requests don't affect the outcome of the migration and aren't displayed in the migration assistant or recorded in progress logs.
Here's an example request to settle the transfer using curl. A successful request returns an HTTP 200 response. For details about composing messages, refer to the "Status messages" section.
1 2curl -X POST 'https://your-site.atlassian.net/rest/atlassian-connect/1/migration/progress/{transferId}' \ --header 'Content-Type: application/json' \ --data-raw '{ "status" : "SUCCESS", "percent": 100, "message" : "App data migration is complete. For next steps, refer to http://documentation.example.com/." }'
Status messages are included in a log CSV file and are rendered as plain text. Here's an example of a status message:
App data transfer is finished. To complete the migration, follow the instructions at http://documentation.example.com/.
Status messages can't contain more than 300,000 characters. Messages that exceed this limit are truncated to 300,000 characters, and the following string is appended: <truncated, message too large>
.
We recommend restricting the length of your status message to 250-300 characters so that it displays within the text area in the Cloud Migration Assistant.
Rate this page: