-
Star
(153)
You must be signed in to star a gist -
Fork
(12)
You must be signed in to fork a gist
-
-
Save Clemv95/8bfded23ef23ec78f6678896f42a2b60 to your computer and use it in GitHub Desktop.
| --- | |
| id: yggapi | |
| name: YggAPI | |
| description: Indexeur non-officiel pour YggTorrent (YGG) - MOVIES / TV | |
| language: fr-FR | |
| type: private | |
| encoding: UTF-8 | |
| testlinktorrent: false | |
| links: | |
| - https://yggapi.eu/ | |
| caps: | |
| categorymappings: | |
| - {id: 2145, cat: TV, desc: "Film/Vidéo"} | |
| - {id: 2178, cat: Movies/Other, desc: "Film/Vidéo : Animation"} # changed to movies, see #3553 | |
| - {id: 2179, cat: TV/Anime, desc: "Film/Vidéo : Animation Série"} | |
| - {id: 2180, cat: Audio/Video, desc: "Film/Vidéo : Concert"} | |
| - {id: 2181, cat: TV/Documentary, desc: "Film/Vidéo : Documentaire"} | |
| - {id: 2182, cat: TV, desc: "Film/Vidéo : Emission TV"} | |
| - {id: 2183, cat: Movies, desc: "Film/Vidéo : Film"} | |
| - {id: 2184, cat: TV, desc: "Film/Vidéo : Série TV"} | |
| - {id: 2185, cat: TV, desc: "Film/Vidéo : Spectacle"} | |
| - {id: 2186, cat: TV/Sport, desc: "Film/Vidéo : Sport"} | |
| - {id: 2187, cat: TV/Other, desc: "Film/Vidéo : Vidéo-clips"} | |
| - {id: 2139, cat: Audio, desc: "Audio"} | |
| - {id: 2147, cat: Audio, desc: "Audio : Karaoké"} | |
| - {id: 2148, cat: Audio, desc: "Audio : Musique"} | |
| - {id: 2150, cat: Audio, desc: "Audio : Podcast Radio"} | |
| - {id: 2149, cat: Audio/Other, desc: "Audio : Samples"} | |
| - {id: 2144, cat: PC, desc: "Application"} | |
| - {id: 2177, cat: PC/0day, desc: "Application : Autre"} | |
| - {id: 2176, cat: PC, desc: "Application : Formation"} | |
| - {id: 2171, cat: PC/ISO, desc: "Application : Linux"} | |
| - {id: 2172, cat: PC/Mac, desc: "Application : MacOS"} | |
| - {id: 2174, cat: PC/Mobile-Android, desc: "Application : Smartphone"} | |
| - {id: 2175, cat: PC/Mobile-Android, desc: "Application : Tablette"} | |
| - {id: 2173, cat: PC/0day, desc: "Application : Windows"} | |
| - {id: 2142, cat: PC/Games, desc: "Jeu vidéo"} | |
| - {id: 2167, cat: Console/Other, desc: "Jeu vidéo : Autre"} | |
| - {id: 2159, cat: PC/Games, desc: "Jeu vidéo : Linux"} | |
| - {id: 2160, cat: PC/Games, desc: "Jeu vidéo : MacOS"} | |
| - {id: 2162, cat: Console/XBox One, desc: "Jeu vidéo : Microsoft"} | |
| - {id: 2163, cat: Console/Wii, desc: "Jeu vidéo : Nintendo"} | |
| - {id: 2165, cat: PC/Mobile-Android, desc: "Jeu vidéo : Smartphone"} | |
| - {id: 2164, cat: Console/PS4, desc: "Jeu vidéo : Sony"} | |
| - {id: 2166, cat: PC/Mobile-Android, desc: "Jeu vidéo : Tablette"} | |
| - {id: 2161, cat: PC/Games, desc: "Jeu vidéo : Windows"} | |
| - {id: 2140, cat: Books, desc: "eBook"} | |
| - {id: 2151, cat: Audio/Audiobook, desc: "eBook : Audio"} | |
| - {id: 2152, cat: Books/EBook, desc: "eBook : Bds"} | |
| - {id: 2153, cat: Books/Comics, desc: "eBook : Comics"} | |
| - {id: 2154, cat: Books/EBook, desc: "eBook : Livres"} | |
| - {id: 2155, cat: Books/Comics, desc: "eBook : Mangas"} | |
| - {id: 2156, cat: Books/Mags, desc: "eBook : Presse"} | |
| modes: | |
| search: [q] | |
| tv-search: [q, season, ep, tmdbid] | |
| movie-search: [q, year, tmdbid] | |
| music-search: [q] | |
| book-search: [q] | |
| allowrawsearch: true | |
| settings: | |
| - name: website_domain | |
| type: text | |
| label: YGG website domain | |
| default: www.yggtorrent.top | |
| - name: passkey | |
| type: password | |
| label: Passkey | |
| - name: info_key | |
| type: info | |
| label: About your passkey | |
| default: "You will find your passkey on the <a href=\"https://www.yggtorrent.top/user/account\" target=\"_blank\">YGG</a> account page." | |
| - name: sort | |
| type: select | |
| label: Sort requested from site | |
| default: uploaded_at | |
| options: | |
| uploaded_at: publish_date | |
| seeders: seeders | |
| downloads: downloads | |
| - name: multilang | |
| type: checkbox | |
| label: Replace MULTi by another language in release name | |
| default: false | |
| - name: multilanguage | |
| type: select | |
| label: Replace MULTi by this language | |
| default: FRENCH | |
| options: | |
| FRENCH: FRENCH | |
| MULTi.FRENCH: MULTi.FRENCH | |
| ENGLISH: ENGLISH | |
| MULTi.ENGLISH: MULTi.ENGLISH | |
| VOSTFR: VOSTFR | |
| MULTi.VOSTFR: MULTi.VOSTFR | |
| - name: strip_season | |
| type: checkbox | |
| label: Strip season-only (e.g. S01) from searches, as tracker does not support partial matches | |
| default: true | |
| - name: tracker_domain | |
| type: select | |
| label: Domaine du tracker à utiliser | |
| default: tracker.p2p-world.net | |
| options: | |
| tracker.p2p-world.net: tracker.p2p-world.net | |
| connect.maxp2p.org: connect.maxp2p.org | |
| - name: info_downloads | |
| type: info | |
| label: About missing Downloads | |
| default: "If the torrent has no seeder and no leecher then the torrent file may be missing and download may fail." | |
| search: | |
| paths: | |
| - path: torrents | |
| response: | |
| type: json | |
| inputs: | |
| page: 1 | |
| - path: torrents | |
| response: | |
| type: json | |
| inputs: | |
| page: 2 | |
| - path: torrents | |
| response: | |
| type: json | |
| inputs: | |
| page: 3 | |
| inputs: | |
| $raw: "{{ range .Categories }}&category_id={{.}}{{end}}" | |
| q: "{{ .Keywords }}" | |
| season: "{{ .Query.Season }}" | |
| episode: "{{ .Query.Ep }}" | |
| tmdb_id: "{{ .Query.TMDBID }}" | |
| type: "{{ if eq .Query.Type \"tvsearch\" }}tv{{ else }}{{ end }}{{ if eq .Query.Type \"movie\" }}movie{{ else }}{{ end }}" | |
| per_page: 100 | |
| order_by: "{{ .Config.sort }}" | |
| # https://github.com/Prowlarr/Indexers/blob/953aa766ef67c782f5aab1b563ce180f49eb9ea5/definitions/v10/yggtorrent.yml#L277 | |
| keywordsfilters: | |
| - name: trim | |
| # fix date search and workaround for internal YGG issues | |
| - name: re_replace | |
| args: ["[\\\\\\-\\.\\/!\\s]+", " "] | |
| # strip season-only as tracker does not support partial matches | |
| - name: re_replace | |
| args: ["(?i)\\b(S\\d{1,3})\\b", "{{ if .Config.strip_season }}{{ else }}$1{{ end }}"] | |
| rows: | |
| selector: $ | |
| missingAttributeEqualsNoResults: true | |
| fields: | |
| category: | |
| selector: category_id | |
| title_normal: | |
| selector: title | |
| title_multilang: | |
| text: "{{ .Result.title_normal }}" | |
| filters: | |
| - name: re_replace | |
| args: ["(?i)[\\.](MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))[\\.]", ".{{ .Config.multilanguage }}."] | |
| title: | |
| text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_normal }}{{ end }}" | |
| _id: | |
| selector: id | |
| details: | |
| selector: link | |
| download: | |
| text: "torrent/{{ .Result._id }}/download?passkey={{ .Config.passkey }}&tracker_domain={{ .Config.tracker_domain }}" | |
| year: | |
| selector: title | |
| filters: | |
| - name: regexp | |
| args: (\b(19|20)\d{2}\b) | |
| size: | |
| selector: size | |
| seeders: | |
| selector: seeders | |
| leechers: | |
| selector: leechers | |
| grabs: | |
| selector: downloads | |
| optional: true | |
| default: 0 | |
| date: | |
| # unix | |
| selector: uploaded_at | |
| downloadvolumefactor: | |
| text: 1 | |
| uploadvolumefactor: | |
| text: 1 | |
| # JSON 1.0.0 |
| --- | |
| id: yggapi | |
| name: YggAPI | |
| description: Indexeur non-officiel pour YggTorrent (YGG) - MOVIES / TV | |
| language: fr-FR | |
| type: private | |
| encoding: UTF-8 | |
| testlinktorrent: false | |
| links: | |
| - https://yggapi.eu/ | |
| caps: | |
| categorymappings: | |
| - {id: 2145, cat: TV, desc: "Film/Vidéo"} | |
| - {id: 2178, cat: Movies/Other, desc: "Film/Vidéo : Animation"} # changed to movies, see #3553 | |
| - {id: 2179, cat: TV/Anime, desc: "Film/Vidéo : Animation Série"} | |
| - {id: 2180, cat: Audio/Video, desc: "Film/Vidéo : Concert"} | |
| - {id: 2181, cat: TV/Documentary, desc: "Film/Vidéo : Documentaire"} | |
| - {id: 2182, cat: TV, desc: "Film/Vidéo : Emission TV"} | |
| - {id: 2183, cat: Movies, desc: "Film/Vidéo : Film"} | |
| - {id: 2184, cat: TV, desc: "Film/Vidéo : Série TV"} | |
| - {id: 2185, cat: TV, desc: "Film/Vidéo : Spectacle"} | |
| - {id: 2186, cat: TV/Sport, desc: "Film/Vidéo : Sport"} | |
| - {id: 2187, cat: TV/Other, desc: "Film/Vidéo : Vidéo-clips"} | |
| - {id: 2139, cat: Audio, desc: "Audio"} | |
| - {id: 2147, cat: Audio, desc: "Audio : Karaoké"} | |
| - {id: 2148, cat: Audio, desc: "Audio : Musique"} | |
| - {id: 2150, cat: Audio, desc: "Audio : Podcast Radio"} | |
| - {id: 2149, cat: Audio/Other, desc: "Audio : Samples"} | |
| - {id: 2144, cat: PC, desc: "Application"} | |
| - {id: 2177, cat: PC/0day, desc: "Application : Autre"} | |
| - {id: 2176, cat: PC, desc: "Application : Formation"} | |
| - {id: 2171, cat: PC/ISO, desc: "Application : Linux"} | |
| - {id: 2172, cat: PC/Mac, desc: "Application : MacOS"} | |
| - {id: 2174, cat: PC/Mobile-Android, desc: "Application : Smartphone"} | |
| - {id: 2175, cat: PC/Mobile-Android, desc: "Application : Tablette"} | |
| - {id: 2173, cat: PC/0day, desc: "Application : Windows"} | |
| - {id: 2142, cat: PC/Games, desc: "Jeu vidéo"} | |
| - {id: 2167, cat: Console/Other, desc: "Jeu vidéo : Autre"} | |
| - {id: 2159, cat: PC/Games, desc: "Jeu vidéo : Linux"} | |
| - {id: 2160, cat: PC/Games, desc: "Jeu vidéo : MacOS"} | |
| - {id: 2162, cat: Console/XBox One, desc: "Jeu vidéo : Microsoft"} | |
| - {id: 2163, cat: Console/Wii, desc: "Jeu vidéo : Nintendo"} | |
| - {id: 2165, cat: PC/Mobile-Android, desc: "Jeu vidéo : Smartphone"} | |
| - {id: 2164, cat: Console/PS4, desc: "Jeu vidéo : Sony"} | |
| - {id: 2166, cat: PC/Mobile-Android, desc: "Jeu vidéo : Tablette"} | |
| - {id: 2161, cat: PC/Games, desc: "Jeu vidéo : Windows"} | |
| - {id: 2140, cat: Books, desc: "eBook"} | |
| - {id: 2151, cat: Audio/Audiobook, desc: "eBook : Audio"} | |
| - {id: 2152, cat: Books/EBook, desc: "eBook : Bds"} | |
| - {id: 2153, cat: Books/Comics, desc: "eBook : Comics"} | |
| - {id: 2154, cat: Books/EBook, desc: "eBook : Livres"} | |
| - {id: 2155, cat: Books/Comics, desc: "eBook : Mangas"} | |
| - {id: 2156, cat: Books/Mags, desc: "eBook : Presse"} | |
| modes: | |
| search: [q] | |
| tv-search: [q, season, ep, tmdbid] | |
| movie-search: [q, year, tmdbid] | |
| music-search: [q] | |
| book-search: [q] | |
| allowrawsearch: true | |
| settings: | |
| - name: website_domain | |
| type: text | |
| label: YGG website domain | |
| default: www.yggtorrent.top | |
| - name: passkey | |
| type: password | |
| label: Passkey | |
| - name: info_key | |
| type: info | |
| label: About your passkey | |
| default: "You will find your passkey on the <a href=\"https://www.yggtorrent.top/user/account\" target=\"_blank\">YGG</a> account page." | |
| - name: sort | |
| type: select | |
| label: Sort requested from site | |
| default: uploaded_at | |
| options: | |
| uploaded_at: publish_date | |
| seeders: seeders | |
| downloads: downloads | |
| - name: multilang | |
| type: checkbox | |
| label: Replace MULTi by another language in release name | |
| default: false | |
| - name: multilanguage | |
| type: select | |
| label: Replace MULTi by this language | |
| default: FRENCH | |
| options: | |
| FRENCH: FRENCH | |
| MULTi.FRENCH: MULTi.FRENCH | |
| ENGLISH: ENGLISH | |
| MULTi.ENGLISH: MULTi.ENGLISH | |
| VOSTFR: VOSTFR | |
| MULTi.VOSTFR: MULTi.VOSTFR | |
| - name: strip_season | |
| type: checkbox | |
| label: Strip season-only (e.g. S01) from searches, as tracker does not support partial matches | |
| default: true | |
| - name: tracker_domain | |
| type: select | |
| label: Domaine du tracker à utiliser | |
| default: tracker.p2p-world.net | |
| options: | |
| tracker.p2p-world.net: tracker.p2p-world.net | |
| connect.maxp2p.org: connect.maxp2p.org | |
| - name: info_downloads | |
| type: info | |
| label: About missing Downloads | |
| default: "If the torrent has no seeder and no leecher then the torrent file may be missing and download may fail." | |
| download: | |
| before: | |
| path: "torrent/{{ .DownloadUri.Query.id }}/magnet?passkey=PASSKEY_TO_BE_REPLACED_BY_REG_EX" | |
| method: get | |
| selectors: | |
| - selector: body | |
| usebeforeresponse: true | |
| filters: | |
| - name: regexp | |
| args: \"magnet\"\s*:\s*"(?<magnet>magnet:[^"]+)" | |
| - name: replace | |
| args: ["PASSKEY_TO_BE_REPLACED_BY_REG_EX", "{{ .Config.passkey }}"] | |
| - name: replace | |
| args: ["tracker.p2p-world.net", "{{ .Config.tracker_domain }}"] | |
| search: | |
| paths: | |
| - path: torrents | |
| response: | |
| type: json | |
| inputs: | |
| page: 1 | |
| - path: torrents | |
| response: | |
| type: json | |
| inputs: | |
| page: 2 | |
| - path: torrents | |
| response: | |
| type: json | |
| inputs: | |
| page: 3 | |
| inputs: | |
| $raw: "{{ range .Categories }}&category_id={{.}}{{end}}" | |
| q: "{{ .Keywords }}" | |
| season: "{{ .Query.Season }}" | |
| episode: "{{ .Query.Ep }}" | |
| tmdb_id: "{{ .Query.TMDBID }}" | |
| type: "{{ if eq .Query.Type \"tvsearch\" }}tv{{ else }}{{ end }}{{ if eq .Query.Type \"movie\" }}movie{{ else }}{{ end }}" | |
| per_page: 100 | |
| order_by: "{{ .Config.sort }}" | |
| # https://github.com/Prowlarr/Indexers/blob/953aa766ef67c782f5aab1b563ce180f49eb9ea5/definitions/v10/yggtorrent.yml#L277 | |
| keywordsfilters: | |
| - name: trim | |
| # fix date search and workaround for internal YGG issues | |
| - name: re_replace | |
| args: ["[\\\\\\-\\.\\/!\\s]+", " "] | |
| # strip season-only as tracker does not support partial matches | |
| - name: re_replace | |
| args: ["(?i)\\b(S\\d{1,3})\\b", "{{ if .Config.strip_season }}{{ else }}$1{{ end }}"] | |
| rows: | |
| selector: $ | |
| missingAttributeEqualsNoResults: true | |
| fields: | |
| category: | |
| selector: category_id | |
| title_normal: | |
| selector: title | |
| title_multilang: | |
| text: "{{ .Result.title_normal }}" | |
| filters: | |
| - name: re_replace | |
| args: ["(?i)[\\.](MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))[\\.]", ".{{ .Config.multilanguage }}."] | |
| title: | |
| text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_normal }}{{ end }}" | |
| _id: | |
| selector: id | |
| details: | |
| selector: link | |
| download: | |
| text: "torrent?id={{ .Result._id }}" | |
| year: | |
| selector: title | |
| filters: | |
| - name: regexp | |
| args: (\b(19|20)\d{2}\b) | |
| size: | |
| selector: size | |
| seeders: | |
| selector: seeders | |
| leechers: | |
| selector: leechers | |
| grabs: | |
| selector: downloads | |
| optional: true | |
| default: 0 | |
| download: | |
| text: torrent?id={{ .Result._id }} | |
| date: | |
| # unix | |
| selector: uploaded_at | |
| downloadvolumefactor: | |
| text: 1 | |
| uploadvolumefactor: | |
| text: 1 | |
| # JSON 1.0.0 |
Effectivement c'était bien un soucis de passkey... Merci !
J'ai parlé trop vite : après seulement un téléchargement correct depuis radarr, ça re bloque sur "Downloading metadata" à 0% alors que le statut du tracker est sur "working" et que j'ai des Peers/Seeds... Après peut être qu'il vaut mieux que je fasse un post reddit ?
J'ai parlé trop vite : après seulement un téléchargement correct depuis radarr, ça re bloque sur "Downloading metadata" à 0% alors que le statut du tracker est sur "working" et que j'ai des Peers/Seeds... Après peut être qu'il vaut mieux que je fasse un post reddit ?
j'ai pas encore essayer mais ta tester le yml de idjul ? a priori il a plu de soucis depuis
@Clemv95 Je crois qu'il est possible d'ajouter plusieurs fichiers sur un gist. Vu qu'il y a certaines personnes qui ne trouvent pas comment ajouter le fichier dans prowlarr ou jackett (c'est décrit dans ton premier commentaire mais pas visible par défaut), ça peut être intéressant d'ajouter un fichier .md avec l'info non ?
@Clemv95 Je crois qu'il est possible d'ajouter plusieurs fichiers sur un gist. Vu qu'il y a certaines personnes qui ne trouvent pas comment ajouter le fichier dans prowlarr ou jackett (c'est décrit dans ton premier commentaire mais pas visible par défaut), ça peut être intéressant d'ajouter un fichier .md avec l'info non ?
Désolé à tous j'avais plus les notifs des messages :/
J'ai mis à jour le gist avec deux version, une version magnet, et la version download, qui est l'ancienne, j'invite tous ceux ayant des soucis avec la magnet, soit à changer de client de dl (avec deluge j'ai aucun soucis), soit passer sur la version download
@Clemv95 Je crois qu'il est possible d'ajouter plusieurs fichiers sur un gist. Vu qu'il y a certaines personnes qui ne trouvent pas comment ajouter le fichier dans prowlarr ou jackett (c'est décrit dans ton premier commentaire mais pas visible par défaut), ça peut être intéressant d'ajouter un fichier .md avec l'info non ?
Désolé à tous j'avais plus les notifs des messages :/
J'ai mis à jour le gist avec deux version, une version magnet, et la version download, qui est l'ancienne, j'invite tous ceux ayant des soucis avec la magnet, soit à changer de client de dl (avec deluge j'ai aucun soucis), soit passer sur la version download
Merci la version download fonctionne parfaitement sur les torrent qui précédemment n'arrivait pas dl les metadata depuis le magnet sur les torrent a peut de seed
@Clemv95 Je crois qu'il est possible d'ajouter plusieurs fichiers sur un gist. Vu qu'il y a certaines personnes qui ne trouvent pas comment ajouter le fichier dans prowlarr ou jackett (c'est décrit dans ton premier commentaire mais pas visible par défaut), ça peut être intéressant d'ajouter un fichier .md avec l'info non ?
Désolé à tous j'avais plus les notifs des messages :/
J'ai mis à jour le gist avec deux version, une version magnet, et la version download, qui est l'ancienne, j'invite tous ceux ayant des soucis avec la magnet, soit à changer de client de dl (avec deluge j'ai aucun soucis), soit passer sur la version downloadMerci la version download fonctionne parfaitement sur les torrent qui précédemment n'arrivait pas dl les metadata depuis le magnet sur les torrent a peut de seed
Bonsoir, ce n'est pas du tout un problème de seed ! Un magnet ne contient que très peu d'infos par rapport à un .torrent. Donc si personne n'a ajouté le .torrent sur le debrideur, ton magnet ne fonctionnera jamais car il ne reconnais pas le #hash.
@Clemv95 Je crois qu'il est possible d'ajouter plusieurs fichiers sur un gist. Vu qu'il y a certaines personnes qui ne trouvent pas comment ajouter le fichier dans prowlarr ou jackett (c'est décrit dans ton premier commentaire mais pas visible par défaut), ça peut être intéressant d'ajouter un fichier .md avec l'info non ?
Désolé à tous j'avais plus les notifs des messages :/
J'ai mis à jour le gist avec deux version, une version magnet, et la version download, qui est l'ancienne, j'invite tous ceux ayant des soucis avec la magnet, soit à changer de client de dl (avec deluge j'ai aucun soucis), soit passer sur la version downloadMerci la version download fonctionne parfaitement sur les torrent qui précédemment n'arrivait pas dl les metadata depuis le magnet sur les torrent a peut de seed
Bonsoir, ce n'est pas du tout un problème de seed ! Un magnet ne contient que très peu d'infos par rapport à un .torrent. Donc si personne n'a ajouté le .torrent sur le debrideur, ton magnet ne fonctionnera jamais car il ne reconnais pas le #hash.
Oh ok je prends l'info je me doutais que c'était quelque chose comme ça merci
petit fichier bash pour mettre a jour automatiquement :
curl -o /mnt/user/appdata/prowlarr/Definitions/Custom/ygg-api.yml https://gist.githubusercontent.com/Clemv95/8bfded23ef23ec78f6678896f42a2b60/raw
Hello,
J'ai adapté le yml pour prendre en compte le tracker à utiliser lors de la configuration :
ygg-api-download.yml :
---
id: ygg-api
name: Ygg API
description: Indexeur non officiel pour ygg.re MOVIES / TV
language: fr-FR
type: private
encoding: UTF-8
testlinktorrent: false
links:
- https://yggapi.eu/
caps:
categorymappings:
- {id: 2178, cat: Movies/Other, desc: "Films d’animation"}
- {id: 2183, cat: Movies, desc: "Films"}
- {id: 2145, cat: TV, desc: "Film/Vidéo"}
- {id: 2179, cat: TV/Anime, desc: "Séries d’animation / Mangas"}
- {id: 2181, cat: TV/Documentary, desc: "Film/Vidéo : Documentaire"}
- {id: 2182, cat: TV, desc: "Film/Vidéo : Emission TV"}
- {id: 2184, cat: TV, desc: "Séries"}
- {id: 2185, cat: TV, desc: "Film/Vidéo : Spectacle"}
- {id: 2186, cat: TV/Sport, desc: "Film/Vidéo : Sport"}
- {id: 2187, cat: TV/Other, desc: "Film/Vidéo : Vidéo-clips"}
- {id: 2139, cat: Audio, desc: "Audio"}
- {id: 2147, cat: Audio, desc: "Audio : Karaoké"}
- {id: 2148, cat: Audio, desc: "Audio : Musique"}
- {id: 2149, cat: Audio/Other, desc: "Audio : Samples"}
- {id: 2150, cat: Audio, desc: "Audio : Podcast Radio"}
- {id: 2151, cat: Audio/Audiobook, desc: "eBook : Audio"}
- {id: 2180, cat: Audio/Video, desc: "Film/Vidéo : Concert"}
- {id: 2140, cat: Books, desc: "eBook"}
- {id: 2152, cat: Books/EBook, desc: "eBook : Bds"}
- {id: 2153, cat: Books/Comics, desc: "eBook : Comics"}
- {id: 2154, cat: Books/EBook, desc: "eBook : Livres"}
- {id: 2155, cat: Books/Comics, desc: "eBook : Mangas"}
- {id: 2156, cat: Books/Mags, desc: "eBook : Presse"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q, year]
allowrawsearch: true
settings:
- name: passkey
type: password
label: Passkey
- name: info_key
type: info
label: About your passkey
default: "You will find your passkey on the <a href=\"https://www.ygg.re/user/account\" target=\"_blank\">YGG</a> account page."
- name: sort
type: select
label: Sort requested from site
default: uploaded_at
options:
uploaded_at: publish_date
seeders: seeders
downloads: downloads
- name: multilang
type: checkbox
label: Replace MULTi by another language in release name
default: false
- name: multilanguage
type: select
label: Replace MULTi by this language
default: FRENCH
options:
FRENCH: FRENCH
MULTi.FRENCH: MULTi.FRENCH
ENGLISH: ENGLISH
MULTi.ENGLISH: MULTi.ENGLISH
VOSTFR: VOSTFR
MULTi.VOSTFR: MULTi.VOSTFR
- name: tracker_domain
type: select
label: Domaine du tracker à utiliser
default: tracker.p2p-world.net
options:
tracker.p2p-world.net: tracker.p2p-world.net
connect.maxp2p.org: connect.maxp2p.org
- name: info_downloads
type: info
label: About missing Downloads
default: "If the torrent has no seeder and no leecher then the torrent file may be missing and download may fail."
search:
paths:
- path: torrents
response:
type: json
inputs:
$raw: "{{ range .Categories }}&category_id={{.}}{{end}}"
q: "{{ .Keywords }}"
page: 1
per_page: 100
order_by: "{{ .Config.sort }}"
rows:
selector: $
missingAttributeEqualsNoResults: true
fields:
category:
selector: category_id
title_normal:
selector: title
title_multilang:
text: "{{ .Result.title_normal }}"
filters:
- name: re_replace
args: ["(?i)[\\.](MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))[\\.]", ".{{ .Config.multilanguage }}."]
title:
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_normal }}{{ end }}"
_id:
selector: id
details:
text: "torrent/{{ .Result._id }}"
download:
text: "torrent/{{ .Result._id }}/download?passkey={{ .Config.passkey }}&tracker_domain={{ .Config.tracker_domain }}"
year:
selector: title
filters:
- name: regexp
args: (\b(19|20)\d{2}\b)
size:
selector: size
seeders:
selector: seeders
leechers:
selector: leechers
grabs:
selector: downloads
optional: true
default: 0
date:
# unix
selector: uploaded_at
downloadvolumefactor:
text: 1
uploadvolumefactor:
text: 1
# JSON 1.0.0
Hello,
J'ai adapté le yml pour prendre en compte le tracker à utiliser lors de la configuration :
ygg-api-download.yml :
--- id: ygg-api name: Ygg API description: Indexeur non officiel pour ygg.re MOVIES / TV language: fr-FR type: private encoding: UTF-8 testlinktorrent: false links: - https://yggapi.eu/ caps: categorymappings: - {id: 2178, cat: Movies/Other, desc: "Films d’animation"} - {id: 2183, cat: Movies, desc: "Films"} - {id: 2145, cat: TV, desc: "Film/Vidéo"} - {id: 2179, cat: TV/Anime, desc: "Séries d’animation / Mangas"} - {id: 2181, cat: TV/Documentary, desc: "Film/Vidéo : Documentaire"} - {id: 2182, cat: TV, desc: "Film/Vidéo : Emission TV"} - {id: 2184, cat: TV, desc: "Séries"} - {id: 2185, cat: TV, desc: "Film/Vidéo : Spectacle"} - {id: 2186, cat: TV/Sport, desc: "Film/Vidéo : Sport"} - {id: 2187, cat: TV/Other, desc: "Film/Vidéo : Vidéo-clips"} - {id: 2139, cat: Audio, desc: "Audio"} - {id: 2147, cat: Audio, desc: "Audio : Karaoké"} - {id: 2148, cat: Audio, desc: "Audio : Musique"} - {id: 2149, cat: Audio/Other, desc: "Audio : Samples"} - {id: 2150, cat: Audio, desc: "Audio : Podcast Radio"} - {id: 2151, cat: Audio/Audiobook, desc: "eBook : Audio"} - {id: 2180, cat: Audio/Video, desc: "Film/Vidéo : Concert"} - {id: 2140, cat: Books, desc: "eBook"} - {id: 2152, cat: Books/EBook, desc: "eBook : Bds"} - {id: 2153, cat: Books/Comics, desc: "eBook : Comics"} - {id: 2154, cat: Books/EBook, desc: "eBook : Livres"} - {id: 2155, cat: Books/Comics, desc: "eBook : Mangas"} - {id: 2156, cat: Books/Mags, desc: "eBook : Presse"} modes: search: [q] tv-search: [q, season, ep] movie-search: [q, year] allowrawsearch: true settings: - name: passkey type: password label: Passkey - name: info_key type: info label: About your passkey default: "You will find your passkey on the <a href=\"https://www.ygg.re/user/account\" target=\"_blank\">YGG</a> account page." - name: sort type: select label: Sort requested from site default: uploaded_at options: uploaded_at: publish_date seeders: seeders downloads: downloads - name: multilang type: checkbox label: Replace MULTi by another language in release name default: false - name: multilanguage type: select label: Replace MULTi by this language default: FRENCH options: FRENCH: FRENCH MULTi.FRENCH: MULTi.FRENCH ENGLISH: ENGLISH MULTi.ENGLISH: MULTi.ENGLISH VOSTFR: VOSTFR MULTi.VOSTFR: MULTi.VOSTFR - name: tracker_domain type: select label: Domaine du tracker à utiliser default: tracker.p2p-world.net options: tracker.p2p-world.net: tracker.p2p-world.net connect.maxp2p.org: connect.maxp2p.org - name: info_downloads type: info label: About missing Downloads default: "If the torrent has no seeder and no leecher then the torrent file may be missing and download may fail." search: paths: - path: torrents response: type: json inputs: $raw: "{{ range .Categories }}&category_id={{.}}{{end}}" q: "{{ .Keywords }}" page: 1 per_page: 100 order_by: "{{ .Config.sort }}" rows: selector: $ missingAttributeEqualsNoResults: true fields: category: selector: category_id title_normal: selector: title title_multilang: text: "{{ .Result.title_normal }}" filters: - name: re_replace args: ["(?i)[\\.](MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))[\\.]", ".{{ .Config.multilanguage }}."] title: text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_normal }}{{ end }}" _id: selector: id details: text: "torrent/{{ .Result._id }}" download: text: "torrent/{{ .Result._id }}/download?passkey={{ .Config.passkey }}&tracker_domain={{ .Config.tracker_domain }}" year: selector: title filters: - name: regexp args: (\b(19|20)\d{2}\b) size: selector: size seeders: selector: seeders leechers: selector: leechers grabs: selector: downloads optional: true default: 0 date: # unix selector: uploaded_at downloadvolumefactor: text: 1 uploadvolumefactor: text: 1 # JSON 1.0.0
Merci pour la contribution, je vais update le gist
Bonjour, je ne sais pas si je suis le seul à avoir le problème, mais depuis le crash de ygg hier, ygg-api ne fonctionne plus sur sonarr au niveau des catégorie
Dans Jackett j'ai dans les logs
2025-06-03 09:20:35 | Warn | Some of the categories provided are unsupported in Ygg API: 2010,2030,2040,2045,2050,2060
Et sur radarr

et quand je clique sur la liste des catégories c'est vide.
Vous avez une idée ?
Bonjour
Il doit y avoir un souci quelque part car il y a des catégories qui n'existent pas dans celles listées (2010, 2020 et 2030) :-)
Bonjour, pensez à enlever le slash à la fin de la ligne 10, je n'ai pas pu rajouter le lien avec
Peut-être également enlever connect.maxp2p.org: connect.maxp2p.org ?
Peut-être également enlever
connect.maxp2p.org: connect.maxp2p.org?
Pourquoi ?
Pourquoi ?
C'est tracker.p2p-world.net qui est utilisé par défaut sur les nouveaux torrents
Pourquoi ?
C'est tracker.p2p-world.net qui est utilisé par défaut sur les nouveaux torrents
Cette fonctionnalité te permet de choisir quel tracker utiliser lors du téléchargement du torrent.
Bonjour, je ne sais pas si je suis le seul à avoir le problème, mais depuis le crash de ygg hier, ygg-api ne fonctionne plus sur sonarr au niveau des catégorie Dans Jackett j'ai dans les logs
2025-06-03 09:20:35 | Warn | Some of the categories provided are unsupported in Ygg API: 2010,2030,2040,2045,2050,2060
Et sur radarr
et quand je clique sur la liste des catégories c'est vide. Vous avez une idée ?
j'ai pas exactement la même erreur que toi mais effectivement depuis hier YGG-API ne fonctionne plus sur Jackett :
System.Exception: Unknown indexer: ygg-api
[v0.22.1967.0] System.Exception: Unknown indexer: ygg-api
at Jackett.Common.Services.IndexerManagerService.GetWebIndexer(String name) in ./Jackett.Common/Services/IndexerManagerService.cs:line 306
at Jackett.Common.Services.IndexerManagerService.GetIndexer(String name) in ./Jackett.Common/Services/IndexerManagerService.cs:line 279
at Jackett.Server.Controllers.RequiresConfiguredIndexer.OnActionExecuting(ActionExecutingContext context) in ./Jackett.Server/Controllers/ResultsController.cs:line 85
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Jackett.Server.Middleware.CustomExceptionHandler.Invoke(HttpContext httpContext) in ./Jackett.Server/Middleware/CustomExceptionHandler.cs:line 26
Bonjour, je ne sais pas si je suis le seul à avoir le problème, mais depuis le crash de ygg hier, ygg-api ne fonctionne plus sur sonarr au niveau des catégorie Dans Jackett j'ai dans les logs
2025-06-03 09:20:35 | Warn | Some of the categories provided are unsupported in Ygg API: 2010,2030,2040,2045,2050,2060
Et sur radarret quand je clique sur la liste des catégories c'est vide. Vous avez une idée ?
j'ai pas exactement la même erreur que toi mais effectivement depuis hier YGG-API ne fonctionne plus sur Jackett :
System.Exception: Unknown indexer: ygg-api
[v0.22.1967.0] System.Exception: Unknown indexer: ygg-api at Jackett.Common.Services.IndexerManagerService.GetWebIndexer(String name) in ./Jackett.Common/Services/IndexerManagerService.cs:line 306 at Jackett.Common.Services.IndexerManagerService.GetIndexer(String name) in ./Jackett.Common/Services/IndexerManagerService.cs:line 279 at Jackett.Server.Controllers.RequiresConfiguredIndexer.OnActionExecuting(ActionExecutingContext context) in ./Jackett.Server/Controllers/ResultsController.cs:line 85 at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope) at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context) at Jackett.Server.Middleware.CustomExceptionHandler.Invoke(HttpContext httpContext) in ./Jackett.Server/Middleware/CustomExceptionHandler.cs:line 26
Le fichier est toujours bien monté dans un volume ?
Perso ça fonctionne nickel. Rien a modifier.
Bonjour, je ne sais pas si je suis le seul à avoir le problème, mais depuis le crash de ygg hier, ygg-api ne fonctionne plus sur sonarr au niveau des catégorie Dans Jackett j'ai dans les logs
2025-06-03 09:20:35 | Warn | Some of the categories provided are unsupported in Ygg API: 2010,2030,2040,2045,2050,2060
Et sur radarret quand je clique sur la liste des catégories c'est vide. Vous avez une idée ?
j'ai pas exactement la même erreur que toi mais effectivement depuis hier YGG-API ne fonctionne plus sur Jackett :
System.Exception: Unknown indexer: ygg-api
[v0.22.1967.0] System.Exception: Unknown indexer: ygg-api at Jackett.Common.Services.IndexerManagerService.GetWebIndexer(String name) in ./Jackett.Common/Services/IndexerManagerService.cs:line 306 at Jackett.Common.Services.IndexerManagerService.GetIndexer(String name) in ./Jackett.Common/Services/IndexerManagerService.cs:line 279 at Jackett.Server.Controllers.RequiresConfiguredIndexer.OnActionExecuting(ActionExecutingContext context) in ./Jackett.Server/Controllers/ResultsController.cs:line 85 at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync() --- End of stack trace from previous location --- at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope) at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope) at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context) at Jackett.Server.Middleware.CustomExceptionHandler.Invoke(HttpContext httpContext) in ./Jackett.Server/Middleware/CustomExceptionHandler.cs:line 26Le fichier est toujours bien monté dans un volume ?
Oui il est toujours au même endroit mais Jackett ne me le propose plus
j'ai tester sur moi j'ai prowlarr aussi et aucun soucis categorie movie. Bizarre que tu ai ça toi
Ça doit être mon instance qui déconne même le yml ne voulait pas se rajouter, je vais essayer de repartir de zéro
il faut bien mettre le fichier download pas magnet.yml donc dans le dossier appdata/prowlarr/definitions tu crée un dossier custom et tu le met dedans.
avec ygg-download.
Je ne suis pas en mesure de télécharger quoi que ce soit. Des idées?
Downloading for release failed (https://yggapi.eu/torrent/1197863/download?passkey=(removed)&tracker_domain=tracker.p2p-world.net): HTTP request failed: [422:UnprocessableEntity] [GET] at [https://yggapi.eu/torrent/1197863/download?passkey=(removed)&tracker_domain=tracker.p2p-world.net]
NzbDrone.Common.Http.HttpException: HTTP request failed: [422:UnprocessableEntity] [GET] at [https://yggapi.eu/torrent/1197863/download?passkey=(removed)&tracker_domain=tracker.p2p-world.net]
at NzbDrone.Common.Http.HttpClient.ExecuteAsync(HttpRequest request) in ./Prowlarr.Common/Http/HttpClient.cs:line 128
at NzbDrone.Core.Indexers.IndexerHttpClient.ExecuteProxiedAsync(HttpRequest request, ProviderDefinition definition) in ./Prowlarr.Core/Indexers/IndexerHttpClient.cs:line 43
at NzbDrone.Core.Indexers.HttpIndexerBase`1.Download(Uri link) in ./Prowlarr.Core/Indexers/HttpIndexerBase.cs:line 251
{"detail":[{"type":"string_too_long","loc":["query","passkey"],"msg":"String should have at most 32 characters","input":"AelA9088BIGeo3Ivo9ZyaUVZsEbfS20j ","ctx":{"max_length":32}}]}
Tu as bien mis le fichier au bon endroit et ajouter l'indexeur YGGAPI ?
oui il faut juste mettre le fichier download yml pas le magnet



Tu es bien sur d'avoir supprimé l'ancien yaml puis redémarré prowlarr?
PS: pas très malin d'avoir mis un screen avec ta passkey, qui en plus contient un espace à la fin ... (qui je pense est le problème au final)