/wp-json/wp/v2/posts
Entradas públicas.
GET https://api-cafeteria.javiermisat.com/wp-json/wp/v2/posts
Servicio backend de datos para la experiencia de Cafetería.
La interfaz pública (Frontend) se despliega aparte. Aquí se entregan recursos REST en formato JSON listos para integrarse en aplicaciones web o móviles.
Entradas públicas.
GET https://api-cafeteria.javiermisat.com/wp-json/wp/v2/posts
Categorías de contenido.
GET https://api-cafeteria.javiermisat.com/wp-json/wp/v2/categories
Biblioteca multimedia.
GET https://api-cafeteria.javiermisat.com/wp-json/wp/v2/media
Estado de autenticación.
GET https://api-cafeteria.javiermisat.com/wp-json/cafeteria/v1/auth-check
Algunos endpoints requieren credenciales para métodos de escritura (POST/PUT/PATCH/DELETE).
fetch('https://api-cafeteria.javiermisat.com/wp-json/wp/v2/posts')
.then(r => r.json())
.then(data => console.log(data));
Las peticiones GET a recursos públicos no requieren token.
Se exige sesión válida. Respuesta 401 si no hay autenticación.
fetch('https://api-cafeteria.javiermisat.com/wp-json/wp/v2/posts', {
method: 'POST',
headers: {
'Content-Type':'application/json',
'X-WP-Nonce': window.wpApiSettings?.nonce
},
body: JSON.stringify({ title:'Nuevo', status:'draft' })
});
Para integraciones de servidor puedes usar Application Passwords (usuario + clave específica).
const cred = btoa('usuario:APP_PASSWORD');
fetch('https://api-cafeteria.javiermisat.com/wp-json/wp/v2/posts', {
headers: { 'Authorization': 'Basic ' + cred }
});
Origen permitido configurado. Ajusta en functions.php para producción (no usar comodín *).
Buenas prácticas: usar HTTPS, restringir Access-Control-Allow-Origin, aplicar roles mínimos y rotar Application Passwords.