Skip to content

API specification

Frank Hangler edited this page Dec 9, 2019 · 2 revisions

API documentation (in progress).

All API methods are assumed to be prefixed (e.g. by https://deployed.to.address/api/).

Authentication

  • Need more information on how the current authentication system works. JWTs?

Admin management

List admins

GET /Users

Add admin

POST /Users

Remove admin

DELETE /Users/:Id

Parameter Description
id The id of the user

Update admin

PATCH /Users/:Id

Path parameters

Parameter Description
id The id of the user

Notes

  • Assumes that we are only replacing some of the fields

Exiting employees

List (including filter)

GET /Employees

Query string parameters

  • Any [?] field from the Employee table in the data model, along with its filtered value, e.g. name=Frank

Employee detail

GET /Employees/:Id

Path parameters

Parameter Description
id The id of the employee

Add one employee

POST /Employees

Update one

PATCH /Employees/:Id

Path parameters

Parameter Description
id The id of the employee

Timeline entries

Add timeline entry

POST /Employees/:Id/Timeline

Parameter Description
id The id of the employee

List for employee

GET /Employees/:Id/Timeline

Logs

List (including filter)

GET /Logs

Query string parameters

  • Any [?] field from the TaskLogEntry table in the data model, along with its filtered value, e.g. TaskOutcome=Success

Add

POST /Logs

Email templates

List

GET /EmailTemplates

Update one

PATCH /EmailTemplates/:Id

Email services

Send one

POST /EmailService/:EmployeeId

Scheduled services

Retrieve CSV

POST /RetrieveCSVService

Notes

  • Or does this belong in the scheduled task itself?

Reconcile CSV

POST /ReconciliationService

Send all email

POST /EmailService

Retrieve from CallWeb

POST /SurveyStatusService

Clone this wiki locally