Convert
Python SDK - Convert resource API reference
Convert resource for document conversion operations.
Convert
Synchronous document conversion operations.
Example:
client = Client(api_key="...")
result = client.convert.run(
file=Path("invoice.pdf"),
document_type_code="invoice"
)
print(result.data)Arguments:
client: The parent client instance.
Methods:
get_status
def get_status(self, conversion_id: str) -> ConversionStatusGet the status of an asynchronous conversion.
Arguments:
conversion_id: The conversion ID returned by run_async().
Returns:
The current conversion status.
Example:
status = client.convert.get_status("conv_abc123")
if status.is_success():
print(status.data)run
def run(self, document_type_code: str, file: FileInput | None = None, url: str | None = None, file_base64: str | None = None, content_type: str | None = None, document_metadata: dict[str, Any] | None = None) -> ConversionResultConvert a document synchronously.
Sends a document to the API and waits for the conversion result. This is suitable for small documents that process quickly.
Arguments:
document_type_code: The document type code to use for conversion.file: File to convert (Path, bytes, or file-like object).url: URL of the document to convert (alternative to file).file_base64: Base64-encoded document (alternative to file).content_type: Content type of the file. Auto-detected if not provided.document_metadata: Additional metadata to include with the document.
Returns:
The conversion result with extracted data.
Raises:
ValueError: If no file input is provided.BadRequestError: If the request is invalid.AuthenticationError: If the API key is invalid.
Example:
result = client.convert.run(
file=Path("invoice.pdf"),
document_type_code="invoice"
)
print(result.data["total"])run_async
def run_async(self, document_type_code: str, file: FileInput | None = None, url: str | None = None, file_base64: str | None = None, content_type: str | None = None, document_metadata: dict[str, Any] | None = None) -> ConversionStatusStart an asynchronous document conversion.
Initiates a conversion job and returns immediately with a conversion ID. Use get_status() to poll for completion, or call wait() on the result.
Arguments:
document_type_code: The document type code to use for conversion.file: File to convert (Path, bytes, or file-like object).url: URL of the document to convert (alternative to file).file_base64: Base64-encoded document (alternative to file).content_type: Content type of the file. Auto-detected if not provided.document_metadata: Additional metadata to include with the document.
Returns:
The initial conversion status with conversion_id.
Example:
status = client.convert.run_async(
file=Path("large_document.pdf"),
document_type_code="invoice"
)
print(f"Conversion ID: {status.conversion_id}")
# Poll for completion
final = status.wait()Properties:
with_raw_response: Access methods that return raw HTTP responses.
AsyncConvert
Asynchronous document conversion operations.
Example:
async with AsyncClient(api_key="...") as client:
result = await client.convert.run(
file=Path("invoice.pdf"),
document_type_code="invoice"
)
print(result.data)Arguments:
client: The parent async client instance.
Methods:
get_status
async def get_status(self, conversion_id: str) -> ConversionStatusGet the status of an asynchronous conversion.
Arguments:
conversion_id: The conversion ID returned by run_async().
Returns:
The current conversion status.
run
async def run(self, document_type_code: str, file: FileInput | None = None, url: str | None = None, file_base64: str | None = None, content_type: str | None = None, document_metadata: dict[str, Any] | None = None) -> ConversionResultConvert a document asynchronously.
Arguments:
document_type_code: The document type code to use for conversion.file: File to convert (Path, bytes, or file-like object).url: URL of the document to convert (alternative to file).file_base64: Base64-encoded document (alternative to file).content_type: Content type of the file. Auto-detected if not provided.document_metadata: Additional metadata to include with the document.
Returns:
The conversion result with extracted data.
run_async
async def run_async(self, document_type_code: str, file: FileInput | None = None, url: str | None = None, file_base64: str | None = None, content_type: str | None = None, document_metadata: dict[str, Any] | None = None) -> ConversionStatusStart an asynchronous document conversion.
Arguments:
document_type_code: The document type code to use for conversion.file: File to convert (Path, bytes, or file-like object).url: URL of the document to convert (alternative to file).file_base64: Base64-encoded document (alternative to file).content_type: Content type of the file. Auto-detected if not provided.document_metadata: Additional metadata to include with the document.
Returns:
The initial conversion status with conversion_id.
Properties:
with_raw_response: Access methods that return raw HTTP responses.