Users must be able to register an account with the API. This should generate an API key for them which will then be used to authenticate them with all other endpoints.
/apiUser
Input: {email: String, password: String}
DB Output: {email: String, password: String, api_key: UUID, itembase: String (Address; H160)}
POST Output: {api_key: UUID}
AC:
- adheres to data format criteria (above)
- deploys new itembase contract
- generates an API key
- creates unique database entry (api_key is PRIMARY KEY, email is UNIQUE)