The User Object

The User object represents the extremely minimal data available about a user. Users can be created, queried, and deleted.

The endpoint is https://api.usebeacon.app/v1/user.php

User Structure

{
  "user_id": "f08d5f69-214b-4e1c-910b-9ea57406f8c5",
  "public_key": "-----BEGIN PUBLIC KEY-----\nMIIBIDAN...\n-----END PUBLIC KEY-----"
}

GET

Authentication is not required. Must supply one or more user UUIDs as the final path component. Listing users is not allowed and will result in a 405 result code. UUIDs are not case sensitive.

GET /beacon/api/user.php/f08d5f69-214b-4e1c-910b-9ea57406f8c5 HTTP/1.1
Host: usebeacon.app

HTTP/1.1 200 OK
Content-Type: text/plain

{ user structure }

If none of the users were found, a 404 result code will be returned. If a single user is found, the result will be a JSON struct. If multiple users are found, the result will be an JSON array of structs.

POST

Authentication is not required to create a user. POST body must contain one or more complete user structures. Content-Type header must be application/json. A 400 error will be returned if these rules are violated or the user already exists.

POST /beacon/api/user.php/f08d5f69-214b-4e1c-910b-9ea57406f8c5 HTTP/1.1
Host: usebeacon.app
Authorization: Basic QTcwRjNENjAtQTI4MS00QzQ1LTgwQTAtQUQ2OUI3MzhENTY4OjRCQzQ3NTY2RjZDQjlBNjdBMTA5QTMzMThCMEVFQ0FGMUE0MTZCQkM0NkQwQTNCMzVEMkYzRjEzRTFFNDRERjMxREUwRDU0QTIwNUFCRjgxODlGMTEyRUE5MkQzOUI1REE5NTVDMjI3MkY2MDZCRTdBMjJENTAxNEFGNkY3NERGNEY4NkQ1RDZFNTI2MjJERDNBODZBMzNDOTNFNEZGOUU3NTcwOEUzNUYwMTkwQjY2OTc0RDkwRDk0RTZEODgzN0M5ODQzRTRDRDMxMjU5MUY3NTc1QjVEMDczQjRFMUJBRTYwMjIwRDZGOEVDQTBFNkRBNjMxRkQ5NkM1QjI5MTY5NUFFMzFCRkU0RTFFNjI3QTc2Nzk2MDQzRDg0MUUwQ0U4OUVBNDlCQTc0ODI2N0Q0MjYwNjcxNTM2NzU4MURCMjZFRkY1OTVGQUVDRjQyMDU1MjAxMzJCQzdERjUxNTEwOTVERjUyNjk0NUY1MTQ1NjBDRDIyQ0ZCODhGQTRBQzFBNzRENUZGMzhDQzE5QTEwNkQxMDc5MkZFQjA2QTFEM0E5RDQ1NTRGMTBEMkE1QTFDQkQ1MjhDQUU2QkIwMzc2QzVFRjBFOURGMEIzQUVGMjRDQTUwN0NEOEE1MzNERjFFODhCRkExQUEwMzBEM0JCN0QzOTNBMUYxQTUzNTAx
Content-Type: application/json

{"user_id":"f08d5f69-214b-4e1c-910b-9ea57406f8c5","public_key":"30820120300D06092A864886F70D01010105000382010D00308201080282010100DD03A7736A369F47DC484E95F929A69D1417AC22629FBAC445C218166772B1E88D7B9CA4830F12E625C70767D33BEF2673450106D3EC04AE164391C0C5D1555F7764A2A34798C172F05EE313C55FE6A4D69B0CC1593E49E751059E275303E99113FC91B0CD2825D203830D92C84D4625F0A5D026E886B244B5197A90AE6F2B354670951F1D0FE68C37DF5B25FDF131A2E58591B288CA60B4967BDC4B4E8056DBB923774360EFCAAD4548716A758F3EB574E21A66ED37B885FE3E5A5E0531DEF99600C474775E15ADF903511AC097CDCCD294670CAB1E980B9317CBC920B7FD59C365C9AEF9EE40C3F192A83DEAB357839DECE395994665181C351208F0110057020111"}

HTTP/1.1 200 OK

DELETE

Authentication is required. Final path component must be the authenticated user's UUID. Deleting other users is not possible. Deleting a user will remove all documents, mods, and engrams.

DELETE /beacon/api/user.php/f08d5f69-214b-4e1c-910b-9ea57406f8c5 HTTP/1.1
Host: usebeacon.app
Authorization: Basic QTcwRjNENjAtQTI4MS00QzQ1LTgwQTAtQUQ2OUI3MzhENTY4Ojg0QzIyMjJCMEJCRjFGMzlBMUMyNkM3OTNDQTc4NzFFM0NFM0I4Mjc1REIwNUEyRjBCQjY5NEU0QUVBQ0Y4ODcwOTQ2QzQ1RjdDOTE2RDU4QkFEODY5QUUyMzUzQTc1MjM0Q0I0NTM0ODM0QkQ0OEExMzMzRTdGMjdFOEM3OEYzNjJEMUZFM0IyNjczRDc1ODQ5NDkxQTEwRTNFNjQzMzNGRTFGRDhGM0E4Nzc1OUYzQ0UxMzJCODkzNTc4NkQyNDdGOTNENTE4REIzQ0ExNEIwRkI5OEFGMTg2NDE3OURCMTcxODQ3NjRFMzhCOTI3Q0RENjUwRjZGMEM4NzE2Q0UxNUE3NTcyMkUxMTFDOThDRUU5Mjg5ODQzRTJFRjJDQjBGOEQ0MURGNTA4ODk4QTYzQjdDRjJERjYyNkM3RUE5MThDMzhGQkY4QzMxMEQ2QTNCNjg2N0E2QTAzQTY5NzJDOTNEMEI1RERDODk2MjNFQUI2MEU2QzlDREUwM0VCN0Y0RDc5ODZCQTVCMEJDNDM4NkQxM0EzMEFGN0VENDhBQUM1QUE3OTE0MDg1QTJCQzE2MTE0QjBEQzZBMzhENDNENjBBQjUzOTE2QTk0MzU3RkE5ODAxQjEzMjNGNTg3MEYzM0M1MzdCNUFGQjdDODI2MEZDMTVDNzBBOTM4Q0FD

HTTP/1.1 200 OK