1.0.0-beta.77 • Published 7 months ago

@publicodes/api v1.0.0-beta.77

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

Publicodes API

Ce package vous permet de créer une API REST, qui suit les spécifications OpenAPI 3.0, à partir de vos règles Publicodes.

Il consiste en un middleware Koa qui ajoute des routes à votre router :

  • POST /evaluate Évalue une ou plusieurs expressions avec une situation donnée
  • GET /rules Retourne la liste de toutes vos règles
  • GET /rules/{rule} Retourne une règle spécifique

Installation

npm install @publicodes/api
# or
yarn add @publicodes/api

Utilisation

import Router from '@koa/router'
import Koa from 'koa'
import Engine from 'publicodes'
import { koaMiddleware as publicodesAPI } from '@publicodes/api'

const app = new Koa()
const router = new Router()

// Create middleware with your Engine
const apiRoutes = publicodesAPI(new Engine('coucou: 0'))

// Basic routes usage (/evaluate, /rules, etc.)
router.use(apiRoutes)

// Or use with specific route prefix (/v1/evaluate, /v1/rules, etc.)
router.use('/v1', apiRoutes)

app.use(router.routes()).listen(3000)

// ...

Un fichier d'exemple complet se trouve dans les sources si besoin : example.ts.

Documentation

Projets phares

1.0.0-beta.77

7 months ago

1.0.0-beta.75

7 months ago

1.0.0-beta.76

7 months ago

1.0.0-beta.73

8 months ago

1.0.0-beta.74

8 months ago

1.0.0-beta.71

10 months ago

1.0.0-beta.72

8 months ago

1.0.0-beta.70

11 months ago

1.0.0-beta.67

1 year ago

1.0.0-beta.68

1 year ago

1.0.0-beta.69

1 year ago

1.0.0-beta.66

1 year ago

1.0.0-beta.64

1 year ago

1.0.0-beta.65

1 year ago

1.0.0-beta.62

1 year ago

1.0.0-beta.63

1 year ago

1.0.0-beta.60

2 years ago

1.0.0-beta.61

1 year ago

1.0.0-beta.55

2 years ago

1.0.0-beta.56

2 years ago

1.0.0-beta.59

2 years ago

1.0.0-beta.57

2 years ago

1.0.0-beta.58

2 years ago

1.0.0-beta.53

2 years ago

1.0.0-beta.54

2 years ago

1.0.0-beta.51

2 years ago

1.0.0-beta.52

2 years ago

1.0.0-beta.50

2 years ago

1.0.0-beta.48

2 years ago

1.0.0-beta.49

2 years ago

1.0.0-beta.44

2 years ago

1.0.0-beta.45

2 years ago

1.0.0-beta.46

2 years ago

1.0.0-beta.47

2 years ago

1.0.0-beta.43

2 years ago

1.0.0-beta.42

2 years ago

1.0.0-beta.41

2 years ago

1.0.0-beta.40

2 years ago

1.0.0-beta.39

2 years ago

1.0.0-beta.38

2 years ago

1.0.0-beta.37

2 years ago

1.0.0-beta.36

2 years ago