CDR Version Conversion API (1 API)

Customer: AI | Published: 30.09.2025

I’m ready to roll out a lightweight, file-centric API that takes a CorelDRAW (.cdr) file in whatever revision a user has on hand and returns the same file saved down (or up) to a target version. Please build it in Python; feel free to reach for Flask, FastAPI, or another micro-framework you like, as long as the final result is easy to containerise and deploy. What I need the service to do • Accept an uploaded CDR file plus a query/body parameter indicating the desired version (for example X5, 2019, 2021 or any future option I add later). • Perform the actual conversion server-side and stream the new file back to the caller. • Respond with clear error messages when the source file is corrupt or the requested version is unsupported. • Run without any authentication layer for now—this will sit behind an internal gateway. Deliverables • Clean, documented Python source code. • A concise README covering local setup, a basic Dockerfile, and two example cURL calls: one successful conversion and one failed request that triggers error handling. • Brief notes on any external libraries, command-line tools, or licensed components required so I can secure the proper seats or subscriptions. Acceptance criteria The API must convert at least the three commonly requested versions (X5, 2019, 2021) losslessly in my test set and return HTTP 200 with the binary payload under 5 seconds for a 20 MB file on a modest VPS. If something in the conversion chain can’t be fully automated in Python alone, propose the cleanest workaround—headless CorelDRAW automation, an intermediate SVG path, or another tool—so we can weigh pros and cons before you lock in the approach.