# Autenticación para agentes · 151 Marina Pharmacy

Resumen corto: **para leer el catálogo y montar un carrito no hace falta ninguna credencial.** No hay claves que pedir, ni registro, ni cuota. Esta página existe para decírtelo con claridad, porque la ausencia de autenticación también es una respuesta.

## Discover

Punto de entrada: [https://151marinapharmacy.com/openapi.json](https://151marinapharmacy.com/openapi.json). Catálogo de recursos: [https://151marinapharmacy.com/.well-known/ard.json](https://151marinapharmacy.com/.well-known/ard.json). Servidor MCP: `https://151marinapharmacy.com/mcp` (transporte streamable-http).

## Pick a method

| Qué quieres hacer | Qué necesitas |
| --- | --- |
| Leer productos, categorías y fichas | Nada. Acceso anónimo. |
| Montar un carrito | Nada. Una cabecera `Nonce` que te da la propia API y la cookie de sesión. |
| Pagar | Lo hace una persona, en el navegador, en la pasarela del banco. |
| Leer o escribir pedidos y clientes | Claves de la API REST de WooCommerce, que da la farmacia caso por caso. |

## Register

No hay registro para el acceso anónimo. Para las claves de la API de gestión, escribe a farmaciamarinabcn@gmail.com explicando para qué las quieres. No se dan automáticamente: esta es una farmacia, y detrás de los pedidos hay datos de salud de personas.

## Claim y Exchange

No aplican: no hay servidor de autorización OAuth, ni `identity_endpoint`, ni emisión de tokens. Si un directorio te dice lo contrario, está equivocado. Preferimos declararlo antes que publicar metadatos de un servicio que no existe.

## Use the access_token

Para el catálogo, no hay token. Para la API de gestión, las claves van como Basic Auth sobre HTTPS, según la documentación de WooCommerce.

## Errors

Todos los errores vuelven en JSON, nunca en HTML, con esta forma:

```json
{ "code": "woocommerce_rest_product_invalid_id", "message": "ID de producto no válido", "data": { "status": 404 } }
```

Códigos habituales: `400` petición mal formada · `403` falta la cabecera `Nonce` · `404` no existe · `429` demasiadas peticiones.

## Revocation

Las claves de la API de gestión se revocan desde el panel de la farmacia. El acceso anónimo al catálogo no se revoca por cliente; si un agente abusa, se bloquea su IP en el cortafuegos.

## Límites de uso

Sin límite declarado. Se pide sentido común: pagina de 100 en 100 y no lances cientos de peticiones en paralelo. Si necesitas el catálogo entero, descárgalo de una vez en [https://151marinapharmacy.com/feed-productos.xml](https://151marinapharmacy.com/feed-productos.xml) en lugar de recorrer la API.