PARTNERS & API

File sharing that fits your product.

Create private file handoffs from your own application, workflow or backend. Choose where encryption happens.

Two ways to integrate

01

Zero-knowledge

Encrypt in your own environment with the open client library, then upload the sealed file. Oveile never sees the key — exactly like the browser flow. Recommended.

PUT /api/shares/{id}
02

Hosted encryption

Send the file over TLS and receive the code in the response. Oveile encrypts it in memory with a fresh key, stores only the sealed file and discards the key at once. The plaintext is visible to the server during that one request.

POST /api/partner/shares

Hosted encryption: one request

This example sends plaintext to the server over TLS. Choose the client library for encryption before upload.

Request
curl -X POST https://oveile.com/api/partner/shares \
  -H "Authorization: Bearer YOUR_PARTNER_KEY" \
  -H "Content-Type: application/octet-stream" \
  -H "X-Oveile-Filename: document.pdf" \
  --data-binary @document.pdf

What you get back

A share identifier, full share link, access code, expiry and a separate revoke token. Keep the revoke token private. Never place a partner key in browser code.

API endpoints

  • POST/api/partner/shares

    Seal a file and receive its code (hosted encryption)

  • PUT/api/shares/{id}

    Upload a file sealed in your environment (zero-knowledge)

  • GET/api/shares/{id}/meta · /blob

    Fetch a sealed document with its access token

  • POST/api/shares/{id}/emails

    Send a receipt or a recipient notification

  • DELETE/api/shares/{id}

    Revoke a document

  • GET/api/partner/me

    Check a key and today's usage

Prefer encryption in your environment?

The client library implements the same protocol as the website: generate a code, encrypt locally, upload the ciphertext and decrypt on the recipient’s device.

Security