API Documentation
API Coaxis.Accounts
Class Diagram
classDiagram
class Interest {
UUID id
CiString name
String description
Atom type
User[] users
destroy()
update(UUID id, CiString name, String description, Atom type)
read()
create(UUID id, CiString name, String description, Atom type)
by_id(UUID id)
by_type(String type)
by_name(String name)
}
class Token {
Map extra_data
String purpose
UtcDatetime expires_at
String subject
String jti
get_token(String token, String jti, String purpose)
store_token(String token, Map extra_data, String purpose)
store_confirmation_changes(String token, Map extra_data, String purpose)
get_confirmation_changes(String jti)
revoked?(String token, String jti)
revoke_token(String token, Map extra_data)
read_expired()
expunge_expired()
}
class User {
UUID id
CiString email
CiString first_name
CiString last_name
String hashed_password
Interest[] interests
password_reset_with_password(String reset_token, String password, String password_confirmation)
request_password_reset_with_password(CiString email)
sign_in_with_token_for_password(String token)
sign_in_with_password(CiString email, String password)
register_with_password(String password, String password_confirmation, CiString email)
get_by_subject()
destroy()
update(UUID id, CiString email, CiString first_name, CiString last_name, ...)
read()
create(UUID id, CiString email, CiString first_name, CiString last_name, ...)
by_id(UUID id)
}
class UserInterest {
UUID id
UUID user_id
UUID interest_id
User user
Interest interest
destroy()
update(UUID id, UUID user_id, UUID interest_id)
read()
create(UUID id, UUID user_id, UUID interest_id)
by_id(UUID id)
}
Interest -- User
Interest -- UserInterest
User -- UserInterest
ER Diagram
erDiagram
Interest {
UUID id
CiString name
String description
Atom type
}
Token {
Map extra_data
String purpose
UtcDatetime expires_at
String subject
String jti
}
User {
UUID id
CiString email
CiString first_name
CiString last_name
String hashed_password
}
UserInterest {
UUID id
UUID user_id
UUID interest_id
}
Interest ||--|| User : ""
Interest ||--|| UserInterest : ""
User ||--|| UserInterest : ""
Resources
Interest
Attributes
Name |
Type |
Description |
id |
UUID |
|
name |
CiString |
|
description |
String |
|
type |
Atom |
|
created_at |
UtcDatetimeUsec |
|
updated_at |
UtcDatetimeUsec |
|
Actions
Name |
Type |
Input |
Description |
destroy |
destroy |
|
|
update |
update |
- id UUID attribute
- name CiString attribute
- description String attribute
- type Atom attribute
|
|
read |
read |
|
|
create |
create |
- id UUID attribute
- name CiString attribute
- description String attribute
- type Atom attribute
|
|
by_id |
read |
|
|
by_type |
read |
|
|
by_name |
read |
|
|
Token
Attributes
Name |
Type |
Description |
updated_at |
UtcDatetimeUsec |
|
created_at |
UtcDatetimeUsec |
|
extra_data |
Map |
|
purpose |
String |
|
expires_at |
UtcDatetime |
|
subject |
String |
|
jti |
String |
|
Actions
Name |
Type |
Input |
Description |
get_token |
read |
- token String
- jti String
- purpose String
|
|
store_token |
create |
- token String
- extra_data Map attribute
- purpose String attribute
|
|
store_confirmation_changes |
create |
- token String
- extra_data Map attribute
- purpose String attribute
|
|
get_confirmation_changes |
read |
|
|
revoked? |
read |
|
|
revoke_token |
create |
- token String
- extra_data Map attribute
|
|
read_expired |
read |
|
|
expunge_expired |
destroy |
|
|
User
Attributes
Name |
Type |
Description |
id |
UUID |
|
email |
CiString |
|
first_name |
CiString |
|
last_name |
CiString |
|
hashed_password |
String |
|
created_at |
UtcDatetimeUsec |
|
updated_at |
UtcDatetimeUsec |
|
Actions
Name |
Type |
Input |
Description |
password_reset_with_password |
update |
- reset_token String
- password String
- password_confirmation String
|
|
request_password_reset_with_password |
read |
- email CiString The proposed identity to send reset instructions to.
|
Send password reset instructions to a user if they exist. |
sign_in_with_token_for_password |
read |
- token String The short-lived sign in JWT.
|
Attempt to sign in using a short-lived sign in token. |
sign_in_with_password |
read |
- email CiString The identity to use for retrieving the user.
- password String The password to check for the matching user.
|
Attempt to sign in using a username and password. |
register_with_password |
create |
- password String The proposed password for the user, in plain text.
- password_confirmation String The proposed password for the user (again), in plain text.
- email CiString attribute
|
Register a new user with a username and password. |
get_by_subject |
read |
|
|
destroy |
destroy |
|
|
update |
update |
- id UUID attribute
- email CiString attribute
- first_name CiString attribute
- last_name CiString attribute
- hashed_password String attribute
|
|
read |
read |
|
|
create |
create |
- id UUID attribute
- email CiString attribute
- first_name CiString attribute
- last_name CiString attribute
- hashed_password String attribute
|
|
by_id |
read |
|
|
UserInterest
Attributes
Name |
Type |
Description |
id |
UUID |
|
user_id |
UUID |
|
interest_id |
UUID |
|
created_at |
UtcDatetimeUsec |
|
updated_at |
UtcDatetimeUsec |
|
Actions
Name |
Type |
Input |
Description |
destroy |
destroy |
|
|
update |
update |
- id UUID attribute
- user_id UUID attribute
- interest_id UUID attribute
|
|
read |
read |
|
|
create |
create |
- id UUID attribute
- user_id UUID attribute
- interest_id UUID attribute
|
|
by_id |
read |
|
|