Skip to content

Commit b2efd34

Browse files
committed
added README.md
1 parent 792b1d3 commit b2efd34

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

README.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
[![Build Status](https://travis-ci.org/SmartAPI/smartapi_registry.svg?branch=master)](https://travis-ci.org/SmartAPI/smartapi_registry)
2+
3+
# SmartAPI Registry
4+
This repo provides an optional place for those who need to have a place to host their own API metadata. Then they can register their API in [SmartAPI Project](http://smart-api.info) using the URL of their API metadata from this repo.
5+
6+
## How to add your API
7+
8+
1. First, each API should create a separate folder to host its metadata. The folder "_example_api" provides basic template for adding API metadata, so you can start with copying "_example_api" folder and renaming it to your API name.
9+
2. Second, fill in the metadata about your API according to the instruction. Also please refer to the existing examples like "[mygene.info](mygene.info)" and "[myvariant.info](myvariant.info)" APIs.
10+
3. Add an entry to [API_LIST.yml](API_LIST.yml) file following the existing example. This is the master list of the APIs available in this repo. Our SmartAPI application will import all the API metadata based on this file.
11+
12+
If you have the permission, commit your changes to this repo. Otherwise, feel free to submit a pull-request. Please check the "build status" badge above, and make sure it's green after your changes. We run some basic tests in this "[tests.py](tests.py)" for each commit.
13+
14+
## API_LIST.yml file
15+
This is a YAML file at the root of this repo to keep track of all APIs available in this repo. Our SmartAPI application will import all the API metadata based on this file and render an API registry web frontend.
16+
17+
For each API, you just need to add a text block like this:
18+
19+
- metadata: mygene.info/openapi_minimum.yml
20+
21+
22+
* ***metadata*** field
23+
24+
The value of this field should be either the URL or the relative path pointing to the API metadata. The API metadata should follow [OpenAPI specifications](https://www.openapis.org/), in either JSON or YAML format. Specifically, we support OpenAPI v3 specification documented [here](https://github.com/OAI/OpenAPI-Specification/blob/OpenAPI.next/versions/3.0.0.md), plus the SmartAPI extensions documented [here](https://github.com/SmartAPI/OpenAPI-Specification/blob/OpenAPI.next/versions/3.0.0.md).

0 commit comments

Comments
 (0)