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]