Aller au contenu
javinfo

Attribution d'app

Un en-tête et ton app entre dans le classement public javinfo : requêtes, utilisateurs et répartition par fournisseur. Gratuit, optionnel, une minute.

Ajoute un en-tête referer : javinfo tient une page publique. Requêtes totales, comptes, fournisseur qui répond le plus. Ton app apparaît dans le classement.

Gratuit. Les appels attribués sont facturés comme les autres ; les en-têtes ne touchent pas ta limite. Sans eux : pas de page, pas de classement, pas d'enregistrement.

Les en-têtes

En-têteObligatoireRôle
HTTP-RefererouiL'URL de ton app. C'est son identité. Sans URL, pas de page d'app.
Referer–Les navigateurs le posent tout seuls. Sert de repli quand HTTP-Referer manque.
x-javinfo-titlenonNom affiché. Par défaut, le hostname de ton URL.
x-javinfo-categoriesnonTags séparés par des virgules, 10 maximum. Passés en minuscules.

HTTP-Referer est la convention OpenRouter : Referer seul est un en-tête interdit et JavaScript ne peut pas le définir. Depuis un serveur, les deux marchent ; dans le navigateur, Referer est gratuit et tu ajoutes le reste.

cURL
curl "https://api.javinfo.dev/movie?q=SSIS-001" \
  -H "x-javinfo-key: jvi_your_key_here" \
  -H "HTTP-Referer: https://myapp.example.com" \
  -H "x-javinfo-title: My App" \
  -H "x-javinfo-categories: search-ui, metadata"
JavaScript (fetch)
const res = await fetch('https://api.javinfo.dev/query?q=SSIS', {
  headers: {
    'x-javinfo-key': 'jvi_your_key_here',
    'HTTP-Referer': 'https://myapp.example.com',
    'x-javinfo-title': 'My App',
  },
});

Mets-les une fois dans les en-têtes par défaut de ton client. Puis oublie-les.

L'URL que tu envoies devient un lien public sur javinfo.dev. Envoie la page sur laquelle tu veux qu'on clique, pas un back-office ni un staging.

Les endpoints concernés

/movie, /query et /random. Chaque appel réussi avec un referer valide ajoute une requête. /stats et /health sont exclus.

L'enregistrement passe par une file en arrière-plan, après ta réponse. Zéro latence, et un hoquet de Redis ne fait pas échouer une requête déjà aboutie.

Ce qui est stocké

L'URL est normalisée en origine plus chemin. La query string et le fragment sautent ; un chemin racine se réduit à l'origine :

https://myapp.example.com/?ref=hn      →  https://myapp.example.com
https://myapp.example.com/search?q=x   →  https://myapp.example.com/search

Deux chemins différents font deux apps. Choisis une URL canonique, sinon ton trafic se coupe en deux.

Le titre et les catégories ne changent qu'à l'envoi ; sinon, la dernière valeur reste.

Ce qui est ignoré

Dans tous ces cas l'attribution est jetée en silence ; l'appel API réussit.

  • Ni HTTP-Referer ni Referer.
  • Un referer qui n'est pas une URL valide.
  • Autre chose que http ou https. Pas de file://, pas de schéma maison.
  • localhost, 127.0.0.1, ::1. Le dev local ne pollue jamais le classement.
  • javinfo.dev et app.javinfo.dev. On ne se classe pas nous-mêmes.
  • Les URL de plus de 500 caractères.
  • Un titre sans URL. x-javinfo-title seul ne crée rien.

Les catégories au-delà de la dixième sont coupées. Pas de liste figée : prends ce qui décrit ton app : search-ui, discord-bot, cli, scraper, mobile-app.

La page de ton app

La première requête attribuée crée l'entrée, publiée immédiatement. Le classement trie ton app par requêtes cumulées. javinfo.dev/apps/{id} :

  • Le total de requêtes depuis le début.
  • Les comptes javinfo distincts ayant appelé via ton URL. Par compte, pas par appel : de vrais utilisateurs, pas des visites déguisées.
  • La répartition par fournisseur : combien de recherches ont servi FANZA, DMM, javdb, missav, javdatabase ou javlibrary. Ordre dans Fournisseurs.

Les mêmes données se lisent sans clé :

curl "https://api.javinfo.dev/v1/apps/rankings?limit=20"
curl "https://api.javinfo.dev/v1/apps/{id}"

Le classement se gagne, il ne se vend pas. Les emplacements payants de javinfo.dev sont signalés et n'achètent pas une place ici.

Retirer ton app

Arrête d'envoyer l'en-tête : ton entrée cesse de grossir, mais les chiffres passés restent. La page doit disparaître ? Écris à [email protected] depuis le même domaine et on l'efface.

Sur cette page