Slides of my presentation at European Conference on Modelling Foundations and Applications (ECMFA'17). To be presented during the session on Thursday 16:00-17:30
…consortium of forward-looking industry
experts who recognize the immense value
of standardizing on how REST APIs are
described…
…is focused on creating, evolving and
promoting a vendor neutral description
format…
https://www.openapis.org
OpenAPI Example
http://petstore.swagger.io/v2/pet/123GET
"swagger":"2.0",
"host":"petstore.swagger.io",
"basePath":"/v2",
Metadata
{
"swagger": "2.0",
"info": {
"version": "1.0.0",
"title": "Swagger Petstore",
"license": {
"name": "MIT"
}
},
"host": "petstore.swagger.io",
"basePath": "/v1",
"schemes": [
"http"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"paths": {
"/pets": {
"get": {
"summary": "List all pets",
"operationId": "listPets",
"tags": [
"pets"
],
"parameters": [
{
"name": "limit",
"in": "query",
"description": "How many items to return at one time (max 100)",
"required": false,
"type": "integer",
"format": "int32"
}
],
"responses": {
"200": {
"description": "An paged array of pets",
"headers": {
"x-next": {
"type": "string",
"description": "A link to the next page of responses"
}
},
"schema": {
"$ref": "#/definitions/Pets"
}
},
"default": {
"description": "unexpected error",
"schema": {
"$ref": "#/definitions/Error"
}
}
}
},
OpenAPI document
Conclusion and Further Work
• Application of model-driven techniques for API discovery
• Provided as Open Source tool
• Help developers to integrate APIs
What we have shown
What we plan to do
Extension of HAPI
Automatic call
generation
OpenAPI Extensions
• Quality of Service
• Business Plans
• Security
• Semantics
Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution 4.0 International license.
Thanks!
HAPI (Home of APIs)
https://github.com/SOM-Research/hapi
APIDiscoverer
https://github.com/SOM-Research/APIDiscoverer
Javier L. Cánovas Izquierdo
jcanovasi@uoc.edu
@jlcanovas
Hamza Ed-douibi
hed-douibi@uoc.edu
@mazamiz
Jordi Cabot
jordi.cabot@icrea.cat
@softmodeling