Application key
X-Application-Key: vpxa_…Identifies and rate-limits the consuming application.
Developer platform · v1
Read centralized VPSDB ratings and publish user scores with separate application and user identities.
TWO IDENTITIES
Every ratings request requires a registered application key. Add a user credential when reading personal ratings or submitting a score.
X-Application-Key: vpxa_…Identifies and rate-limits the consuming application.
X-User-Key: vpxr_…A static profile key, or an OAuth bearer token in Authorization.
curl https://vpinratings.com/api/v1/ratings/batch \
-H 'X-Application-Key: vpxa_your_application_key' \
-H 'Content-Type: application/json' \
-d '{"itemIds":["-5yMpqSy"]}'USER AUTHORIZATION
Users can create a static key in their profile. Applications can instead obtain an application-scoped bearer token through authorization code + PKCE or the device flow. Callback URLs are optional for applications that only use static keys or device authorization.
GET /api/v1/oauth/authorizeSend client_id, registered redirect_uri, state, and an S256 PKCE challenge.POST /api/v1/oauth/tokenSend the application key plus the returned code, redirect URI, and PKCE verifier.Authorization: Bearer vpxu_…The token is scoped to the application that requested it.POST /api/v1/oauth/device/authorizeSend the application key. Show user_code, or render verification_uri_complete as a QR code.POST /api/v1/oauth/tokenUse the device grant type, application key, and secret device_code. Respect interval and the authorization_pending or slow_down response.device_code ≠ user_codeThe short code can only approve a request. Token retrieval requires the high-entropy device secret, which is stored only as a hash by VPIN Ratings.RATING ENDPOINTS
/ratings/batchAPP REQUIREDReturn aggregate ratings for VPSDB entry IDs. Add a user credential to include that user’s ratings.
{ "itemIds": ["-5yMpqSy"] }/ratings/batchAPP + USERAtomically synchronize up to 100 offline ratings. Any invalid rating, duplicate ID, or unknown VPSDB entry rejects the complete batch.
{ "ratings": [{ "itemId": "-5yMpqSy", "rating": 4.5 }] }/ratingsAPP + USERReturn the authenticated user’s complete rating list, resolved against current VPSDB metadata.
/ratingsAPP + USERCreate or replace the user’s rating for a current VPSDB entry on the five-star scale. Ratings use half-star increments; aggregate responses are rounded to two decimal places.
{ "itemId": "-5yMpqSy", "rating": 4.5 }itemId means a canonical VPSDB entry ID. Administrative APIs remain excluded from the published contract.
API EXPLORER
Register an application first. User credentials are optional only for aggregate reads.
Run a request to see the response.