06688d0dc19b6a63b7b7dc46372fe04d7326e521
[wolnelektury.git] / src / api / templates / api / main.html
1 {% extends "2022/base_simple.html" %}
2 {% load i18n %}
3 {% load build_absolute_uri from fnp_common %}
4
5 {% block settings %}
6   {% load title %}
7   {% trans "WolneLektury.pl API" as title %}
8   {% title title %}
9 {% endblock %}
10
11 {% block title %}{% trans "WolneLektury.pl API" %}{% endblock %}
12
13 {% block bodyid %}api{% endblock %}
14
15 {% block body %}
16   <h1>API</h1>
17
18   <div class="normal-text white-box">
19     <p>
20       {% url "api" as u %}
21       {% blocktrans with u=u|build_absolute_uri:request %}
22         WolneLektury.pl API resides under <code>{{ u }}</code>.
23         You can use it to access information about books, their fragments and
24         their metadata.
25       {% endblocktrans %}
26     </p>
27
28     <p>
29       {% blocktrans %}
30         Default data serialization format is
31         <a href="http://en.wikipedia.org/wiki/JSON">JSON</a>,
32         but you can also use XML by appending <code>?format=xml</code>
33         query parameter to each URL.
34       {% endblocktrans %}
35     </p>
36
37     <p>
38       {% blocktrans %}
39         The URLs in WolneLektury.pl API are:
40       {% endblocktrans %}
41     </p>
42
43     <ul>
44       <li><a href='{% url "catalogue_api_book_list" "" %}'>
45         {% url "catalogue_api_book_list" "" %}</a> – {% trans "All books" %}</li>
46       <li><a href='{% url "catalogue_api_audiobook_list" "" %}'>
47         {% url "catalogue_api_audiobook_list" "" %}</a> – {% trans "Audiobooks" %}</li>
48       <li><a href='{% url "catalogue_api_daisy_list" "" %}'>
49         {% url "catalogue_api_daisy_list" "" %}</a> – {% trans "DAISY" %}</li>
50
51       <li><a href='{% url "catalogue_api_tag_list" "author" %}'>
52         {% url "catalogue_api_tag_list" "author" %}</a> – {% trans "List of all authors" %}</li>
53       <li><a href='{% url "catalogue_api_tag_list" "epoch" %}'>
54         {% url "catalogue_api_tag_list" "epoch" %}</a> – {% trans "List of all epochs" %}</li>
55       <li><a href='{% url "catalogue_api_tag_list" "genre" %}'>
56         {% url "catalogue_api_tag_list" "genre" %}</a> – {% trans "List of all genres" %}</li>
57       <li><a href='{% url "catalogue_api_tag_list" "kind" %}'>
58         {% url "catalogue_api_tag_list" "kind" %}</a> – {% trans "List of all kinds" %}</li>
59
60       <li><a href='{% url "catalogue_api_tag_list" "theme" %}'>
61         {% url "catalogue_api_tag_list" "theme" %}</a> – {% trans "List of all themes" %}</li>
62       <li><a href='{% url "catalogue_api_collections" %}'>
63         {% url "catalogue_api_collections" %}</a> – {% trans "Collections" %}</li>
64     </ul>
65
66     <p>
67       {% url "catalogue_api_book" "studnia-i-wahadlo" as e1 %}
68       {% url "catalogue_api_tag" "author" "edgar-allan-poe" as e2 %}
69       {% blocktrans %}
70         Each element of those lists contains a link (in a "href") attibute
71         which points to individual resource's details, i.e.:
72         <a href="{{e1}}">{{e1}}</a> or
73         <a href="{{e2}}">{{e2}}</a>.
74       {% endblocktrans %}
75     </p>
76
77     <p>
78       {% blocktrans with "/api/authors/adam-mickiewicz/kinds/liryka/books/" as e %}
79         You can combine authors, epochs, genres and kinds to find only books matching
80         those criteria. For instance:
81         <a href="{{e}}">{{e}}</a>.
82       {% endblocktrans %}
83     </p>
84
85     <p>
86       {% blocktrans with "/api/authors/adam-mickiewicz/kinds/liryka/parent_books/" as e %}
87         If you only want top-level books and not all the children, you can use /parent_books/, as in:
88         <a href="{{e}}">{{e}}</a>.
89       {% endblocktrans %}
90     </p>
91
92     <p>
93       {% url "catalogue_api_fragment" "sen-nocy-letniej" "1290526312912-3814598192" as f %}
94       {% blocktrans with "/api/authors/william-shakespeare/themes/zabawa/fragments/" as e %}
95         The same way, using also books and themes, you can search for a list of fragments:
96         <a href="{{e}}">{{e}}</a>.
97         Again, each entry has a "href" attribute which links to the fragment's details, i.e.:
98         <a href="{{f}}">{{f}}</a>.
99       {% endblocktrans %}
100     </p>
101   </div>
102 {% endblock %}