Files
DocumentService/DocumentService.Client/Models/Requests/PdfConversionRequests.cs
TekH b3a07f1348 Add interfaces and DTOs for PDF operations support
Introduced multiple interfaces and DTOs to support a wide range of
PDF-related operations, including attachment handling, conversion,
validation, annotation, stamping, and metadata extraction.

Key changes:
- Added `DocumentServiceClientOptions` for HTTP client config.
- Introduced `IPdfAttachmentClient` for attachment operations.
- Added `IPdfConversionClient` for PDF/A conversion (marked obsolete).
- Added `IPdfOperationsClient` for merge, annotate, and stamp ops.
- Introduced `IPdfValidationClient` for PDF and PDF/A validation.
- Added `ISwissQrCodeClient` for Swiss QR Code extraction.
- Added `IZugferdClient` for ZUGFeRD detection and extraction.
- Created request DTOs for Base64-encoded operations.
- Added enums for annotation, stamp, and validation configurations.

These changes provide a flexible and extensible foundation for
interacting with PDF documents, supporting both multipart and
Base64-encoded inputs, and ensuring type safety with enums and records.
2026-07-30 16:59:54 +02:00

32 lines
967 B
C#

namespace DocumentService.Client.Models.Requests;
/// <summary>
/// Request DTO for converting a standard PDF to PDF/A format (Base64 JSON)
/// </summary>
public record ConvertToPdfARequest
{
/// <summary>
/// PDF document encoded as Base64 string
/// </summary>
/// <example>JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PC9UeXBlL0NhdGFsb2c...</example>
public required string Base64Pdf { get; init; }
/// <summary>
/// Target PDF/A conformance level. Defaults to "PDF/A-3b".
/// </summary>
/// <example>PDF/A-3b</example>
public string? PdfALevel { get; init; }
}
/// <summary>
/// Request DTO for converting a PDF/A document back to standard PDF (Base64 JSON)
/// </summary>
public record ConvertFromPdfARequest
{
/// <summary>
/// PDF/A document encoded as Base64 string
/// </summary>
/// <example>JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PC9UeXBlL0NhdGFsb2c...</example>
public required string Base64Pdf { get; init; }
}