With PSPDFKit Instant, it’s easier than ever to add real-time collaboration features to your PSPDFKit-powered app, allowing your users to seamlessly share, edit, and annotate PDF documents across Android, iOS, and Web apps.

The PSPDFKit SDKs for Android, iOS, and Web all support Instant. Just connect your app to an Instant server and document management and syncing will be taken care of.

You can try this right now on our homepage and in PDF Viewer.

Instant is a collaboration between four components: your server, the instance of PSPDFKit Server that you host, your app, and the Instant framework embedded in your app.

Instant is designed to be fully functional while a device is offline or the connection is unreliable.

Document Management

Users upload documents to your backend, which forwards the uploaded PDF files to PSPDFKit Server and receives document identifiers. You only have to store these identifiers on your server, as PSPDFKit Server stores the PDF documents, their annotations, and their meta information.

PSPDFKit Server is used to store the PDF document and its annotations. Your server has access to a rich HTTP API.


All authentication is scoped per Instant layer, and not per user.

Your backend signs JSON Web Tokens (JWTs) asserting that the holder of a JWT is allowed access to a given layer of a document. For each layer, your app must obtain a JWT from your server. Your app then passes this token to Instant. Instant connects to PSPDFKit Server and uses the JWT to authenticate.

For more details about client authentication, see the related guide for PSPDFKit Server. If you’re having trouble authenticating your clients, you can validate your JWT in the PSPDFKit Server Dashboard. This allows you to check if you’re missing any claims and that your JWT is in the correct format.

Each document may only be used by a single user at a time. Your app must call removeLocalStorage before authenticating a document for a different user. Authenticating a document for multiple users simultaneously is not supported and an exception may be raised if this is attempted.