{ "info": { "_postman_id": "0da0c07b-fca3-4cb4-ad19-edcefea6a383", "name": "App Migration", "description": "Endpoints available in Jira and Confluence cloud instances to support app migrations", "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json" }, "item": [ { "name": "Notification API", "description": "Provides endpoints to register/deregister your cloud app and to receive notifications about migration events. To learn more about notifications, see [Prepare your cloud app](/platform/app-migration/prepare-cloud-app/#webhooks).\n", "item": [ { "name": "Get all webhooks", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}webhook", "query": [], "variable": [] }, "method": "GET", "header": [ { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Retrieves all the webhook endpoints for a cloud site" }, "response": [] }, { "name": "Update webhook", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}webhook", "query": [], "variable": [] }, "method": "PUT", "header": [ { "description": "", "disabled": false, "key": "Content-Type", "value": "application/json" }, { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Replaces existing URLs with a new set of URLs provided by your cloud app to receive notifications", "body": { "mode": "raw", "raw": "" } }, "response": [] } ] }, { "name": "Status API", "description": "Provides endpoints to update the status of the transfer. To learn more, see [App migration transfers](/platform/app-migration/transfer).\n", "item": [ { "name": "Send migration progress", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}progress/:transferId", "query": [], "variable": [ { "key": "transferId", "value": "{{transferId}}", "description": "Identifies the transfer. The app migration platform generates a unique transfer ID for each migration listener. \n\n Transfer IDs are published in app migration notification events, for example, the `listener-triggered` event.", "disabled": false } ] }, "method": "POST", "header": [ { "description": "", "disabled": false, "key": "Content-Type", "value": "application/json" }, { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Updates migration status for a given transfer ID. \n\n When you [implement the listener interface](/platform/app-migration/prepare-server-app/) in your server app, your cloud app **must** use this operation to: \n\n - Report progress on your app migration so that admin users can monitor it in the Cloud Migration Assistant. \n\n - Settle the transfer at the end of your migration by updating its status to `SUCCESS`, `INCOMPLETE`, or `FAILED` so that admin users know it's finished. \n\n Once a transfer is settled, subsequent requests for that transfer ID return an HTTP 403 error.", "body": { "mode": "raw", "raw": "" } }, "response": [] } ] }, { "name": "Mapping API", "description": "Provides endpoints to retrieve mappings\n", "item": [ { "name": "Get mappings by keys", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}mapping/:transferId/find", "query": [ { "key": "namespace", "value": "{{namespace}}", "disabled": false, "description": "Namespace, a list of valid [namespaces](/platform/app-migration/mappings/#mappings-namespaces-and-entities)" } ], "variable": [ { "key": "transferId", "value": "{{transferId}}", "description": "Transfer ID as UUID", "disabled": false } ] }, "method": "POST", "header": [ { "description": "", "disabled": false, "key": "Content-Type", "value": "application/json" }, { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Retrieves mappings for a specific namespace filtering by the keys provided on the payload", "body": { "mode": "raw", "raw": "" } }, "response": [] }, { "name": "Get mappings in pages", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}mapping/:transferId/page", "query": [ { "key": "namespace", "value": "{{namespace}}", "disabled": false, "description": "Namespace, a list of valid [namespaces](/platform/app-migration/mappings/#mappings-namespaces-and-entities)" }, { "key": "lastEntity", "value": "{{lastEntity}}", "disabled": true, "description": "lastEntity" }, { "key": "pageSize", "value": "{{pageSize}}", "disabled": true, "description": "pageSize. See the [deprecation notice](/platform/app-migration/release-notes/paginated-mapping-endpoint-page-size-deprecation-notice) for upcoming change in page size." } ], "variable": [ { "key": "transferId", "value": "{{transferId}}", "description": "transferId", "disabled": false } ] }, "method": "GET", "header": [ { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Returns mappings for a given namespace" }, "response": [] } ] }, { "name": "App data retrieval API", "description": "Provides endpoints to access files exported from the server (files not exported as part of the migration)\n", "item": [ { "name": "Get list of app data exports", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}data/:transferId/all", "query": [], "variable": [ { "key": "transferId", "value": "{{transferId}}", "description": "transferId", "disabled": false } ] }, "method": "GET", "header": [ { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Returns all uploaded data keys for a transferId" }, "response": [] }, { "name": "Get app data export signed URL", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}data/:s3Key", "query": [], "variable": [ { "key": "s3Key", "value": "{{s3Key}}", "description": "s3Key", "disabled": false } ] }, "method": "GET", "header": [ { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Returns an object containing a signed url to retrieve app data" }, "response": [] } ] }, { "name": "Transfer retrieval API", "description": "Provides endpoints to retrieve active transfers and its migration details\n", "item": [ { "name": "Get list of active transfers", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}transfer/recent", "query": [], "variable": [] }, "method": "GET", "header": [ { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Returns a list of latest active transfers (upto 100) with migration details" }, "response": [] }, { "name": "Get containers in pages", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}container/:transferId/page", "query": [ { "key": "containerType", "value": "{{containerType}}", "disabled": false, "description": "type of container" }, { "key": "lastEntity", "value": "{{lastEntity}}", "disabled": true, "description": "lastEntity" }, { "key": "pageSize", "value": "{{pageSize}}", "disabled": true, "description": "pageSize" } ], "variable": [ { "key": "transferId", "value": "{{transferId}}", "description": "transferId", "disabled": false } ] }, "method": "GET", "header": [ { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "Returns containers for a given container type" }, "response": [] } ] }, { "name": "Feedback channel API", "description": "Provides endpoints to send information from your cloud app to your server app\n", "item": [ { "name": "Send information to server app", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}feedback/:transferId", "query": [], "variable": [ { "key": "transferId", "value": "{{transferId}}", "description": "transferId", "disabled": false } ] }, "method": "POST", "header": [ { "description": "", "disabled": false, "key": "Content-Type", "value": "application/json" } ], "description": "Feeds the app migration listener back with basic info coming from cloud", "body": { "mode": "raw", "raw": "" } }, "response": [] } ] }, { "name": "Error retrieval API", "description": "Provides endpoints to retrieve details about errors from your server app.\n", "item": [ { "name": "Fetch server side error", "request": { "url": { "protocol": "{{protocol}}", "host": "{{host}}", "path": "{{basePath}}error/:transferId", "query": [], "variable": [ { "key": "transferId", "value": "{{transferId}}", "description": "transferId", "disabled": false } ] }, "method": "GET", "header": [ { "description": "", "disabled": false, "key": "Accept", "value": "application/json" } ], "description": "**Note: This feature is available for app migrations using CCMA v3.3.7 and JCMA v1.7.2 onwards.**\n\nRetrieves details of the exception thrown from your server side listener method `onStartAppMigration`\n" }, "response": [] } ] } ], "variable": [ { "key": "protocol", "name": "Protocol", "description": "The HTTP Protocol that should be used for this REST API.", "type": "string", "value": "https" }, { "key": "host", "name": "Host", "description": "The HTTP host that should be used for this REST API.", "type": "string", "value": "your-site.atlassian.net" }, { "key": "basePath", "name": "Base Path", "description": "The path, after the host, of the base of the REST API.", "type": "string", "value": "rest/atlassian-connect/1/migration/" } ] }