polydb:rest:intro

Differences

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

Link to this comparison view

Next revision
Previous revision
Last revisionBoth sides next revision
polydb:rest:intro [2020/03/31 08:58] – created paffenholzpolydb:rest:intro [2023/03/24 21:52] – [polyDB REST API] paffenholz
Line 5: Line 5:
 Base path: Base path:
 <code> <code>
-https://polydb.org/beta/rest/current/+https://polydb.org/rest/current/
 </code> </code>
 +
 +The API implements the following endpoints:
 +  * Info on collections
 +    * section
 +    * sections
 +    * collection
 +    * collections
 +  * Schema
 +    * schema
 +  * Querying the Database
 +    * find
 +    * find_one
 +    * count
 +    * distinct
 +    * id
 +
 +Some examples are below. For a full documentation of all endpoints with examples for data and code see [[https://polymake.org/polytopes/paffenholz/polyDB-rest.html|here]].
  
 ==== Obtain info on available collections ==== ==== Obtain info on available collections ====
  
-=== Section ===+=== section ===
  
-Section Documentation and a lsit of subsections and collections in this 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 46: Line 63:
  
 === sections === === sections ===
 +
 +This returns a list of subsections of the given one
  
 === collection === === collection ===
  
 +This prints full information on a collection. The collection is given as 
 <code> <code>
-/collection/Tropical/SchlaefliFan+/section/<sectionname>/<subsectionname>/.../<collectionname> 
 +</code> 
 + 
 +Here is an example: 
 +<code> 
 +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> 
 + 
 +Example: 
 +<code> 
 +https://polydb.org/rest/current/collections/Tropical/ 
 +</code> 
 +returns 
 +<code> 
 +
 + 
 +    "Tropical.Cubics", 
 +    "Tropical.Polytropes", 
 +    "Tropical.SchlaefliFan", 
 +    "Tropical.TOM" 
 + 
 +]
 </code> </code>
  
Line 63: Line 105:
 === find === === find ===
  
-Example+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 === === 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>
 +
  
 ==== Obtain the JSON Schema for the data ==== ==== Obtain the JSON Schema for the data ====
Line 86: Line 152:
 Example Example
 <code> <code>
-/schema/Polytopes/Lattice/Reflexive+https://polydb.org/rest/current/schema/Polytopes/Lattice/Reflexive
 </code> </code>
  
  • polydb/rest/intro.txt
  • Last modified: 2023/03/24 21:55
  • by paffenholz