Input Objects

Input Objects represent input to a query or mutation.

AcceptBidInput

The input used for hiring.

Fields

Name Description
bid (ID!) The ID of the bid which the hire should be based on.
contactPerson (ID) The ID of the person in the company which is responsible for the contact.

If not supplied, the currently authenticated user will be used.
billingContactPerson (ID) The ID of the person in the company which is responsible for the billing.

If not supplied, the currently authenticated user will be used.
startDate (Date) The date for when the contract should start.

This date is used on the draft contract.
endDate (Date) The date for when the contract should end.

This date is used on the draft contract.
jobTitle (String) The title of the job the person will be hired to do.

If not filled out, the job title from the job of the bid will be used. This title is used on the draft contract.
jobDescription (String) The description of the hire job.

If not filled out, the job description from the job of the bid will be used. This title is used on the draft contract.
paymentTermMethod (PaymentTermMethod) The payment term method for the contract.
paymentTermDays (PaymentTermDays) The amount of days to use with the payment term method for the contract.
purchaseOrderNumber (String) The Purchaser Order Number for the contract.
additionalTerms (String) Any additional terms to the contract.

The contract is always subject to the terms and conditions for Worksome’s platform.
workplaceAddress (String) The address for where the work will be taken place.

This will be part of the contract also. The Address should be a full address, with city and postal code.
customInvoiceText (String) Any text which should be included in all invoices that are part of this hire.

This text will be shown on the top of each invoice once they are created.
companyName (String) The company name used on the contract.

If not set the current company name will be used instead.
companyAddress (String) The company address used on the contract.

If not set the current company address will be used instead.
companyZipCode (String) The company zip code used on the contract.

If not set the current company zip code will be used instead.
companyCity (String) The company city used on the contract.

If not set the current company city will be used instead.
companyCountry (String) The company country used on the contract.

If not set the current company country will be used instead.
recruiter (RecruiterInput) The recruiter for which will be attributed to the hire.
closeOtherConversations (Boolean) Close other conversations if true.
closingMessage (String) Message to send when closing other conversations.
attachments ([ID]) Attached documents.

ApproveTrustedContactInput

The details for approving a trusted contact.

Fields

Name Description
id (ID!) The id of the trusted contact to be deleted.

ArgsInput

The provided input arguments.

Fields

Name Description
companies ([Int!]!) An array of company ids included in the export.
dateFrom (Date) The start date of the export.
dateTo (Date) The end date of the export.
meta (String) Any additional information.

AttachJobsToProjectInput

The input used for attaching one or more jobs to a project.

Fields

Name Description
jobs ([ID!]!) Jobs to be added to the project.
project (ID!) The project containing jobs.

AttachUsersToUserGroupInput

The input used for attaching one or more users to a group.

Fields

Name Description
userGroup (ID!) The user group containing users.
users ([ID]) Users to be attached to the group.

BbanInput

The BBAN input details.

Fields

Name Description
bsb (String) The Bank-State-Branch or BSB number.
bankId (String) The bank id.
bankCode (String) The bank code.
branchId (String) The bank branch id.
branchCode (String) The bank branch code.
accountNumber (String) The bank account number.
accountSuffix (String) The bank account suffix.
institutionNumber (String) The bank institution number
transitNumber (String) The bank transit number.
registrationNumber (String) The bank registration number.
routingCode (String) The bank routing code.
sortCode (String) The bank sort code.
purposeOfPayment (String) The bank purpose of payment code.

ChangeEmailInput

The details required for changing the email.

Fields

Name Description
user (ID) The ID of the user whose email address should be updated.

If this is null or excluded, the currently authenticated user’s email will be changed.
email (String!) The new email for the user.

CreateExportInput

The input for creating an export.

Fields

Name Description
userId (Int!) The user id to create an export for.
impersonatorId (Int) The impersonator that is creating the export.
accountId (Int!) The account to create an export for.
accountType (String!) The account type to create an export for.
type (String!) The type of processor to use for the export.
generatorType (String!) The type of generator (format) that is creating the export.
deliveries ([String!]!) The methods and locations that the export should be delivered to.
args (ArgsInput!) Additional arguments to record for the export.

CreateJobInput

An input for creating a new job.

Fields

Name Description
name (String!) The name of the job.
skills ([String!]!) The skills required for the job.
company (ID!) The company that the job is for.

CreateNoteInput

An input for creating a new note.

Fields

Name Description
body (String!) The body of the note.
title (String) The title of the note.
accountId (ID!) The account that the note is related to.
notableId (ID!) The entity that the note is for.

CreatePasswordInput

The details required for creating a password.

Fields

Name Description
password (String!) The password which will be set on the user.

CreateProjectInput

The input used for projects.

Fields

Name Description
name (String!) The name of the project.
description (String) The description of the project.
internalBudget (Float) The internal budget of the project.
company (ID!) The company that the project is for.
owners ([ID]) The owners of the project.

CreateSmsMultiFactorInput

An input for creating a new SMS multi-factor authentication implementation.

Fields

Name Description
name (String) An optional name for the SMS multi-factor authentication implementation.

CreateTotpMultiFactorInput

An input for creating a new TOTP multi-factor authentication implementation.

Fields

Name Description
name (String) An optional name for the TOTP multi-factor authentication implementation.

CreateTrustedContactInput

The details for adding & inviting a trusted contact.

Fields

Name Description
company (ID!) The company that the trusted contact is for.
name (String!) The invited trusted contact name.
email (String!) The invited trusted contact email.
links ([String!]!) The invited trusted contact links.
attachments ([ID!]!) The invited trusted contact attachments.
skills ([String!]!) The skills to associate with the trusted contact.
message (String!) The message that will be sent to the trusted contact.
notifyWorker (Boolean!, 1) Whether the worker should be notified that they have been added to the platform

CreateUserGroupInput

The input used for groups.

Fields

Name Description
name (String!) The name of the group.
description (String) The description of the group.
company (ID!) The company that the group is for.
users ([ID]) The users of the group.

DateRangeInput

The input used for a date range.

Fields

Name Description
from (Date) The date at the beginning of a range.
to (Date) The date at the end of a range.

DeleteNoteInput

An input for deleting a note.

Fields

Name Description
id (ID!) The id of the note to be deleted.

DeleteTrustedContactInput

The details for deleting a trusted contact.

Fields

Name Description
id (ID!) The id of the trusted contact to be deleted.

DetachJobFromProjectInput

The input used for attaching one or more jobs to a project.

Fields

Name Description
job (ID!) Jobs to be detached from the project.
project (ID!) The project containing jobs.

DetachUsersFromUserGroupInput

The input used for detattaching one or more users from a group.

Fields

Name Description
userGroup (ID!) The user group containing users.
users ([ID]) Users to be detached from the group.

EndJobInput

An input for ending (aka closing) an existing job.

Fields

Name Description
id (ID!) The id of the job.
accountId (ID!) The id of the account performing the action.

ForceLogoutInput

The details required for forcing logout of other sessions.

Fields

Name Description
user (ID!) The ID of the user to log out.

FreeTextInternalFieldInput

An input for a free-text internal field.

Fields

Name Description
id (ID!) The id of the field to create a selection for.
value (String!) This is the value for the field.

GenerateInviteLinkInput

The input used to generate the company invite link token.

Fields

Name Description
company (ID!) The company that the link token is for.

HireInput

The input used for direct hires.

Fields

Name Description
trustedContact (ID) The trusted contact to hire directly.
job (ID) The id of the job.
name (String) The name of the job to bid.
description (String) The description of the job to bid.
message (String) The message to send the trusted contact.
rateType (RateType) The rate type that is due.
rate (Float) The rate that is due.
locationPreference (LocationPreferenceInput) The location preference of the job.
startDate (Date) The date for when the contract should start.

This date is used on the draft contract.
endDate (Date) The date for when the contract should end.

This date is used on the draft contract.
includeStandardContract (Boolean) Whether to include the standard contract.

The default is to include a standard contract.
purchaseOrderNumber (String) A Purchase Order (PO) number to attribute to the direct hire.
conversation (ID) The conversation that the direct hire should be attributed to.
recruiter (RecruiterInput) The recruiter that the hire should be attributed to.
internalFields (InternalFieldInput) Additional internal fields for the direct hire.

Details specified in this will only be visible to you and your team members, not to workers.
company (ID!) The company that the direct hire is for.

HiresOrderByClauseInput

The input object used to sort hires

Fields

Name Description
field (HireOrderByColumn) The field to sort hires by.
order (SortOrder) The order to sort hires by.

ImpersonateInput

The details required for impersonating a user.

Fields

Name Description
user (ID!) The ID of the user to impersonate.

InternalFieldInput

An input for internal fields.

This input object is used to group all the different types of internal fields together.

Fields

Name Description
singleSelect ([SingleSelectInternalFieldInput]) The list of single-select field input.
freeText ([FreeTextInternalFieldInput]) The list of free-text field input.

InvitedByInput

Trusted contact invited by users filter input. If null, all trusted contacts will be returned.

Fields

Name Description
users ([ID!]!) User ids by which to filter by
includeAutomation (Boolean!) Whether or not to include TCs that have been invited via automation

LanguageInput

An input for a language.

Fields

Name Description
name (LanguageName!) The name of the language.
experience (Fluency!) The experience level required for the language.

LocationPreferenceInput

An input for the location preferences.

Fields

Name Description
preference (LocationPreference!) The location preference.
address (String) The address for the job.

This is not required when “location” is set to “REMOTE_ONLY”.

OrderByClause

Allows ordering a list of records.

Fields

Name Description
column (String!) The column that is used for ordering.
order (SortOrder!) The direction that is used for ordering.

QueryInvoicesOrderByOrderByClause

Order by clause for Query.invoices.orderBy.

Fields

Name Description
column (InvoicesOrderByColumn!) The column that is used for ordering.
order (SortOrder!) The direction that is used for ordering.

RateInput

An input for the rate.

Fields

Name Description
type (RateType!) The unit of time when payment is due.
rate (Float) The payment amount per specified rate type.
range (RateRangeInput) The payment amount as a range per specified rate type.

RateRangeInput

An input for the rate as a range.

Fields

Name Description
minimum (Float!) The minimum payment amount per specified rate type.
maximum (Float!) The maximum payment amount per specified rate type.

RecruiterInput

The input object used for all the information required to attribute a recruiter.

Fields

Name Description
recruiter (ID!) The ID of the recruiter
fee (StrictPercentage!) The fee the recruiter is taking as a percentage
ownershipDays (Int!) The amount of days the recruiters ownership period exist in
ownershipStartDate (Date!) The date which the ownership starts.

RemoveMultiFactorInput

An input for removing a multi-factor authentication implementation.

Fields

Name Description
id (ID!) The ID of the multi-factor authentication implementation to remove.

SetInternalBudgetOnJobInput

The input used for setting the internal budget on a job

Fields

Name Description
job (ID!) The job that the budget is for.
amount (Float!) The amount for the internal budget.

Up to 2 decimal points are stored, the reset omitted.

SingleSelectInternalFieldInput

An input for a single-select internal field.

Fields

Name Description
id (ID!) The id of the field to create a selection for.
value (ID!) The id of the option to select.

StoreBankDetailsInput

The details for updating a bank account details.

Fields

Name Description
accountId (ID!) The account that the bank account is related to.
name (String) The display name for this bank account.
bankAddress (String!) The address of this bank account.
bankCountry (String!) The country of this bank account.
bankName (String!) The name of this bank account.
beneficiaryName (String!) The beneficiary name of this bank account.
bban (BbanInput) The BBAN information, if applicable.
iban (String) The bank account IBAN, if applicable.
swift (String) The bank account SWIFT code, if applicable.

TrustedContactOrderByClauseInput

Trusted contact sorting clause input

Fields

Name Description
column (TrustedContactOrderByColumn) Column by which trusted contacts should be sorted
order (SortOrder, ASC) Sorting order for the associated sorting column

UpdateJobInput

An input for updating an existing job.

Fields

Name Description
locale (Locale) An optional locale for the job.

If set, skills and industries will use the locale’s spelling.
id (ID!) The id of the job.
name (String) The name of the job.
skills ([String]) The skills required for the job.
description (String) The description required for the job.
attachments ([ID]) The project type of the job.
association (Association) The project type of the job.
expectedExperienceLevel ([ExpectedExperienceLevel]) The expected experience level required for the job.
locationPreference (LocationPreferenceInput) The location preference of the job.
rateType (RateInput) The rate that is due.
paymentScheme (PaymentScheme) The payment scheme that the job will use.
startDate (Date) The start date of the job.

If this is set to null, we will assume that the job should start as soon as possible.
endDate (Date) The end date of the job.

If this is set to null, we will assume that the job’s end date is undetermined.
evaluationPeriod (EvaluationPeriod) The period of time required to reply to candidates.
languages ([LanguageInput]) The languages required for the job.
industries ([ID]) The industries that the worker requires experience in.
owners ([ID]) The owners of the job posting.
requiredWorkers (Int) The number of required workers.
visibility ([JobVisibility]) This controls via which channels the job can be shared.

It is therefore important to select which audiences should be allowed to see the job listing.
internalFields (InternalFieldInput) Additional internal fields for the job.

Details specified in this will only be visible to you and your team members, not to workers.
published (Boolean) Whether the job should be published.

UpdateNoteInput

An input for updating a note.

Fields

Name Description
id (ID!) The id of the note to be updated.
body (String) The body of the note to be updated.
title (String) The title of the note to be updated.

UpdatePasswordInput

The details required to update a user’s password.

Fields

Name Description
currentPassword (String!) The current password for the user.
password (String!) The new password for the user.
passwordConfirmation (String!) The confirmation of the password for the user.

UpdateProjectInput

An input for updating an existing project.

Fields

Name Description
id (ID!) The id of the project.
name (String) The name of the project.
description (String) The description of the project.
internalBudget (Decimal) The internal budget of the project.
owners ([ID]) The owners of the project.

UpdateTrustedContactInput

The details for editing a trusted contact.

Fields

Name Description
id (ID!) The id of the trusted contact to be edited.
links ([String!]!) The trusted contact links.
attachments ([ID!]!) The trusted contact attachments.
skills ([String!]!) The skills to associate with the trusted contact.

UpdateUserGroupInput

An input for updating an existing group.

Fields

Name Description
id (ID!) The id of the group.
name (String) The name of the group.
description (String) The description of the group.
users ([ID]) The users of the group.

UpdateWorkerInput

The details for updating a worker.

Fields

Name Description
id (ID!) The id of the worker.
jobTitle (String) The job title that the worker has.
links ([String!]!) The links the worker has.
skills ([String!]!) The skills to associate with the worker.

UploadFileInput

The input used for uploading a file.

Fields

Name Description
owner (ID!) The ID of the account that owns this file.
file (Upload!) A pointer to the uploaded file.

Files should be mapped in the request payload as defined in the https://github.com/jaydenseric/graphql-multipart-request-spec spec.

VerifySmsMultiFactorInput

An input for verifying a newly-created SMS multi-factor authentication implementation.

Fields

Name Description
id (ID!) The ID of the SMS multi-factor authentication implementation to verify.
code (String!) The current SMS authentication code to verify the implementation with.

VerifyTotpMultiFactorInput

An input for verifying a newly-created TOTP multi-factor authentication implementation.

Fields

Name Description
id (ID!) The ID of the TOTP multi-factor authentication implementation to verify.
code (String!) The current TOTP authentication code to verify the implementation with.