Partner API
Feed your vehicle inventory into MYDV so it can power automated social media posting for your business. This is for businesses that aren't MYDV DMS customers — if you use MYDV DMS, your stock is already connected automatically.
1. Get an API key
Sign up at /partners/signup with your business name and contact email. You'll get a verification email — click the link, and your API key is emailed to you straight after. Keep it private; it's shown to you once and can't be recovered, only reissued.
2. Authentication
Every request must include your API key and your business name — the key alone isn't enough, they're checked together.
X-Partner-Api-Key: mydv_partner_...3. Send your vehicles
/api/external-feed/vehiclesRequest body:
{
"businessName": "Your Business Ltd",
"mode": "partial",
"listings": [
{
"source_id": "veh-001",
"make": "Ford",
"model": "Fiesta",
"price": 8500,
"images": ["https://example.com/photo1.jpg"],
"year": 2018,
"mileage": 42000,
"fuel": "Petrol",
"transmission": "Manual",
"colour": "Blue",
"registration": "AB18XYZ",
"description": "Great condition, one owner.",
"condition": "Used",
"body_type": "Hatchback"
}
]
}Fields
| businessName | string | required | Must match the name on your account exactly. |
| mode | "partial" | "full_replace" | optional | Defaults to "partial". "full_replace" removes any of your vehicles not included in this request. |
| listings | array | required | One entry per vehicle. At least one required. |
| listings[].source_id | string | required | Your own reference for this vehicle — used for future updates and deletes. |
| listings[].make | string | required | e.g. "Ford" |
| listings[].model | string | required | e.g. "Fiesta" |
| listings[].price | number | required | Whole pounds, no currency symbol. |
| listings[].images | string[] | required | At least one image URL. |
| listings[].year | number | optional | Year of manufacture. |
| listings[].mileage | number | optional | Odometer reading, in miles. |
| listings[].fuel | string | optional | e.g. "Petrol", "Diesel", "Electric" |
| listings[].transmission | string | optional | e.g. "Manual", "Automatic" |
| listings[].colour | string | optional | |
| listings[].registration | string | optional | |
| listings[].description | string | optional | |
| listings[].condition | string | optional | e.g. "New", "Used" |
| listings[].body_type | string | optional | e.g. "Hatchback", "SUV" |
A vehicle missing a required field is rejected with a reason — the rest of the batch still processes normally. Sending the same source_id again updates that vehicle rather than creating a duplicate.
4. Remove a vehicle
Send its source_id with delete: true instead of the full listing:
{
"businessName": "Your Business Ltd",
"listings": [
{ "source_id": "veh-001", "delete": true }
]
}5. Response
{
"success": true,
"results": [
{ "source_id": "veh-001", "status": "ok" },
{ "source_id": "veh-002", "status": "rejected", "reason": "Missing required field(s): model" }
]
}Each entry's status is ok, rejected, or deleted.
Limits
Up to 30 requests per 10 minutes per account. Send your full inventory in as few requests as possible rather than one call per vehicle.
Questions, or need your API key reissued?
Contact support@mydealershipview.com