ClientTalentPool

APIDescription
POST api/clienttalentpool/filteredcandidates?clientId={clientId}

get the candidates for the client talent pool section

GET api/ClientTalentPool/interest/{memberId}/{jobType}?clientId={clientId}

Notify consultant that the school is interested in booking a member

GET api/clienttalentpool/{clientId}/add?candidateId={candidateId}

Add candidate to talent pool

GET api/clienttalentpool/{clientId}/remove?candidateId={candidateId}

Remove candidate from talent pool

POST api/ClientTalentPool/CandidateDetails?clientId={clientId}

get all the details for a talent pool candidate

POST api/ClientTalentPool/CandidateDetailsGetTestimonials

Get testimonials for a candidate

GET api/ClientTalentPool/CandidateDetailsGetAvailability?candidateId={candidateId}&availabilityFrom={availabilityFrom}&availabilityTo={availabilityTo}&clientId={clientId}

Get availability for a candidate

POST api/ClientTalentPool/CandidateDetailsGetJobs?clientId={clientId}

get future jobs for a candidate

POST api/ClientTalentPool

Get testimonials for a candidate

GET api/ClientTalentPool?candidateId={candidateId}&availabilityFrom={availabilityFrom}&availabilityTo={availabilityTo}&clientId={clientId}

Get availability for a candidate

Candidate

APIDescription
POST api/candidate/setlastlocation

No documentation available.

GET api/candidate/getlastlocation

No documentation available.

POST api/candidate/arrivalupdate

No documentation available.

GET api/candidate/trackingrequired

No documentation available.

GET api/candidate/DARTGPopupMessage

No documentation available.

GET api/candidate/ready

No documentation available.

POST api/candidate/ready

No documentation available.

POST api/Candidate/GetMembersDetails

No documentation available.

POST api/Candidate/GetMembersDetailsByName

No documentation available.

Contents

APIDescription
GET api/contents/getcontentdetails/{id}

get content details by Id; a content wrapper is added

GET api/contents/getcontentdetailsforwebapp/{id}

get content details by Id; for the web app we don't have to add any hardcoded container

GET api/Contents/GetCandidateContentsPaginated?offset={offset}&limit={limit}

get all content visible to the current user paginated

GET api/Contents/LatestContentPaginated?offset={offset}&limit={limit}&authorUserId={authorUserId}&authorName={authorName}

get all content visible to the current user paginated

GET api/Contents/ContentByType?contentType={contentType}&offset={offset}&limit={limit}&authorUserId={authorUserId}&authorName={authorName}

get latest content filtered by type

GET api/Contents/ContentByTopic?contentTopicId={contentTopicId}&offset={offset}&limit={limit}

get latest content filtered by topic

GET api/Contents/ContentByTypeAndTopic?contentType={contentType}&contentTopicId={contentTopicId}&offset={offset}&limit={limit}

get latest content filtered by type and topic

GET api/Contents/TopicsByType?contentType={contentType}&offset={offset}&limit={limit}

return all topics with content filtered by contentType

GET api/Contents/GetPartnerContentList?offset={offset}&limit={limit}

get All content created by my network, paginated

GET api/Contents/GetPartnerContentById/{id}

return a partner content by Id

GET api/Contents/GetPartnerContentTypes

get the content types used to create a new content for a partner

GET api/Contents/GetPartnerTopics

get the topics used to create a new content for a partner

GET api/Contents/GetPartnersInMyNetwork

get all partners in my network. can be used to select the visibility for a new content

POST api/Contents/PartnerUploadMedia

upload a new media in the partner folder in the blob storage. it should return the url for the uploaded media

POST api/Contents/PartnerSaveContent

save partner content, return the contentId created/edited

GET api/Contents/PartnerDeleteContent?contentId={contentId}

delete partner content

GET api/Contents/PartnerSubmitContent?contentId={contentId}

submit content for review by opogo staff

GET api/Contents/PartnerRetractContent?contentId={contentId}

retract a content from review by opogo staff state

GET api/Contents/PartnerGetContentVisibilityForWebApp

return ContentVisibility for the web app, this is configurable in the web config. if AllowMultiplePartnerSelection property of the item is true then a list of partners can be selected and associated with the content

GET api/Contents/GetCourses?searchTerm={searchTerm}&contentTopicId={contentTopicId}&offset={offset}&limit={limit}&authorUserId={authorUserId}&authorName={authorName}

return courses filtered and paginated

GET api/Contents/GetCourseById/{id}

return a course detail with all folders, lessons, all the lesson details

GET api/Contents/CourseLessonSetViewed?lessonId={lessonId}

mark a lesson as viewed by the current logged in user

GET api/Contents/CourseLessonClearViewed?lessonId={lessonId}

delete view lesson record - just for testing

GET api/Contents/DownloadCourseFile/{id}

download a course file

GET api/Contents/GetCourseTopics

return a course detail with all folders, lessons, all the lesson details

GET api/Contents/GetCommunityExpertList

get the community expert list

GET api/Contents?offset={offset}&limit={limit}&authorUserId={authorUserId}&authorName={authorName}

get all content visible to the current user paginated

GET api/Contents?contentType={contentType}&offset={offset}&limit={limit}&authorUserId={authorUserId}&authorName={authorName}

get latest content filtered by type

GET api/Contents?contentTopicId={contentTopicId}&offset={offset}&limit={limit}

get latest content filtered by topic

GET api/Contents?contentType={contentType}&contentTopicId={contentTopicId}&offset={offset}&limit={limit}

get latest content filtered by type and topic

GET api/Contents?contentType={contentType}&offset={offset}&limit={limit}

return all topics with content filtered by contentType

GET api/Contents?searchTerm={searchTerm}&contentTopicId={contentTopicId}&offset={offset}&limit={limit}&authorUserId={authorUserId}&authorName={authorName}

return courses filtered and paginated

Dates

APIDescription
POST api/dates/workingdays/filtered

No documentation available.

ClientSupply

APIDescription
POST api/clients/supply/candidates?clientId={clientId}

No documentation available.

CandidateAvailability

APIDescription
POST api/candidateavailability/{candidateId}/daily/filtered?clientId={clientId}

No documentation available.

POST api/candidateavailability/{candidateId}/termly/filtered?clientId={clientId}

No documentation available.

CandidateAvailability

APIDescription
POST api/candidate/calendar/dailysupply/availability

No documentation available.

POST api/candidate/calendar/dailysupply/termavailability

No documentation available.

GET api/candidate/calendar/gettermtoset?from={from}&lookahead={lookahead}&ignorehidden={ignorehidden}

No documentation available.

POST api/candidate/calendar/longterm/availablefrom?availableFrom={availableFrom}

No documentation available.

GET api/candidate/calendar/longterm/options

No documentation available.

GET api/candidate/calendar/longterm/preferences

No documentation available.

POST api/candidate/calendar/longterm/preferences

No documentation available.

GET api/candidate/calendar/availability?dateFrom={dateFrom}&dateTo={dateTo}

No documentation available.

Account

APIDescription
GET api/Account/UserInfo

No documentation available.

GET api/Account/actions

No documentation available.

GET api/Account/userstatus?email={email}

No documentation available.

POST api/Account/ResetPassword

reset the user password. the user is identified by the email parameter. if user is not found 404 is returned if user is found, a random password is generated and sent by email

GET api/Account/resetpasswordcustom?email={email}

reset the user password. the user is identified by the email parameter. if user is not found 404 is returned if user is found, a random password is generated and sent by email

GET api/Account/passwordresettokenisvalid?token={token}&email={email}

No documentation available.

POST api/Account/setpasswordforcode

No documentation available.

POST api/Account/Logout

No documentation available.

GET api/Account/ManageInfo?returnUrl={returnUrl}&generateState={generateState}

No documentation available.

POST api/Account/ChangePassword

No documentation available.

POST api/Account/SetPassword

No documentation available.

POST api/Account/AddExternalLogin

No documentation available.

DELETE api/Account/Remove

No documentation available.

POST api/Account/RemoveLogin

No documentation available.

GET api/Account/ExternalLogin?provider={provider}&error={error}

No documentation available.

GET api/Account/ExternalLogins?returnUrl={returnUrl}&generateState={generateState}

No documentation available.

POST api/Account/Register

No documentation available.

POST api/Account/RegisterExternal

No documentation available.

POST api/Account/createdevice

No documentation available.

GET api/Account/permissions

Check user permissions

GET api/Account/resetUserPermissionCache?userId={userId}

No documentation available.

POST api/Account/PushSubscription

Registers current user endpoint to receive client push notifications

DELETE api/Account/PushSubscription

Removes the given endpoint subscription

POST api/Account/PushSubscription/check

Checks if the given endpoint is registered to push notifications

GET api/Account/GetDetailedLoggedInUserDetails

Get logged in user details

GET api/Account

Get logged in user details

CandidateDashboard

APIDescription
GET api/candidate/dashboard

No documentation available.

GET api/candidate/dashboardlightold

No documentation available.

GET api/candidate/dashboardlight

No documentation available.

GET api/candidate/dashboardlongtermjobs

No documentation available.

GET api/candidate/dashboardcontent

No documentation available.

GET api/candidate/SetTimesheetMessageVisibleStatus?weekStart={weekStart}&visible={visible}

No documentation available.

POST api/CandidateDashboard/HideDailySupplyJobOnDashboard

No documentation available.

POST api/CandidateDashboard/ResetJobsOnDashboardVisibility

No documentation available.

CandidateCv

APIDescription
GET api/candidate/{candidateId}/cv

No documentation available.

POST api/candidate/UploadCV

No documentation available.

GET api/candidate/RemoveCV?assetId={assetId}

No documentation available.

UserRegistration

APIDescription
POST api/UserRegistration/Signup

No documentation available.

GET api/UserRegistration/ResendVerifyAccountEmail

re sends the verify account email

GET api/UserRegistration/VerifyEmail?userId={userId}&token={token}

No documentation available.

POST api/UserRegistration/AddTypeOfWorkForDefaultProfile

No documentation available.

POST api/UserRegistration/AddTagsForDefaultProfile

No documentation available.

POST api/UserRegistration/AddCVAssetForDefaultProfile?assetId={assetId}

No documentation available.

GET api/UserRegistration/GetCurrentUserPrimaryProfile

No documentation available.

GET api/UserRegistration/GetSignupFormRoles

get hardcoded role list for the signup form

GET api/UserRegistration/GetTagCategoryQuestionTexts

get the question text for each tag category

GET api/UserRegistration/GetWorkRegions

Gets a list with the available work regions, includes Id and Name

Vacancy

APIDescription
GET api/vacancy/getDeleteReasonsByType?deleteReasonType={deleteReasonType}

No documentation available.

Client

APIDescription
GET api/clients/summary?clientId={clientId}

No documentation available.

POST api/clients/vacancies

Create vacancy

GET api/clients/vacancies?clientId={clientId}

Logged in Client contact vacancies

GET api/clients/vacancies/archived/{pageNr}/{pageSize}?clientId={clientId}

Logged in Client contact vacancies

GET api/clients/vacancies/{vacancyUId}

Vacancy details

GET api/clients/vacancies/offered/{vacancyUId}?clientId={clientId}

Offer sent details

GET api/clients/vacancies/{vacancyUId}/bestmatches

Vacancy best matches created by the matching alg for an existing vacancy

POST api/clients/vacancies/{vacancyUId}/invite

Send offer to candidates

POST api/clients/vacancies/invite

Send offer to candidates

POST api/clients/vacancies/createunfilled

Create vacancy without invites

DELETE api/clients/vacancies/{vacancyUId}/delete

Delete vacancy

DELETE api/clients/vacancies/{vacancyUId}/deleteDays

Delete vacancy

GET api/clients/LongTermJobInviteToInterview/{vacancyUID}/{candidateId}

alows a client to change a long term job application to Interview planned

GET api/clients/LongTermJobRejectCandidate/{vacancyUID}/{candidateId}

alows a client to reject a long term job application

GET api/clients/GetCandidateAsset/{assetId}

get candidate asset by id

POST api/clients/UpdateJobDescription

update a posted job description

POST api/clients/match?clientId={clientId}

Get smart matched results

POST api/clients/favourite

Set recent JobRole or Talent pool candidate as favourite

DELETE api/clients/favourite/{favouriteId}

Set recent JobRole or Talent pool candidate as favourite

POST api/clients/jobs/active?clientId={clientId}

Lists all active jobs for client.

POST api/clients/jobs/open?clientId={clientId}

Lists all open jobs for client.

GET api/clients/jobs/livelocations?clientId={clientId}

Locations of all candidates for active jobs

POST api/clients/savedefaultstarttimes?clientId={clientId}

No documentation available.

GET api/clients/reference/{referenceId}

return a saved reference details by referenceId

POST api/clients/reference/updateDetails

update a saved reference with a reference feedback

GET api/clients/alltimesheets?year={year}&month={month}&clientId={clientId}

get client timesheets

GET api/clients/notreviewed?year={year}&month={month}&clientId={clientId}

not reviewed candidates

GET api/clients/notreviewed/count?year={year}&month={month}

not reviewed candidates

GET api/clients/timesheets/details/{timesheetWeekStart}?clientId={clientId}

Get timesheet details per candidate and days

GET api/clients/timesheets/details/alltime?clientId={clientId}

No documentation available.

POST api/clients/timesheets/signoff

Signoff timesheets

POST api/clients/review?clientId={clientId}

Reviews a candidate

GET api/clients/invoices/{invoiceNo}/signoffdetails

No documentation available.

GET api/clients/invoices/{pageNr}/{pageSize}?clientId={clientId}

Get client invoices

GET api/clients/invoices/amount/unpaid?clientId={clientId}

Get invoice amount to be paid

GET api/clients/invoices/{invoiceId}?clientId={clientId}

Get invoice as pdf

GET api/clients/vacancies/roles?includeTopRoles={includeTopRoles}&clientId={clientId}

Available roles for creating the vacancy

GET api/clients/vacancies/roles/{roleId}/tags

Get list of tags for specific job role and tag category (subject/level)

GET api/clients/vacancies/{roleId}/ratecard?clientId={clientId}

Get the assigned standard rate card for a job role

GET api/clients/{clientId}/terms

No documentation available.

GET api/clients/{clientId}/terms/detailed

No documentation available.

POST api/clients/{clientId}/terms

No documentation available.

POST api/clients/GetCandidateDetailsForBooking?clientId={clientId}

No documentation available.

POST api/Client/HasDownloadedApp

No documentation available.

POST api/Client/HasBeenRecentlyActive

No documentation available.

POST api/Client/HasBeenActive?days={days}

No documentation available.

POST api/Client?days={days}

No documentation available.

Ticket

APIDescription
POST api/tickets/create

No documentation available.

CandidateJobs

APIDescription
GET api/candidate/jobs?jobType={jobType}&jobStatus={jobStatus}&dateFrom={dateFrom}&dateTo={dateTo}

No documentation available.

GET api/candidate/jobs/{jobId}

No documentation available.

GET api/candidate/joboffers

No documentation available.

GET api/candidate/joboffer/{id}

No documentation available.

POST api/candidate/offers/{inviteid}/reject

No documentation available.

ClientJobSetup

APIDescription
GET api/clients/jobrolesetup?clientId={clientId}

I've created this endpoint to return job related data for the client which basically means relevant roles and role groups based on client type, and their linked tag categories

CandidateFeedback

APIDescription
GET api/candidate/feedbackrequired

No documentation available.

POST api/candidate/feedbackrequired

No documentation available.

POST api/candidate/feedback

No documentation available.

CandidateProfile

APIDescription
GET api/candidate/summary?from={from}&days={days}

No documentation available.

GET api/candidate/profile

No documentation available.

GET api/candidate/profiles

No documentation available.

POST api/candidate/profile/image/update

No documentation available.

POST api/candidate/profile/about/update

No documentation available.

Job

APIDescription
GET api/job/matchedjobs/{pageNr}/{count}

No documentation available.

GET api/job/apply/{jobUid}?applyVia={applyVia}&source={source}

No documentation available.

GET api/job/reject/{jobUid}

No documentation available.

GET api/job/rejectionrequests

No documentation available.

GET api/job/rejectreasons/{reasonType}

No documentation available.

POST api/job/rejectreason/{jobid}

No documentation available.

GET api/job/acceptedupcoming

No documentation available.

GET api/job/accepted/upcoming

No documentation available.

GET api/job/archive/completed/{pageNr}/{count}

No documentation available.

GET api/job/archive/rejected/{pageNr}/{count}

No documentation available.

GET api/job/live

No documentation available.

GET api/job/search/{pageNr}/{count}?term={term}&sortBy={sortBy}

Search jobs. The results are sorted, the TimeToJob is also calculated with CityMapper. if the latitude and longitude params are passed then they are taken into consideration, taken from Candidate profile otherwise

GET api/job/details/{jobUid}

return all details about a Job Offer by job offer Uid

GET api/job/publicJobDetails/{jobUid}

return the public details about a job

GET api/job/{vacancyId}/checkin

No documentation available.

Compliance

Candidate management

APIDescription
GET api/compliance/list

Get member required compliances

POST api/compliance/{complianceTypeId}/upload?complianceId={complianceId}&editableType={editableType}

Add/Edit file upload type compliance

POST api/compliance/{complianceTypeId}/manage?complianceId={complianceId}&editableType={editableType}

Add/Edit file upload with text form compliance.

POST api/compliance/{complianceTypeId}/reference/manage?editableType={editableType}

Add/Edit member reference

PUT api/compliance/{complianceTypeId}/unable?editableType={editableType}

Set a compliance document as not able to supply

GET api/compliance/{complianceTypeId}/details?complianceId={complianceId}

Get compliance by id

GET api/compliance/reference/{referenceId}/details

Get a reference by Id

DELETE api/compliance/reference/{referenceId}/delete

Delete reference by Id

DELETE api/compliance/{complianceDocId}/{attachmentId}/delete?editableType={editableType}

Delete compliance attachment

DELETE api/compliance/{complianceDocId}/attachments/delete?editableType={editableType}

Delete compliance attachments

GET api/compliance/references

Get member references

GET api/compliance/registrationurl

Get member compliance registration url

GET api/compliance/registrationdata/{memberId}?mode={mode}

Get registration compliance data

POST api/compliance/registrationdata/{memberId}

Save member compliance registration data

GET api/compliance/personaldetails

Get member compliance personal details

POST api/compliance/personaldetails

Save member compliance personal details

StaffManagement

Staff management functionality - list, edit, add, delete, invite and import staff for a specific client

APIDescription
GET api/StaffManagement/GetClientStaffById?Id={Id}

return the client Staff entity by Id_

GET api/StaffManagement/GetCSVSpreadsheetTemplate

returns a CSV file with instructions of how an import CSV should look like

POST api/StaffManagement/GetClientStaffFiltered?clientId={clientId}

return the list with client staff members filtered, ordered and paginated

POST api/StaffManagement/BulkImportStaff?clientId={clientId}

based on a posted CSV file, a number of staff is imported automatically for the current client

POST api/StaffManagement/SaveStaff?clientId={clientId}

save staff details. if it'sa new staff then the staff Id will be empty. if it's a new staff then the welcome email is sent containing the new user password

GET api/StaffManagement/ToggleStaffActive?staffId={staffId}

toggle staff active status

GET api/StaffManagement/ResendStaffInvite?staffId={staffId}

resend the invite email containing the password to the staff member

GET api/StaffManagement/DeleteAccount?staffId={staffId}

removes a staff member, deletes the account from database

GET api/StaffManagement/GetStaffFeatures

No documentation available.

GET api/StaffManagement

No documentation available.

JobOffer

APIDescription
POST api/joboffers/accept

No documentation available.

CandidateLearn

APIDescription
GET api/candidate/courses

No documentation available.

Chat

all functionality needed for chat section, to get all chat rooms for current candidate, set last unreat messages, reset, etc

APIDescription
GET api/chat/consultantchatrooms

return chat rooms for consultatnt contacts

GET api/chat/clientchatrooms

return chat rooms for client contacts

GET api/chat/allchatrooms

Retuen all chat rooms for current candidaete

GET api/chat/resetunreadmessages?channelId={channelId}

reset unread messages for a chat rchannel

POST api/chat/addunreadmessage?channelId={channelId}&message={message}

saves in teh database the last unread message for a chat channel

GET api/chat/deletechatroom?channelId={channelId}&historyDeletedDate={historyDeletedDate}

delete a chat room, just store the HistoryDeletedDate value

POST api/chat/twiliosendsms

No documentation available.

POST api/chat/add?candidateId={candidateId}

creates a new chat channel between the client user and given candidate

POST api/chat/addconsultantchannel?consultantId={consultantId}

No documentation available.

POST api/Chat/SendChatMessageToCandidate?consultantId={consultantId}&consultantEmail={consultantEmail}&consultantName={consultantName}&consultantAvatar={consultantAvatar}

No documentation available.

POST api/Chat?consultantId={consultantId}&consultantEmail={consultantEmail}&consultantName={consultantName}&consultantAvatar={consultantAvatar}

No documentation available.

Summaries

APIDescription
POST api/summaries/placements/candidates

No documentation available.

POST api/summaries/jobdays/candidates

No documentation available.

POST api/summaries/placements/clients

No documentation available.

POST api/summaries/placements/clients/byIds

No documentation available.

CandidateSettings

APIDescription
GET api/candidate/travel/journeys

No documentation available.

PUT api/candidate/travel/journey

No documentation available.

PUT api/candidate/travel/journeytime

No documentation available.

GET api/candidate/clienttypes/preferences

No documentation available.

POST api/candidate/clienttypes/preference

No documentation available.

GET api/candidate/marketingoption

No documentation available.

POST api/candidate/marketingoption

No documentation available.

CandidateTimesheets

APIDescription
GET api/candidate/timesheets/{pageNr}/{count}

No documentation available.

GET api/candidate/timesheets?dateFrom={dateFrom}&dateTo={dateTo}&status={status}&pageSize={pageSize}&pageNo={pageNo}

No documentation available.

GET api/candidate/timesheets/details/{weekStartDate}

No documentation available.

POST api/candidate/timesheets/signoff

No documentation available.

Referral

APIDescription
POST api/ambassador/invite

Send invite emails

GET api/ambassador/overview

Get ambsador overview details

GET api/ambassador/payments

Get ambsador overview details

GET api/ambassador/referrals/details

Get ambsador overview details

GET api/ambassador/referralname/{referralCode}

Get the ambassador name by referral code

Clients

APIDescription
GET api/clients/clientpack/{clientSiteId}

Get client pack for a specific client

POST api/clients/clientpacklist

Get client pack for a a list of clients

UserSettings

APIDescription
GET api/UserSettings/GetCandidateUserSettings?appId={appId}

No documentation available.

POST api/UserSettings/SaveCandidateUserSetting

No documentation available.

GET api/UserSettings?appId={appId}

No documentation available.

POST api/UserSettings

No documentation available.

ClientSettings

APIDescription
GET api/ClientSettings/GetClientSettings?clientId={clientId}

No documentation available.

POST api/ClientSettings/SaveClientSetting

No documentation available.

GET api/ClientSettings?clientId={clientId}

No documentation available.

POST api/ClientSettings

No documentation available.

Subscribe

APIDescription
POST api/Subscribe/CreateSubscriber

No documentation available.

POST api/Subscribe

No documentation available.

Sendgrid

APIDescription
POST api/Sendgrid/SendgridEventWebhook

process sendgrid events webhook

POST api/Sendgrid

process sendgrid events webhook