Skip to content

MemberRequests

Nandhinni edited this page Jul 17, 2017 · 25 revisions

Memberrequests

APIs

Method API Desc
GET /memberrequests/:domain Get all invites and join requests of specified community
POST /memberrequests/:domain/type/:type Register invite or join request for a specified community
PATCH /memberrequests/request/:domain/person/:person Update the status,member and role when the type is request
PATCH /memberrequests/invite/:domain/person/:person Update the status when the type is invite
DELETE /memberrequests/:domain/person/:person Delete the person if he rejected the request or invite

1.Get all invite or request lists of particular domain

URI

HTTP GET /memberrequests/:domain

URI Params

Required:

     domain[text]

Data Params

None

Success Response:

Code : 200

Content :

    {
"domain": "art.wipro.blr",
"requests": [{
	"domain": "ge",
	"person": "[email protected]",
	"createdon": "2017-06-21T05:03:52.449Z",
	"role": "moderator",
	"invitedBy": "sandy",
	"status": "accepted",
	"type": "invite",
	"updatedon": "2017-06-21T05:10:53.556Z"
}, {
	"domain": "ge",
	"person": "[email protected]",
	"createdon": "2017-06-21T05:03:52.449Z",
	"role": "moderator",
	"invitedBy": "sandy",
	"status": "accepted",
	"type": "invite",
	"updatedon": "2017-06-21T05:10:53.556Z"
}]
  }

Error Response

Code    : 404 NOT FOUND
Content : {error: 'please enter valid domain name!!'}
  OR
Code    : 505 Internal Server error
Content : {error: 'Unexpected error occurred, please try again...!' } 

2.Add the data when requests or invite occured

URI

HTTP POST /memberrequests/:domain/type/:type

URI Params

/:domain/type/:type

Valid types are 'invite', 'request'

Data Params

Content :

    {
       
        "invitee": [{
                       "email": "[email protected]",
                       "role": "moderator"
                       },
                       {
                       "email": "[email protected]",
                       "role": "admin"
                        }],
        "invitedby": "sandy",
     }       

Success Response:

Code    : 201
Content : { message : Inserted } 

Error Response

Code    : 400
Content : {error: 'Please enter valid values!!'}
Content : {error: 'Please enter valid type values!!'}
Content : {error: 'Please select role when inviting!!'}
Content : {error: 'Please enter email id when inviting!!'}
Content : {error: 'Please enter the name who is inviting!!'}
Content : {error: 'Given role is not applicable for particular community!!}
Content : {error: 'Member is already in community!!'}
  OR
Code    : 505 Internal Server error
Content : {error: 'Unexpected error occurred, please try again...!' } 

3.Update the status,role and member when the type is request

URI

HTTP PATCH /memberrequests/request/:domain/person/:person

URI Params

Required:

      domain[text]/person/:person[text]

Data Params

Content :

    {
     "invitedby": "sandy",
     "role"  : "admin"
    } 

Success Response:

Code    : 201
Content : {message : "Updated" }  

Error Response

Code    : 400
Content : {error: 'Not updated due to invalid values'}
  OR
Code    : 505 Internal Server error
Content : {error: 'Unexpected error occurred, please try again...!' }

4. Update the status when the type is invite

URI

HTTP PATCH /memberrequests/invite/:domain/person/:person

URI Params

Required:

  domain[text]/person/:person[text]

Data Params

  None

Success Response:

Code : 201
Content : {message : "Updated" }  

Error Response

Code : 400
Content : {error: 'Not updated due to invalid values'}
  OR
Code : 505 Internal Server error
Content : {error: 'Unexpected error occurred, please try again...!' }

5. Delete the person if he rejected the request or invite

URI

HTTP DELETE /memberrequests/:domain/person/:person

URI Params

Required:

  domain[text]/person/:person[text]

Success Response:

Code : 200
Content : {message : "Deleted" }  

Error Response

Code : 404 NOT Found
Content : {error: 'Unable to delete the domain and person'}
  OR
Code : 505 Internal Server error
Content : {error: 'Unexpected error occurred, please try again...!'