Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[META] REST API Feature descriptions #76

Open
oliverklee opened this issue Jan 5, 2018 · 0 comments
Open

[META] REST API Feature descriptions #76

oliverklee opened this issue Jan 5, 2018 · 0 comments
Assignees

Comments

@oliverklee
Copy link
Contributor

(moved from phpList/core#177)

Feature descriptions

This describes some required features of phpList 4. The features will be used to accommodate inter-dependency between groups of features and related functionality.

Subscribers

  • Subscriber sign-up

    A new subscriber registers themselves

    • Required:
      • Valid subscriber data including preferences is stored
      • Subscriptions to supplied lists are created
      • If no lists are supplied then no subscription is created
      • The confirmation status is unconfirmed
      • An email confirmation request is sent to the supplied address
      • When the confirmation link is visited the subscriber is marked confirmed
    • Optional:
      • Supplied values for existing subscriber attributes are stored
      • Supplied values for non-existing subscriber attributes trigger error
  • Import subscribers

    One or more subscribers are imported by an administrator

    • Required:
      • All validated subscribers are stored
      • Existing subscribers are matched against those being imported based on email address or foreign key (where available)
      • If update subscription is requested then identified subscribers will have their data replaced where it differs
      • Return a summary of the import result with total subscribers imported, updated, duplicated, and errored
    • Optional:
      • If dry run is requested then return a summary of import results but do not store subscribers
      • If send confirmation is requested then imported subscribers are stored unconfirmed
      • If send confirmation is requested then a confirmation link is created and email sent
      • If email validation is requested then subscribers with invalid email addresses will be discarded
      • If old email retention is requested then where old and new email addresses conflict, prefer the old
      • If invalid assignation is requested then parse and apply custom email address where invalid addresses are provided

Subscriptions

To be done

Lists

To be done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants