remove API, it's not really intended to be a public API anyway
This commit is contained in:
parent
eb53030043
commit
1e1be9e7fd
55
API.md
55
API.md
|
@ -1,55 +0,0 @@
|
|||
# transbeam websocket api
|
||||
|
||||
- After opening the connection, the client sends an upload manifest to
|
||||
the server. This is a JSON object containing the following keys:
|
||||
- `files`: a list of metadata objects for all the files to be
|
||||
uploaded, in the exact order they will be sent. This list must
|
||||
contain at least 1 file and at most 256 files. Each file metadata
|
||||
object has the following keys, all required:
|
||||
- `name`: The name of the file. This will be sanitised on the
|
||||
server side, but the sanitisation library isn't especially
|
||||
restrictive; most Unicode code points will be allowed through
|
||||
as-is.
|
||||
- `size`: The exact size of the file, in bytes.
|
||||
- `modtime`: The modification time of the file, as milliseconds
|
||||
since the Unix epoch.
|
||||
- `lifetime`: an integer number of days the files should be kept
|
||||
for.
|
||||
- `password`: the uploader password.
|
||||
|
||||
- Once the server receives the metadata, it will respond with a
|
||||
JSON-encoded object containing at least the field `type`, and
|
||||
possibly other fields as well. The types of message, and their
|
||||
associated extra fields if any, are as follows:
|
||||
- `ready`: The server will accept the upload and is ready to receive
|
||||
data.
|
||||
- `code`: A code string that can be used to download the files,
|
||||
starting now.
|
||||
- `too_big`: The upload is rejected because the total size of the
|
||||
files is bigger than the server is willing to accept.
|
||||
- `max_size`: The maximum total upload size the server will
|
||||
accept. This is subject to change if the admin changes the
|
||||
config, or if the server's storage space is filling up.
|
||||
- `too_long`: The upload is rejected because the requested lifetime
|
||||
is longer than the server will allow.
|
||||
- `max_days`: The maximum number of days the client can request
|
||||
files be kept for.
|
||||
- `incorrect_password`: The password was incorrect.
|
||||
- `error`: A miscellaneous error has occurred.
|
||||
- `details`: A string with more information about the error.
|
||||
|
||||
If the message type is anything other than `ready`, the connection
|
||||
will be closed by the server.
|
||||
|
||||
- If the server is ready to receive files, the client begins sending
|
||||
chunks of data from the files, as raw binary blobs. The client must
|
||||
transmit each file's data in order from start to finish, and must
|
||||
transmit the files in the same order they were listed in the
|
||||
metadata. The size of the chunks isn't currently specified, and
|
||||
it's fine for a chunk to span the end of one file and the start of
|
||||
the next. After sending each chunk (that is, each complete
|
||||
websocket message), the client must wait for the server to
|
||||
acknowledge the chunk by sending back the string "ack", and then
|
||||
send the next chunk if there is one. Once all chunks have been sent
|
||||
and acknowledged, or once the server has sent a message other than
|
||||
"ack" to indicate an error, the connection will be closed.
|
Loading…
Reference in a new issue