resourcepack.ai
DOCS

Origin check

Check whether content was generated here

For marketplaces: check whether files uploaded to you were generated by ResourcePack AI. No API key.

Send up to 256 hashes per call. Each returns a result in the order you sent it, so you can pair answers to files without matching on the hash yourself.

generated is definitive. `no_record` is not a negative — it means only that the content is not in our registry, never that a human made it.

The Origin check guide has how to compute the hash, which you must follow exactly or every lookup misses silently.

Rate limited to 60 requests a minute per address, since there is no key to count instead.

POST/origin/lookup

Body

hashesarray of stringrequired1–256 entries

Canonical content hashes, 64 hexadecimal characters each. Case is ignored and duplicates are collapsed.

Response · 200

One result per hash asked about.

resultsarray of objectrequired

In the order the hashes were sent.

hashstringrequired

The hash you asked about, lowercased.

verdictstringrequired

generated if we produced this content, no_record if it is not in the registry.

Options: generated, no_record

formstring

Which canonicalisation produced the hash. Absent on no_record.

Options: png, json, bytes

kindstring

What sort of asset it was. Absent on no_record.

Options: texture, model, font, sound

firstSeenstring

ISO 8601 — when this content first left our systems. Absent on no_record.

matchedintegerrequired

How many of them we generated.

Error codes

Branch on error.code, never on the message.

invalid_json400

The request body wasn't a JSON object.

invalid_request400

Something in the body or query is wrong. message says what.

rate_limited429

Too many requests. message says how long to wait; see Rate limits.