{"id":27157126,"url":"https://github.com/remscodes/ngx-renault-api-client","last_synced_at":"2026-05-05T09:31:40.923Z","repository":{"id":207838709,"uuid":"720222179","full_name":"remscodes/ngx-renault-api-client","owner":"remscodes","description":"Unofficial Angular http client","archived":false,"fork":false,"pushed_at":"2024-07-09T21:01:38.000Z","size":1395,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-26T16:24:20.116Z","etag":null,"topics":["angular","http-client","renault-api"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/remscodes.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-17T21:21:04.000Z","updated_at":"2024-07-09T21:01:42.000Z","dependencies_parsed_at":"2024-01-11T12:41:18.751Z","dependency_job_id":"b71cf60c-0204-4b7b-b2e9-4e5185e2b2cf","html_url":"https://github.com/remscodes/ngx-renault-api-client","commit_stats":{"total_commits":85,"total_committers":2,"mean_commits":42.5,"dds":"0.42352941176470593","last_synced_commit":"fd70e8ec339de7ae5d5d7b69850c49fbff1d51a9"},"previous_names":["remscodes/ngx-renault-api-client"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/remscodes/ngx-renault-api-client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remscodes%2Fngx-renault-api-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remscodes%2Fngx-renault-api-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remscodes%2Fngx-renault-api-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remscodes%2Fngx-renault-api-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/remscodes","download_url":"https://codeload.github.com/remscodes/ngx-renault-api-client/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remscodes%2Fngx-renault-api-client/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32643526,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-04T10:08:07.713Z","status":"online","status_checked_at":"2026-05-05T02:00:06.033Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["angular","http-client","renault-api"],"created_at":"2025-04-08T20:53:37.811Z","updated_at":"2026-05-05T09:31:40.903Z","avatar_url":"https://github.com/remscodes.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n    \u003ch1\u003eAngular Renault API Client\u003c/h1\u003e\n    \u003cp\u003eAngular http client using Renault API\u003c/p\u003e\n\u003c/div\u003e \n\n\u003cdiv align=\"center\"\u003e\n\n[![github ci](https://img.shields.io/github/actions/workflow/status/remscodes/ngx-renault-api-client/npm-ci.yml.svg?logo=github\u0026label=CI\u0026style=for-the-badge)](https://github.com/remscodes/ngx-renault-api-client/actions/workflows/npm-ci.yml)\n[![npm version](https://img.shields.io/npm/v/@remscodes/ngx-renault-api-client.svg?style=for-the-badge\u0026logo=npm)](https://www.npmjs.org/package/@remscodes/ngx-renault-api-client)\n[![bundle size](https://img.shields.io/bundlephobia/minzip/@remscodes/ngx-renault-api-client.svg?style=for-the-badge)](https://bundlephobia.com/package/@remscodes/ngx-renault-api-client)\n[![license](https://img.shields.io/github/license/remscodes/ngx-renault-api-client.svg?style=for-the-badge)](LICENSE)\n\n\u003c/div\u003e\n\n## Installation\n\n```shell\nnpm install @remscodes/ngx-renault-api-client\n```\n\n## Usage\n\n```ts\n// app.config.ts\nimport { ApplicationConfig } from '@angular/core';\nimport { provideRenaultClient } from '@remscodes/ngx-renault-api-client';\n\nexport const appConfig: ApplicationConfig = {\n  providers: [provideRenaultClient()],\n};\n```\n\n```ts\n// app.component.ts\nimport { Component, DestroyRef, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { NgxGigyaClient, NgxKamereonClient, NgxRenaultSession } from '@remscodes/ngx-renault-api-client';\nimport { concatMap } from 'rxjs';\n\n@Component({\n  selector: 'app-root',\n  templateUrl: './app.component.html',\n  styleUrl: './app.component.css',\n  standalone: true,\n  imports: [],\n})\nexport class AppComponent {\n\n  private gigya = inject(NgxGigyaClient);\n  private kamereon = inject(NgxKamereonClient);\n  private session = inject(NgxRenaultSession);\n  private destroyRef = inject(DestroyRef);\n\n  // (1) Login to gigya service\n  login(): void {\n    // will store automatically `gigyaToken` into session.\n    this.gigya.login('myLogin', 'myPassword')\n      .pipe(\n        // will store automatically `personId` into session\n        concatMap(() =\u003e this.gigya.getAccountInfo()),\n        // will store automatically `token` into session\n        concatMap(() =\u003e this.gigya.getJwt()),\n        takeUntilDestroyed(this.destroyRef),\n      )\n      .subscribe({\n        next: () =\u003e console.info('Logged in.'),\n      });\n  }\n\n  // (2) Get user's accounts\n  getAccounts(): void {\n    this.kamereon.getPerson()\n      .pipe(takeUntilDestroyed(this.destroyRef))\n      .subscribe({\n        next: ({ accounts }) =\u003e {\n          // Select the accountId you want\n          this.session.accountId = accounts[0].accountId;\n        },\n      });\n  }\n\n  // (3) Get account's vehicles\n  getVehicles(): void {\n    this.kamereon.getAccountVehicles()\n      .pipe(takeUntilDestroyed(this.destroyRef))\n      .subscribe({\n        next: ({ vehicleLinks }) =\u003e {\n          // Select the vin you want \n          this.session.vin = vehicleLinks[0].vin;\n        },\n      });\n  }\n\n  // (4) Get current battery status\n  getBatteryStatus(): void {\n    this.kamereon.readBatteryStatus()\n      .pipe(takeUntilDestroyed(this.destroyRef))\n      .subscribe({\n        next: (batteryStatus) =\u003e {\n          // handle battery status\n        },\n      });\n  }\n\n  // (5) Invalidate the gigya token (stored in session)\n  logout(): void {\n    this.gigya.logout()\n      .pipe(takeUntilDestroyed(this.destroyRef))\n      .subscribe({\n        next: () =\u003e console.info('Logged out.'),\n      });\n  }\n}\n```\n\n### Examples\n\n- [With standalone component as root](./projects/ngx-renault-api-client-demo)\n- [With module app as root](./projects/ngx-renault-api-client-demo-legacy)\n\n## Disclaimer\n\nThis project is not affiliated with, endorsed by, or connected to Renault. I accept no responsibility for any consequences, intentional or accidental, resulting from interaction with the Renault's API using this project.\n\n## Credit\n\nResources API based on [@remscodes/renault-api](https://github.com/remscodes/renault-api#credit).\n\n## License\n\n[MIT](LICENSE) © Rémy Abitbol.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fremscodes%2Fngx-renault-api-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fremscodes%2Fngx-renault-api-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fremscodes%2Fngx-renault-api-client/lists"}