Mutations
Mutations allow for modifying data within the Worksome API.
createSmsMultiFactor
Type: SmsCreateMultiFactorPayload!
Create a new multi-factor authentication implementation.
Arguments |
---|
input CreateSmsMultiFactorInput! |
verifySmsMultiFactor
Type: SmsMultiFactor
Verify a multi-factor authentication implementation.
Arguments |
---|
input VerifySmsMultiFactorInput! |
createTotpMultiFactor
Type: TotpCreateMultiFactorPayload!
Create a new multi-factor authentication implementation.
Arguments |
---|
input CreateTotpMultiFactorInput! |
verifyTotpMultiFactor
Type: TotpMultiFactor
Verify a TOTP multi-factor authentication implementation.
Arguments |
---|
input VerifyTotpMultiFactorInput! |
removeMultiFactor
Type: MultiFactor
Remove a multi-factor authentication implementation.
Arguments |
---|
input RemoveMultiFactorInput! |
updatePassword
Type: User!
Update a user’s password.
Arguments |
---|
input UpdatePasswordInput! |
createPassword
Type: User!
Create a password for the authenticated user.
This operation is only allowed if the user currently does not have a password for changing the password see updatePassword
operation instead.
Arguments |
---|
input CreatePasswordInput! |
sendVerificationEmail
Type: User!
Sends a new verification email.
This operation is only allowed if the user has not verified their email.
changeEmail
Type: User!
Change the email of the currently authenticated user.
Arguments |
---|
input ChangeEmailInput! |
forceLogoutUser
Type: ForceLogoutPayload!
Log out of other sessions.
This will invalidate all session tokens.
Arguments |
---|
input ForceLogoutInput! |
impersonateUser
Type: AuthenticationToken!
Creates a token which can be used for authenticating as the selected user.
To stop the impersonation, simply use the old token again.
Arguments |
---|
input ImpersonateInput! |
createCustomTimesheet
Type: CreateCustomTimeSheetResponse!
Create a custom timesheet.
Use this endpoint to create timesheets in Worksome from a custom data format. The endpoint requires data in a custom format, as defined by the input schema.
Arguments |
---|
input CreateCustomTimesheetInput! |
createApprovalRule
Type: ApprovalRule!
Create an approval rule for one or more fields.
Arguments |
---|
input CreateApprovalRuleInput! |
createApproval
Type: Approval!
Create an approval.
Only companies can create approvals.
Arguments |
---|
input CreateApprovalInput! |
updateApproval
Type: Approval!
Update an approval.
Arguments |
---|
input UpdateApprovalInput! |
createApprover
Type: Approver!
Create an approver for an approver rule.
Arguments |
---|
input CreateApproverInput! |
updateApprover
Type: Approver!
Update an approver.
Arguments |
---|
input UpdateApproverInput! |
actionApprovalApprovable
Type: ApprovalApprovable
Create action for an approval approvable.
Arguments |
---|
input ActionApprovalApprovableInput! |
storeBankDetails
Type: BankDetail!
Update the bank account details.
Arguments |
---|
input StoreBankDetailsInput! |
generateInviteLink
Type: Company!
Generate the company invite link token.
Arguments |
---|
input GenerateInviteLinkInput! |
createCompanyRecruiter
Type: CompanyRecruiter
Add and invite a new recruiter.
Only companies can add and invite recruiters.
Arguments |
---|
input CreateCompanyRecruiterInput! |
updateCompanyRecruiter
Type: CompanyRecruiter
Update a recruiter relationship.
Only companies can edit recruiter relationships.
Arguments |
---|
input UpdateCompanyRecruiterInput! |
deleteCompanyRecruiter
Type: CompanyRecruiter
Delete a recruiter relationship.
Both the company and the recruiter can delete the relationship.
Arguments |
---|
input DeleteCompanyRecruiterInput! |
inviteCompanyRecruiter
Type: CompanyRecruiter!
Invite an existing recruiter.
Only companies can invite the recruiter.
Arguments |
---|
input InviteCompanyRecruiterInput! |
createCustomField
Type: CustomField!
Create a custom field.
Arguments |
---|
input CreateCustomFieldInput! |
updateCustomField
Type: CustomField!
Update a custom field.
All fields must be provided.
Arguments |
---|
input UpdateCustomFieldInput! |
deleteCustomField
Type: CustomField!
Delete a custom field.
All fields details must be provided.
Arguments |
---|
input DeleteCustomFieldInput! |
uploadFiles
Type: [TemporaryFileUploadResponse!]!
Generate temporary upload URLs for files for the given account.
The temporary URL will expire after 1 week.
Arguments |
---|
input [UploadFileInput!]! |
markFilesAsUploaded
Type: [File!]!
Mark one or more files as uploaded to the temporary URL.
Arguments |
---|
input MarkFilesAsUploadedInput! |
acceptBid
Type: Hire!
Hire a worker for a job.
Only companies can make hires.
Once a hire is created a draft contract will automatically be created also, Hire.latestContract
, which will be pending acceptance from the other party (usually a worker).
Arguments |
---|
input AcceptBidInput! |
rejectHire
Type: Hire!
Reject a hire.
Arguments |
---|
input RejectHireInput! |
hire
Type: Hire!
Hire a trusted contact.
Only companies can make hires.
Arguments |
---|
input HireInput! |
createJob
Type: Job!
Create a job.
Only companies can create jobs.
Arguments |
---|
input CreateJobInput! |
updateJob
Type: Job!
Update a job.
Only companies can update jobs.
Arguments |
---|
input UpdateJobInput! |
endJob
Type: Job!
End a job.
Only companies can end jobs.
Arguments |
---|
input EndJobInput! |
setInternalBudgetOnJob
Type: Job!
Set the internal budget of a job.
Only companies can set the internal budget on the job.
Arguments |
---|
input SetInternalBudgetOnJobInput! |
createJobCandidate
Type: [JobCandidate!]!
Create a job candidate.
This will make the workers eligible and proposed for a job.
Arguments |
---|
input CreateJobCandidateInput! |
updateJobCandidateStatus
Type: JobCandidate!
Update a job candidate status.
A reason and comment can be provided.
Arguments |
---|
input UpdateJobCandidateStatusInput! |
updateJobCandidatePreferred
Type: JobCandidate!
Update job candidates “preferred” status.
Arguments |
---|
input UpdateJobCandidatePreferredInput! |
createJobShare
Type: [JobShare!]!
Create a job share.
Arguments |
---|
input CreateJobShareInput! |
removeJobShare
Type: [JobShare!]!
Remove a job share.
Arguments |
---|
input RemoveJobShareInput! |
createNote
Type: Note!
Create a note.
Arguments |
---|
input CreateNoteInput! |
updateNote
Type: Note!
Update a note.
Arguments |
---|
input UpdateNoteInput! |
deleteNote
Type: Note!
Delete a note.
Arguments |
---|
input DeleteNoteInput! |
createPaymentRequest
Type: PaymentRequest!
Create a payment request.
Arguments |
---|
input CreatePaymentRequestInput! |
updatePaymentRequest
Type: PaymentRequest!
Update a payment request.
Arguments |
---|
input UpdatePaymentRequestInput! |
deletePaymentRequest
Type: PaymentRequest!
Delete a payment request.
Arguments |
---|
input DeletePaymentRequestInput! |
createProject
Type: Project!
Create a project.
Only companies can create projects.
Arguments |
---|
input CreateProjectInput! |
updateProject
Type: Project!
Update a project.
Only companies can update projects.
Arguments |
---|
input UpdateProjectInput! |
deleteProject
Type: Project!
Soft delete a project.
Only companies can delete projects.
Arguments |
---|
input DeleteProjectInput! |
attachJobsToProject
Type: Project!
Attach one or more jobs to a project.
Only companies can attach jobs to projects.
Arguments |
---|
input AttachJobsToProjectInput! |
detachJobFromProject
Type: Project!
Detach a job from a project
Only companies can detach a job from a project.
Arguments |
---|
input DetachJobFromProjectInput! |
endProject
Type: Project!
End a project.
This is used to set an end date on the project to consider it no longer active.
Arguments |
---|
input EndProjectInput! |
openProject
Type: Project!
Open a project.
This is used to set the end date on the project to null
to make it open again.
Arguments |
---|
input OpenProjectInput! |
createRecruiterCandidate
Type: RecruiterCandidate
Add and invite a new candidate.
Only recruiters can add and invite candidates.
Arguments |
---|
input CreateRecruiterCandidateInput! |
updateRecruiterCandidate
Type: RecruiterCandidate
Update a recruiter candidate information.
Only recruiters can edit the relationship.
Arguments |
---|
input UpdateRecruiterCandidateInput! |
deleteRecruiterCandidate
Type: RecruiterCandidate
Delete a recruiter candidate relationship.
Both the recruiter and the candidate can delete the relationship.
Arguments |
---|
input DeleteRecruiterCandidateInput! |
createTimesheet
Type: Timesheet
Create a timesheet.
Only workers can create timesheets.
Arguments |
---|
input CreateTimesheetInput! |
updateTimesheet
Type: Timesheet!
Update a timesheet.
Only workers can update timesheets.
Arguments |
---|
input UpdateTimesheetInput! |
deleteTimesheet
Type: Timesheet!
Delete a timesheet.
Only workers can delete timesheets.
Arguments |
---|
input DeleteTimesheetInput! |
updateTimesheetRegistration
Type: TimesheetRegistration!
Update a timesheet registration.
Only workers can update timesheet registrations.
Arguments |
---|
input UpdateTimesheetRegistrationInput! |
deleteTimesheetRegistration
Type: TimesheetRegistration!
Delete a timesheet registration.
Only workers can delete timesheet registrations.
Arguments |
---|
input DeleteTimesheetRegistrationInput! |
createTrustedContact
Type: TrustedContact!
Add and invite a new trusted contact.
Only companies can add & invite trusted contacts.
Arguments |
---|
input CreateTrustedContactInput! |
updateTrustedContact
Type: TrustedContact!
Update a trusted contact.
Only companies can edit trusted contacts.
Arguments |
---|
input UpdateTrustedContactInput! |
deleteTrustedContact
Type: TrustedContact
Delete a trusted contact.
Only companies can delete trusted contacts.
Arguments |
---|
input DeleteTrustedContactInput! |
approveTrustedContact
Type: TrustedContact!
Approve a trusted contact.
Only companies can approve trusted contacts.
Arguments |
---|
input ApproveTrustedContactInput! |
blockTrustedContact
Type: TrustedContact!
Block an applied trusted contact.
Only companies can block trusted contacts.
Arguments |
---|
input BlockTrustedContactInput! |
createUserGroup
Type: UserGroup!
Create a user group.
Only companies can create user groups.
Arguments |
---|
input CreateUserGroupInput! |
updateUserGroup
Type: UserGroup!
Update a user group.
Only companies can update user groups.
Arguments |
---|
input UpdateUserGroupInput! |
deleteUserGroup
Type: UserGroup!
Soft delete a user group.
Only companies can delete user groups.
Arguments |
---|
input DeleteUserGroupInput! |
attachUsersToUserGroup
Type: UserGroup!
Attach one or more users to a group.
Only companies can attach users to groups.
Arguments |
---|
input AttachUsersToUserGroupInput! |
detachUsersFromUserGroup
Type: UserGroup!
Detach one or more user from a group.
Only companies can detach users from a group.
Arguments |
---|
input DetachUsersFromUserGroupInput! |
createWebhook
Type: Webhook!
Create a webhook.
Only companies can create webhooks.
Arguments |
---|
input CreateWebhookInput! |
updateWebhook
Type: Webhook!
Update a webhook.
Arguments |
---|
input UpdateWebhookInput! |
deleteWebhook
Type: Webhook!
Delete a webhook.
Arguments |
---|
input DeleteWebhookInput! |
updateWorker
Type: Worker!
Update a worker.
Arguments |
---|
input UpdateWorkerInput! |
createWorkflow
Type: Workflow!
Create a workflow.
Only companies can create workflows.
Arguments |
---|
input CreateWorkflowInput! |
updateWorkflow
Type: Workflow!
Update a workflow.
Only companies can create workflows.
Arguments |
---|
input UpdateWorkflowInput! |
deleteWorkflow
Type: Workflow!
Delete a workflow.
Only companies can delete workflows.
Arguments |
---|
input DeleteWorkflowInput! |
createExport
Type: CreateExportResponse
Create an export.
The export URL and the number of rows will be returned (excluding headings).
Arguments |
---|
input CreateExportInput! |