Paddle Ocr

Paddle Ocr

Playground

Try it on WavespeedAI!

PaddleOCR-VL is an ultra-compact 0.9B parameter vision-language model for document parsing, supporting 109 languages with text, table, formula, and chart recognition in JSON or Markdown output. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.

Features

WaveSpeedAI PaddleOCR

Extract text from images with WaveSpeedAI PaddleOCR — a fast, accurate optical character recognition model. Simply upload an image and get clean, structured text output in JSON or Markdown format. Perfect for document digitization, data extraction, and text recognition tasks.

Why It Works Great

  • High accuracy: Powered by PaddleOCR for reliable text recognition.
  • Multi-language support: Recognizes text in multiple languages.
  • Flexible output: Choose between JSON or Markdown format.
  • Document-friendly: Handles scanned documents, screenshots, and photos.
  • Ultra-affordable: Just $0.005 per image.
  • Fast processing: Quick turnaround for high-volume workflows.

Parameters

ParameterRequiredDescription
imageYesImage containing text (upload or public URL).
output_formatNoOutput format: json or markdown. Default: markdown.

How to Use

  1. Upload your image — drag and drop or paste a public URL.
  2. Choose output format — select JSON for structured data or Markdown for readable text.
  3. Run — click the button to process.
  4. Copy or download — use the extracted text as needed.

Pricing

$0.005 per image.

Output Formats

FormatDescriptionBest For
markdownClean, readable text with formattingDocuments, articles, readable output
jsonStructured data with position infoData processing, integration, automation

Best Use Cases

  • Document Digitization — Convert scanned documents to editable text.
  • Data Extraction — Pull text from invoices, receipts, and forms.
  • Screenshot Text — Extract text from screenshots and images.
  • Business Cards — Digitize contact information quickly.
  • Batch Processing — Process large volumes of documents affordably.
  • Content Migration — Convert image-based content to text format.

Supported Content Types

  • Scanned documents (PDF pages, printed text)
  • Screenshots and screen captures
  • Photos of documents and signs
  • Handwritten text (with varying accuracy)
  • Multi-column layouts
  • Tables and structured content

Pro Tips for Best Results

  • Use high-resolution images for better accuracy.
  • Ensure good contrast between text and background.
  • Straighten skewed documents before processing.
  • Use JSON format when you need text positions or bounding boxes.
  • Use Markdown format for clean, human-readable output.
  • At $0.005 per image, batch processing is extremely cost-effective.

Notes

  • If using a URL, ensure it is publicly accessible.
  • Processing time is typically under a second per image.
  • Accuracy depends on image quality and text clarity.
  • Supports multiple languages and character sets.

Authentication

For authentication details, please refer to the Authentication Guide.

API Endpoints

Submit Task & Query Result


# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/wavespeed-ai/paddle-ocr" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "output_format": "markdown",
    "enable_sync_mode": true
}'

# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"

Parameters

Task Submission Parameters

Request Parameters

ParameterTypeRequiredDefaultRangeDescription
imagestringYes-Document image to parse. Supports text, tables, formulas, and charts recognition in 109 languages.
output_formatstringNomarkdownjson, markdownOutput format: 'json' for structured data or 'markdown' for human-readable text.
enable_sync_modebooleanNotrue-If set to true, the function will wait for the result to be generated and uploaded before returning the response. It allows you to get the result directly in the response. This property is only available through the API.

Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
data.idstringUnique identifier for the prediction, Task Id
data.modelstringModel ID used for the prediction
data.outputsarrayArray of URLs to the generated content (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.has_nsfw_contentsarrayArray of boolean values indicating NSFW detection for each output
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds

Result Request Parameters

ParameterTypeRequiredDefaultDescription
idstringYes-Task ID

Result Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
dataobjectThe prediction data object containing all details
data.idstringUnique identifier for the prediction, the ID of the prediction to get
data.modelstringModel ID used for the prediction
data.outputsstringObject containing the parsed document content in the requested format (JSON or Markdown).
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds
© 2025 WaveSpeedAI. All rights reserved.