Authentication
All API requests require authentication via a Bearer token in the Authorization header.
API Keys
API keys are the recommended way to authenticate with the Shotprose API. They start with sk_live_ and are 40+ characters long.
Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxCreating an API Key
- Sign up for a Pro subscription
- Go to the Developer Dashboard
- Click "Create API Key"
- Copy your key immediately - it won't be shown again
Key Security
Important
- API keys grant full access to your account
- Never commit keys to version control
- Store keys in environment variables
- Rotate keys if you suspect they've been compromised
Key Limits
- Maximum 10 active keys per account
- Keys can be revoked at any time from the dashboard
- Revoked keys cannot be restored
Request Example
bash
curl -X POST https://shotprose.com/api/v1/mockup \
-H "Authorization: Bearer $SHOTPROSE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"screenshot_url": "https://example.com/screenshot.png"}'javascript
const response = await fetch('https://shotprose.com/api/v1/mockup', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.SHOTPROSE_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
screenshot_url: 'https://example.com/screenshot.png'
})
});python
import os
import requests
response = requests.post(
'https://shotprose.com/api/v1/mockup',
headers={'Authorization': f'Bearer {os.environ["SHOTPROSE_API_KEY"]}'},
json={'screenshot_url': 'https://example.com/screenshot.png'}
)Error Responses
| Code | Status | Description |
|---|---|---|
MISSING_AUTH | 401 | Authorization header missing |
INVALID_API_KEY | 401 | API key is invalid or revoked |
SUBSCRIPTION_REQUIRED | 403 | Active Pro subscription required |