Skip to content
This repository was archived by the owner on Dec 3, 2025. It is now read-only.

Repository files navigation

NPM versionBuild StatusCode coverageDependenciesDev dependencies

@reactway/api-builder

An easy api client builder for applications with identity.

Features

  • API builder is ready for SPA development
  • OAuth identity mechanism included

Get started

$ npm install @reactway/api-builder

To start using api builder first it needs to make an ApiConfiguration with structure (host field is required). Then initiate class with created configuration.

interfaceApiConfiguration{host: string;path?: string;defaultHeaders?: {[index: string]: string};defaultAuthRequired?: boolean;identity?: IdentityMechanism;defaultQueryParams?: QueryParams;requestQueueLimit?: number;}constapiConfiguration: ApiConfiguration={host: "https://example.com"};constApiClient=newApiBuilder(apiConfiguration);

To make request you have create an ApiRequest typed object or arrow function if you want to pass parameters. method and requestPath fields are required for ApiRequest.

constgetExample: ApiRequest={method: HttpMethods.GETrequestPath: PATH_GET};constgetExample=(id: number): ApiRequest=>{return{method: HttpMethods.GET,requestPath: `/${id}`};};

Only http(s) method GET does not take body param. Rest of methods takes passed typed body. To pass typed body to a request here is an example.

interfacePerson{name: string;surname: string;}constgetExample=awaitapiBuilder.post<Person>({requestPath: "/post",body: {name: "John",surname: "Snow"}});

Also you can pass QueryParams.

typeQueryParams={[key: string]: string|number|Array<string|number>};constgetExample: ApiRequest={method: HttpMethods.GETrequestPath: PATH_GET,queryParams: {page: 2}};

API

WIP

Documentation

WIP

License

Released under the MIT license.

About

An easy api client builder for applications with identity.

Topics

Resources

Stars

0 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages