Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

restyped-axios

rawrmaan6kMIT2.0.0TypeScript support: included

Axios typings for consuming RESTyped APIs

readme

RESTyped Axios

Axios typings for consuming RESTyped APIs

Usage

npm install restyped-axios

Note: >=2.0.0 supports TypeScript 2.8 and higher. Use a lower version if you need TypeScript 2.4-2.7 support.

It's just like normal axios, except you'll need to provide a RESTyped API definition file for the API you want to use.

import axios from 'restyped-axios'
import {GiphyAPI} from 'restyped-giphy-api'

const client = axios.create<GiphyAPI>({baseURL: 'http://api.giphy.com/v1'})

// You'll get a compile error if you call an invalid route or use incorrect query params. Yay!
client.request({
  url: '/gifs/trending',
  params: {
    api_key: 'Qr5fw...'
  }
}).then(...)

Special cases

Use the client.request({url: ..., params: ...}) syntax instead of client.get in order to have your params typechecked. See above.

Routes with params in their paths (e.g. /posts/:id/like)

Explicitly declare the canonical route in angle brackets to avoid an invalid route error.

client.post<'/posts/:id/like'>('/posts/3/like')