REST API Contest details: Application types and bonuses
The topic is the REST API.
And we introduced a few technology bonuses.
Here I want to provide details on what application eligible, what are the technology bonuses and how to collect all of them.
Here we go!
REST API requirement
When cloned or downloaded the application should be runnable with:
$ docker-compose up -d
Or installed as a ZPM module, like:
Once installed, the application REST API or Web Sockets application should be available at localhost:anyport/your/application.
What applications you can submit?
You can build the REST API by yourself. Examples:
- REST API Contest template
- ObjectScript Visual Editor
- Blocks Explorer
You can use in your application any REST API libraries, published in Open Exchange.
- Examples of libraries: REST Forms 2.0, MDX2JSON, GraphQL, etc.
- Examples of applications that use these libraries: iris-sample-rest-angular, DeepSee Web, DSW Map, and more.
Among them are:
- Atelier API: /api/atelier
- IRIS BI API: /api/deepsee
- DocDB API :/api/docdb
- IRIS NLP(iknow) API: /api/iknow
- Monitoring API: /api/monitor
- Swagger Management API: /api/mgmnt
- UIMA API: /api/uima
Your application can be only REST API (case 1), or can also have a UI built around the REST API (case 1, 2, 3).
With Technology Bonuses we give you the option to earn additional "technology votes" for your application in Experts Nomination. Each technology bonus gives one vote.
➡️ ZPM Package
To get this bonus you should publish your solution as a ZPM package. This will let anyone install your application as:
Example application for REST-API.
➡️ Open API (Swagger) Spec
You'll get this bonus if your application exposes /_spec endpoint (and /info), which provides the specification of the REST API using Open API 2.0 or Open API 3.0
The REST Contest template could be a good example of how to generate /_spec for your REST API.
➡️ Spec-first development approach
You can collect this point if you will start to develop your application from describing the Open API specification first. And then generate REST API upon it using IRIS services and even more with this helpful application.
Notice, if you follow a spec-first approach, you get two bonuses: Spec-first and Open API Spec because with the spec-first approach you get /_spec endpoint generated automatically.
It gets one technology bonus point because it could be also installed as ZPM module with the command:
And it gets another technology bonus because it exposes swagger spec on localhost:port/crud/_spec.
You can use this application as a template.
Good luck and happy coding!