Skip to content

Latest commit

 

History

History
1649 lines (1496 loc) · 63 KB

api_doc.org

File metadata and controls

1649 lines (1496 loc) · 63 KB

Data Service API wiki

Introduction

This document explains the different endpoints through which an application can communicate with the back-end Data Service. This document is a work in progress and is updated regularly as the service is evolving continuously over the course of time.

REST APIs

  • All API access is over HTTP and data is sent and received as JSON.
  • To use the API layer, your application will make an HTTP request and parse the response.
  • The response format is JSON.
  • Your methods will be the standard HTTP methods like GET, PUT and POST.
  • Appropriate HTTP verbs for each action are listed below:
VerbDescription
GETUsed for retrieving resources.
PUTUsed for replacing resources or collections.
POSTUsed for creating resources.

Resources

Following is the list of current REST APIs provided by dataservice:

- /labs [GET, POST]
- /labs/<int:id> [GET, PUT, DELETE]
- /labs/<:id>/experiments [GET]
- /labs/<:id>/technologies [GET]
- /labs/<:id>/technologies?query_param1=val1&query_param2=val2 [GET]
- /labs/<:id>/experiments?query_param1=val1&query_param2=val2 [GET]
- /labs?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]
- /institutes [GET, POST]
- /institutes/<int:id> [GET, PUT, DELETE]
- /institutes/<inst_id>/labs [GET] 
- /institutes/<inst_id>/developers [GET] 
- /institutes/<:id>/labs?query_param1=val1&query_param2=val2 [GET] 
- /institutes/<:id>/developers?query_param1=val1&query_param2=val2 [GET] 
- /institutes?query_param1=val1&query_param2=val2&..query_paramn=valn [GET] 
- /disciplines [GET, POST]
- /disciplines/<int:id> [GET, PUT, DELETE]
- /disciplines/<disc_id>/labs [GET]
- /disciplines/<:id>/labs?query_param1=val1&query_param2=val2 [GET]
- /disciplines?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]
- /technologies [GET, POST]
- /technologies/<int:id> [GET, PUT, DELETE]
- /technologies/<tech_id>/labs [GET]
- /technologies/<:id>/labs?query_param1=val1&query_param2=val2 [GET]
- /technologies?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]
- /developers [GET, POST]
- /developers/<int:id> [GET, PUT, DELETE]
- /developers?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]
- /experiments [GET, POST]
- /experiments/<int:id> [GET, PUT, DELETE]
- /experiments?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]
- /integration_levels [GET, POST]
- /integration_levels/<int:id> [GET, PUT, DELETE]
- /integration_levels?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]
- /hosting_platforms [GET, POST]
- /hosting_platforms/<int:id> [GET, PUT, DELETE]
- /hosting_platforms?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]
- /type_of_labs [GET, POST]
- /type_of_labs/<int:id> [GET, PUT, DELETE]
- /type_of_labs?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]
- /feedback [GET, POST]
- /feedback/<int:id> [GET]
- /feedback?query_param1=val1&query_param2=val2&..query_paramn=valn [GET]

/labs

  • Parameters
    NameDescription
    idIndicates the unique id of the lab. Example Value: 1
    nameSpecifies the name of lab. Example Value: Computer Programming
    lab_idThis parameter lists the lab id, not necessarily unique. Example Value: cse02
    institute_idIndicates the id of the institute. Example Value: 1
    discipline_idIndicates the id of the discipline. Example Value: 1
    integration_level_idIndicates the id of the integration_level. Example Value: 1
    number_of_experimentsReturns the count of total experiments in a lab. Example Value: 9
    repo_urlReturns the url of the repository, in which the sources of lab are present. Example Value: https://github.com/Virtual-Labs/computer-programming-iiith
    hosted_urlSpecifies the url, where lab is hosted. Example Value: http://virtual-labs.ac.in/labs/cse01/
    hosted_on_idIndicates the id of the hosted platform. Example Value: 1
    type_of_lab_idSpecifies the lab type in form of a string. Example Value: Simulation Lab, Remote Triggered Lab
    remarksSpecifies any comments added by the lab developer in the form of strings. Example Value: 1
    statusReturns the string specifying if the lab is hosted or not. Example Value: Hosted
    is_web_2_compliant_labWhen set to either true or false, this parameter indicates if the lab is web 2.0 compliant or not. Example Value: false
    is_auto_hostableThis parameter, when set to true or false, indicates if the lab is auto hostable. Example Value: true
    is_phase_2_labThis boolean parameter enhances the fact if the lab is selected for Phase 2 process. Example Value: true
  • GET
    • Example Request
      /labs
              
    • Example Result
      [{"discipline": {"dnc_email": "[email protected]", "discipline_id":
      "cse", "id": 6, "dnc": "Prof. Suresh Purini", "name": "Computer Science and
      Engineering"}, "lab_id": "cse01", "name": "DS", "hosted_on": null,
      "type_of_lab": {"type": "Simulation", "id": 1}, "institute": {"pic_email":
      "[email protected]", "name": "IIIT Hyderabad", "pic":
      "Prof. Venkatesh Choppella", "iic_email": "[email protected]", "iic":
      "Prof. Raghu Reddy", "id": 1, "institute_id": "iiith"}, "is_web_2_compliant":
      null, "experiments": [{"lab": {"lab_id": "cse01", "id": 1, "name": "DS"},
      "name": "Number Systems", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 661, "content_url": null, "simulation_url":
      null}, ......... {"lab": {"lab_id": "cse01", "id": 1, "name": "DS"}, "name":
      "Minimum Spanning Trees", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 669, "content_url": null, "simulation_url":
      null}], "status": "Hosted", "repo_url":
      "https://bitbucket.org/virtual-labs/cse01-ds_new", "is_phase_2_lab": true,
      "remarks": "Completed ", "technologies": [{"version": null, "foss": true, "id":
      1, "name": "php5"}, {"version": null, "foss": true, "id": 2, "name":
      "apache2"}, {"version": null, "foss": null, "id": 37, "name": "flash plugin"}],
      "developers": [{"institute": {"pic_email": "[email protected]",
      "name": "IIIT Hyderabad", "pic": "Prof. Venkatesh Choppella", "iic_email":
      "[email protected]", "iic": "Prof. Raghu Reddy", "id": 1, "institute_id":
      "iiith"}, "id": 31, "name": "Kishore Kothapalli", "email":
      "[email protected]"}], "integration_level": {"id": 6, "level": 5}, "id": 1,
      "hosted_url": "http://virtual-labs.ac.in/labs/cse01/"},
      .......... {"discipline": {"dnc_email": "[email protected]", "discipline_id":
      "biotech", "id": 2, "dnc": "Prof. Bipin Nair", "name": "Biotechnology and
      Biomedical Engineering"}, "lab_id": "biotech24", "name": "Plant Metabolic
      Pathways Virtual Laboratory", "hosted_on": null, "type_of_lab": {"type":
      "Simulation", "id": 1}, "institute": {"pic_email":
      "[email protected]", "name": "IIT Kharagpur", "pic": "Prof. C S
      Kumar", "iic_email": null, "iic": null, "id": 7, "institute_id": "iitkgp"},
      "is_web_2_compliant": null, "experiments": [{"lab": {"lab_id": "biotech24",
      "id": 204, "name": "Plant Metabolic Pathways Virtual Laboratory"}, "name":
      "Demonstrate plant genetics by the accumulation pat", "content_hosted_on":
      null, "technologies": [], "simulation_hosted_on": null, "id": 554,
      "content_url": "http://iitkgp.vlab.co.in/?sub=79&brch=262&sim=1415&cnt=1",
      "simulation_url": "http://iitkgp.vlab.co.in/?sub=79&brch=262&sim=1415&cnt=4"},
      ...... {"lab": {"lab_id": "biotech24", "id": 204, "name": "Plant Metabolic
      Pathways Virtual Laboratory"}, "name": "Study accumulation of secondary
      metabolites in pla", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 557, "content_url":
      "http://iitkgp.vlab.co.in/?sub=79&brch=262&sim=1298&cnt=1", "simulation_url":
      "http://iitkgp.vlab.co.in/?sub=79&brch=262&sim=1298&cnt=4"}], "status":
      "Hosted", "repo_url": null, "is_phase_2_lab": null, "remarks": "Developer not
      known", "technologies": null, "developers": null, "integration_level": {"id":
      1, "level": 0}, "id": 204, "hosted_url":
      "http://iitkgp.vlab.co.in/?sub=79&brch=262"}]
              
  • POST
    • Example Request
      {
         "name": "Computer Programming",
         "lab_id": "cse02"
       }
              
    • Example Result
{
  "developers": null, 
  "discipline": null, 
  "experiments": null, 
  "hosted_on": null, 
  "hosted_url": null, 
  "id": 205, 
  "institute": null, 
  "integration_level": null, 
  "is_phase_2_lab": null, 
  "is_web_2_compliant": null, 
  "lab_id": "cse02", 
  "name": "Computer Programming", 
  "remarks": null, 
  "repo_url": null, 
  "status": null, 
  "technologies": null, 
  "type_of_lab": null
}

/labs/int:id

  • GET -
    • Example Request
      /labs/205 
              
    • Example Result
    {
      "developers": null, 
      "discipline": null, 
      "experiments": null, 
      "hosted_on": null, 
      "hosted_url": null, 
      "id": 205, 
      "institute": null, 
      "integration_level": null, 
      "is_phase_2_lab": null, 
      "is_web_2_compliant": null, 
      "lab_id": "cse02", 
      "name": "Computer Programming", 
      "remarks": null, 
      "repo_url": null, 
      "status": null, 
      "technologies": null, 
      "type_of_lab": null
    }
        
  • PUT
    • Example Request
      {"name":"CP"}
              
    • Example Result
      {
        "developers": null, 
        "discipline": null, 
        "experiments": null, 
        "hosted_on": null, 
        "hosted_url": null, 
        "id": 205, 
        "institute": null, 
        "integration_level": null, 
        "is_phase_2_lab": null, 
        "is_web_2_compliant": null, 
        "lab_id": "cse02", 
        "name": "CP", 
        "remarks": null, 
        "repo_url": null, 
        "status": null, 
        "technologies": null, 
        "type_of_lab": null
      }
              
  • DELETE
    • Example Result
      {
        "id": "205", 
        "status": "success"
      }
              

/labs/<:id>/experiments

  • GET -
    • Example Request
      /labs/1/experiments
              
    • Example Result
      [{"lab": {"lab_id": "cse01", "id": 1, "name": "DS"}, "name": "Number Systems",
      "content_hosted_on": null, "technologies": [], "simulation_hosted_on": null,
      "id": 661, "content_url": null, "simulation_url": null}, ....... {"lab":
      {"lab_id": "cse01", "id": 1, "name": "DS"}, "name": "Minimum Spanning Trees",
      "content_hosted_on": null, "technologies": [], "simulation_hosted_on": null,
      "id": 669, "content_url": null, "simulation_url": null}]
              

/labs/<:id>/technologies

  • GET -
    • Example Request
      /labs/1/technologies
              
    • Example Result
      [{"version": null, "foss": true, "id": 1, "name": "php5"}, {"version": null,
      "foss": true, "id": 2, "name": "apache2"}, {"version": null, "foss": null,
      "id": 37, "name": "flash plugin"}]
              

/labs/<:id>/technologies?query_param1=val1&query_param2=val2

  • GET -
    • Example Request
      /labs/1/technologies?name=php5
              
    • Example Result
      [{"version": null, "foss": true, "id": 1, "name": "php5"}]
              

/labs/<:id>/experiments?query_param1=val1&query_param2=val2

  • GET -
    • Example Request
      /labs/1/experiments?name=Number Systems
              
    • Example Result
      [{"lab": {"lab_id": "cse01", "id": 1, "name": "DS"}, "name": "Number Systems",
      "content_hosted_on": null, "technologies": [], "simulation_hosted_on": null,
      "id": 661, "content_url": null, "simulation_url": null}]
              

/labs?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /labs?name=Computer Programming&status=Hosted
              
    • Example Result
      [{"discipline": {"dnc_email": "[email protected]", "discipline_id":
      "cse", "id": 6, "dnc": "Prof. Suresh Purini", "name": "Computer Science and
      Engineering"}, "lab_id": "cse02", "name": "Computer Programming", "hosted_on":
      null, "type_of_lab": {"type": "Simulation", "id": 1}, "institute":
      {"pic_email": "[email protected]", "name": "IIIT Hyderabad",
      "pic": "Prof. Venkatesh Choppella", "iic_email": "[email protected]",
      "iic": "Prof. Raghu Reddy", "id": 1, "institute_id": "iiith"},
      "is_web_2_compliant": null, "experiments": [{"lab": {"lab_id": "cse02", "id":
      2, "name": "Computer Programming"}, "name": "Expression Evaluation",
      "content_hosted_on": null, "technologies": [], "simulation_hosted_on": null,
      "id": 670, "content_url": null, "simulation_url": null}, {"lab": {"lab_id":
      "cse02", "id": 2, "name": "Computer Programming"}, "name": "Basic Control
      Flow", "content_hosted_on": null, "technologies": [], "simulation_hosted_on":
      null, "id": 671, "content_url": null, "simulation_url": null}, {"lab":
      {"lab_id": "cse02", "id": 2, "name": "Computer Programming"}, "name": "Advanced
      Control Flow", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 672, "content_url": null, "simulation_url":
      null}, {"lab": {"lab_id": "cse02", "id": 2, "name": "Computer Programming"},
      "name": "Arrays", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 673, "content_url": null, "simulation_url":
      null}, ........{"lab": {"lab_id": "cse02", "id": 2, "name": "Computer
      Programming"}, "name": "Numerical Approximation", "content_hosted_on": null,
      "technologies": [], "simulation_hosted_on": null, "id": 679, "content_url":
      null, "simulation_url": null}], "status": "Hosted", "repo_url":
      "https://bitbucket.org/virtual-labs/cse02-programming", "is_phase_2_lab": true,
      "remarks": "Completed ", "technologies": [{"version": null, "foss": true, "id":
      1, "name": "php5"}, {"version": null, "foss": true, "id": 2, "name":
      "apache2"}, {"version": null, "foss": true, "id": 3, "name": "java"},
      {"version": null, "foss": true, "id": 38, "name": "icedtea plugin"}],
      "developers": [{"institute": {"pic_email": "[email protected]",
      "name": "IIIT Hyderabad", "pic": "Prof. Venkatesh Choppella", "iic_email":
      "[email protected]", "iic": "Prof. Raghu Reddy", "id": 1, "institute_id":
      "iiith"}, "id": 28, "name": "C.V. Jawahar", "email": "[email protected]"}],
      "integration_level": {"id": 6, "level": 5}, "id": 2, "hosted_url":
      "http://virtual-labs.ac.in/labs/cse02/"}]
              

/institutes

  • Parameters
NameDescription
idIndicates the unique id of the institute. Example Value: 1
nameSpecifies the name of institute. Example Value: IIIT Hyderabad
institute_idIndicates the id of the institute. Example Value: iiith
picIndicates the name of the PIC. Example Value: Prof. Venkatesh Choppella
pic_emailIndicates the email of the PIC. Example Value: [email protected]
iicIndicates the name of the IIC. Example Value: Prof. Raghu Reddy
iic_emailIndicates the email of the IIC. Example Value: [email protected]
  • GET
    • Example Request
      /institutes
              
    • Example Result
      [{"pic_email": "[email protected]", "name": "IIIT Hyderabad",
      "pic": "Prof. Venkatesh Choppella", "iic_email": "[email protected]",
      "iic": "Prof. Raghu Reddy", "id": 1, "institute_id": "iiith"}, {"pic_email":
      "[email protected]", "name": "IIT Bombay", "pic": "Prof. Anil Kulkarni",
      "iic_email": "[email protected]", "iic": "Prof. Santosh Norohna", "id": 2,
      "institute_id": "iitb"}, {"pic_email": "[email protected]", "name": "IIT
      Delhi", "pic": "Prof. Ranjan Bose", "iic_email": "[email protected]",
      "iic": "Prof. Suresh Bhalla", "id": 3, "institute_id": "iitd"}, {"pic_email":
      "[email protected]", "name": "IIT Roorkee", "pic": "Prof. Vinod Kumar",
      "iic_email": "[email protected]", "iic": "Prof Vinod Kumar", "id": 4,
      "institute_id": "iitr"}, {"pic_email": "[email protected]", "name": "IIT
      Guwahati", "pic": "Prof. Ratnajit Bhattacharjee", "iic_email":
      "[email protected]", "iic": "Dr. Santosh Biswas", "id": 5,
      "institute_id": "iitg"}, {"pic_email": "[email protected]", "name": "IIT
      Kanpur", "pic": "Prof.  Kantesh Balani", "iic_email": "[email protected]",
      "iic": "Prof. Kantesh Balani", "id": 6, "institute_id": "iitk"}, {"pic_email":
      "[email protected]", "name": "IIT Kharagpur", "pic": "Prof. C S
      Kumar", "iic_email": null, "iic": null, "id": 7, "institute_id": "iitkgp"},
      {"pic_email": "[email protected]", "name": "IIT Madras", "pic": "Prof. P
      Sriram", "iic_email": null, "iic": null, "id": 8, "institute_id": "iitm"},
      {"pic_email": "[email protected]", "name": "NIT Surathkal", "pic": "Prof. K V
      Gangadharan", "iic_email": "[email protected]", "iic": "Prof. K V
      Gangadharan", "id": 9, "institute_id": "nitk"}, {"pic_email":
      "[email protected]", "name": "Amrita University", "pic": "Prof. Krishnashree
      Achuthan", "iic_email": "[email protected]", "iic": "Prof. Shyam
      Diwakar", "id": 10, "institute_id": "amrita"}, {"pic_email":
      "[email protected]", "name": "College of Engineering, Pune", "pic":
      "Prof. Sudhir Agashe", "iic_email": "[email protected]", "iic": "S. U
      Ghumbre", "id": 11, "institute_id": "coep"}, {"pic_email": "[email protected]",
      "name": "Dayalbagh Educational Institute", "pic": "Prof. Soami P Satsangee",
      "iic_email": "[email protected]", "iic": "Rahul Swarup Sharma", "id":
      12, "institute_id": "dei"}]
              
  • POST
    • Example Request
        json = { 
      "name": "IIT Roorkee",
      "institute_id" : "IIT-R"
      }
              
    • Example Result
      {
        "id": 13, 
        "iic": null, 
        "iic_email": null, 
        "institute_id": "IIT-R", 
        "name": "IIT Roorkee", 
        "pic": null, 
        "pic_email": null
      }
              

/institutes/int:id

  • GET -
    • Example Request
      /institutes/13 
              
    • Example Result
      {
        "id": 13, 
        "iic": null, 
        "iic_email": null, 
        "institute_id": "IIT-R", 
        "name": "IIT Roorkee", 
        "pic": null, 
        "pic_email": null
      }
              
  • PUT
    • Example Request
      {"name":"IIT Kanpur"}
              
    • Example Result
      {
        "id": 13, 
        "iic": null, 
        "iic_email": null, 
        "institute_id": "IIT-R", 
        "name": "IIT Kanpur", 
        "pic": null, 
        "pic_email": null
      } 
              
  • DELETE
    • Example Result
      {
        "id": "13", 
        "status": "success"
      }
              

/institutes/<inst_id>/labs

  • GET
    • Example Request
      /institutes/8/labs
              
    • Example Result
      [{"discipline": {"dnc_email": "[email protected]", "discipline_id":
      "civil", "id": 5, "dnc": "Prof. P K Garg", "name": "Civil Engineering"},
      "lab_id": "civil17", "name": "Structural Engineering Lab", "hosted_on": null,
      "type_of_lab": null, "institute": {"pic_email": "[email protected]", "name":
      "IIT Madras", "pic": "Prof. P Sriram", "iic_email": null, "iic": null, "id": 8,
      "institute_id": "iitm"}, "is_web_2_compliant": null, "experiments": null,
      "status": "Not Hosted", "repo_url": null, "is_phase_2_lab": null, "remarks":
      "Lab is redirecting to the same page ;hosted_url: Unknown; ", "technologies":
      null, "developers": null, "integration_level": {"id": 1, "level": 0}, "id":
      106, "hosted_url": null}, ............, {"discipline": {"dnc_email": null,
      "discipline_id": "aero", "id": 1, "dnc": null, "name": "Aerospace
      Engineering"}, "lab_id": "ae01", "name": "Aerospace Structures Lab",
      "hosted_on": null, "type_of_lab": null, "institute": {"pic_email":
      "[email protected]", "name": "IIT Madras", "pic": "Prof. P Sriram",
      "iic_email": null, "iic": null, "id": 8, "institute_id": "iitm"},
      "is_web_2_compliant": null, "experiments": null, "status": "Not Hosted",
      "repo_url": "https://bitbucket.org/virtual-labs/ae01-aero", "is_phase_2_lab":
      null, "remarks": "Lab redirecting to same Index page. Test url is available:
      http://test.virtual-labs.ac.in/labs/ae01/ ;hosted_url: Unknown; ",
      "technologies": [{"version": null, "foss": null, "id": 22, "name": "flash"},
      {"version": null, "foss": null, "id": 37, "name": "flash plugin"}],
      "developers": [{"institute": {"pic_email": "[email protected]", "name": "IIT
      Madras", "pic": "Prof. P Sriram", "iic_email": null, "iic": null, "id": 8,
      "institute_id": "iitm"}, "id": 80, "name": "T.S.Natarajan", "email":
      "[email protected]"}], "integration_level": {"id": 5, "level": 4}, "id": 171,
      "hosted_url": null}]
              

/institutes/<inst_id>/developers

  • GET
    • Example Request
      /institutes/4/developers
              
    • Example Result
      [{"institute": {"pic_email": "[email protected]", "name": "IIT Roorkee",
      "pic": "Prof. Vinod Kumar", "iic_email": "[email protected]", "iic": "Prof
      Vinod Kumar", "id": 4, "institute_id": "iitr"}, "id": 25, "name": "P. K. Garg",
      "email": "[email protected]"}, {"institute": {"pic_email":
      "[email protected]", "name": "IIT Roorkee", "pic": "Prof. Vinod Kumar",
      "iic_email": "[email protected]", "iic": "Prof Vinod Kumar", "id": 4,
      "institute_id": "iitr"}, "id": 52, "name": "Promod Agarwal", "email":
      "[email protected]"}, {"institute": {"pic_email":
      "[email protected]", "name": "IIT Roorkee", "pic": "Prof. Vinod Kumar",
      "iic_email": "[email protected]", "iic": "Prof Vinod Kumar", "id": 4,
      "institute_id": "iitr"}, "id": 86, "name": "Vinod Kumar", "email":
      "[email protected]"}]
              

/institutes/<:id>/labs?query_param1=val1&query_param2=val2

  • GET -
    • Example Request
      /institutes/1/labs?lab_id=cse02&name=Computer Programming
              
    • Example Result
      [{"discipline": {"dnc_email": "[email protected]", "discipline_id":
      "cse", "id": 6, "dnc": "Prof. Suresh Purini", "name": "Computer Science and
      Engineering"}, "lab_id": "cse02", "name": "Computer Programming", "hosted_on":
      null, "type_of_lab": {"type": "Simulation", "id": 1}, "institute":
      {"pic_email": "[email protected]", "name": "IIIT Hyderabad",
      "pic": "Prof. Venkatesh Choppella", "iic_email": "[email protected]",
      "iic": "Prof. Raghu Reddy", "id": 1, "institute_id": "iiith"},
      "is_web_2_compliant": null, "experiments": [{"lab": {"lab_id": "cse02", "id":
      2, "name": "Computer Programming"}, "name": "Expression Evaluation",
      "content_hosted_on": null, "technologies": [], "simulation_hosted_on": null,
      "id": 670, "content_url": null, "simulation_url": null}, ......., "status":
      "Hosted", "repo_url": "https://bitbucket.org/virtual-labs/cse02-programming",
      "is_phase_2_lab": true, "remarks": "Completed ", "technologies": [{"version":
      null, "foss": true, "id": 1, "name": "php5"}, {"version": null, "foss": true,
      "id": 2, "name": "apache2"}, {"version": null, "foss": true, "id": 3, "name":
      "java"}, {"version": null, "foss": true, "id": 38, "name": "icedtea plugin"}],
      "developers": [{"institute": {"pic_email": "[email protected]",
      "name": "IIIT Hyderabad", "pic": "Prof. Venkatesh Choppella", "iic_email":
      "[email protected]", "iic": "Prof. Raghu Reddy", "id": 1, "institute_id":
      "iiith"}, "id": 28, "name": "C.V. Jawahar", "email": "[email protected]"}],
      "integration_level": {"id": 6, "level": 5}, "id": 2, "hosted_url":
      "http://virtual-labs.ac.in/labs/cse02/"}]
              

/institutes/<:id>/developers?query_param1=val1&query_param2=val2

  • GET -
    • Example Request
      /institutes/1/developers?name=Abhijit Mitra&[email protected]
              
    • Example Result
      [{"institute": {"pic_email": "[email protected]", "name": "IIIT
      Hyderabad", "pic": "Prof. Venkatesh Choppella", "iic_email":
      "[email protected]", "iic": "Prof. Raghu Reddy", "id": 1, "institute_id":
      "iiith"}, "id": 1, "name": "Abhijit Mitra", "email": "[email protected]"}]
              

/institutes?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /institutes?name=IIIT Hyderabad&iic=Prof. Raghu Reddy
              
    • Example Result
      [{"pic_email": "[email protected]", "name": "IIIT Hyderabad",
      "pic": "Prof. Venkatesh Choppella", "iic_email": "[email protected]",
      "iic": "Prof. Raghu Reddy", "id": 1, "institute_id": "iiith"}]
              

/disciplines

  • Parameters
NameDescription
idIndicates the unique id of the discipline. Example Value: 1
nameSpecifies the name of discipline. Example Value: Aerospace Engineering
discipline_idIndicates the id of the discipline. Example Value: iiith
dncIndicates the name of the DNC. Example Value: Prof. Venkatesh Choppella
dnc_emailIndicates the email of the DNC. Example Value: [email protected]
  • GET
    • Example Request
      /disciplines
              
    • Example Result
      [{"dnc_email": null, "discipline_id": "aero", "id": 1, "dnc": null, "name":
      "Aerospace Engineering"}, {"dnc_email": "[email protected]", "discipline_id":
      "biotech", "id": 2, "dnc": "Prof. Bipin Nair", "name": "Biotechnology and
      Biomedical Engineering"}, ........ {"dnc_email": null, "discipline_id":
      "mat-sc", "id": 14, "dnc": null, "name": "Material Sciences"}]
      
              
  • POST
    • Example Request
      json = {"discipline_id": "space", "name": "space Engineering"}
              
    • Example Result
      {
        "discipline_id": "space", 
        "dnc": null, 
        "dnc_email": null, 
        "id": 16, 
        "name": "space Engineering"
      }
              

/disciplines/int:id

  • GET -
    • Example Request
      /disciplines/16 
              
    • Example Result
      {
        "discipline_id": "space", 
        "dnc": null, 
        "dnc_email": null, 
        "id": 16, 
        "name": "space Engineering"
      }
              
  • PUT
    • Example Request
      {"name": "Space Engineering"}
              
    • Example Result
        {
        "discipline_id": "space", 
        "dnc": null, 
        "dnc_email": null, 
        "id": 16, 
        "name": "Space Engineering"
      }
              
  • DELETE
    • Example Result
      {
        "id": "16", 
        "status": "success"
      }
              

/disciplines/<disc_id>/labs

  • GET
    • Example Request
      /disciplines/1/labs
              
    • Example Result
      [{"discipline": {"dnc_email": null, "discipline_id": "aero", "id": 1, "dnc":
      null, "name": "Aerospace Engineering"}, "lab_id": "aero02", "name": "In-flight
      Particle History Lab", "hosted_on": null, "type_of_lab": null, "institute":
      {"pic_email": "[email protected]", "name": "IIT Kanpur", "pic": "Prof.
      Kantesh Balani", "iic_email": "[email protected]", "iic": "Prof. Kantesh
      Balani", "id": 6, "institute_id": "iitk"}, "is_web_2_compliant": null,
      "experiments": null, "status": "Not Hosted", "repo_url": null,
      "is_phase_2_lab": null, "remarks": "lab id and sources not available
      ;hosted_url: Unknown; ", "technologies": null, "developers": null,
      "integration_level": {"id": 1, "level": 0}, "id": 159, "hosted_url": null},
      ..........  {"discipline": {"dnc_email": null, "discipline_id": "aero", "id":
      1, "dnc": null, "name": "Aerospace Engineering"}, "lab_id": "ae01", "name":
      "Aerospace Structures Lab", "hosted_on": null, "type_of_lab": null,
      "institute": {"pic_email": "[email protected]", "name": "IIT Madras", "pic":
      "Prof. P Sriram", "iic_email": null, "iic": null, "id": 8, "institute_id":
      "iitm"}, "is_web_2_compliant": null, "experiments": null, "status": "Not
      Hosted", "repo_url": "https://bitbucket.org/virtual-labs/ae01-aero",
      "is_phase_2_lab": null, "remarks": "Lab redirecting to same Index page. Test
      url is available: http://test.virtual-labs.ac.in/labs/ae01/ ;hosted_url:
      Unknown; ", "technologies": [{"version": null, "foss": null, "id": 22, "name":
      "flash"}, {"version": null, "foss": null, "id": 37, "name": "flash plugin"}],
      "developers": [{"institute": {"pic_email": "[email protected]", "name": "IIT
      Madras", "pic": "Prof. P Sriram", "iic_email": null, "iic": null, "id": 8,
      "institute_id": "iitm"}, "id": 80, "name": "T.S.Natarajan", "email":
      "[email protected]"}], "integration_level": {"id": 5, "level": 4}, "id": 171,
      "hosted_url": null}]
              

/disciplines/<:id>/labs?query_param1=val1&query_param2=val2

  • GET -
    • Example Request
      /disciplines/1/labs?lab_id=aero02
              
    • Example Result
      [{"discipline": {"dnc_email": null, "discipline_id": "aero", "id": 1, "dnc":
      null, "name": "Aerospace Engineering"}, "lab_id": "aero02", "name": "In-flight
      Particle History Lab", "hosted_on": null, "type_of_lab": null, "institute":
      {"pic_email": "[email protected]", "name": "IIT Kanpur", "pic": "Prof.
      Kantesh Balani", "iic_email": "[email protected]", "iic": "Prof. Kantesh
      Balani", "id": 6, "institute_id": "iitk"}, "is_web_2_compliant": null,
      "experiments": null, "status": "Not Hosted", "repo_url": null,
      "is_phase_2_lab": null, "remarks": "lab id and sources not available
      ;hosted_url: Unknown; ", "technologies": null, "developers": null,
      "integration_level": {"id": 1, "level": 0}, "id": 159, "hosted_url": null}]
              

/disciplines?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /[email protected]&dnc=Prof. Suresh Purini
              
    • Example Result
      [{"dnc_email": "[email protected]", "discipline_id": "cse", "id": 6,
      "dnc": "Prof. Suresh Purini", "name": "Computer Science and Engineering"}]
              

/technologies

  • Parameters
NameDescription
idIndicates the unique id of the technology. Example Value: 1
nameIndicates the name of technology being used by the lab. Example Value: Java
versionIndicates the name of technology. Example Value: java 1.7
fossIndicates if technology is free and open source. Example Value: false
  • GET
    • Example Request
      /technologies
              
    • Example Result
      [{"version": null, "foss": true, "id": 1, "name": "php5"}, {"version": null,
      "foss": true, "id": 2, "name": "apache2"}, ....... {"version": null, "foss": null,
      "id": 50, "name": "matlab"}]
              
  • POST
    • Example Request
      json = { 
      "name": "Java",
      "version": "Java 1.7",
      "foss": "false" 
      }
              
    • Example Result
      {
        "foss": true, 
        "id": 51, 
        "name": "Java", 
        "version": "Java 1.7"
      }
              

/technologies/int:id

  • GET -
    • Example Request
      /technologies/51 
              
    • Example Result
       {
        "foss": true, 
        "id": 51, 
        "name": "Java", 
        "version": "Java 1.7"
      }
              
  • PUT
    • Example Request
      {"name":"Flash", version:"Flash 9.0"}
              
    • Example Result
      {
        "foss": true, 
        "id": 51, 
        "name": "Flash", 
        "version": "Flash 9.0"
      }
              
  • DELETE
    • Example Result
      {
        "id": "51", 
        "status": "success"
      }
              

/technologies/<tech_id>/labs

  • GET
    • Example Request
      /technologies/1/labs
              
    • Example Result
      [{"discipline": {"dnc_email": "[email protected]", "discipline_id":
      "cse", "id": 6, "dnc": "Prof. Suresh Purini", "name": "Computer Science and
      Engineering"}, "lab_id": "cse01", "name": "DS", "hosted_on": null,
      "type_of_lab": {"type": "Simulation", "id": 1}, "institute": {"pic_email":
      "[email protected]", "name": "IIIT Hyderabad", "pic":
      "Prof. Venkatesh Choppella", "iic_email": "[email protected]", "iic":
      "Prof. Raghu Reddy", "id": 1, "institute_id": "iiith"}, "is_web_2_compliant":
      null, "experiments": [{"lab": {"lab_id": "cse01", "id": 1, "name": "DS"},
      "name": "Number Systems", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 661, "content_url": null, "simulation_url":
      null}, ........"id": 169, "name": "Computer Architecture and Organization"},
      "name": "CPU Design", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 1406, "content_url":
      "http://virtual-labs.ac.in/labs/cse10/comp.html", "simulation_url":
      "http://virtual-labs.ac.in/labs/cse10/comp.html"}], "status": "Hosted",
      "repo_url": "https://bitbucket.org/virtual-labs/cse10-cse10", "is_phase_2_lab":
      null, "remarks": "Completed", "technologies": [{"version": null, "foss": true,
      "id": 1, "name": "php5"}, {"version": null, "foss": true, "id": 2, "name":
      "apache2"}, "hosted_url": "http://deploy.virtual-labs.ac.in/labs/cse10/"}]
        
              

/technologies/<:id>/labs?query_param1=val1&query_param2=val2

  • GET -
    • Example Request
      /technologies/1/labs?lab_id=cse01
              
    • Example Result
      [{"discipline": {"dnc_email": "[email protected]", "discipline_id":
      "cse", "id": 6, "dnc": "Prof. Suresh Purini", "name": "Computer Science and
      Engineering"}, "lab_id": "cse01", "name": "DS", "hosted_on": null,
      "type_of_lab": {"type": "Simulation", "id": 1}, "institute": {"pic_email":
      "[email protected]", "name": "IIIT Hyderabad", "pic":
      "Prof. Venkatesh Choppella", "iic_email": "[email protected]", "iic":
      "Prof. Raghu Reddy", "id": 1, "institute_id": "iiith"}, "is_web_2_compliant":
      null, "experiments": [{"lab": {"lab_id": "cse01", "id": 1, "name": "DS"},
      "name": "Number Systems", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 661, "content_url": null, "simulation_url":
      null}, ........ {"lab": {"lab_id": "cse01", "id": 1, "name": "DS"}, "name":
      "Minimum Spanning Trees", "content_hosted_on": null, "technologies": [],
      "simulation_hosted_on": null, "id": 669, "content_url": null, "simulation_url":
      null}], "status": "Hosted", "repo_url":
      "https://bitbucket.org/virtual-labs/cse01-ds_new", "is_phase_2_lab": true,
      "remarks": "Completed ", "technologies": [{"version": null, "foss": true, "id":
      1, "name": "php5"}, {"version": null, "foss": true, "id": 2, "name":
      "apache2"}, {"version": null, "foss": null, "id": 37, "name": "flash plugin"}],
      "developers": [{"institute": {"pic_email": "[email protected]",
      "name": "IIIT Hyderabad", "pic": "Prof. Venkatesh Choppella", "iic_email":
      "[email protected]", "iic": "Prof. Raghu Reddy", "id": 1, "institute_id":
      "iiith"}, "id": 31, "name": "Kishore Kothapalli", "email":
      "[email protected]"}], "integration_level": {"id": 6, "level": 5}, "id": 1,
      "hosted_url": "http://virtual-labs.ac.in/labs/cse01/"}]
              

/technologies?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /technologies?name=java
              
    • Example Result
      [{"version": null, "foss": true, "id": 3, "name": "java"}]
              

/developers

  • Parameters
NameDescription
idIndicates the unique id of developer Example Value: 1
nameIndicates name of the lab developer Example Value: B. Yegnanarayana
emailIndicates email of the lab developer Example Value: [email protected]
institute_idIndicates the id of the institute. Example Value: 1
  • GET
    • Example Request
      /developers
              
    • Example Result
      [{"institute": {"pic_email": "[email protected]", "name": "IIIT
      Hyderabad", "pic": "Prof. Venkatesh Choppella", "iic_email":
      "[email protected]", "iic": "Prof. Raghu Reddy", "id": 1, "institute_id":
      "iiith"}, "id": 1, "name": "Abhijit Mitra", "email": "[email protected]"},
      {"institute": {"pic_email": "[email protected]", "name": "College of
      Engineering, Pune", "pic": "Prof. Sudhir Agashe", "iic_email":
      "[email protected]", "iic": "S. U Ghumbre", "id": 11, "institute_id":
      "coep"}, "id": 2, "name": "A. D. Sahasrabudhe", "email": "[email protected]"},
      ..... {"institute": {"pic_email": "[email protected]", "name":
      "IIIT Hyderabad", "pic": "Prof. Venkatesh Choppella", "iic_email":
      "[email protected]", "iic": "Prof. Raghu Reddy", "id": 1, "institute_id":
      "iiith"}, "id": 89, "name": "B. Yegnanarayana", "email": "[email protected]"}]
              
  • POST
    • Example Request
        data = {
       "email":"[email protected]",
       "name":"Madhavi",
       "institute":{"id":1}
      }
              
    • Example Result
         {
        "email": "[email protected]", 
        "id": 90, 
        "institute": {
          "id": 1, 
          "iic": "Prof. Raghu Reddy", 
          "iic_email": "[email protected]", 
          "institute_id": "iiith", 
          "name": "IIIT Hyderabad", 
          "pic": "Prof. Venkatesh Choppella", 
          "pic_email": "[email protected]"
        }, 
        "name": "Madhavi"
      }
              

/developers/int:id

  • GET -
    • Example Request
      /developers/90 
              
    • Example Result
      {
        "email": "[email protected]", 
        "id": 90, 
        "institute": {
          "id": 1, 
          "iic": "Prof. Raghu Reddy", 
          "iic_email": "[email protected]", 
          "institute_id": "iiith", 
          "name": "IIIT Hyderabad", 
          "pic": "Prof. Venkatesh Choppella", 
          "pic_email": "[email protected]"
        }, 
        "name": "Madhavi"
      }
              
  • PUT
  • DELETE
    • Example Result
      {
        "id": "90", 
        "status": "success"
      }
              

/developers?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -

/experiments

  • Parameters
NameDescription
idIndicates the unique id of experiment Example Value: 1
lab_idIndicates id of the lab to which experiment belongs Example Value: 1
nameReturns name of the experiment Example Value: Astronomical distances using Cepheid variables
content_urlRetrieves the url, where one can find the content of experiment Example Value: http://iitk.vlab.co.in/?sub=27&brch=83&sim=1218&cnt=1
simulation_urlRetrieves the url, where simulation of the experiment is present Example Value: http://iitk.vlab.co.in/?sub=27&brch=83&sim=1218&cnt=4
content_on_idid of the hosting platform on which the content is hosted Example Value: 1
simulation_on_idid of the hosting platform on which the simulation is hosted Example Value: 1
  • GET
    • Example Request
      /experiments
              
    • Example Result
      [{"lab": {"lab_id": "phy-sc31", "id": 162, "name": "Low Temp Electrical
      Transport and Property Measurements"}, "name": "Colossal Magneto-Resistive
      (CMR) effect", "content_hosted_on": {"id": 4, "name": "ELSE"}, "technologies":
      [], "simulation_hosted_on": {"id": 4, "name": "ELSE"}, "id": 1, "content_url":
      "http://iitk.vlab.co.in/?sub=27&brch=82&sim=226&cnt=557", "simulation_url":
      null}, {"lab": {"lab_id": "phy-sc30", "id": 161, "name": "Optical Device
      Characterizations"},.....Interactive Lab"}, "name": "The Rare Periodicals
      Archive", "content_hosted_on": {"id": 4, "name": "ELSE"}, "technologies": [],
      "simulation_hosted_on": {"id": 4, "name": "ELSE"}, "id": 1515, "content_url":
      "http://iitg.vlab.co.in/?sub=72&brch=169&sim=832&cnt=1", "simulation_url":
      "http://iitg.vlab.co.in/?pg=topMenu&id=5"}]
              
  • POST
    • Example Request
      {
      "name":"testexpt",
      "lab":{"id":1}
      }
              
    • Example Result
      {
        "content_hosted_on": null, 
        "content_url": null, 
        "id": 1516, 
        "lab": {
          "id": 1, 
          "lab_id": "cse01", 
          "name": "DS"
        }, 
        "name": "testexpt", 
        "simulation_hosted_on": null, 
        "simulation_url": null, 
        "technologies": []
      }
              

/experiments/int:id

  • GET -
    • Example Request
      /experiments/1516 
              
    • Example Result
      {
        "content_hosted_on": null, 
        "content_url": null, 
        "id": 1516, 
        "lab": {
          "id": 1, 
          "lab_id": "cse01", 
          "name": "DS"
        }, 
        "name": "testexpt", 
        "simulation_hosted_on": null, 
        "simulation_url": null, 
        "technologies": []
      }
              
  • PUT
    • Example Request
       {
      "name":"exptext"
      }
              
    • Example Result
      {
        "content_hosted_on": null, 
        "content_url": null, 
        "id": 1516, 
        "lab": {
          "id": 1, 
          "lab_id": "cse01", 
          "name": "DS"
        }, 
        "name": "exptext", 
        "simulation_hosted_on": null, 
        "simulation_url": null, 
        "technologies": []
      }
              
  • DELETE
    • Example Result
      {
        "id": "1516", 
        "status": "success"
      }
              

/experiments?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /experiments?name=Colossal Magneto-Resistive (CMR) effect
              
    • Example Result
      [{"lab": {"lab_id": "phy-sc31", "id": 162, "name": "Low Temp Electrical
      Transport and Property Measurements"}, "name": "Colossal Magneto-Resistive
      (CMR) effect", "content_hosted_on": {"id": 4, "name": "ELSE"}, "technologies":
      [], "simulation_hosted_on": {"id": 4, "name": "ELSE"}, "id": 1, "content_url":
      "http://iitk.vlab.co.in/?sub=27&brch=82&sim=226&cnt=557", "simulation_url":
      null}]
              

/integration_levels

  • Parameters
NameDescription
idIndicates the unique id of the Integration Level. Example Value: 1
levelSpecifies the integration level of Lab. Example Value: 1
  • GET
    • Example Request
      /integration_levels
              
    • Example Result
      [{"id": 1, "level": 0}, {"id": 2, "level": 1}, {"id": 3, "level": 2}, {"id": 4,
      "level": 3}, {"id": 5, "level": 4}, {"id": 6, "level": 5}, {"id": 7, "level":
      6}]
              
  • POST
    • Example Request
      {
      "level":7
      }
              
    • Example Result
      {
        "id": 8, 
        "level": 7
      }
              

/integration_levels/int:id

  • GET -
    • Example Request
      /integration_levels/1
              
    • Example Result
      {
        "id": 1, 
        "level": 0
      }
              
  • PUT
    • Example Request
      {
      "level":9
      }
              
    • Example Result
       {
        "id": 1, 
        "level": 9
      }  
              
  • DELETE
    • Example Result
       {
      "id": "9", 
      "status": "success"
       }
              

/integration_levels?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /integration_levels?level=2
              
    • Example Result
      [{"id": 3, "level": 2}]
              

/hosting_platforms

  • Parameters
NameDescription
idIndicates the unique id of the Hosting Platform. Example Value: 1
nameSpecifies the name of the Hosting Platform. Example Value: AWS
  • GET
    • Example Request
      /hosting_platforms
              
    • Example Result
      [{"id": 3, "name": "AWS"}, {"id": 2, "name": "BADAL"}, {"id": 4, "name":
      "ELSE"}, {"id": 1, "name": "IIIT"}]
              
  • POST
    • Example Request
      {
      "name":"Desktop"
      }
              
    • Example Result
      {
        "id": 5, 
        "name": "Desktop"
      }
              

/hosting_platforms/int:id

  • GET -
    • Example Request
      /hosting_platforms/1
              
    • Example Result
      {
        "id": 1, 
        "name": "IIIT"
      }
              
  • PUT
    • Example Request
      {
      "name":"IIIT Infrastructure"
      }
              
    • Example Result
      {
        "id": 1, 
        "name": "IIIT Infrastructure"
      }
              
  • DELETE
    • Example Result
      {
        "id": "5", 
        "status": "success"
      }
              

/hosting_platforms?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /hosting_platforms?name=AWS
              
    • Example Result
      [{"id": 3, "name": "AWS"}]
              

/type_of_labs

  • Parameters
NameDescription
idIndicates the unique id of the Type of Lab. Example Value: 1
typeSpecifies the type of the Lab. Example Value: Remote Triggered
  • GET
    • Example Request
      /type_of_labs
              
    • Example Result
      [{"type": "Pilot Phase", "id": 4}, {"type": "Remote Triggered", "id": 2},
      {"type": "Simulation and Remote Triggered", "id": 3}]
              
  • POST
    • Example Request
      {
      "type":"Simulation"
      }
      
              
    • Example Result
      {
        "id": 9, 
        "type": "Simulation"
      }
              

/type_of_labs/int:id

  • GET -
    • Example Request
      /type_of_labs/1
              
    • Example Result
      {
        "id": 2, 
        "type": "Remote Triggered"
      }
              
  • PUT
    • Example Request
      {"type":"simulation"}
              
    • Example Result
      {
        "id": 9, 
        "type": "simulation"
      }
              
  • DELETE
    • Example Result
      {
        "id": "1", 
        "status": "success"
      }
              

/type_of_labs?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /type_of_labs?type=simulation
              
    • Example Result
      [{"type": "simulation", "id": 9}]
              

/feedback

  • Parameters
NameDescription
idIndicates the unique id of the Feedback. Example Value: 1
lab_idSpecifies the id of the Lab. Example Value: 1
experiment_idSpecifies the id of the Experiment. Example Value: 1
user_nameIndicates the name of the user. Example Value: John
user_emailIndicates the email of the user. Example Value: [email protected]
user_instituteIndicates the institute of the user. Example Value: IIIT-H
timeIndicates the time of creating this feedback. Example Value: 2015-10-14T11:13:50
ipIndicates the ip of the user machine. Example Value: 10.100.1.7
type_of_userIndicates the role of the user. Example Value: Student
how_useful_are_labsText data to be filled by the user.
suggestions_in_generalText data to be filled by the user.
feedback_about_experimentText data to be filled by the user.
suggestions_about_experimentText data to be filled by the user.
feedback_about_labText data to be filled by the user.
suggestions_about_labText data to be filled by the user.
  • GET
    • Example Request
      /feedback
              
    • Example Result
      [{"suggestions_about_lab": null, "ip": "10.100.1.7", "lab": null, "id": 1,
      "suggestions_in_general": "test", "feedback_about_experiment": null,
      "how_useful_are_labs": "", "feedback_about_lab": null,
      "suggestions_about_experiment": null, "experiment": null, "time":
      "2015-10-14T11:13:50",........  "lab": null, "id": 8, "suggestions_in_general":
      "test", "feedback_about_experiment": null, "how_useful_are_labs": null,
      "feedback_about_lab": null, "suggestions_about_experiment": null, "experiment":
      null, "time": "2016-02-01T07:10:26", "type_of_user": null, "user_institute":
      null, "user_name": "Anon", "user_email": "[email protected]"}]
              
  • POST
    • Example Request
      {
      "user_name":"john",
      "user_email":"[email protected]",
      "ip":"1.0.0.1"
      }
              
    • Example Result
      {
        "experiment": null, 
        "feedback_about_experiment": null, 
        "feedback_about_lab": null, 
        "how_useful_are_labs": null, 
        "id": 9, 
        "ip": "1.0.0.1", 
        "lab": null, 
        "suggestions_about_experiment": null, 
        "suggestions_about_lab": null, 
        "suggestions_in_general": null, 
        "time": "2016-02-01T10:32:24", 
        "type_of_user": null, 
        "user_email": "[email protected]", 
        "user_institute": null, 
        "user_name": "john"
      }
              

/feedback/int:id

  • GET -
    • Example Request
      /feedback/1
              
    • Example Result
      {
        "experiment": null, 
        "feedback_about_experiment": null, 
        "feedback_about_lab": null, 
        "how_useful_are_labs": "", 
        "id": 1, 
        "ip": "10.100.1.7", 
        "lab": null, 
        "suggestions_about_experiment": null, 
        "suggestions_about_lab": null, 
        "suggestions_in_general": "test", 
        "time": "2015-10-14T11:13:50", 
        "type_of_user": null, 
        "user_email": "[email protected]", 
        "user_institute": null, 
        "user_name": "Anon"
      }
              

/feedback?query_param1=val1&query_param2=val2&..query_paramn=valn

  • GET -
    • Example Request
      /feedback?user_name=john
              
    • Example Result
      [{"suggestions_about_lab": null, "ip": "1.0.0.1", "lab": null, "id": 9,
      "suggestions_in_general": null, "feedback_about_experiment": null,
      "how_useful_are_labs": null, "feedback_about_lab": null,
      "suggestions_about_experiment": null, "experiment": null, "time":
      "2016-02-01T10:32:24", "type_of_user": null, "user_institute": null,
      "user_name": "john", "user_email": "[email protected]"}]