hafas-rest-api

    3.7.0 • Public • Published

    hafas-rest-api

    Expose a hafas-client@5 instance as an HTTP REST API.

    npm version build status ISC-licensed support Jannis via GitHub Sponsors chat with Jannis on Twitter

    Installing

    npm install hafas-rest-api

    Usage

    const createHafas = require('hafas-client')
    const dbProfile = require('hafas-client/p/db')
    
    const createApi = require('.')
    
    const config = {
    	hostname: 'example.org',
    	name: 'my-hafas-rest-api',
    	homepage: 'https://github.com/someone/my-hafas-rest-api',
    	version: '1.0.0',
    	aboutPage: false
    }
    
    const hafas = createHafas(dbProfile, 'my-hafas-rest-api')
    const api = createApi(hafas, config)
    
    api.listen(3000, (err) => {
    	if (err) console.error(err)
    })

    config keys

    key description mandatory? default value
    hostname The public hostname of the API. ✔︎
    name The name of the API. Used for the X-Powered-By header and the about page. ✔︎
    description Used for the about page. ✔︎ (with aboutPage: true)
    docsLink Used for the about page. ✔︎ (with aboutPage: true)
    cors Enable CORS? true
    etags Express config for ETag headers weak
    handleErrors Handle errors by sending 5** codes and JSON. true
    logging Log requests using pino? false
    healthCheck A function that returning Promises that resolve with true (for healthy) or false.
    version Used for the X-Powered-By and X-API-Version headers.
    homepage Used for the X-Powered-By header.
    aboutPage Enable the about page on GET /? true
    openapiSpec Generate and serve an OpenAPI spec of the API? false
    addHafasOpts Computes additional hafas-client opts. (opt, hafasClientMethod, httpReq) => additionaOpts
    modifyRoutes Extend or modify the default routes. routes => routes

    Pro Tip: Use hafas-client-health-check for config.healthCheck.

    Contributing

    If you have a question or have difficulties using hafas-rest-api, please double-check your code and setup first. If you think you have found a bug or want to propose a feature, refer to the issues page.

    Install

    npm i hafas-rest-api

    DownloadsWeekly Downloads

    19

    Version

    3.7.0

    License

    ISC

    Unpacked Size

    62.4 kB

    Total Files

    29

    Last publish

    Collaborators

    • derhuerst