After triggering an Id Mapping job, you need to monitor its progress and download the generated report. This page covers how to check job status and retrieve your ID mapping file.
Use the job status API to monitor the progress of your Id Mapping generation.
HTTP Method: GET
URL:
1 2https://api.atlassian.com/migrations/reports/v1/id-mappings/{jobId}
Authentication: API Token or Basic Auth
Content-Type: application/json
| Field | Type | Required | Description |
|---|---|---|---|
jobId | string | Yes | The job ID returned from the trigger API |
1 2{ "jobId": "<JOB_ID>", "status": "SUCCESS" }
| Status | Description |
|---|---|
PENDING | Job is queued but not yet started |
IN_PROGRESS | Job is actively generating the mapping report |
SUCCESS | Job completed successfully - report is ready |
ERROR | Report generation failed - retry or contact support |
1 2{ "status": 404, "errorMessage": "Job not found with ID: <JOB_ID>. The job ID may be incorrect or expired.", "id": "<REQUEST_ID>" }
Common causes:
1 2{ "status": 500, "errorMessage": "Internal Server Error", "id": "<REQUEST_ID>" }
1 2curl -X GET \ https://api.atlassian.com/migrations/reports/v1/id-mappings/your-job-id \ -H "Authorization: Bearer YOUR_API_TOKEN" \ -H "Content-Type: application/json"
Once your job status shows SUCCESS, you can download the Id Mapping report.
HTTP Method: GET
URL:
1 2https://api.atlassian.com/migrations/reports/v1/id-mappings/{jobId}/download
Authentication: API Token or Basic Auth
Content-Type: application/json
| Field | Type | Required | Description |
|---|---|---|---|
jobId | string | Yes | The job ID from the trigger API response |
1 2{ "jobId": "<JOB_ID>", "downloadUrl": "<Amazon_S3_Download_URL>", "expiresIn": 3600 }
Important notes:
1 2{ "status": 404, "errorMessage": "Report file not available. The report may have been deleted or expired.", "id": "<REQUEST_ID>" }
What to do: The report has expired or been deleted. Generate a new report using the trigger API.
1 2{ "status": 500, "errorMessage": "Internal Server Error", "id": "<REQUEST_ID>" }
1 2curl -X GET \ https://api.atlassian.com/migrations/reports/v1/id-mappings/your-job-id/download \ -H "Authorization: Bearer YOUR_API_TOKEN" \ -H "Content-Type: application/json"
Here's a complete workflow from trigger to download:
1 2# Trigger Id Mapping job curl -X POST https://api.atlassian.com/migrations/reports/v1/id-mappings/trigger \ -H "Authorization: Bearer YOUR_API_TOKEN" \ -H "Content-Type: application/json" \ -d '{"product":"JIRA","destinationURL":"https://company.atlassian.net","sourceURL":"https://jira.company.com"}'
Response: {"jobId": "abc123", "status": "PENDING"}
1 2# Check job status (repeat until SUCCESS) curl -X GET https://api.atlassian.com/migrations/reports/v1/id-mappings/abc123 \ -H "Authorization: Bearer YOUR_API_TOKEN"
Responses:
{"jobId": "abc123", "status": "PENDING"} - Keep waiting{"jobId": "abc123", "status": "IN_PROGRESS"} - Still processing{"jobId": "abc123", "status": "SUCCESS"} - Ready to download!1 2# Get download URL curl -X GET https://api.atlassian.com/migrations/reports/v1/id-mappings/abc123/download \ -H "Authorization: Bearer YOUR_API_TOKEN"
Response:
1 2{ "jobId": "abc123", "downloadUrl": "https://s3.amazonaws.com/...", "expiresIn": 3600 }
1 2# Download the actual mapping file curl -O "https://s3.amazonaws.com/..."
Job stuck in PENDING:
Job shows ERROR:
Download URL expired:
Rate this page: