APIs
POST /cms/author/groups/{group_id}/members/invites
GET /cms/author/groups/{group_id}/members/invites — ?status=
GET /cms/author/groups/invites/me
POST /cms/author/groups/invites/{invite_id}/accept
POST /cms/author/groups/invites/{invite_id}/reject
POST /cms/author/groups/{group_id}/members/invites/{invite_id}/revoke
Removed
POST /cms/author/groups/invites/accept — { "token" }
Also includes
Invite status lifecycle; server 30m expiry (GROUP_INVITE_EXPIRY_MINUTES)
Migrations: e7f8a9b0c1d2, f9a0b1c2d3e4
Branded invite email (group_invite_email.py)
Expiry job (invite_expiry_job.py, lifespan in mongo_database.py)
group_name on invites/me
PR: #661
APIs
POST /cms/author/groups/{group_id}/members/invites
GET /cms/author/groups/{group_id}/members/invites — ?status=
GET /cms/author/groups/invites/me
POST /cms/author/groups/invites/{invite_id}/accept
POST /cms/author/groups/invites/{invite_id}/reject
POST /cms/author/groups/{group_id}/members/invites/{invite_id}/revoke
Removed
POST /cms/author/groups/invites/accept — { "token" }
Also includes
Invite status lifecycle; server 30m expiry (GROUP_INVITE_EXPIRY_MINUTES)
Migrations: e7f8a9b0c1d2, f9a0b1c2d3e4
Branded invite email (group_invite_email.py)
Expiry job (invite_expiry_job.py, lifespan in mongo_database.py)
group_name on invites/me
PR: #661