Stickers, mèmes et templates à partager.
Installer RisiBank
Choisissez votre plateforme : on vous montre ce qui s'installe dessus.
API REST
Risibank expose une API REST publique sur /api/v1 . Listes (hot/top/new/random), recherche par tags, médias, collections, utilisateurs, export Telegram. Les endpoints d'écriture nécessitent un JWT ( Authorization: Bearer … ).
Un rate limit est en place sur l'API.
Exemple : snapshot des feeds en une requête :
curl https://risibank.fr/api/v1/medias?nsfw=falseL'API v0 (/api/v0/load, /api/v0/search, etc.) continue de fonctionner pour les plugins legacy (chat JVC, scripts tiers), mais elle n'évolue plus.
Intégration web
Intégrez le sélecteur RisiBank dans n'importe quel site via une iframe. Collez ce code et ajustez les paramètres :
<iframe
src="https://risibank.fr/embed?theme=light&defaultTab=hot"
style="width:100%;height:450px;border:0"
></iframe>Paramètres (query string)
| Paramètre | Valeurs | Défaut | Description |
|---|---|---|---|
id | nombre | 0 | Identifiant du widget, renvoyé tel quel dans chaque postMessage. Sert à router les callbacks quand plusieurs widgets coexistent sur la page. |
theme | light · dark · light-old · dark-old | light | Thème de couleur du widget. Le suffixe -old applique le thème Classique de RisiBank v2. |
defaultTab | search · fav · hot · top · new · rand | hot | Onglet ouvert au chargement. |
mediaSize | sm · md · lg | md | Taille des vignettes. |
showNSFW | true · false | false | Inclut les contenus NSFW dans les résultats. |
showCopyButton | true · false | false | Affiche le bouton de copie sur chaque média. |
showCloseButton | true · false | false | Affiche un bouton de fermeture qui émet risibank-closed. |
showRisiBankLink | true · false | true | Affiche le lien de retour vers risibank.fr. |
allowSignIn | true · false | true | Propose la connexion (bouton Connexion + favoris). |
autoFocus | true · false | false | Place le curseur dans la recherche au chargement. Désactivé par défaut : dans une iframe, ça vole le focus de la page parente et ouvre le clavier sur mobile. |
hideSearchOnOtherTabs | true · false | false | Masque la barre de recherche en dehors de l'onglet Recherche. |
allowUsernameSelection | true · false | true | Alias historique de allowSignIn, conservé pour les anciennes intégrations. Mettre l'un des deux à false désactive la connexion. |
Récupérer la sélection
Le widget communique avec la page parente via postMessage . Écoutez l'événement message :
window.addEventListener('message', (event) => {
if (event.origin !== 'https://risibank.fr') return;
if (event.data.type === 'risibank-media-selected') {
const media = event.data.media; // { id, cache_url, slug, ... }
insertIntoEditor(media.cache_url);
}
});Trois types de messages sont émis : risibank-media-selected, risibank-media-copy et risibank-closed. Le champ media contient l'objet média (id, cache_url, slug…).
Widget JavaScript
Tu préfères un bouton qui ouvre RisiBank en modale ou en surimpression plutôt qu'une iframe fixe ? Inclus la bibliothèque JS et appelle RisiBank.activate — elle crée l'iframe, gère plusieurs intégrations et route les callbacks de sélection pour toi.
<script src="https://risibank.fr/downloads/web-api/risibank.js"></script>
<script>
RisiBank.activate({
...RisiBank.Defaults.Frame.Light,
container: '#risibank',
onSelectMedia: ({ media }) => {
document.querySelector('textarea').value += ' ' + media.source_url;
},
});
</script>Trois préréglages sont disponibles : RisiBank.Defaults.Frame (intégré), RisiBank.Defaults.Modal (popup près du champ actif) et RisiBank.Defaults.Overlay (plein écran).