Documentation

Pre-generation authorization for AI applications — implements the PRE-GEN protocol. Verify rights before generating content.

@prampta/sdkTypeScriptNode ≥ 18Apache-2.0

How it works

PRAMPTA is a pre-generation rights registry: before your app generates content involving a real, registered person or brand, it asks PRAMPTA for a signed decision. Allowed means generate; refused means stop — and for the most common refusal, the decision itself carries a ready link for the end user to fix it.

Register

A rights holder registers a subject — it gets STD, RND & PRM at once.

Generate

Your app calls assertAllowed() (or POST /v1/verify) before generating.

Verify

PRAMPTA checks for a valid license and returns a signed decision.

Allowed

Generate — the decision is your signed proof it was authorized.

Refused

Usually PG_NO_LICENSE — decision.remediation.url sends the user to fix it, then retry.

The three license types

Every registered subject offers all three, always, automatically — nobody picks "STD or PRM" at registration. Which one a given generation needs depends on intended_use.use_case in the request.

STD
Personal
Fan art, personal projects, never distributed commercially. The only tier that grants with no human in the loop.
Auto-granted, instantly
RND
Educational / Research / Editorial
Teaching, academic research, journalism and documentary work. Free, but not automatic — request it and wait for the rights holder.
Owner reviews each request
PRM
Commercial
Advertising, marketing, brand content. The only paid tier — an owner can price it for instant checkout or keep it request-only.
Bought, or owner reviews each request

When a refusal is fixable

Most refusals in the reference list are hard — nothing your user can do fixes them (the subject opted out, a license was revoked). PG_NO_LICENSE is different: it just means no license exists yet, and the decision's remediation.url is a ready link straight to buying or requesting one for that exact subject — send your user there, then retry /verify once they're done. No webhook to build — a refusal that becomes fixable is just a refusal you check again.

PRAMPTA — Generative Rights Registry