polydb:rest:intro

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
polydb:rest:intro [2020/03/31 08:58] – created paffenholzpolydb:rest:intro [2023/03/24 21:55] (current) paffenholz
Line 5: Line 5:
 Base path: Base path:
 <code> <code>
-https://polydb.org/beta/rest/current/+https://polydb.org/rest/current/
 </code> </code>
  
-==== Obtain info on available collections ====+The API implements the following endpoints: 
 +  * Info on collections 
 +    * section 
 +    * sections 
 +    * collection 
 +    * collections 
 +  * Schema 
 +    * schema 
 +  * Querying the Database 
 +    * find 
 +    * find_one 
 +    * count 
 +    * distinct 
 +    * id
  
-=== Section ===+Some examples are below. 
  
-Section Documentation and a lsit of subsections and collections in this section:+The full documentation of all endpoints with examples for data and code **[[https://polymake.org/polytopes/paffenholz/polyDB-rest.html|is here]]**. 
 + 
 +==== Some examples for the REST API ==== 
 + 
 +=== Obtain info on available collections === 
 + 
 +== section == 
 + 
 +This returns section documentation and a list of subsections and collections in this section:
 <code> <code>
-/section/<sectionname>/<subsectionname>/... +https://polydb.org/rest/current/section/<sectionname>/<subsectionname>/... 
 </code> </code>
 with possible parameters <code>recursive={0,1}</code> and <code>short={0,1}</code>. Example: with possible parameters <code>recursive={0,1}</code> and <code>short={0,1}</code>. Example:
 <code> <code>
-/section/Polytopes?recursive=1+https://polydb.org/rest/current/section/Polytopes?recursive=1
 </code> </code>
 returns returns
Line 45: Line 66:
 </code> </code>
  
-=== sections ===+== sections ==
  
-=== collection ===+This returns a list of subsections of the given one
  
 +== collection ==
 +
 +This prints full information on a collection. The collection is given as 
 +<code>
 +/section/<sectionname>/<subsectionname>/.../<collectionname>
 +</code>
 +
 +Here is an example:
 <code> <code>
-/collection/Tropical/SchlaefliFan+https://polydb.org/rest/current/collection/Tropical/SchlaefliFan
 </code> </code>
  
-=== collections ===+== collections ==
  
 +This lists all collections contained in a section.
 <code> <code>
-/collections/Tropical/+/section/<sectionname>/<subsectionname>/.../
 </code> </code>
  
-==== Query Data ====+Example: 
 +<code> 
 +https://polydb.org/rest/current/collections/Tropical/ 
 +</code> 
 +returns 
 +<code> 
 +[
  
-=== find ===+    "Tropical.Cubics", 
 +    "Tropical.Polytropes", 
 +    "Tropical.SchlaefliFan", 
 +    "Tropical.TOM"
  
-Example+
 +</code> 
 + 
 +=== Query Data === 
 + 
 +== find == 
 + 
 +This endpoint does a general query on the given collection and returns a list of the results. You can set the options sort, limit, and skip. However, the query never returns more than 10 entries. 
 + 
 +Example:
 <code> <code>
-/find/Polytopes/Lattice/Reflexive?query={"N_VERTICES"%3A5}&limit=10&skip=100+https://polydb.org/rest/current/find/Polytopes/Lattice/Reflexive?query={"N_VERTICES"%3A5}&limit=10&skip=100
 </code> </code>
 +will return at most 10 reflexive polytopes with 5 vertices, skipping the first 100 matches.
  
-=== find_one ===+== find_one ==
  
-Example+This works as find, but returns at most one match. The option limit does not apply here. 
 + 
 +Example:
 <code> <code>
-/find_one/Polytopes/Lattice/Reflexive?query={"N_VERTICES"%3A5}+https://polydb.org/rest/current/find_one/Polytopes/Lattice/Reflexive?query={"N_VERTICES"%3A5}
 </code> </code>
 + 
  
 +== distinct ==
  
-=== distinct ===+== count == 
 + 
 +This counts the number of results that match a given query. Example: 
 +<code> 
 +https://polydb.org/rest/current/count/Polytopes/Combinatorial/01Polytopes?query={"N_VERTICES"%3A15} 
 +</code> 
 +returns 
 +<code> 
 +139983 
 +</code> 
 + 
 +== id == 
 + 
 +Returns a single document by its id. 
 + 
 +Example 
 +<code> 
 +https://polydb.org/rest/current/id/Polytopes/Combinatorial/01Polytopes/5d.15v.10f.C8 
 +</code>
  
-=== count === 
  
-==== Obtain the JSON Schema for the data ====+=== Obtain the JSON Schema for the data ===
  
-=== schema ===+== schema ==
  
 Example Example
 <code> <code>
-/schema/Polytopes/Lattice/Reflexive+https://polydb.org/rest/current/schema/Polytopes/Lattice/Reflexive
 </code> </code>
  
  • polydb/rest/intro.1585645096.txt.gz
  • Last modified: 2020/03/31 08:58
  • by paffenholz