Écosystème IAKA

Un flux d'actualités par métier, prêt à afficher.

IAKA Cloud, IAKA Deals, IAKA Buzz ou le site d'un client : chaque projet interroge le même point d'entrée et récupère les dernières actualités de son secteur.

Sans clé : titre, photo, lien et résumé court, 20 articles maximum par appel, appels limités. Le contenu complet des articles est réservé aux services IAKA munis de leur clé.

Dernières actualités, tous secteurs

GET /api/public/feed?page=1&per_page=5

{
  "source": "iaka.news",
  "sector": "all",
  "count": 5,
  "items": [ {
    "id": "fa8988ff-…",
    "slug": "vente-du-palais-…",
    "title": "…",
    "excerpt": "…",
    "image_url": "https://…",
    "published_at": "2026-09-22T10:11:38.309+00:00",
    "url": "https://www.iaka.news/articles/vente-du-palais-…",
    "source_name": "Le Figaro — Immobilier",
    "source_url": "https://…",
    "sector": "immobilier"
  } ],
  "meta": { "page": 1, "per_page": 5, "total": 149, "total_pages": 30 }
}

Filtrer par secteur

GET /api/public/feed?sector=immobilier&per_page=3
GET /api/public/feed?sector=automobile&per_page=3
GET /api/public/feed?sector=nautisme&per_page=3
GET /api/public/feed?sector=batiment&per_page=3
GET /api/public/feed?sector=independants&per_page=3
GET /api/public/feed?sector=trading&per_page=3
GET /api/public/feed?sector=developpement-ia&per_page=3

La liste des secteurs, sans la recopier

GET /api/public/sectors

{ "items": [ { "slug": "immobilier", "name": "Immobilier" }, … ] }

// Un slug d'affichage n'est pas son slug d'URL :
// « Génération IA » s'interroge par sector=developpement-ia.
// Un slug inconnu rend 404 unknown_sector, jamais un tableau vide.

Exemple d'intégration

const res = await fetch(
  "https://iaka.news/api/public/feed?sector=immobilier&per_page=3"
);
const { items, meta } = await res.json();
// items[].url pointe vers l'article sur IAKA.NEWS ;
// items[].source_url vers l'éditeur d'origine, pour l'attribution.
// meta.total_pages évite de boucler à l'aveugle — une page au-delà
// de la fin rend 200 avec une liste vide, jamais une erreur.

Manifeste de service (écosystème IAKA)

GET /api/public/manifest

{
  "ok": true,
  "data": {
    "service_key": "iaka.news",
    "capabilities": ["news_feed", "sectors", "articles"],
    "endpoints": { "feed": { "path": "/api/public/feed" } }
  }
}

Hébergement — pas d'edge Supabase

IAKA.NEWS est une app TanStack Start : son API vit sur son propre site (https://iaka.news/api/public/*), pas en fonctions edge Supabase. La convention …supabase.co/functions/v1/… (et donc /functions/v1/service-manifest) ne s'applique pas à IAKA.NEWS — notre manifeste public est /api/public/manifest. Le manifeste le déclare via hosting: "own_site" et is_supabase_edge: false.

Jetons

Le flux public est ouvert en lecture. Les usages avancés (publication, quotas, statistiques, campagnes IAKA Buzz) passent par un jeton créé dans la console super admin, avec des droits par projet et une révocation immédiate.