List project licenses
Fetch all license keys associated with a specific project.
This endpoint returns the projectβs licenses in reverse chronological order (latest first), using cursor pagination.
Endpoint
GET /project/{project}/licenses
Full URL:
https://api.devpayr.dev/api/v1/project/{project}/licensesAuthentication
β Required: API Key
Send your API key using:
X-API-KEY: <your_api_key>This endpoint does not accept license authentication. Itβs meant for dashboards/admin tools that manage licenses.
Path Parameters
project
integer
Yes
The ID of the project whose licenses you want to list.
Access Rules
DevPayr enforces strict project access before listing licenses:
Project-scoped API keys
If your API key is scoped to a project, it must match the {project} in the URL.
Error (403)
Global API keys
If your API key is global, it must belong to the same user who owns the project.
Error (403)
Query Parameters
per_page
integer
No
Number of results per page. Default 20. Maximum 50.
cursor
string
No
Cursor token for pagination (from next_cursor).
Pagination Notes
This endpoint uses cursor pagination:
The response includes
data.next_cursorIf
next_cursorisnull, there are no more pagesTo fetch the next page, pass the cursor back as a query param
Next page example
Response
Success (200)
DevPayr returns the standard response envelope:
data.dataβ array of license recordsdata.next_cursorβ token for the next page (ornull)errorsβnullon success
Example Response
What is the License Key?
In DevPayr, the license key is the value in:
β
uuid
Example:
That uuid is what a customer or SDK user supplies as the license key (via X-LICENSE-KEY header or license query/body, depending on the endpoint).
Fields Returned
This endpoint intentionally hides some internal license fields.
Hidden fields
These fields exist internally but are not returned here:
validate_againstuuid_hashuser_id
Everything else on the license record may be returned depending on your model structure.
Caching Behavior
This endpoint caches results per API key + project + query params.
Cache TTL: 15 minutes
Cache key includes:
API key ID
project ID
query parameters (
per_page,cursor, etc.)
If you create/revoke licenses and donβt see changes immediately, the list may still be cached until the TTL expires.
Errors
Missing API Key (401)
Invalid / Expired API Key (403)
Unauthorized (403)
Project-scoped mismatch:
Global key not owner:
Project Not Found (404)
Rate Limited (429)
Last updated