Welcome to AFFO User Service’s documentation!

AFFO User Service is a simple User sending service. The main feature of this service is an ability to round-robin User gateways to retry the message.

AFFO User Service is Open Source and licensed under the BSD License.

Getting Started

  • If you’re new to AFFO User Service you can get started by following the first-steps tutorial.

Contents

Getting Started

Contributor’s Guide

Contributions are always welcome and greatly appreciated!

Code contributions

We love pull requests from everyone! Here’s a quick guide to improve the code:

  1. Fork the repository and clone the fork.

  2. Create a virtual environment using your tool of choice (e.g. virtualenv, conda, etc).

  3. Install development dependencies:

pip install -r requirements.txt
pip install -r requirements-test.txt
  1. Make sure all tests pass:

python setup.py test
  1. Start making your changes to the master branch (or branch off of it).

  2. Make sure all tests still pass:

python setup.py test
  1. Add yourself to AUTHORS.rst.

  2. Commit your changes and push your branch to GitHub.

  3. Create a pull request through the GitHub website.

Documentation improvements

We could always use more documentation, whether as part of the introduction/examples/usage documentation or API documentation in docstrings.

Documentation is written in reStructuredText and use Sphinx to generate the HTML output.

Once you made the documentation changes locally, run the documentation generation:

python setup.py build_sphinx

Bug reports

When reporting a bug please include:

  • Operating system name and version.

  • affo-user-service version.

  • Any details about your local setup that might be helpful in troubleshooting.

  • Detailed steps to reproduce the bug.

Feature requests and feedback

The best way to send feedback is to file an issue on Github. If you are proposing a feature:

  • Explain in detail how it would work.

  • Keep the scope as narrow as possible, to make it easier to implement.

REST API

POST /auth/login/

Issues JWT token for the registered user from an email and a password

Status Codes
POST /auth/refresh/

Refresh JWT token

Status Codes
POST /auth/logout/

Adds the specified JWT token into the blacklist

Status Codes
GET /auth/verify_token/

Verify JWT token

Status Codes
POST /user/

Register a new user

Status Codes
GET /user/{user_id}/role/

Retrieves a user roles by an identifier.

Parameters
  • user_id (string) – A user identifier

Status Codes
PATCH /user/{user_id}/role/

Update user roles by an identifier.

Parameters
  • user_id (string) – A user identifier

Status Codes
POST /user/{user_id}/set_password/

Set a user password

Parameters
  • user_id (string) – A user identifier

Status Codes
GET /user/{user_id}/

Retrieves a user by an identifier.

Parameters
  • user_id (string) – A user identifier

Status Codes
PATCH /user/{user_id}/

Update a user by an identifier

Parameters
  • user_id (string) – A user identifier

Status Codes
DELETE /user/{user_id}/

Delete a user by an identifier

Parameters
  • user_id (string) – A user identifier

Status Codes
POST /password/reset/

Reset a user password

Status Codes
POST /password/reset/confirm/

Confirm a user password reset

Status Codes
POST /verification/phone/

Verify a phone

Status Codes
POST /verification/phone/confirm/

Confirm a phone verification

Status Codes

Indices and tables