Add basically API documentation

This commit is contained in:
Jonas Lochmann
2020-05-04 02:00:00 +02:00
parent ab16134a8e
commit d021497e52
149 changed files with 7811 additions and 39 deletions
+37
View File
@@ -0,0 +1,37 @@
# Mail (server) black- and whitelist
## mail server blacklist
### Problem
- some mail servers don't accept mails due to their spam filter
- users blame timelimit for it although their bad mail service is the problem
### Solution
- (external) monitoring
- the blacklist
### Description
The mail server blacklist is a list of servers to which no sign up mails are sent.
But instead of doing nothing, the client is informed about that so that it can tell
the user that this mail service is not supported and that he should use a mail address
at an other mail service.
## mail (server) whitelist
### Problem
- some users do run private server instances
- they do not want that someone else can use their instance
### Solution
- the whitelist
### Description
The whitelist contains mail servers and/ or mail addresses which should be allowed.
Users of mail addresses which are not in the whitelist are informed about that
so that they know that it is a private instance and that they can not use it.
+5
View File
@@ -0,0 +1,5 @@
## Premium concept
- some features are locked after some days
- unlocking these features again requires a purchase
- purchases can be added manually using the [admin API](../api/admin.md)
+23
View File
@@ -0,0 +1,23 @@
# Primary device concept
One (child) user can be assigned to multiple devices. Without synchronization,
this can result in using the time limits once per device and not only once.
Due to that, there is (by default) the limitation that a child must select
one device for using limited Apps.
There can be one or zero primary devices. This is required for the primary device
switching process and for the initial state.
## assign process
- sync
- try to assign the user using the [child API](../api/child.md)
- if the user is assigned to a different device, request a logout using the [child API](../api/child.md) and retry it
- this should not be done in a loop without delays
- using the [websocket](./websocket.md) it is possible to get changes without polling
- requesting a sign out should be repeated all few seconds
## unassign process
- sync
- unassign the user using the [child API](../api/child.md)
+5
View File
@@ -0,0 +1,5 @@
# Status message
- clients should show the status message if there is one which is not an empty string
- can be used to announce server maintenances
- can set using the [admin API](../api/admin.md)