API Documentation
Welcome to the Wrapinator API documentation. This guide will help you integrate AI-powered vehicle wrap visualization into your application.
Introduction
The Wrapinator API allows you to generate realistic wrap previews for vehicles using AI. Simply send us a car image and your desired wrap, and we'll return a professionally visualized result.
Base URL
https://wrapinator.co.uk/api/v1
Models
| Model | Description | Best For |
|---|---|---|
T-800 |
Standard model for solid colours and finishes | Gloss, satin, matte wraps |
T-1000 |
Advanced model for patterns and textures | Carbon fibre, camo, chrome, custom patterns |
Authentication
All API requests require authentication using a Bearer token. Include your API key in the Authorization header:
Authorization: Bearer wk_your_api_key_here
Quick Start
Generate your first wrap visualization in seconds:
curl -X POST https://wrapinator.co.uk/api/v1/generate \
-H "Authorization: Bearer wk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"car_image": "data:image/jpeg;base64,...",
"wrap": "satin-black",
"model": "T-800"
}'
Generate Visualization
Generate a wrap visualization for a vehicle image.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
car_image |
string | Yes | Base64 data URI or URL of the car image |
wrap |
string | No* | Wrap ID from the wraps list (e.g., "satin-black") |
wrap_color |
string | No* | Custom hex colour (e.g., "#FF0000") |
wrap_image |
string | No* | Base64 data URI of custom pattern (T-1000 only) |
model |
string | No | Model to use: "T-800" (default) or "T-1000" |
webhook_url |
string | No | URL to receive completion callback |
* At least one of wrap, wrap_color, or wrap_image is required.
Response
{
"success": true,
"job_id": "abc123def456789",
"status": "completed",
"result": {
"image_url": "https://wrapinator.co.uk/output/abc123def456789.png",
"share_url": "https://wrapinator.co.uk/share/abc123def456789",
"wrap": "Satin Black",
"model": "T-800"
},
"usage": {
"used": 15,
"limit": 100,
"remaining": 85
}
}
Check Job Status
Check the status of a generation job. Useful when using webhooks or polling for async jobs.
Response
{
"job_id": "abc123def456789",
"status": "completed",
"model": "T-800",
"wrap": "Satin Black",
"created_at": "2025-01-15T10:30:00Z",
"completed_at": "2025-01-15T10:30:28Z",
"result": {
"image_url": "https://wrapinator.co.uk/output/abc123def456789.png",
"share_url": "https://wrapinator.co.uk/share/abc123def456789"
}
}
Get Available Wraps
Get the list of available wrap colours and finishes.
Response
{
"categories": [
{
"id": "solid",
"name": "Solid Colours",
"wraps": [
{
"id": "gloss-black",
"name": "Gloss Black",
"hex": "#0a0a0a",
"finish": "Gloss",
"requires_model": "T-800"
},
...
]
}
]
}
Usage Statistics
Get your current usage statistics and remaining quota.
Response
{
"period": "2025-01",
"daily": {
"used": 5,
"limit": 100,
"remaining": 95
},
"monthly": {
"used": 47,
"limit": 500,
"remaining": 453
},
"by_model": {
"T-800": 40,
"T-1000": 7
},
"plan": "pro"
}
Embeddable Widget
The easiest way to add Wrapinator to your website. Just drop in a script tag:
<!-- Add this where you want the widget to appear -->
<div id="wrapinator-widget" data-key="wk_your_api_key"></div>
<script src="https://wrapinator.co.uk/embed/widget.js"></script>
Widget Options
| Attribute | Description | Default |
|---|---|---|
data-key |
Your API key (required) | - |
data-theme |
Colour theme: "dark" or "light" | dark |
data-branding |
Show "Powered by Wrapinator": "true" or "false" | true |
data-model |
Default model: "T-800" or "T-1000" | T-800 |
iFrame Embed
Alternatively, use an iFrame for a fully contained experience:
<iframe
src="https://wrapinator.co.uk/embed/iframe.php?key=wk_your_api_key"
width="100%"
height="800"
frameborder="0">
</iframe>
iFrame Parameters
| Parameter | Description |
|---|---|
key |
Your API key (required) |
theme |
Colour theme: "dark" or "light" |
branding |
Show branding: "true" or "false" |