:LastChangedDate: $LastChangedDate$ :LastChangedRevision: $LastChangedRevision$ :LastChangedBy: $LastChangedBy$ .. _bitmask_core: ============ Bitmask Core ============ The bitmask core daemon can be launched like this:: bitmaskd The command-line program, ``bitmaskctl``, and the GUI, will launch the daemon when needed. Starting the API server ======================= If configured to do so, the bitmask core will expose all of the commands throught a REST API. In bitmaskd.cfg:: [services] web = True Resources ========= Following is a list of currently available resources and a brief description of each one. For details click on the resource name. +-----------------------------------+---------------------------------+ | Resource | Description | +===================================+=================================+ | ``POST`` :ref:`cmd_core_version` | Get Bitmask Core Version Info | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_core_stats` | Get Stats about Bitmask Usage | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_core_status` | Get Bitmask Status | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_core_stop` | Stop Bitmask Core | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_prov_list` | List all providers | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_prov_create` | Create a new provider | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_prov_read` | Get info about a provider | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_prov_del` | Delete a given provider | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_user_list` | List all users | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_user_active` | Get active user | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_user_create` | Create a new user | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_user_update` | Update an user | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_user_auth` | Authenticate an user | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_user_logout` | End session for an user | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_keys_list` | Get all known keys for an user | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_keys_insert` | Insert a new key | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_keys_del` | Delete a given key | +-----------------------------------+---------------------------------+ | ``POST`` :ref:`cmd_keys_export` | Export keys | +-----------------------------------+---------------------------------+ .. _cmd_core_version: /core/version ------------- **POST /core/version** Get Bitmask Core Version Info .. _cmd_core_stats: /core/stats ----------- **POST /core/stats** Get Stats about Bitmask Usage .. _cmd_core_status: /core/status ------------ **POST /core/status** Get Bitmask status .. _cmd_core_stop: /core/stop ---------- **POST /core/stop** Stop Bitmask core (daemon shutdown). .. _cmd_prov_list: /bonafide/provider/list ----------------------- **POST /bonafide/provider/list** List all known providers. .. _cmd_prov_create: /bonafide/provider/create -------------------------- **POST /bonafide/provider** Create a new provider. .. _cmd_prov_read: /bonafide/provider/read ----------------------- **POST /bonafide/provider/read** Get info bout a given provider. .. _cmd_prov_del: /bonafide/provider/delete ------------------------- **POST /bonafide/provider/delete** Delete a given provider. .. _cmd_user_list: /bonafide/user/list ------------------- **POST /bonafide/user/list** List all the users known to the local backend. **Form parameters**: * ``foo`` *(required)* - foo bar. * ``bar`` *(optional)* - foo bar. **Status codes**: * ``200`` - no error .. _cmd_user_active: /bonafide/user/active --------------------- **POST /bonafide/user/active** Get the active user. .. _cmd_user_create: /bonafide/user/create --------------------- **POST /bonafide/user/create** Create a new user. **Form parameters**: * ``foo`` *(required)* - foo bar. .. _cmd_user_update: /bonafide/user/update --------------------- **POST /bonafide/user/update** Update a given user. .. _cmd_user_auth: /bonafide/user/authenticate --------------------------- **POST /bonafide/user/authenticate** Authenticate an user. .. _cmd_user_logout: /bonafide/user/logout --------------------- **POST /bonafide/user/logout** Logs out an user, and destroys its local session. .. _cmd_keys_list: /keys/list ------------------- **POST /keys/list** Get all keys for an user. .. _cmd_keys_insert: /keys/insert/ ------------------- **POST /keys/insert** Insert a new key for an user. .. _cmd_keys_del: /keys/delete/ ------------------- **POST /keys/delete** Delete a key for an user. .. _cmd_keys_export: /keys/export/ ------------------- **POST /keys/export** Export keys for an user. API Authentication ================== (TBD) Most of the resources in the API are protected by an authentication token.