/omics_api

Design for user to know already module we have and then create a new pipeline recipe by yourself on version 0.1 .

Primary LanguageJavaScriptMIT LicenseMIT

Omics Pipe API (Version 0.0.2alpha)

Read more words!

Overview

Omics Pipe API: Design for user to know already module we have and then create a new pipeline recipe by yourself on version 0.0.2alpha .

What's workflow?

  1. User need login with google oauth2.
  2. User click the Omics Pipe API document.
  3. User would see what api we support.
  4. If user see the modules we have, user could arrange a new pipeline recipe.
  5. API support user to post a new pipeline recipe. If the I/O are not suitable to process, our system will send email to user.
  6. If user have a new module would like to post, our system will make sure these elements will be created or not. That'll need to take time to check the environment.

Set your settings file

SECURITY WARNING: keep the secret key used in production secret!

SECRET_KEY = 'Django secret key'
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY = 'YOUR KEY'
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET = 'YOUR SECRET'

Requirement

  • Python (2.6, 2.7)
  • Django (1.8)
  • Django REST framework (3.3.1)
  • PyAML (3.11)
  • django-oauth-toolkit(0.9.0)
  • python-social-auth(0.2.13)
  • django-rest-swagger(0.3.4)
  • PIL(1.1.7)
  • django-grappelli(2.7.2)
  • django-filebrowser(3.6.1)
  • djangorestframework-yaml(1.0.2)

##Request About detail Docs: import omicspipeapi_0.0.2.yaml with http://editor.swagger.io/.

New API version 0.0.3 are coming~

Follow @light940929 on Github for the latest news.

URL Method Parameters Description
/categories/ GET Fetch All Categories
/categories/:id GET Fetch a Category
/templates/ GET Fetch All Templates
/templates/:id GET Fetch a Template
/modules/ GET Fetch All Modules
/modules/:id GET Fetch a Module
/pipelines/ GET Fetch All Pipelines
/pipelines/:id GET Fetch a Pipeline
/pipelinerecipes/ POST name, description, ingredients, steps, equipment, resultpath, footnote Create a New pipline recipe
/pipelinerecipes/ GET Fetch All Pipeline recipes
/pipelinerecipes/:id PATCH name, description, ingredients, steps, equipment, resultpath, footnote Update a pipeline recipe
/pipelinerecipes/:id GET Fetch a Pipeline recipe
/pipelinerecipes/:id DELETE Delete a pipeline recipe
/modelscripts/ POST name, description, inputformat, outformat, parameters, server, scriptpath Create a New modelscript
/modelscripts/ GET Fetch All modelscripts
/modelscripts/:id PATCH name, description, inputformat, outformat, parameters, server, scriptpath Update a modelscript
/modelscripts/:id GET Fetch a modelscript
/modelscripts/:id DELETE Delete a modelscript
/ingredients/ POST title, topic, server, path, format, group Create a New ingredient
/ingredients/ GET Fetch All ingredients
/ingredients/:id PATCH title, topic, server, path, format, group Update a ingredient
/ingredients/:id GET Fetch a ingredient
/ingredients/:id DELETE Delete a ingredient
/ingredientgroups/ POST name, topic, ingredients, recipes Create a New ingredientgroup
/ingredientgroups/ GET Fetch All ingredientgroups
/ingredients/:id PATCH name, topic, ingredients, recipes Update a ingredient
/ingredientgroups/:id GET Fetch a ingredientgroup
/ingredientgroups/:id DELETE Delete a ingredientgroup
/steps/ POST title, scheduler, priority, follows, group Create a New step
/steps/ GET Fetch All steps
/steps/:id PATCH title, scheduler, priority, follows, group Update a step
/steps/:id GET Fetch a step
/steps/:id DELETE Delete a step
/stepgroups/ POST name, topic, steps, recipes, functions Create a New stepgroup
/stepgroups/ GET Fetch All stepgroups
/stepgroups/:id PATCH name, topic, steps, recipes, functions Update a stepgroups
/stepgroups/:id GET Fetch a stepgroup
/stepgroups/:id DELETE Delete a stepgroup
/userfiles/ POST name, server, path, models Create a New userfile
/userfiles/ GET Fetch All userfiles
/userfiles/:id PATCH name, server, path, models Update a userfile
/userfiles/:id GET Fetch a userfile
/userfiles/:id DELETE Delete a userfile