{"id":46840224,"url":"https://github.com/maelgangloff/sfrmobile-api","last_synced_at":"2026-03-10T12:39:55.509Z","repository":{"id":57357377,"uuid":"458915556","full_name":"maelgangloff/sfrmobile-api","owner":"maelgangloff","description":"Support non-officiel de l'API mobile du FAI français SFR/RED","archived":false,"fork":false,"pushed_at":"2022-02-18T19:21:13.000Z","size":117,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-09T15:53:09.204Z","etag":null,"topics":["consommation","data","giga","mobile","phone","sfr"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/sfrmobile-api","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maelgangloff.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-02-13T19:53:51.000Z","updated_at":"2024-02-02T22:05:42.000Z","dependencies_parsed_at":"2022-09-26T16:32:25.683Z","dependency_job_id":null,"html_url":"https://github.com/maelgangloff/sfrmobile-api","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/maelgangloff/sfrmobile-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maelgangloff%2Fsfrmobile-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maelgangloff%2Fsfrmobile-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maelgangloff%2Fsfrmobile-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maelgangloff%2Fsfrmobile-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maelgangloff","download_url":"https://codeload.github.com/maelgangloff/sfrmobile-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maelgangloff%2Fsfrmobile-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30333811,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T05:25:20.737Z","status":"ssl_error","status_checked_at":"2026-03-10T05:25:17.430Z","response_time":106,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["consommation","data","giga","mobile","phone","sfr"],"created_at":"2026-03-10T12:39:54.832Z","updated_at":"2026-03-10T12:39:55.498Z","avatar_url":"https://github.com/maelgangloff.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca name=\"SfrMobile\"\u003e\u003c/a\u003e\n\n## SfrMobile\nSupport non-officiel de l'API mobile de SFR/RED.\nLes identifiants utilisés sont les mêmes que pour se connecter sur le site de l'opérateur.\n\n**Kind**: global class  \n\n* [SfrMobile](#SfrMobile)\n    * [new SfrMobile(casauthenticationtoken)](#new_SfrMobile_new)\n    * _instance_\n        * [.getConso(line)](#SfrMobile+getConso) ⇒ \u003ccode\u003ePromise.\u0026lt;Consumption\u0026gt;\u003c/code\u003e\n        * [.getConsoNationale(line)](#SfrMobile+getConsoNationale) ⇒ \u003ccode\u003ePromise.\u0026lt;ConsumptionNationale\u0026gt;\u003c/code\u003e\n        * [.getFacturationMobile(line, duration)](#SfrMobile+getFacturationMobile) ⇒ \u003ccode\u003ePromise.\u0026lt;Facturation\u0026gt;\u003c/code\u003e\n        * [.downloadFactureMobile(line, numeroFacture, fadet)](#SfrMobile+downloadFactureMobile) ⇒ \u003ccode\u003ePromise.\u0026lt;Stream\u0026gt;\u003c/code\u003e\n        * [.getFacturationFixe(line, duration)](#SfrMobile+getFacturationFixe) ⇒ \u003ccode\u003ePromise.\u0026lt;FacturationFixe\u0026gt;\u003c/code\u003e\n        * [.downloadFactureFixe(line, idFact)](#SfrMobile+downloadFactureFixe) ⇒ \u003ccode\u003ePromise.\u0026lt;Stream\u0026gt;\u003c/code\u003e\n        * [.getInfosClientFixe(line)](#SfrMobile+getInfosClientFixe) ⇒ \u003ccode\u003ePromise.\u0026lt;InfosClientFixe\u0026gt;\u003c/code\u003e\n        * [.getFicheMonCompte()](#SfrMobile+getFicheMonCompte) ⇒ \u003ccode\u003ePromise.\u0026lt;FicheMonCompte\u0026gt;\u003c/code\u003e\n        * [.getDashboard(line)](#SfrMobile+getDashboard) ⇒ \u003ccode\u003ePromise.\u0026lt;Dashboard\u0026gt;\u003c/code\u003e\n        * [.getInfosPersonnelles(line)](#SfrMobile+getInfosPersonnelles) ⇒ \u003ccode\u003ePromise.\u0026lt;InfoPersonnelles\u0026gt;\u003c/code\u003e\n        * [.getNotificationsCount()](#SfrMobile+getNotificationsCount) ⇒ \u003ccode\u003ePromise.\u0026lt;NotificationsCount\u0026gt;\u003c/code\u003e\n        * [.getNotifications()](#SfrMobile+getNotifications) ⇒ \u003ccode\u003ePromise.\u0026lt;{notifications: Array.\u0026lt;Notification\u0026gt;}\u0026gt;\u003c/code\u003e\n        * [.getEquipements(line, universe)](#SfrMobile+getEquipements) ⇒ \u003ccode\u003ePromise.\u0026lt;Equipement\u0026gt;\u003c/code\u003e\n        * [.getOptionDetail(line, universe, environment, option)](#SfrMobile+getOptionDetail) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionDetail\u0026gt;\u003c/code\u003e\n        * [.getOptionsCatalog(line)](#SfrMobile+getOptionsCatalog) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionsCatalog\u0026gt;\u003c/code\u003e\n        * [.getOptionsCatalogDetail(line)](#SfrMobile+getOptionsCatalogDetail) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionsCatalogDetail\u0026gt;\u003c/code\u003e\n        * [.getOptions(line, category)](#SfrMobile+getOptions) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionsList\u0026gt;\u003c/code\u003e\n        * [.getEquipementDetail(line, optionCode, universe)](#SfrMobile+getEquipementDetail) ⇒ \u003ccode\u003ePromise.\u0026lt;EquipementDetail\u0026gt;\u003c/code\u003e\n        * [.getParc(line, universe, environment)](#SfrMobile+getParc) ⇒ \u003ccode\u003ePromise.\u0026lt;Parc\u0026gt;\u003c/code\u003e\n        * [.getPaiementTiersAchatsAbonnements(line)](#SfrMobile+getPaiementTiersAchatsAbonnements) ⇒ \u003ccode\u003ePromise.\u0026lt;AchatsAbonnements\u0026gt;\u003c/code\u003e\n        * [.getPaiementTiersOptionsAchat(line)](#SfrMobile+getPaiementTiersOptionsAchat) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionsAchat\u0026gt;\u003c/code\u003e\n        * [.postPaiementTiersOptionsAchat(selectedLine, otp, data)](#SfrMobile+postPaiementTiersOptionsAchat)\n        * [.getOTPSMS(line)](#SfrMobile+getOTPSMS) ⇒ \u003ccode\u003ePromise.\u0026lt;OTPSMSResponse\u0026gt;\u003c/code\u003e\n        * [.getOffreAMES(line)](#SfrMobile+getOffreAMES) ⇒ \u003ccode\u003ePromise.\u0026lt;OffreAmes\u0026gt;\u003c/code\u003e\n    * _static_\n        * [.login(username, password, duration, universe)](#SfrMobile.login) ⇒ \u003ccode\u003ePromise.\u0026lt;LoginResponse\u0026gt;\u003c/code\u003e\n        * [.verifyUsername(username, universe)](#SfrMobile.verifyUsername) ⇒ \u003ccode\u003ePromise.\u0026lt;VerifyUsernameResponse\u0026gt;\u003c/code\u003e\n        * [.getTerminalInfoIMEI(imei)](#SfrMobile.getTerminalInfoIMEI) ⇒ \u003ccode\u003ePromise.\u0026lt;InfosTerminalIMEI\u0026gt;\u003c/code\u003e\n        * [.getTerminalInfo(id, type)](#SfrMobile.getTerminalInfo) ⇒ \u003ccode\u003ePromise.\u0026lt;InfosTerminal\u0026gt;\u003c/code\u003e\n        * [.getTerminauxInfo(ids, type)](#SfrMobile.getTerminauxInfo) ⇒ \u003ccode\u003ePromise.\u0026lt;Array.\u0026lt;InfosTerminal\u0026gt;\u0026gt;\u003c/code\u003e\n\n\u003ca name=\"new_SfrMobile_new\"\u003e\u003c/a\u003e\n\n### new SfrMobile(casauthenticationtoken)\n\n| Param | Type | Description |\n| --- | --- | --- |\n| casauthenticationtoken | \u003ccode\u003estring\u003c/code\u003e | Jeton temporaire d'authentification |\n\n**Example**  \n```js\nconst { SfrMobile } = require('sfrmobile-api')\n\nSfrMobile.login(username, password).then(({ token }) =\u003e {\n   const user = new SfrMobile(token)\n   // Votre code\n})\n```\n\u003ca name=\"SfrMobile+getConso\"\u003e\u003c/a\u003e\n\n### sfrMobile.getConso(line) ⇒ \u003ccode\u003ePromise.\u0026lt;Consumption\u0026gt;\u003c/code\u003e\nConsommation générale de la ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+getConsoNationale\"\u003e\u003c/a\u003e\n\n### sfrMobile.getConsoNationale(line) ⇒ \u003ccode\u003ePromise.\u0026lt;ConsumptionNationale\u0026gt;\u003c/code\u003e\nHistorique de la consommation sur le territoire national\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Description |\n| --- | --- |\n| line | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+getFacturationMobile\"\u003e\u003c/a\u003e\n\n### sfrMobile.getFacturationMobile(line, duration) ⇒ \u003ccode\u003ePromise.\u0026lt;Facturation\u0026gt;\u003c/code\u003e\nHistorique de facturation d'une ligne mobile\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Default | Description |\n| --- | --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e |  | MSISDN de la ligne mobile à sélectionner |\n| duration | \u003ccode\u003enumber\u003c/code\u003e | \u003ccode\u003e6\u003c/code\u003e | Nombre de périodes de facturation (6,12,18,24) |\n\n\u003ca name=\"SfrMobile+downloadFactureMobile\"\u003e\u003c/a\u003e\n\n### sfrMobile.downloadFactureMobile(line, numeroFacture, fadet) ⇒ \u003ccode\u003ePromise.\u0026lt;Stream\u0026gt;\u003c/code\u003e\nTélécharger la facture d'une ligne mobile\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Default | Description |\n| --- | --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e |  | MSISDN de la ligne mobile à sélectionner |\n| numeroFacture | \u003ccode\u003estring\u003c/code\u003e |  | Identifiant de la facture de la ligne mobile |\n| fadet | \u003ccode\u003eboolean\u003c/code\u003e | \u003ccode\u003efalse\u003c/code\u003e | Facture détaillée |\n\n\u003ca name=\"SfrMobile+getFacturationFixe\"\u003e\u003c/a\u003e\n\n### sfrMobile.getFacturationFixe(line, duration) ⇒ \u003ccode\u003ePromise.\u0026lt;FacturationFixe\u0026gt;\u003c/code\u003e\nHistorique de facturation d'une ligne fixe\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Default | Description |\n| --- | --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e |  | NDI de la ligne fixe |\n| duration | \u003ccode\u003enumber\u003c/code\u003e | \u003ccode\u003e6\u003c/code\u003e | Nombre de périodes de facturation (6,12,18,24) |\n\n\u003ca name=\"SfrMobile+downloadFactureFixe\"\u003e\u003c/a\u003e\n\n### sfrMobile.downloadFactureFixe(line, idFact) ⇒ \u003ccode\u003ePromise.\u0026lt;Stream\u0026gt;\u003c/code\u003e\nTélécharger la facture d'une ligne fixe\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | NDI de la ligne fixe |\n| idFact | \u003ccode\u003estring\u003c/code\u003e | Identifiant de la facture de la ligne fixe |\n\n\u003ca name=\"SfrMobile+getInfosClientFixe\"\u003e\u003c/a\u003e\n\n### sfrMobile.getInfosClientFixe(line) ⇒ \u003ccode\u003ePromise.\u0026lt;InfosClientFixe\u0026gt;\u003c/code\u003e\nDétails de la ligne fixe\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e \\| \u003ccode\u003eundefined\u003c/code\u003e | NDI de la ligne fixe |\n\n\u003ca name=\"SfrMobile+getFicheMonCompte\"\u003e\u003c/a\u003e\n\n### sfrMobile.getFicheMonCompte() ⇒ \u003ccode\u003ePromise.\u0026lt;FicheMonCompte\u0026gt;\u003c/code\u003e\nFiche descriptive du compte de l'utilisateur courant\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\u003ca name=\"SfrMobile+getDashboard\"\u003e\u003c/a\u003e\n\n### sfrMobile.getDashboard(line) ⇒ \u003ccode\u003ePromise.\u0026lt;Dashboard\u0026gt;\u003c/code\u003e\nInformations générales de la ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Description |\n| --- | --- |\n| line | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+getInfosPersonnelles\"\u003e\u003c/a\u003e\n\n### sfrMobile.getInfosPersonnelles(line) ⇒ \u003ccode\u003ePromise.\u0026lt;InfoPersonnelles\u0026gt;\u003c/code\u003e\nInformations personnelles concernant la ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Description |\n| --- | --- |\n| line | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+getNotificationsCount\"\u003e\u003c/a\u003e\n\n### sfrMobile.getNotificationsCount() ⇒ \u003ccode\u003ePromise.\u0026lt;NotificationsCount\u0026gt;\u003c/code\u003e\nNombre de notifications de l'utilisateur\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\u003ca name=\"SfrMobile+getNotifications\"\u003e\u003c/a\u003e\n\n### sfrMobile.getNotifications() ⇒ \u003ccode\u003ePromise.\u0026lt;{notifications: Array.\u0026lt;Notification\u0026gt;}\u0026gt;\u003c/code\u003e\nLister les notifications de l'utilisateur\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\u003ca name=\"SfrMobile+getEquipements\"\u003e\u003c/a\u003e\n\n### sfrMobile.getEquipements(line, universe) ⇒ \u003ccode\u003ePromise.\u0026lt;Equipement\u0026gt;\u003c/code\u003e\nListe des équipements mis à disposition pour une ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n| universe | \u003ccode\u003eUniverse\u003c/code\u003e \\| \u003ccode\u003estring\u003c/code\u003e | SFR/RED |\n\n\u003ca name=\"SfrMobile+getOptionDetail\"\u003e\u003c/a\u003e\n\n### sfrMobile.getOptionDetail(line, universe, environment, option) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionDetail\u0026gt;\u003c/code\u003e\nDétail d'une option souscrite\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n| universe | \u003ccode\u003eUniverse\u003c/code\u003e \\| \u003ccode\u003estring\u003c/code\u003e | SFR/RED |\n| environment | \u003ccode\u003eEnvironment\u003c/code\u003e \\| \u003ccode\u003estring\u003c/code\u003e | Type de ligne |\n| option | \u003ccode\u003estring\u003c/code\u003e | Identifiant de l'option |\n\n\u003ca name=\"SfrMobile+getOptionsCatalog\"\u003e\u003c/a\u003e\n\n### sfrMobile.getOptionsCatalog(line) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionsCatalog\u0026gt;\u003c/code\u003e\nCatalogue des catégories d'options disponibles pour une ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+getOptionsCatalogDetail\"\u003e\u003c/a\u003e\n\n### sfrMobile.getOptionsCatalogDetail(line) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionsCatalogDetail\u0026gt;\u003c/code\u003e\nCatalogue détaillé des catégories d'options disponibles pour une ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+getOptions\"\u003e\u003c/a\u003e\n\n### sfrMobile.getOptions(line, category) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionsList\u0026gt;\u003c/code\u003e\nLister les options disponibles dans une catégorie\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n| category | \u003ccode\u003estring\u003c/code\u003e | Catégorie d'option |\n\n\u003ca name=\"SfrMobile+getEquipementDetail\"\u003e\u003c/a\u003e\n\n### sfrMobile.getEquipementDetail(line, optionCode, universe) ⇒ \u003ccode\u003ePromise.\u0026lt;EquipementDetail\u0026gt;\u003c/code\u003e\nObtenir la description complète de l'équipement\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n| optionCode | \u003ccode\u003estring\u003c/code\u003e | Identifiant de l'option d'équipement |\n| universe | \u003ccode\u003eUniverse\u003c/code\u003e \\| \u003ccode\u003estring\u003c/code\u003e | SFR/RED |\n\n\u003ca name=\"SfrMobile+getParc\"\u003e\u003c/a\u003e\n\n### sfrMobile.getParc(line, universe, environment) ⇒ \u003ccode\u003ePromise.\u0026lt;Parc\u0026gt;\u003c/code\u003e\nDétails de l'offre d'une ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| line | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n| universe | \u003ccode\u003eUniverse\u003c/code\u003e \\| \u003ccode\u003estring\u003c/code\u003e | SFR/RED |\n| environment | \u003ccode\u003eEnvironment\u003c/code\u003e \\| \u003ccode\u003estring\u003c/code\u003e | Type de ligne |\n\n\u003ca name=\"SfrMobile+getPaiementTiersAchatsAbonnements\"\u003e\u003c/a\u003e\n\n### sfrMobile.getPaiementTiersAchatsAbonnements(line) ⇒ \u003ccode\u003ePromise.\u0026lt;AchatsAbonnements\u0026gt;\u003c/code\u003e\nListe des achats et abonnements (hors forfait) sur la ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Description |\n| --- | --- |\n| line | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+getPaiementTiersOptionsAchat\"\u003e\u003c/a\u003e\n\n### sfrMobile.getPaiementTiersOptionsAchat(line) ⇒ \u003ccode\u003ePromise.\u0026lt;OptionsAchat\u0026gt;\u003c/code\u003e\nDroits d'achat sur la ligne (Stores, jeux, ...)\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Description |\n| --- | --- |\n| line | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+postPaiementTiersOptionsAchat\"\u003e\u003c/a\u003e\n\n### sfrMobile.postPaiementTiersOptionsAchat(selectedLine, otp, data)\nMettre à jour les droits d'achat sur la ligne\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| selectedLine | \u003ccode\u003estring\u003c/code\u003e | MSISDN de la ligne à sélectionner |\n| otp | \u003ccode\u003estring\u003c/code\u003e | Code à usage unique obtenu avec getOTPSMS() |\n| data | \u003ccode\u003eOptionsAchat\u003c/code\u003e | Droits d'achats à permuter |\n\n\u003ca name=\"SfrMobile+getOTPSMS\"\u003e\u003c/a\u003e\n\n### sfrMobile.getOTPSMS(line) ⇒ \u003ccode\u003ePromise.\u0026lt;OTPSMSResponse\u0026gt;\u003c/code\u003e\nObtenir un code à usage unique pour effectuer une opération\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Description |\n| --- | --- |\n| line | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile+getOffreAMES\"\u003e\u003c/a\u003e\n\n### sfrMobile.getOffreAMES(line) ⇒ \u003ccode\u003ePromise.\u0026lt;OffreAmes\u0026gt;\u003c/code\u003e\nInformations sur les remises Multi-Pack\n\n**Kind**: instance method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Description |\n| --- | --- |\n| line | MSISDN de la ligne à sélectionner |\n\n\u003ca name=\"SfrMobile.login\"\u003e\u003c/a\u003e\n\n### SfrMobile.login(username, password, duration, universe) ⇒ \u003ccode\u003ePromise.\u0026lt;LoginResponse\u0026gt;\u003c/code\u003e\nObtenir un jeton d'authentification auprès du CAS de SFR\n\n**Kind**: static method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Default | Description |\n| --- | --- | --- | --- |\n| username | \u003ccode\u003estring\u003c/code\u003e |  | Identifiant du compte |\n| password | \u003ccode\u003estring\u003c/code\u003e |  | Mot de passe du compte |\n| duration | \u003ccode\u003enumber\u003c/code\u003e | \u003ccode\u003e86400\u003c/code\u003e | Durée de validité du jeton demandé en secondes |\n| universe | \u003ccode\u003eUniverse\u003c/code\u003e |  | SFR/RED |\n\n\u003ca name=\"SfrMobile.verifyUsername\"\u003e\u003c/a\u003e\n\n### SfrMobile.verifyUsername(username, universe) ⇒ \u003ccode\u003ePromise.\u0026lt;VerifyUsernameResponse\u0026gt;\u003c/code\u003e\nTester la validité d'un nom d'utilisateur\n\n**Kind**: static method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| username | \u003ccode\u003estring\u003c/code\u003e | Nom d'utilisateur à tester |\n| universe | \u003ccode\u003eUniverse\u003c/code\u003e | SFR/RED |\n\n\u003ca name=\"SfrMobile.getTerminalInfoIMEI\"\u003e\u003c/a\u003e\n\n### SfrMobile.getTerminalInfoIMEI(imei) ⇒ \u003ccode\u003ePromise.\u0026lt;InfosTerminalIMEI\u0026gt;\u003c/code\u003e\nDescription du terminal associé à un IMEI\n\n**Kind**: static method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| imei | \u003ccode\u003estring\u003c/code\u003e | Identifiant du terminal mobile |\n\n\u003ca name=\"SfrMobile.getTerminalInfo\"\u003e\u003c/a\u003e\n\n### SfrMobile.getTerminalInfo(id, type) ⇒ \u003ccode\u003ePromise.\u0026lt;InfosTerminal\u0026gt;\u003c/code\u003e\nDescription du terminal associé à un identifiant\n\n**Kind**: static method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| id | \u003ccode\u003estring\u003c/code\u003e | Identifiant |\n| type | \u003ccode\u003e\u0026#x27;BACARAT\u0026#x27;\u003c/code\u003e \\| \u003ccode\u003e\u0026#x27;TAC\u0026#x27;\u003c/code\u003e | Type d'identifiant |\n\n\u003ca name=\"SfrMobile.getTerminauxInfo\"\u003e\u003c/a\u003e\n\n### SfrMobile.getTerminauxInfo(ids, type) ⇒ \u003ccode\u003ePromise.\u0026lt;Array.\u0026lt;InfosTerminal\u0026gt;\u0026gt;\u003c/code\u003e\nDescription des terminaux associés à leur identifiant\n\n**Kind**: static method of [\u003ccode\u003eSfrMobile\u003c/code\u003e](#SfrMobile)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| ids | \u003ccode\u003eArray.\u0026lt;string\u0026gt;\u003c/code\u003e | Identifiants |\n| type | \u003ccode\u003e\u0026#x27;BACARAT\u0026#x27;\u003c/code\u003e \\| \u003ccode\u003e\u0026#x27;TAC\u0026#x27;\u003c/code\u003e | Type d'identifiant |\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaelgangloff%2Fsfrmobile-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaelgangloff%2Fsfrmobile-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaelgangloff%2Fsfrmobile-api/lists"}