irmion
HelpLog in Find a tool
Nirmion developer API

BUILD WITH NIRMION

File workflows, ready for your application.

Add PDF, media, and data conversion to your product through one scoped API. Verify your email, receive a key once, and start with a documented request.

Free access starts at 20 requests per minute. Processing limits still apply to every file.

DEVELOPER REGISTRATION

Create your developer account.

Choose only the capabilities your application needs. We verify your email before issuing a key, and no payment card is required for the free plan.

Allowed capabilities

API REFERENCE

Start with a small, observable request.

Authenticate with a bearer key, use the operation-specific multipart fields, and record X-Nirmion-Request-Id from every response. The OpenAPI reference is the source of truth for accepted fields and response codes.

Explore the OpenAPI reference

COMMERCIAL TOOLS API

Find the contract for each available tool.

The commercial API uses shared versioned routes. Search the published catalog, then open a tool to see its live input fields, outputs, limits, processing mode, and exact execution endpoint.

Schemas come from the commercial API at request time. A catalog entry marked available has an execution handler; the schema is the source of truth for its inputs, outputs, limits, and processing mode. Catalog and schema reads are public. Execution requires a commercial:tools:execute API key in the X-Nirmion-Api-Key header. File tools use the multipart endpoint shown in their schema.

REGRESSION TESTING

Test the contract, edge cases, and failure paths.

We run a repeatable API regression suite across request validation, scoped access, file processing, and the published OpenAPI contracts.

Browse API operations
482automated tests passed
2,906subtests passed
0failed tests
October 20, 2026last full run
01

Contracts stay checkable

The suite checks OpenAPI documents, operation schemas, authentication declarations, scope requirements, and stable response errors.

02

Access is tested at the boundary

Checks cover missing, invalid, and expired keys, insufficient scopes, malformed inputs, upload limits, rate limits, and worker capacity.

03

Real processing paths are exercised

Synthetic documents and media exercise PDF, image, audio/video, Office, archive, and ebook processing, including failure handling.

04

Calculations are compared with source behavior

Calculator and converter tests compare representative outputs with Nirmion source definitions and validate boundary values.

What the regression pass checks

The suite follows each API boundary from the public contract through authorization, input handling, processing, and the response. High-risk paths also include failure and recovery cases.

Input and error handling

Invalid JSON, missing or unknown fields, unsupported values, malformed slugs, non-finite numbers, and boundary values must produce stable client errors without stack traces or partial side effects.

Authentication and authorization

Missing, invalid, expired, and revoked keys; inactive accounts; missing scopes; cross-product keys; and cross-user resource access are checked for correct denial and isolation.

File safety and resource limits

Synthetic files cover empty, mislabeled, corrupt, oversized, encrypted, and unsupported inputs, plus worker capacity, timeouts, bounded output, no-store downloads, and cleanup.

Persistence and service failures

Account and key lifecycles, usage accounting, ownership, and transaction behavior are exercised alongside database, provider, and worker failure responses.

Privacy and observability

Responses are checked for request correlation and security headers. Logs and error bodies must not expose keys, passwords, uploaded content, filenames, or generated results.

Reproduce the full API regression run

Run from the repository root in an isolated development environment with synthetic fixtures. Never point destructive or migration tests at production.

$env:PYTHONPATH = ".;api"
pytest api\tests -q

Release evidence and limits

A release record should include the build identifier, exact command, pass/fail/skip totals, elapsed time, fixture availability, OpenAPI compatibility, migration target, and unverified dependencies. Local tests do not verify production TLS, deployment configuration, external billing, monitoring, or load capacity.

The latest full workspace run passed 482 tests and 2,906 subtests on October 20, 2026. These regression results describe the tested codebase; they are not a live uptime or production load guarantee. Production-host checks and load testing are separate.

cURLPDF compress
curl -X POST https://nirmion.com/api/v1/pdf/compress \
  -H "Authorization: Bearer $NIRMION_API_KEY" \
  -F "file=@document.pdf" \
  --output document-compressed.pdf
Keep bearer keys on your server, not in browser JavaScript.X-Nirmion-Request-Id

LAST 30 DAYS

Know what your integration is doing.

See requests reserved in the current allowance period, remaining plan capacity, and daily endpoint-level counts for the last 30 days. Failed calls count toward the allowance; payloads and results are never shown here.

Connect an active developer API key to view your current plan, usage, and purchase history.

PLANS AND USAGE

Choose a plan and track every API call.

Checkout is available only for active plans configured by Nirmion. A plan activates after the payment gateway confirms the order server-to-server. Paid plan access lasts one month and does not renew automatically.

VERSION 2026-09-12

API use terms in plain language.

These terms apply to self-service developer access. Custom agreements replace conflicting provisions for covered production use.

Authorized use

Use the API only for lawful workflows and content you are permitted to process. Do not probe, disrupt, resell, or use the service to harm people or systems.

Keys and security

Keep keys server-side, rotate exposed credentials, and remain responsible for requests made with your active keys. Report suspected misuse promptly.

Limits and retention

Respect documented file, request, and rate limits. Processing may use temporary server storage as documented for each endpoint; do not send data that exceeds its stated boundary.

Service and suspension

Self-service access is provided without a guaranteed uptime commitment. Nirmion may restrict abusive or unsafe use; contact the team before depending on custom capacity.