Skip to content

✨ 👥 New User Model

Compare
Choose a tag to compare
@shnizzedy shnizzedy released this 19 Nov 15:31
· 1862 commits to master since this release
1b9d1f1
  • For accepting an invitation POST /invitation/{id}/accept replaces POST /group/{id}/invitation. Before, you had to get the group ID. Now the invitation has its own ID to use. GET /user/invites will return these new invitation documents. Additionally GET /invitation/{id}/accept will allow users to accept an invitation through a token.
  • GET /applet/{id}/users returns much simpler Objects with minimal identifying information, and that information is conditionally available based on the logged-in users permissions relative to that applet. The top-level keys are active and pending. The IDs in active are profile IDs; the IDs in pending are invitation IDs.

Looking up users by user IDs will be fully deprecated and profile IDs will take their place where appropriate.

An example:

{
  "active": [
    {
      "_id": "5dcef573c51a768de658312b",
      "displayName": "Jon",
      "email": "[email protected]"
    },
    {
      "_id": "5dcf28f0e10e41aba75dc2f9",
      "displayName": "Ada",
      "email": ""
    }
  ],
  "pending": [
    {
      "_id": "5dcef148070c4c8a1e096fb7",
      "invitedBy": {
        "_id": "5dcef130070c4c8a1e096fb6",
        "displayName": "Jon",
        "email": "[email protected]"
      }
    },
    {
      "_id": "5dcefea2f6be14681e02bbb6",
      "displayName": "Dev",
      "invitedBy": {
        "_id": "5dcef573c51a768de658312b",
        "displayName": "Jon",
        "email": "[email protected]"
      }
    },
    {
      "_id": "5dcf123152ba8bb77655b1fc",
      "displayName": "Dev",
      "invitedBy": {
        "_id": "5dcef573c51a768de658312b",
        "displayName": "Jon",
        "email": "[email protected]"
      }
    }
  ]
}
  • GET /invitation/{id} will return a message about the applet you've been invited to, including a link to accept the invitation by token if you're logged in.

    Example response:

Dev, you have been invited by Jon ([email protected]) to Healthy Brain Network (1) on
MindLogger on localhost (jclucas-rsch).

Description

Daily questions about your child's physical and mental health

The following users can see your data for this applet

  • Jon

The following users can change settings for this applet, including who can access your data

  • Jon

The following users can change settings for this applet, but not who can access your data

  • Jon

To accept, click http://0ccc9146.ngrok.io/api/v1/invitation/5dcf123152ba8bb77655b1fc/accept?token=5SI5LdmfXl1cOZrFMaKhY5wK5rXccfFhlAXC3KGnHNaWcJG0XceJTAu21JAt5qPb.

Other

  • For inviting a user to an applet, POST /applet/{id}/invite replaces POST /applet/invite