Public
Members

Import (create or update) members (employees) through a csv file

post/v1/public/members/import-file

Request

Query parameters

stopOnErrorsboolean

When true, if the file contains errors like duplicate emails, a 422 is return with an error response. It is set to false if not specified.

idField'code' | 'email'

You can choose between employee code or email field contained in the file to match and update existing employee, if no match a new employee will be created. The chosen idField is mandatory for every row in the file. The code is used by default if not specified.

fileunknown required
<p>Csv file with comma delemiter.</p><p>Notes:</p><p>All members imported from the csv file are put in a queue executed each 20 minutes.</p><ul><li>You can add query string parameters in the request url: "stopOnErrors": boolean = false and / or "idField": code | email = "code".</li><li>You can use any fields in the ImportMemberRequest schema.</li><li>"fName" and "lName" fields are mandatory for a member creation.</li><li>The "idField", code (default) or email, is mandatory.</li><li>If idField (row.code | row.email) is set and no member has this idField (member.code | member.email) => a new member will be created.</li><li>If idField (row.code | row.email) is set and a member has this idField (row.code | row.email) => this member will be updated.</li><li>All fields containing more than 1 element must be separate with a semicolon ";" (ex: tslCodes, tslNames, skillWages, initialExperienceHoursBySkill).</li><li>For customFields, add new column(s) with the prefix "custom:" for the column name (ex: "custom:key 1", "custom:key 2").</li></ul>

Request body multipart/form-data

fNamestring required

Member First Name

lNamestring required

Member Last Name

emailstring nullable

Member email must be a valid email

phonestring nullable

Member phone

codestring nullable

Member code act as employee number. It is also used to uniquely identify a member during third parties system integration and during importation

hiringDatestring nullable

Date in SQL format yyyy-mm-dd

hourlyWagenumber nullable

Default hourly wage used in all positions

maxHoursPerWeeknumber nullable

Maximum hours of work per week. Must be between 0 and 168 hours.

maxHoursPerPayPeriodnumber nullable

Maximum hours of work per pay period. Must be greater than 0

emailNotificationboolean

Accept email notifications

pushNotificationboolean

Accept push notifications

localestring

Evolia uses this locale when sending emails or sms to the member. Possible values are fr, en, es (french, english, spanish)

skillCodesstring

Semicolon separated skill code

skillNamesstring

Semicolon skill name (skillCodes will take precedence over skillNames if set)

skillWagesstring

Hourly wage by skill. Use this format skillCode:amount. Elements must be separate by a semicolon

initialExperienceHoursBySkillstring

Use this format skillCode:hourCount separate all entries with a semicolon

teamCodesstring

Semicolon separated team code

teamNamesstring

Semicolon separated team name (teamCodes will take precedence over teamNames if set)

locationCodesstring

Semicolon separated location code

locationNamesstring

Semicolon separated location name (locationCodes will take precedence over locationNames if set)

typeCodestring

Employment status code

pinstring

Pin is used to clock in punch console. The value is a number represented as string

gender'M' | 'F' | 'X' | 'P'

Member gender. P mean "Prefer not to say"

birthdatestring

Date in SQL format yyyy-mm-dd

addressline1string

Home address (line 1)

addressline2string

Home address (line 2)

citystring

City of residence

statestring

State of residence

postalCodestring

Postal code / zip code of residence

countrystring

Country of residence

primaryEmergencyContactNamestring

Name of the person to contact in case of an emergency

primaryEmergencyContactPhonestring

Phone number of the person to contact in case of an emergency

primaryEmergencyContactNotestring

Note about the emergency contact

secondaryEmergencyContactNamestring

Name of the second person to contact in case of an emergency

secondaryEmergencyContactPhonestring

Phone number of the second person to contact in case of an emergency

secondaryEmergencyContactNotestring

Note about the second emergency contact

status'active' | 'inactive'

Member status, active or inactive

Example request

{
  "fName": "John",
  "lName": "Doe",
  "email": "johndoe@email.com",
  "phone": "5551112222",
  "code": "1",
  "hiringDate": "2021-01-31",
  "hourlyWage": 18,
  "maxHoursPerWeek": 40,
  "maxHoursPerPayPeriod": 80,
  "locale": "en",
  "skillCodes": "S1;S2",
  "skillNames": "SkillName1;SkillName2",
  "skillWages": "S1:12.50;S2:15.25",
  "initialExperienceHoursBySkill": "S1:150;S2:250.5;S3:100",
  "teamCodes": "T1;T2",
  "teamNames": "TeamName1;TeamName2",
  "locationCodes": "L1;L2",
  "locationNames": "LocationName1;LocationName2",
  "pin": "654321",
  "birthdate": "2001-01-31"
}

Response

totalQueuedMembersnumber required

Total count of members put in the queue.

updateMembersCountnumber required

Total count of member that will be updated.

createMembersCountnumber required

Total count of member that will be created.

errorsCountnumber required

Total error count contained in the file.

errorsobject required

A list of error messages indicating the row number containing the error. Return null if no error.

queueIdstring required

Queue Id

Changes

No recorded changes to this operation across all 8 revisions of this API.