Embed
Tres opciones para mostrar tus avisos en tu propio sitio web — desde la más simple (script de una línea) hasta máximo control (API + render propio).
1. Loader JS (recomendado)
Pegá esto donde quieras que aparezca el aviso. Funciona en cualquier sitio (Wordpress, Shopify, HTML estático, etc).
<div data-vendetus-car="mi-auto-slug"></div>
<script src="https://vendetus.autos/embed.js" async></script>Opcional data-height="700" para ajustar altura. El loader crea un iframe responsivo y se reescanéa al agregar elementos dinámicamente (apps SPA).
2. iframe directo
Sin script externo, cero JS:
<iframe
src="https://vendetus.autos/embed/car/mi-auto-slug"
width="100%"
height="560"
style="border:0; border-radius:8px;"
></iframe>3. API pública + render propio
Si querés diseño propio, tirá los datos vía la Public API. Toda la API requiere API key — generala en app.vendetus.autos/integrations (Pro o Dealer). Mejor práctica: usá la key desde tu backend, no la expongas en el browser.
// Server-side (Node, Bun, Deno, edge)
const res = await fetch(
"https://api.vendetus.autos/v1/public/cars/mi-auto-slug",
{ headers: { Authorization: `Bearer ${process.env.VENDETUS_API_KEY}` } }
);
const { car } = await res.json();
// car.photos[0].url → URL directa al hero
// car.price, car.currency, car.title, car.description, etc.
// car.public_url → link al aviso fullRecibir preguntas y ofertas desde tu sitio
Tu form puede postear directo a nuestros endpoints públicos. Las respuestas le llegan al vendedor en su bandeja en vendetus.autos.
El form en tu sitio (browser) postea a un endpoint tuyo, y tu backend (con la API key) reenvía a vendetus. Así la key nunca queda expuesta.
// En tu backend (Node, Bun, edge):
// Pregunta pública (aparece también en la página del auto)
await fetch(`https://api.vendetus.autos/v1/public/cars/${carId}/comments`, {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.VENDETUS_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
author_name: "Juan",
author_email: "juan@example.com",
body: "Está disponible? Acepta permuta?",
}),
});
// Oferta
await fetch(`https://api.vendetus.autos/v1/public/cars/${carId}/offers`, {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.VENDETUS_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
type: "cash",
cash_amount: 22000,
cash_currency: "USD",
contact_name: "Juan",
contact_email: "juan@example.com",
}),
});Endpoints públicos
| Método | Ruta | Qué hace |
|---|---|---|
| GET | /v1/public/cars/:slugOrId | Detalle del auto con fotos (URLs directas) |
| GET | /v1/public/cars/:id/comments | Preguntas públicas en el auto |
| POST | /v1/public/cars/:id/comments | Crear pregunta (rate-limit 5/min por IP) |
| POST | /v1/public/cars/:id/offers | Crear oferta (rate-limit 3/min por IP) |
Analítica
Para ver cuántas visitas / ofertas / preguntas recibió tu auto desde embeds y desde la página oficial, usá el endpoint autenticado:
curl "https://api.vendetus.autos/v1/cars/<id>/analytics?days=7" \
-H "Authorization: Bearer pcsk_..."(Requiere API key — Pro o Dealer.)
CORS
Todos los endpoints /v1/public/* responden con Access-Control-Allow-Origin: * y soportan OPTIONS preflight. Pero como requieren API key, el patrón recomendado es proxiar desde tu backend para no exponer la key en el browser.
Skill para AI agents
Si tu equipo trabaja con Claude / Cursor / Copilot, copiá SKILL.md del paquete @vendetus/mcp en tu carpeta .claude/skills/. El agente aprende endpoints, patrones y workflows para integrar vendetus en tu sitio.