API REST v1

Integra el catálogo de ONDROID STORE en tus aplicaciones. Todas las respuestas son JSON: {"success": true, "data": …} (los listados incluyen meta con la paginación) o {"success": false, "error": "mensaje"}.

Autenticación

Obtén un token con POST /auth/login o créalo desde Mi cuenta › Tokens de API. Envíalo en cada petición:

curl -H "Authorization: Bearer ond_xxxxxxxx" https://store.ond-s.com/api/v1/me

Los tokens solo se muestran una vez, se guardan como huella SHA-256 y caducan (90 días por defecto). Los endpoints marcados como Opcional funcionan sin token, pero con él se aplican tus preferencias de contenido y accesos a pruebas.

Límites

Las peticiones están limitadas por IP y usuario. Al superar el límite recibirás 429 Too Many Requests con la cabecera Retry-After. Los errores de validación devuelven 422 con el detalle por campo en errors.

URL base

https://store.ond-s.com/api/v1

Autenticación

MétodoRutaAccesoDescripción
POST /auth/login Público Devuelve un token Bearer. Campos: login, password, device_name, code (si la cuenta usa 2FA, TOTP o código de recuperación).
POST /auth/register Público Crea una cuenta. Campos: name, username, email, password, country, birthdate, bio, accept_terms. Envía el correo de verificación.
POST /auth/logout Token Revoca el token usado en la petición.
GET /me Token Perfil del usuario autenticado.

Catálogo

MétodoRutaAccesoDescripción
GET /apps Opcional Búsqueda paginada. Parámetros: q, category, price (free|paid), filter[] (verified, popular, new, updated, recommended, featured, adult), sort (relevance, popular, rating, new, updated, name), page, per_page (máx. 50).
GET /apps/{slug} Opcional Ficha completa de la aplicación publicada, versión actual, permisos y seguridad de datos.
GET /apps/{slug}/versions Opcional Historial de versiones aprobadas.
GET /apps/{slug}/reviews Opcional Reseñas visibles paginadas.
POST /apps/{slug}/reviews Token Crea o actualiza tu reseña. Campos: rating (1–5), body.
POST /apps/{slug}/download Opcional Registra la descarga y devuelve url directa HTTPS, sha256 y tamaño para verificar el APK. Respeta restricciones de país, edad, compra y pruebas.
GET /apps/{slug}/products Opcional Productos integrados y suscripciones activos.
GET /categories Opcional Árbol de categorías con número de apps.
GET /categories/{slug}/apps Opcional Apps de una categoría.
GET /developers/{slug} Opcional Perfil público del desarrollador y sus apps.

Usuario

MétodoRutaAccesoDescripción
GET /notifications Token Notificaciones paginadas.
POST /notifications/{id}/read Token Marca una notificación como leída.
POST /purchases Token Inicia un pago. Campos: app (slug), type (app_purchase, iap, subscription, donation), item (SKU del producto o suscripción), amount (donaciones). Devuelve checkout_url.
GET /purchases/{ref} Token Estado de un pago.
GET /entitlements/{slug} Token Derechos del usuario sobre una app: compra, productos no consumibles y suscripciones activas.

Verificar un APK descargado

Compara siempre el SHA-256 del archivo recibido con el devuelto por /apps/{slug}/download antes de instalarlo:

sha256sum app.apk

El uso de la API está sujeto a los términos y a la política para desarrolladores.