Integrate CUA's copyright evidence infrastructure into your platform.
One REST API to register original work, verify a registration and issue
a certificate — for every upload, automatically.
The CUA API lets you programmatically register copyrights, verify registrations
and manage certificates. All requests and responses use JSON. Writes are
authenticated with an API key; verification endpoints are public.
Base URL:https://cua.herownsky.com/api/v1
Authentication
Requests that create or change something — registering a work, anchoring
it, generating a notice, running a scan — require an API key. Verification
is deliberately public: anyone must be able to check a registration
independently, without credentials.
If the audio already sits in your own storage, send its URL instead of
the bytes. CUA fetches it directly, so you don’t have to download and
re-upload the file to register it.
The URL must be publicly reachable over http or https and serve an audio
content type. Addresses that resolve to private or internal networks are
refused, as are redirects to them.
Check the status of a registration. Returns
processing while the fingerprint is being generated, then
completed or failed. Completion fields appear
only once the status is completed.
verification_url returns JSON; verify_url is the
page a person can open and read.
registered_via names the platform the work was submitted
through, taken from the key that submitted it. It is what the certificate
reads: “Your Platform in partnership with CUA, a product of Her Own
Sky LLC”. It is null for a key issued to no platform.
The blockchain fields appear only when the registration was anchored.
duplicate_of appears when another registration holds
byte-for-byte identical audio. It is a file match, not an acoustic one,
and not a finding of infringement — registering your own master twice
produces the same signal.
When the status is failed, error carries the
reason.
Returns the PDF file with the appropriate Content-Type headers.
GET/api/v1/auth/whoamiAPI key
Confirms your key works and tells you which key it is.
Useful when a credential was configured a while ago and you need to know what
is actually in use. Unlike the other read endpoints, this one requires a key
— the credential is the subject of the request.
key_type is issued for a key issued to you, which
can be attributed and revoked on its own.
partner is the platform your registrations are attributed to
and the name printed on their certificates. A null partner
means the key authenticates but attributes nothing — worth checking
before registering a catalogue.
An invalid or revoked key returns 401, so this is the quickest way to tell a
stale credential from a misconfigured request.
Rate Limits
API requests are rate limited based on your plan.
Plan
Price
Registrations
Free Tier
—
100 / month
Starter
$99/mo
500 / month
Pro
$299/mo
2,000 / month
Enterprise
Custom
Custom limits
Error Handling
All errors return JSON with an error code and message:
JSON
{
"error": "Invalid API key",
"code": "AUTH_ERROR",
"status": 401
}
Important: CUA provides supplemental copyright evidence, not
official US Copyright Office registration. For full legal protection, register at
copyright.gov.