Job Status

Check individual conversion job status and retrieve results

GET /api/v1/status/{job_id}GET

Overview

The status endpoint allows you to monitor the progress of individual conversion jobs, retrieve completed results, and check for any processing errors. Use this endpoint to track conversions initiated through the single file conversion API.

📊 Progress Tracking

Get detailed progress information including current processing step.

📄 Full Results

Access complete conversion results including metadata and download URLs.

🔍 Error Details

Get comprehensive error information with actionable suggestions.

Job Status States

pending

Job queued but not yet started processing

processing

File is currently being converted

completed

Conversion finished successfully

failed

Conversion failed with error

Request Format

Path Parameters

ParameterTypeRequiredDescription
job_idstringYesThe job ID returned from the conversion request

cURL Example

Command Line
curl -X GET https://api.markdownconverters.com/api/v1/status/conv_1234567890abcdef \
 -H "X-API-Key: your_api_key_here"

Response Formats

Completed Job Response

Conversion Complete (200 OK)
{
 "job_id": "conv_1234567890abcdef",
 "status": "completed",
 "filename": "document.pdf",
 "file_size": 2048576,
 "markdown_content": "# Document Title\n\nThis is the converted content from the PDF document.\n\n## Section 1\n\nContent of section 1 with proper formatting preserved.\n\n- List item 1\n- List item 2\n- List item 3\n\n## Section 2\n\n| Column 1 | Column 2 | Column 3 |\n|----------|----------|----------|\n| Value 1 | Value 2 | Value 3 |\n\nAdditional content continues here...",
 "metadata": {
 "original_format": "pdf",
 "pages": 5,
 "file_size": 2048576,
 "processing_time_ms": 3247,
 "ocr_used": true,
 "language_detected": "en",
 "quality_score": 0.95
 },
 "sas_url": "https://mdconverterstorage.blob.core.windows.net/converted-files/conv_1234567890abcdef.md?sp=r&st=2024-01-01T12:00:00Z&se=2024-01-08T12:00:00Z&spr=https&sv=2022-11-02&sr=b&sig=...",
 "download_url": "https://api.markdownconverters.com/api/v1/download/conv_1234567890abcdef",
 "created_at": "2024-01-01T12:00:00Z",
 "started_at": "2024-01-01T12:00:01Z",
 "completed_at": "2024-01-01T12:00:04Z"
}

Processing Job Response

Conversion In Progress (200 OK)
{
 "job_id": "conv_1234567890abcdef",
 "status": "processing",
 "filename": "large-presentation.pptx",
 "file_size": 15728640,
 "progress": {
 "current_step": "text_extraction",
 "steps_completed": 2,
 "total_steps": 4,
 "percentage": 50
 },
 "estimated_completion": "2024-01-01T12:02:30Z",
 "created_at": "2024-01-01T12:00:00Z",
 "started_at": "2024-01-01T12:00:01Z"
}

Failed Job Response

Conversion Failed (200 OK)
{
 "job_id": "conv_1234567890abcdef",
 "status": "failed",
 "filename": "corrupted-file.pdf",
 "file_size": 1024000,
 "error": {
 "code": "CORRUPTED_FILE",
 "message": "The PDF file appears to be corrupted and cannot be processed",
 "details": "Invalid PDF header detected. The file may be damaged or not a valid PDF format.",
 "suggestion": "Please verify the file integrity and try uploading again. Ensure the file is a valid PDF format.",
 "retry_possible": false
 },
 "created_at": "2024-01-01T12:00:00Z",
 "started_at": "2024-01-01T12:00:01Z",
 "failed_at": "2024-01-01T12:00:05Z"
}

Job Not Found Response

Job Not Found (404)
{
 "error": "Job not found",
 "code": "JOB_NOT_FOUND",
 "message": "No conversion job found with ID: conv_invalid123",
 "suggestion": "Please verify the job_id and ensure the conversion was initiated successfully"
}

Response Fields

Job Information Fields

FieldTypeDescription
job_idstringUnique identifier for the conversion job
statusstringJob status (pending, processing, completed, failed)
filenamestringOriginal filename of the uploaded file
file_sizenumberFile size in bytes
markdown_contentstringConverted markdown content (completed jobs only)
sas_urlstringAzure Storage SAS URL for download (completed jobs)
download_urlstringAPI download endpoint URL (completed jobs)

Progress Fields (Processing Jobs)

FieldTypeDescription
current_stepstringCurrent processing step (file_upload, text_extraction, conversion, finalization)
steps_completednumberNumber of completed processing steps
total_stepsnumberTotal number of processing steps
percentagenumberCompletion percentage (0-100)
estimated_completionstringEstimated completion time (ISO 8601 format)

Metadata Fields (Completed Jobs)

FieldTypeDescription
original_formatstringOriginal file format (pdf, docx, pptx, etc.)
pagesnumberNumber of pages processed
processing_time_msnumberTotal processing time in milliseconds
ocr_usedbooleanWhether OCR was used for text extraction
language_detectedstringPrimary language detected in the document
quality_scorenumberConversion quality score (0.0-1.0)

Polling Guidelines

Recommended Intervals

  • • Small files (<1MB): Poll every 1-2 seconds
  • • Medium files (1-10MB): Poll every 3-5 seconds
  • • Large files (>10MB): Poll every 5-10 seconds
  • • Maximum polling duration: 15 minutes

Best Practices

  • • Use exponential backoff for failed requests
  • • Stop polling when status is "completed" or "failed"
  • • Monitor progress percentage for better UX
  • • Implement timeout handling for stuck jobs

Error Scenarios

Common Error Codes

CORRUPTED_FILE

File Corruption

The uploaded file is corrupted or invalid

UNSUPPORTED_FORMAT

Format Not Supported

The file format is not supported for conversion

PROCESSING_TIMEOUT

Processing Timeout

File processing took too long and was terminated

OCR_FAILED

OCR Processing Failed

Text extraction from images or scanned documents failed