Mint Motors API Documentation

Integrate car authentication into your applications

Overview

The Mint Motors Authentication API allows developers to integrate our Ed25519-based car authentication service into their applications. The API provides endpoints for single and batch authentication of 3D printed collectible cars.

Base URL

https://mintmotors.club/api

Authentication

No API key is required for authentication endpoints. All endpoints are rate-limited to prevent abuse.

Rate Limiting

100 requests per IP address per 15 minutes. Exceeding this limit will result in a 429 Too Many Requests response.

Endpoints

GET

/health

Check the health status of the authentication service.

Response

{ "status": "OK", "timestamp": "2025-11-02T02:55:37.238Z", "service": "Mint Motors Authentication Service", "version": "1.0.0" }
POST

/authenticate

Authenticate a single 3D printed car using its signature and data.

Request Body

{ "signature": "base64url-encoded-signature", "data": "id|timestamp|number|publickey" }

Response (Success)

{ "success": true, "message": "✓ Authenticated", "authenticated": true, "car": "Dodge Challenger Hellcat (RED&Black) Batch 1 No. 0001 of 100", "batch": "1", "number": "0001 of 100", "collection": "COLL1", "timestamp": "2025-11-02T02:55:37.238Z" }

Response (Failure)

{ "success": false, "message": "✗ Authentication failed", "authenticated": false }
POST

/batch-authenticate

Authenticate multiple 3D printed cars in a single request.

Request Body

{ "items": [ { "signature": "base64url-encoded-signature-1", "data": "id-1|timestamp-1|number-1|publickey-1" }, { "signature": "base64url-encoded-signature-2", "data": "id-2|timestamp-2|number-2|publickey-2" } ] }

Response (Success)

{ "success": true, "message": "Batch authentication complete: 2/2 authenticated", "results": [ { "index": 0, "success": true, "authenticated": true, "message": "Authenticated", "car": "Dodge Challenger Hellcat (RED&Black) Batch 1 No. 0001 of 100", "batch": "1", "number": "0001 of 100", "collection": "COLL1" }, { "index": 1, "success": true, "authenticated": true, "message": "Authenticated", "car": "Dodge Challenger Hellcat (RED&Black) Batch 1 No. 0002 of 100", "batch": "1", "number": "0002 of 100", "collection": "COLL1" } ] }

Integration Examples

JavaScript Example

async function authenticateCar(signature, data) { const response = await fetch('https://mintmotors.club/api/authenticate', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ signature, data }), }); const result = await response.json(); return result.authenticated; }

Python Example

import requests def authenticate_car(signature, data): url = 'https://mintmotors.club/api/authenticate' payload = {'signature': signature, 'data': data} response = requests.post(url, json=payload) return response.json()['authenticated']

Error Handling

The API uses standard HTTP status codes:

  • 200 - Success
  • 400 - Bad Request (invalid input)
  • 401 - Unauthorized (authentication failed)
  • 429 - Too Many Requests (rate limit exceeded)
  • 500 - Internal Server Error

Support

For API-related questions or issues, contact our developer support:

Email: [email protected]