Changes for page API V2.0

Last modified by Treyfane Dingo on 2024/03/10 02:07

From version 1.1
edited by Treyfane Dingo
on 2023/05/27 01:17
Change comment: There is no comment for this version
To version 10.1
edited by Treyfane Dingo
on 2024/02/11 19:43
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -API V1.0
1 +API V2.0
Parent
... ... @@ -1,1 +1,1 @@
1 -L\.A\.S\.S\.I\.E\..WebHome
1 +L\.A\.S\.S\.I\.E\..System Information.WebHome
Content
... ... @@ -1,6 +1,6 @@
1 -The L.A.S.S.I.E. API V 1.0 can be reached via
1 +The L.A.S.S.I.E. API V 2.0 can be reached via
2 2  
3 -{{{https://www.furcom.org/api/lassie/v1.0}}}
3 +{{{https://api.lassie.online/v2.0}}}
4 4  
5 5  === Required POST Parameters ===
6 6  
... ... @@ -10,11 +10,11 @@
10 10  * request
11 11  * command (optional)
12 12  
13 -The API-Key has to be set in "System Settings". Preferrably a longer and unique key (like a MD5SUM).
13 +The API-Key has to be set in "System Settings" → "API Keys". Preferrably a longer and unique key (like a MD5SUM). An specific API key can only be used for a corresponding request type.
14 14  
15 -Requests and Commands
16 -
17 -|=Request|=Command|=Description
15 +(% style="width:50%" %)
16 +|=(% colspan="3" %)Requests and Commands
17 +|=(% scope="col" %)Request|=Command|=Description
18 18  |(% rowspan="4" %)lostandfounddb|lostandfound|(Default) Returns all active (not returned) lost & found items from the Lost & Found Database
19 19  |lost|Returns all active (not returned) lost items from the Lost & Found Database
20 20  |found|Returns all active (not returned) found items from the Lost & Found Database
... ... @@ -25,14 +25,23 @@
25 25  
26 26  === Example (CURL) ===
27 27  
28 -{{{curl -X POST -d "apikey=ae629a834729fd3aac6d1f827b1793b0" -d "request=lostandfounddb" https://www.furcom.org/api/lassie/v1.0}}}
28 +{{{curl -X POST -d "apikey=ae629a834729fd3aac6d1f827b1793b0" -d "request=lostandfounddb" https://api.lassie.online/v2.0}}}
29 29  
30 30  This example will display the entire Lost & Found Database of FTC.
31 31  
32 -{{{curl -X POST -d "apikey=ae629a834729fd3aac6d1f827b1793b0" -d "request=lostandfounddb" -d "command=lost" https://www.furcom.org/api/lassie/v1.0}}}
32 +{{{curl -X POST -d "apikey=ae629a834729fd3aac6d1f827b1793b0" -d "request=lostandfounddb" -d "command=lost" https://api.lassie.online/v2.0}}}
33 33  
34 34  This example will display only the lost items of the Lost & Found Database of FTC.
35 35  
36 +=== Test API Keys ===
37 +
38 +The API Keys for FurtherTestCon (FTC) are:
39 +
40 +{{{ae629a834729fd3aac6d1f827b1793b2 Attendee Database
41 +ae629a834729fd3aac6d1f827b1793b1 Operatives Database
42 +ae629a834729fd3aac6d1f827b1793b0 Lost & Found Database
43 +ae629a834729fd3aac6d1f827b1793b3 Briefings Database}}}
44 +
36 36  === Output ===
37 37  
38 38  The output of an valid request to the API will be a JSON-Object like the following examples:
... ... @@ -39,13 +39,52 @@
39 39  
40 40  ==== Lost & Found Database ====
41 41  
42 -{{{{"data":[{"id":"1","image":"https:\/\/www.furcom.org\/lassie\/images\/lostandfound_db\/9a7a1039bcbe887ed2f57a5b64c56c51.png","title":"A Piece of Cake","description":"Just another piece of cake","status":"F","lost_timestamp":"","found_timestamp":"2021-06-22 19:08:16","return_timestamp":""}]}}}}
51 +{{box}}
52 +{
53 + "data": [
54 + {
55 + "id": 1925,
56 + "image": null,
57 + "thumb": null,
58 + "title": "Image",
59 + "description": "invisible, watercolour, found in Schroedinger's box",
60 + "status": "F",
61 + "lost_timestamp": null,
62 + "found_timestamp": "2023-11-24 00:27:24",
63 + "return_timestamp": null
64 + },
65 + {
66 + "id": 1921,
67 + "image": "https:~/~/api.lassie.furcom.org/images/lostandfound_db/fe3c6670a33d8f4199ffa95a5c23b622.png",
68 + "thumb": "https:~/~/api.lassie.furcom.org/images/lostandfound_db/thumbnail/fe3c6670a33d8f4199ffa95a5c23b622.png",
69 + "title": "Sense of Taste",
70 + "description": "lost in Hotel Restaurant",
71 + "status": "L",
72 + "lost_timestamp": "2023-11-01 16:13:02",
73 + "found_timestamp": null,
74 + "return_timestamp": null
75 + },
76 + {
77 + "id": 1920,
78 + "image": "https:~/~/api.lassie.furcom.org/images/lostandfound_db/bc7c343fb3807d4d41b7e04fa909aad5.png",
79 + "thumb": "https:~/~/api.lassie.furcom.org/images/lostandfound_db/thumbnail/bc7c343fb3807d4d41b7e04fa909aad5.png",
80 + "title": "Vape",
81 + "description": "black / rainbow, \"GEEKVAPE\", found at Open Stage",
82 + "status": "F",
83 + "lost_timestamp": null,
84 + "found_timestamp": "2023-09-30 23:52:38",
85 + "return_timestamp": null
86 + }
87 + ]
88 +}
89 +{{/box}}
43 43  
44 -Lost & Found fieldset
45 -
46 -|=Key|=Field|=NULL
91 +(% style="width:50%" %)
92 +|=(% colspan="3" %)Lost & Found fieldset
93 +|=(% scope="col" %)Key|=Field|=NULL
47 47  |id|Numeric value, PRIMARY KEY|-
48 48  |image|URL|null
96 +|thumb|URL|null
49 49  |title|Text|empty string
50 50  |description|Text|empty string
51 51  |status|L ~| F ~| R (Lost, Found or Returned)|-
... ... @@ -55,11 +55,26 @@
55 55  
56 56  ==== Briefings Database ====
57 57  
58 -{{{{"data":[{"id":"17","class":"P","topic":"UPDATE - Security News 21.12.2021","content":"<div id=\"briefing_content_content\"><div><b>Germany cancelled New Years Eve<\/b><\/div><div>Although it might calendar wise be unwise, Germany just cancelled New Years Eve. Further information can be obtained elsewhere.<\/div><div><br><\/div><div><b>Some things found<\/b><\/div><div>Security\r\n wants to remind all attendees that information about lost or found \r\nitems can be obtained via the APP or the Website of the convention. Lost\r\n &amp; Found is maintained by security and located in the security \r\noffice.<\/div><div><br><\/div><div><b>Quote of the day<\/b><\/div><div>\"Where is your neighbor?\"<\/div><div>\"He's in the garden ...\"<\/div><div>\"I can't see him ...\"<\/div><div>\"Oh, you'd have to dig quite a bit ...\"<br><\/div><div><br><\/div><\/div>","ops_id":"112","datetime_creation":"2021-12-21 22:19:45","datetime_lastchange":"","datetime":"2021-12-21 22:19:45"}]}}}}
106 +{{box}}
107 +{
108 + "data": [
109 + {
110 + "id": "17",
111 + "class": "P",
112 + "topic": "UPDATE - Security News 21.12.2021",
113 + "content": "<div id=\"briefing_content_content\"><div><b>Germany cancelled New Years Eve</b></div><div>Although it might calendar wise be unwise, Germany just cancelled New Years Eve. Further information can be obtained elsewhere.</div><div><br></div><div><b>Some things found</b></div><div>Security\r\n wants to remind all attendees that information about lost or found \r\nitems can be obtained via the APP or the Website of the convention. Lost\r\n &amp; Found is maintained by security and located in the security \r\noffice.</div><div><br></div><div><b>Quote of the day</b></div><div>\"Where is your neighbour?\"</div><div>\"He's in the garden ...\"</div><div>\"I can't see him ...\"</div><div>\"Oh, you'd have to dig quite a bit ...\"<br></div><div><br></div></div>",
114 + "ops_id": "112",
115 + "datetime_creation": "2021-12-21 22:19:45",
116 + "datetime_lastchange": "",
117 + "datetime": "2021-12-21 22:19:45"
118 + }
119 + ]
120 +}
121 +{{/box}}
59 59  
60 -Briefings fieldset
61 -
62 -|=Key|=Field|=NULL
123 +(% style="width:50%" %)
124 +|=(% colspan="3" %)Briefings fieldset
125 +|=(% scope="col" %)Key|=Field|=NULL
63 63  |id|Numeric value, PRIMARY KEY|-
64 64  |class|P (hopefully only P)|-
65 65  |topic|Text|empty string
... ... @@ -71,19 +71,30 @@
71 71  
72 72  ==== Empty Object ====
73 73  
74 -{{{{"data":[]}}}}
137 +{{box}}
138 +{
139 + "data": []
140 +}
141 +{{/box}}
75 75  
76 76  === Error Codes ===
77 77  
78 78  The API will send a JSON-Object upon errors
79 79  
80 -{{{{"error":{"code":"503","message":"Maintenance Mode enabled - please try again later"}}}}}
147 +{{box}}
148 +{
149 + "error": {
150 + "code": "503",
151 + "message": "Maintenance Mode enabled - please try again later"
152 + }
153 +}
154 +{{/box}}
81 81  
82 82  The following error codes are implemented:
83 83  
84 -Error Codes
85 -
86 -|=Code|=Message|=Description
158 +(% style="width:50%" %)
159 +|=(% colspan="3" %)Error Codes
160 +|=(% scope="col" %)Code|=Message|=Description
87 87  |401|Unauthorized|API-Key is not correct or no API-Key provided.
88 88  |500|Internal server error|Most likely the mySQL-Connection failed. A certain Dingo might be rather busy at this time.
89 89  |501|Bad or no request|Whatever you send, it wasn't a valid request.