8000 User API · mifort-org/mifort-timesheet Wiki · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

User API

Andrew Voitov edited this page Apr 26, 2016 · 3 revisions

Get current user

Property Value
Method GET
URL /api/v1/user
Content-Type application/json
Response:
{
    "_id": "12312312312",
    "external": "<google profile>",
    "createdOn": "01/01/2016",
    "updatedOn":"01/01/2016",
    "companyId": "c1",
    "displayName": "Andrew A",
    "workload": 8,
    "assignments" : [ 
        {
            "userId": "12312312312",
            "role": "Developer",
            "workload": 4,
            "projectId": "p1",
            "projectName": "Super puper project"
        }
    ]
}

Get users by id

Property Value
Method GET
URL /api/v1/user/<userId>
Parameters userId - unique user Id
Content-Type application/json
Response:
[ {
    "_id": "12312312312",
    "companyId": "c1",
    "displayName": "Andrew A",
    "workload": 8,
    "assignments" : [ 
        {
            "userId": "12312312312",
            "role": "Developer",
            "workload": 4,
            "projectId": "p1",
            "projectName": "Super puper project"
        },
   ]
}]

Get users by projectId

Property Value
Method GET
URL /api/v1/user/project/<projectId>
Parameters projectId - unique project Id
Content-Type application/json
Response:
[ {
    "_id": "12312312312",
    "companyId": "c1",
    "displayName": "Andrew A",
    "workload": 8,
    "assignments" : [ 
        {
            "userId": "12312312312",
            "role": "Developer",
            "workload": 4,
            "projectId": "p1",
            "projectName": "Super puper project"
        },
   ]
}]

Replace/Add assignments

Property Value
Method POST
URL /api/v1/user/assignment/<projectId>
Parameters projectId - unique project Id
Content-Type application/json
Body:
{
    "_id": "12312312312",
     "assignments" : [ 
        {
            "userId": "12312312312",
            "role": "Developer",
            "workload": 4,
            "projectId": "p1",
            "projectName": "Super puper project"
        },
        {
            "userId": "12312312312",
            "role": "QA",
            "workload": 4,
            "projectId": "p1",
            "projectName": "Super puper project"
        }
    ]
}

Response:

{ "ok" : "true"}

Get users by company Id

Property Value
Method GET
URL /api/v1/user/company/<companyId>
Parameters companyId - unique company Id
Content-Type application/json
Response:
[ {
    "_id": "12312312312",
    "displayName": "Andrew A",
    "workload": 8,
    "assignments" : [ 
        {
            "userId": "13",
            "role": "Developer",
            "workload": 4,
            "projectId": "p1",
            "projectName": "Super puper project"
        },
   ], 
"external": {
	"photos":
		{
			"value": "https://lh3.googleusercontent.com/-XdUIqdMkCWA/AAAAAAAAAAI/AAAAAAAAAAA/4252rscbv5M/photo.jpg?sz=50"
		}
 }
}]

Update user role

Property Value
Method POST
URL /api/v1/user/update-role
Content-Type application/json
Body:
{
    "_id": "12312312312",
    "role": "Manager"
}

Response:

{ "ok" : "true"}

Delete user

Property Value
Method DELETE
URL /api/v1/user/<userId>
Parameters userId - unique user id
Content-Type application/json
Response:
204 No content

Add new User

Property Value
Method PUT
URL /api/v1/user
Content-Type application/json

Body:

{
    "displayName": "Andrew A",
     "companyId": "c1",
    "email": "test@test.com",
    "role": "Manager"
}

Response:

{
    "companyId": "c1",
    "displayName": "Andrew A",
    "email": "test@test.com",
    "role": "Manage
}
Clone this wiki locally
0