SOAP API v7.1

Overview

SOAP web service allows managing user accounts and locations. The SOAP API consists of a set of callable methods.

https://{domain}.worldmanager.com/soap/v7/?wsdl

Please substitute {domain} with the domain name of your World Manager platform.

For testing purposes, we recommend to use your playground system:

https://{domain}-playground.worldmanager.com/soap/v7/?wsdl

Please substitute {domain} with the domain name of your World Manager platform.

Security

The API service is protected to ensure that only authorised World Manager users use it.

World Manager APIs use the OAuth 2.0 protocol to control access to the API.

To begin, obtain OAuth 2.0 client credentials by creating an Integration Client in your World Manager platform as outlined in the section below. Make sure to enable “SOAP API” scope for the Integration Client. Then you can obtain an Access Token using Client Credentials grant flow which gives you access to the APIs. For details about using OAuth 2.0 for authentication, see OAuth2 Documentation. Please note that the Access Token will expire after a certain amount of time as specified in the response containing the token. Maximum token lifespan is 12 hours.

Create an Integration Client

  1. Login to the World Manager platform as a World Manager account.
  2. Click on “System Configuration” under “System” section in the Toolbox.
  3. Click on “Integration Clients”.
  4. Choose an existing Integration Client or click “New Integration Client” to create a new one.
  5. The corresponding Client Secret value will be displayed in the “Client Secret” field.
  6. To enable SOAP API, tick “SOAP API” checkbox under “Scopes”.

Access Token

Once you have created an integration client you will be issues “client credentials” in the form of a client identifier and a client secret. The Client ID is a publicly exposed string that is used by the service API to identify the application. The Client Secret is used to authenticate the identity of the application to our API, and must be kept private between the application and the API.

The application requests an access token prior to accessing SOAP API by passing the authorization details including the Client ID client secret to the API token endpoint which will generate your access token.

API Token endpoint for your platform: https://your.worldmanager.com/oauth/token

When accessing SOAP API, send the value as the OAuth 2.0 access token with the authentication type set as Bearer. For example:

Authorization: Bearer <access_token>

Unique Identifiers

Most of the entities which can be retrieved, created, updated, or deleted via the API have uuid field of type WmUuidInput or WmUuidOutput, respectively. This value servers as a unique identifier of the entity.

The API uses version 4 of UUID. See RFC 4122 for more information.

Date Formatting

All date and date-time parameters that are passed to the API are required to be in one of the following ISO 8601-compatible formats.

Date

Date values must comply with ISO_LOCAL_DATE formatting.

Example:

  • 2011-12-03

Date-time

Date-time values must comply with ISO_ZONED_DATE_TIME formatting.

Examples:

  • 2011-12-03T10:15:30Z
  • 2011-12-03T10:15:30+01:00
  • 2011-12-03T10:15:30.2311892+01:00

Change Log v7.0

Change Log v7.1

New errors

code Message Description
181 Account group was not found: {groupUuid} When the account group supplied was not found.
182 Account group is invalid: {groupUuid} When the account group supplied is invalid.
183 Duplicate account group supplied When a duplicate account group is supplied.
184 Multiple account groups supplied When multiple account groups are supplied.
185 Account groups with different roles supplied When multiple account groups with different roles are supplied.
186 GroupId or GroupUuids field must be supplied When groupID and groupUuids are both supplied or neither are.
187 Role was not found: {role} When the role supplied was not found.

Updated errors

code Old Message New Message
136 Country/Area/Store was not found Location was not found: {location}

Removed errors

code Message Description
42 Account group was not supplied When there was no account account group supplied.
119 Unauthorized account group When trying to authenticate with an account that is Role slug national-manager, area-manager, general-manager, store-manager, employee.

Methods

getGroups

Get a list of account groups.

Response

WmGroupsResult

getAccountsByGroupID

findAccountsByGroupId

Get a list of accounts by group and/or status. Legacy groups must be enabled on the platform for this method to function correctly.

Parameters

name type required nillable description
groupID long true false A valid account group ID (5-19).
active boolean false true FALSE — inactive (disabled)
TRUE — active

By default returns all.

Response

WmAccountsResult

findAccountsByLocation

Get a list of user accounts by location UUID.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing country, or area, or store.
page int false true The page to start searching from (each page is limited to 1000 records).

  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

A list of user accounts, which belong to the given country, area, or store.

WmAccountsResult

findAccountsUpdatedSince

Get a list of user accounts which were updated since the given timestamp.

Parameters

name type required nillable description
timestamp string true false A date/time string in ISO 8601 format.
page int false true The page to start searching from (each page is limited to 1000 records).
  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

WmAccountsResult

findAccountsByCustomField

Get a list of user accounts by custom field reference and value.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing custom field.
  • File and Text Box custom fields cannot be retrieved.
value string true false Value of the custom field.
  • If the field is a checkbox, the string value will be converted to a boolean.
  • If the field is a date, the date string in must be in ISO 8601 format.
page int false true The page to start searching from (each page is limited to 1000 records).
  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

WmAccountsResult

findAccountsBy

Get a list of user accounts based on the criteria provided

Parameters

name type required nillable description
criteria WmAccountCriteriaInput true false Criteria to identify accounts required. All criteria provided will be utilised using intersection (and) statements.
page int false true The page to start searching from (each page is limited to 1000 records).
  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

WmAccountsResult

getAccountByUuid

Get user account by UUID.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing user account.

Response

WmAccountResult

getAccountsByUuids

Get a list of user accounts by UUIDs.

Parameters

name type required nillable description
uuids WmUuidInput[] true false UUIDs of existing user accounts.

Response

WmAccountsResult

addAccount

createAccount

Add a new account.

Currently, it is not possible to add/update the following account groups (applies to updateAccountPassword method as well):

ID Name
4 Universal Manager
20 Mystery Shopper
50 T2 Admin
51 T2 Teacher
52 T2 AAC

Parameters

name type required nillable description
account WmAccountInput true false

Response

WmAccountResult

updateAccount

Update an account.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing user account.
account WmAccountInput true false

Response

WmAccountResult

updateAccountStatus

Update an account’s status as well as sending an exit interview (if chosen to).

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing user account.
active boolean true false Set the active status of the account.
skipExitInterview boolean false true Flag indicating whether or not to send an exit interview.

This will only send an exit interview when updating status from active to inactive.

Defaults to false.

Response

WmTextResult

changePassword

updateAccountPassword

Change the password for a user.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing user account.
password string true false The new password.

Response

WmTextResult

sendExitInterview

Send exit interview to a user.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing user account.

Response

WmTextResult

getCountries

Get a list of all countries in the system.

Response

WmCountriesResult

findAreasByLocation

Get a list of areas by location UUID.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing user account.
page int false true The page to start searching from (each page is limited to 1000 records).
  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

If the given UUID represents a store, the method will return a list with a single area — the one that the store belongs to.

If the given UUID represents an area, the method will return a list with a single area — the area itself.

If the given UUID represents a country, the method will return a list of all areas, which belong to the country.

WmAreasResult

findAreasUpdatedSince

Get a list of areas which were updated since the given timestamp.

Parameters

name type required nillable description
timestamp string true false A date/time string in ISO 8601 format.
page int false true The page to start searching from (each page is limited to 1000 records).
  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

WmAreasResult

getAreaByUuid

Get an area by UUID.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing area.

Response

WmAreaResult

getAreasByUuids

Get a list of areas by UUIDs.

Parameters

name type required nillable description
uuids WmUuidInput[] true false UUIDs of an existing area.

Response

WmAreasResult

addArea

createArea

Add a new area.

Parameters

name type required nillable description
area WmAreaInput[] true false

Response

WmAreaResult

updateArea

Update an existing area.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing area.
area WmAreaInput true false

Response

WmAreaResult

findStoresByLocation

Get a list of stores by location UUID.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing country, or area, or store.
page int false true The page to start searching from (each page is limited to 1000 records).

  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

If the given UUID represents a country or an area, the method will return a list of all stores, which belong to the country or the area, respectively.

If the given UUID represents a store, the method will return a list with a single store — the store itself.

WmStoresResult

findStoresByCustomField

Get a list of stores by custom field reference and value.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing custom field.

  • File custom fields cannot be retrieved.
value string true false Value of the custom field.

  • If the field is a checkbox, the string value will be converted to a boolean.
  • If the field is a date, the date string in must be in ISO 8601 format.
page int false true The page to start searching from (each page is limited to 1000 records).

  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

WmStoresResult

findStoresUpdatedSince

Get a list of stores which were updated since the given timestamp.

Parameters

name type required nillable description
timestamp string true false A date/time string in ISO 8601 format.
page int false true The page to start searching from (each page is limited to 1000 records).

  • The value must be a natural number less than 231.
  • If no page is provided, all results will be returned.

Response

WmStoresResult

getLocationByUuid

getStoreByUuid

Get a store by UUID.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing store.

Response

WmStoreResult

getStoresByUuids

Get a list of stores by UUIDs.

Parameters

name type required nillable description
uuids WmUuidInput[] true false UUIDs of existing stores.

Response

WmStoresResult

addLocation

createStore

Add a new location.

Parameters

name type required nillable description
location WmStoreInput true false

Response

WmStoreResult

updateLocation

updateStore

Update an existing location.

Parameters

name type required nillable description
uuids WmUuidInput[] true false UUID of an existing store.
location WmStoreInput[] true false

Response

WmStoreResult

getLocationInfo

Get a list of location info options for the type, concept, ownership and placement fields.

Parameters

name type required nillable description
section string true false Can be type, concept, ownership and location.

Response

WmLocationInfoResult

getPositions

Get a list of valid positions to use when adding or updating an account.

Response

WmPositionsResult

getLanguages

Get a list of active languages to use when adding or updating an account.

Response

WmLanguagesResult

getTimezones

Get a list of valid languages to use when adding or updating an account, country or store.

Response

WmTimezonesResult

getErrors

Get a list of error messages. We can use this to create documentation later on.

Response

WmErrorsResult

findCustomFieldsByAccountUuid

Find a list of available custom fields for an account.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing account.

Response

WmDataFieldsResult

findCustomFieldsByStoreUuid

Find a list of available custom fields for a store.

Parameters

name type required nillable description
uuid WmUuidInput true false UUID of an existing store.

Response

WmDataFieldsResult

getCustomFields

Get a list of custom fields.

Response

WmCustomFieldOutput[]

getCustomFieldDataByAccountUuids

Get custom fields data by user account UUIDs.

Parameters

name type required nillable description
uuids WmUuidInput[] true false UUIDs of existing user accounts.

Response

WmCustomFieldDataOutput[]

getCustomFieldDataByStoreUuids

Get custom fields data by user account UUIDs.

Parameters

name type required nillable description
uuids WmUuidInput[] true false UUIDs of existing stores.

Response

WmCustomFieldDataOutput

getDataFieldValidValuesByUuid

Get an range of valid values of an active dropdown custom field.

Parameters

name type required nillable description
datafieldUuid WmUuidInput true false UUID of an existing custom field.

Response

WmDataFieldResult

getAccountUuidByUsername

Get the account’s UUID by their username.

Parameters

name type required nillable description
username string true false Username of an existing account.

Response

WmUuidResult

Types

WmUuidInput

name type required nillable description
uuid UUID true false The UUID for an entity.

WmUuidOutput

name type nillable description
uuid UUID false The UUID for an entity.

WmUuidResult

name type nillable description
uuid WmUuidOutput false The UUID for an entity.

WmGroupOutput

name type required nillable description
id int true false
The group’s legacy Id. This field always returns 0.
uuid WmUuidOutput true false The group’s UUID.
role WmRoleOutput true false The group’s role.
name string true false The group’s name.
shortname string true false
The abbreviated group name. This is a legacy field that always returns a blank value.
countryUuid WmUuidOutput false true The UUID for the country the group belongs to.

WmGroupsResult

name type nillable description
groups WmGroupOutput[] false A list of groups.

WmRoleInput

name type required nillable description
slug string true false The identifying slug of a role.

WmRoleOutput

name type required nillable description
slug string true false The identifying slug of a role.

WmAccountInput

name type required nillable description
groupID int true false See getGroups.

This is a legacy field that must be set to 0.
groupUuids WmUuidInput[] false true See getGroups.

A list of group UUIDs, which the user account will belong to. Only a single Group is currently supported.
countryUuids WmUuidInput[] false* true A list of country UUIDs, which the user account will belong to.

  • The first item on the list will be set as primary country.
  • Required for the national-manager Role slug and is invalid for all other Roles.
areaUuids WmUuidInput[] false* true A list of area UUIDs, which the user account will belong to.

  • The first item on the list will be set as primary area.
  • Required for the area-manager Role slug and is invalid for all other Roles.
storeUuids WmUuidInput[] false* true A list of store UUIDs, which the user account will belong to.

  • The first item on the list will be set as primary store.
  • Required for the general-manager, store-manager and employee Role slugs and is invalid for all other Roles.
username string true false An account username.

  • Must be unique (unless editing an account).
  • Must be alphanumeric and contain no spaces.
  • Must not be greater than 50 characters long.
password string false* false An account password.

  • Required only when adding a new account
  • Must meet the minimum required password length setting (in Account Settings).
person WmPersonInput true false An account’s user details such as first and last names.
active boolean false true Flag indicating if account is active/inactive.

  • Defaults to false.
language string false* true See getLanguages.

A language the account should use.

  • Defaults to primary country’s language.
  • Required if primary country contains more than 1 language.
positionName string false true A position name for the user.

  • Must not be greater than 50 characters long.
positionType string false* true See getPositions.

A position the account belongs to.

  • Required for the general-manager, store-manager and employee Role slugs and is invalid for all other Roles.
email string false* true A user’s email address.

  • Must be unique (unless editing an account).
  • Must not be greater than 100 characters long.
  • Required only when Email Required is enabled in Account Settings.
phone string false true A user’s phone contact number.

  • Must not be greater than 50 characters long.
  • There is no specific format required.
mobile string false true A user’s mobile contact number.

  • Must not be greater than 50 characters long.
  • There is no specific format required.
receiveEmails boolean false true Flag indicating if the account is allowed to receive emails.

  • If this is true, a user can receive platform emails, including a welcome email which will be sent automatically to the email provided (if the welcome email template is enabled).
  • If this is false, a user will not receive any platform emails. User Email Opt Out setting must be enabled in the platform to disable receiving emails.
  • Defaults to true.
timezone string false true See getTimezones.

A timezone the account should use.

  • Defaults to store, area or country’s timezone, depending on provided groupID.
userDetailsUpdated boolean false true Flag that forces the user to update details.

  • false to force.
  • Defaults to false.
userPasswordUpdated boolean false true Flag that forces the user to update password.

  • false to force.
  • Defaults to false.
workStartDate string false* true Start date for the user.

  • Format must be ISO 8601.
  • Required for the area-manager, general-manager, store-manager and employee Role slugs and is invalid for all other Roles.
customFields WmCustomFieldRecordInput[] false true A list of custom fields to set for the account.
customFiles WmCustomFieldFileInput[] false true A list of custom field files to set for the account.

WmAccountOutput

name type nillable description
uuid WmUuidOutput false The account’s UUID.
groupId int false See getGroups.

Legacy group field. This field is set to 0.
groupUuids WmUuidOutput[] false See getGroups.

A list of group UUIDs for the groups the user account belongs to.
countryUuids WmUuidOutput[] false A list of country UUIDs for the countries the user account belongs to.

The first item on the list is the user’s primary country.
areaUuids WmUuidOutput[] false A list of area UUIDs for the areas the user account belongs to.

The first item on the list is the user’s primary area.
storeUuids WmUuidOutput[] false A list of store UUIDs for the stores the user account belongs to.

The first item on the list is the user’s primary store.
username string false The account username.
person WmPersonOutput false The account’s user details such as first and last names.
active boolean false Flag indicating if the account is active/inactive.
archived boolean false Flag indicating if the account is active/inactive.
language string false See getLanguages.

The language the account uses.
positionName string true The user’s position name.
positionType string false See getPositions.

The position the account belongs to.
email string true The user’s email address.
phone string true The user’s phone contact number.
mobile string true The user’s mobile contact number.
receiveEmails boolean false Flag indicating if the account is allowed to receive emails.
timezone WmTimezoneOutput false See getTimezones.

The timezone the account uses.
userDetailsUpdated boolean false Flag that forces user to update details.
userPasswordUpdated boolean false Flag that forces user to updated password.
workStartDate string true Start date for the user in ISO 8601 format.
createdAt string false Date-time the user was created in the UTC timezone using ISO 8601 formatting.
updatedAt string false Date-time the user was last updated in the UTC timezone using ISO 8601 formatting.

WmAccountResult

name type nillable description
account WmAccountOutput false A single account.

WmAccountsResult

name type nillable description
accounts WmAccountsOutput[] false A list of accounts.

WmPersonInput

name type required nillable description
title WmPersonTitle false true A Person’s title.

  • Must not be longer than 16 characters.
firstName string true false A Person’s first name.

  • Must not be longer than 64 characters.
middleName string false true A Person’s middle names.

  • Must not be longer than 64 characters.
lastName string true false A Person’s last name.

  • Must not be longer than 64 characters.
nickname string false true A Person’s nickname.

  • Must not be longer than 64 characters.
displayName string false true The name displayed on the profile panels.

  • Must not be longer than 64 characters.

WmPersonOutput

WmPersonTitle

field description
MR Mister, An English language honorific for men
MRS An English language honorific usually used only for married women
MISS An English language honorific traditionally used only for an unmarried woman
MS A default form of address for women regardless of their marital status
DR Doctor
PROF Professor
REV Reverend

WmCountryOutput

name type nillable description
uuid WmUuidOutput false The country’s UUID.
name string false The country’s name.
languages string[] false A list of languages available to the country.
timezone WmTimezoneOutput false The timezone the country uses.

WmCountriesResult

name type nillable description
countries WmCountryOutput[] false A list of countries.

WmAreaInput

name type required nillable description
name string true false A name for the area.

  • Must be unique (unless editing an area).
  • Must not be greater than 100 characters long.
countryUuid WmUuidInput true false A UUID of a country the area will belong to.
timezone string false true See getTimezones.

A timezone the area should use.

  • Defaults to provided country’s timezone

WmAreaOutput

name type nillable description
uuid WmUuidOutput false The area’s UUID.
name string false The area’s name.
countryUuid WmUuidOutput false The UUID of the country the area belongs to.
timezone WmTimezoneOutput false The timezone the area uses.

WmAreaResult

name type nillable description
area WmAreaOutput false A single area.

WmAreasResult

name type nillable description
areas WmAreaOutput[] false A list of areas.

WmStoreInput

name type required nillable description
areaUuid WmUuidInput true false The UUID of an area the store will belong to.

  • The Country will automatically be determined from field.
name string true false A name for the store.

  • Must be unique (unless editing a store).
  • Must not be greater than 100 characters long.
email string false true An email address.

  • Must not be greater than 100 characters long.
phone string false true A phone contact number.

  • Must not be greater than 100 characters long.
address string false* true An address.

  • Must not be greater than 255 characters long.
  • Required when showMap is true and suburb, state or postcode and geocode aren’t provided.
  • Required only when Location Address Required is enabled in Location Settings.
suburb string false* true A suburb for the address.

  • Must not be greater than 56 characters long.
  • Required when showMap is true and address, state or postcode and geocode aren’t provided.
  • Required only when Location Address Required is enabled in Location Settings.
state string false* true A state for the address.

  • Must not be greater than 24 characters long.
  • Required when showMap is true and address, suburb or postcode and geocode aren’t provided.
  • Required only when Location Address Required is enabled in Location Settings.
postcode string false* true A postcode for the address.

  • Must not be greater than 8 characters long.
  • Required when showMap is true and address, suburb, or state and geocode aren’t provided.
  • Required only when Location Address Required is enabled in Location Settings.
contactName string false true A contact name.

  • Must not be greater than 56 characters long.
contactPosition string false true The contact’s position.

  • Must not be greater than 56 characters long.
fax string false true A fax number.

  • Must not be greater than 100 characters long.
mobile string false true A mobile contact number.

  • Must not be greater than 24 characters long.
showMap boolean false true Whether to display the address on a googlemap or not.

  • Defaults to false.
  • geocode or one of the address fields (address, suburb, state, postcode) must be provided if this is set to true.
  • The provided address information must be valid.
geocode string false* true A string representation of a latitude/longitude coordinate. Use this to override auto geocoding.

  • Must be in format “latitude,longitude” – eg “-33.8706,151.2059”.
  • Can only be provided when showMap is true.
  • Required when showMap is true and address, suburb, postcode and state aren’t provided.
locationType string false true See getLocationInfo('type')

A location info of type type.

  • Allowed only if Location Type is enabled in settings.
locationPlacement string false true See getLocationInfo('location')

A location info of type location.

  • Allowed only if Location Type is enabled in settings.
locationConcept string false true See getLocationInfo('concept')

A location info of type concept.

  • Allowed only if Location Type is enabled in settings.
ownershipType string false true See getLocationInfo('ownership')

A location info of type ownership.

  • Allowed only if Location Type is enabled in settings.
timezone string false true See getTimezones

A timezone the store should use.

  • Defaults to the provided areas timezone.
customFields WmCustomFieldRecordInput[] false true A list of custom fields to set for the store.
customFiles WmCustomFieldFileInput[] false true A list of custom field files to set for the store.

WmStoreOutput

name type nillable description
uuid WmUuidOutput false The store’s UUID.
countryUuid WmUuidOutput false The UUID of the country the store belongs to.
areaUuid WmUuidOutput false The UUID of the area the store belongs to.
name string false The store’s name.
email string true The store’s email address.
phone string true The store’s phone contact number.
address string true The store’s address.
suburb string true The suburb of the store address.
state string true The state of the store address.
postcode string true The postcode of the store address.
contactName string true The contact’s name.
contactPosition string true The contact’s position.
fax string true The store’s fax number.
mobile string true The store’s mobile contact number.
showMap boolean false Flag indicating whether the address is displayed on a googlemap or not.
geocode string true A string representation of a geocoded latitude/longitude coordinate.
locationType string true The location info for type type.
locationPlacement string true The location info for type location.
locationConcept string true The location info for type concept.
ownershipType string true The location info for type ownership.
timezone WmTimezoneOutput false The UUID of the area the store belongs to.

WmStoreResult

name type nillable description
store WmStoreOutput false A single store.

WmStoresResult

name type nillable description
stores WmStoreOutput[] false A list of stores.

WmAccountCriteriaInput

name type required nillable description
roles WmRoleInput[] false true Valid role inputs.
groupUuids WmUuidOutput[] false true Valid account group UUIDs.
locationUuids WmUuidOutput[] false true UUIDs of existing countries, areas, or stores.
isActive boolean false true FALSE — inactive (disabled)
TRUE — active

By default returns all.
updatedSince string false true A date/time string in ISO 8601 format.

WmCustomFieldOutput

name type nillable description
uuid WmUuidOutput false The datafield’s UUID.
name string false The datafield’s name.
dataType int false The datafield’s type.
dataTypeName string false The datafield’s data type. Can be text, textbox, checkbox, dropdown, file or date.
validValues string[] false A list of valid values for a dropdown custom field.
Data Type Field Type Valid Values
1 Text String (max length of 500)
2 Text Box String (max length of 216-1)
3 Checkbox 1, 0, true, false
4 Dropdown Drop down list options for the custom field
6 Date
  • dd-MM-YYYY
  • dd/MM/YYYY
  • YYYY-MM-dd
  • YYYY/MM/dd

WmCustomFieldDataOutput

name type nillable description
uuid WmUuidOutput false UUID of an existing user account or store.
fields WmCustomFieldRecordOutput[] false A list of custom fields.
files WmCustomFieldFileOutput[] false A list of custom field files.

WmDataFieldsResult

name type nillable description
customFields WmCustomFieldRecordOutput[] false A list of custom fields.
customFiles WmCustomFieldFileOutput[] false A list of custom field files.

WmDataFieldOutput

WmDataFieldResult

name type nillable description
dataField WmDataFieldOutput[] false A single datafield.

WmCustomFieldRecordInput

name type required nillable description
uuid WmUuidInput true false A UUID of a Custom Field.

  • Custom Field’s data type must be text, textbox, checkbox, dropdown, or date.
value string true false A valid value to set for the Custom Field.

For valid values see WmCustomFieldRecordOutput.

WmCustomFieldRecordOutput

name type nillable description
uuid WmUuidOutput false The Custom Field’s UUID.
fieldName string false

The Custom Field’s name.
value string true The value assigned to the Custom Field (if there is one set for the entity).
dataType int false

The Custom Field’s data type. For valid values see the table below.

WmCustomFieldFileInput

name type required nillable description
uuid WmUuidInput true false A UUID of a Custom Field.

  • Custom Field’s type must be file.
fileName string true false A filename for the file.

  • Must be in the format filename.extension. e.g – animage.jpg
  • Filename portion must not be longer than 130 characters.
content string true false Encoded file content.
contentEncoding string false false Currently only support base64 encode.

WmCustomFieldFileOutput

name type nillable description
uuid WmUuidOutput false The Custom Field’s UUID.
fieldName string false

The Custom Field’s name.
fileName string true The file name provided (including extension).
fileSize string true The size of the file.
content string true Encoded file content (if there is a file).
contentEncoding string false The Encoding used.
  • Custom field file is just a particular type of custom field record to store upload file name and file content.
  • Content encoding only accepts base64 in version 2; additional encoding might be implemented in future version.
  • Supported file extensions include: gif, jpg, png, swf, flv, mp4, pdf, doc, docx, ppt, pps, pptx, ppsx, xls, xlsx, xlsm, pub, mpp, prj, mpxj, pdf.

WmTimezoneOutput

name type nillable description
name string false A user-friendly name for a timezone. e.g ⎯ (GMT+10:00) Canberra, Melbourne, Sydney.
value string false The value of the timezone, which is used in various inputs/outputs (such as WmAccountInput, WmAccountOutput).

WmTimezonesResult

name type nillable description
timezones WmTimezoneOutput[] false A list of timezones.

WmTextResult

name type nillable description
text string false A simple message returned from the server.

WmLocationInfoResult

name type nillable description
options string[] false A list of location infos.

WmLanguagesResult

name type nillable description
languages string[] false A list of languages.

WmPositionsResult

name type nillable description
positions string[] false A list of positions.

WmError

name type nillable description
code int false See Error Glossary for a list of codes.
message string false See Error Glossary for a list of messages.

WmErrorsResult

name type nillable description
errors WmError false A list of errors.

Error Glossary

Code Message Description
1 Server error When the SOAP request has produced an internal server error.
2 Unable to read the SOAP response When the server cannot marshal an object from the server-side.
3 Unable to read the SOAP request When the server cannot unmarshal a SOAP request from the client.
4 Invalid data: {message} When the request contains invalid data.
19 Country was not found: {country} When the country supplied was not found.
20 Country was not supplied When there was no country supplied.
21 Area was not found: {area} When the area supplied was not found.
22 Area was not supplied When there was no area supplied.
23 Store was not found: {store} When the store supplied was not found.
24 Store was not supplied When there was no store supplied.
27 Code was not supplied When there was no location (country/area/store) code supplied.
28 Invalid code When the supplied location (country/area/store) code contains invalid characters.
30 Code already exists When the supplied location (country/area/store) code is already in use.
31 Name was not supplied When there was no area/store/account name supplied.
33 Name already exists When the supplied location (country/area/store) name is already in use for that region.
34 Invalid account group When the supplied account group ID does not match any of the valid account group ID’s.
45 Username was not supplied When there was no account username supplied.
48 Password was not supplied When there was no account password supplied.
49 Timezone was not found When the timezone supplied was not found.
52 Address value is too long When the store address supplied contains more than 255 characters.
53 Suburb value is too long When the store suburb supplied contains more than 56 characters.
54 State value is too long When the store state supplied contains more than 24 characters.
55 Postcode value is too long When the store postcode supplied contains more than 8 characters.
58 Invalid geocode When the supplied store address details could not be geocoded.
59 Complete address was not supplied When the complete store address (address, city, state and postcode) is required but not supplied.
63 Location type was not found When the location type supplied was not found.
64 Location placement was not found When the location placement supplied was not found.
65 Location concept was not found When the location concept supplied was not found.
66 Location ownership was not found When the location ownership supplied was not found.
69 Location type field is not enabled When location type is not enabled, but was supplied. See location settings in system configuration.
70 Location placement is not enabled When location placement is not enabled, but was supplied. See location settings in system configuration.
71 Location concept is not enabled When location concept is not enabled, but was supplied. See location settings in system configuration.
72 Location ownership is not enabled When location ownership is not enabled, but was supplied. See location settings in system configuration.
73 Contact name value is too long When the store contact supplied contains more than 56 characters.
74 Contact position value is too long When the store position supplied contains more than 56 characters.
75 Fax value is too long When the fax supplied contains more than 24 characters.
78 Cannot change country When trying to change a country for an area or store.
79 The supplied stores or areas must belong to the same country When attempting to supply multiple stores or areas that don’t belong to the same country.
81 Multi-stores are not allowed for this account group When attempting to supply multiple stores for an account group that does not allow it.
83 Name value is too long When the account name supplied contains more than 194 characters or when the store/area name supplied contains more than 100 characters.
84 Email was not supplied When the email is required but not supplied.
85 Invalid email When the supplied email address has an invalid format.
86 Position type was not found When the positionType supplied was not found.
87 Position name value is too long When the position name supplied contains more than 50 characters.
88 Phone value is too long When the phone number supplied contains more than 50 characters.
90 Language was not found When the language supplied was not found.
91 Invalid section type When the supplied section type must be either type, concept, ownership or placement.
93 Invalid area and/or country When the supplied area was not found in the supplied country.
94 Code is not enabled When code is not enabled, but was supplied. See location settings in system configuration.
95 Invalid username When the supplied username is invalid.
96 Username already exists When the supplied username is already in use.
102 Account group is not active When trying to use an account group that is not available to the supplied country.
104 Mobile value is too long When the store mobile number supplied contains more than 50 characters or when the accounts mobile number supplied contains more than 24 characters.
108 Position type was not supplied When the position type is required but not supplied.
109 Invalid geocode When the supplied geocode is not in the format of lat,lng.
111 Address or geocode was not supplied When supplying a flag to show the address on a map without supplying any address information.
112 Invalid language When supplying an inactive language for any of the accounts countries.
113 Invalid password When the password supplied does not meet the minimum required length.
114 Invalid account group for store When supplying a store for any non-store specified account group.
115 Invalid account group for country When supplying a country for a non-national account group.
116 Invalid account group for area When supplying an area for a non-area account group.
120 Invalid custom field file content for the supplied encoding: {template} When supplying invalid content for the selected encoding type.
121 Custom field was not found: {template} When a supplied custom field was not found.
122 Invalid work start date When the supplied work start date has an invalid format.
123 Invalid account group for work start date When attempting to supply a work start date for an account group that is not Role slug area-manager, general-manager, store-manager or employee.
125 Account was not found When the account supplied was not found.
127 Account hasn’t been deactivated When attempting to send an exit interview to an active account.
128 Account doesn’t have an email address When attempting to send an exit interview to an account without an email.
129 Exit interviews sending is disabled When attempting to send an exit interview when it is disabled.
130 Account does not have a targeted exit interview When attempting to send an exit interview to an account without an active survey available.
131 Insufficient store permissions When attempting to send an exit interview to an account with insufficient store permissions.
134 Exit Interview has already been sent to the account When trying to send an exit interview to an account which already has had one sent.
135 Account identifier was not supplied When not supplying an account identifier.
136 Location was not found: {location} When the supplied location identifier was not found.
137 Custom field UUID was not supplied When there was no custom field UUID supplied.
138 Code value is too long When the supplied code contains more than 24 characters.
139 Contact number was not supplied When a contact number (phone/mobile/fax) is required but not supplied.
140 Custom field is inactive: {template} When trying to update data for a custom field that is not active.
141 Custom field file basename {basename} for the filename is too long: {template} When supplying a filename that contains a basename that contains more than 24 characters.
142 Custom field text is too long: {template} When supplying text that contains more than 500 characters for a text custom field.
143 Username value is too long When supplying a username that contains more than 50 characters.
144 Email value is too long When supplying an email address that contains more than 100 characters.
146 Duplicate country supplied When a duplicate country is supplied when attempting to create a multi-country account.
147 Duplicate area supplied When a duplicate area is supplied when attempting to create a multi-area account.
148 Duplicate store supplied When a duplicate store is supplied when attempting to create a multi-store account.
149 Unsupported file encoding {encoding}: {template} When an unsupported encoding is supplied.
150 Invalid custom field datatype: {template} When supplying a custom field that is not supported (eg. supplying date custom field as file custom field).
151 Invalid custom field filename {filename}: {template} When the supplied filename is not valid or supported.
152 Invalid custom field dropdown value {value}: {template} When a supplied dropdown value cannot be determined.
153 Invalid custom field checkbox value {value}: {template} When a supplied checkbox value cannot be determined.
154 Invalid custom field date value {value}: {template} When a supplied date value is an invalid format for date custom fields.
155 Can only supply either country UUID’s or codes When supplying both country UUID’s and codes.
156 Can only supply either area UUID’s or codes When supplying both area UUID’s and codes.
157 Can only supply either store UUID’s or codes When supplying both store UUID’s and codes.
158 Custom field is not targeted to the account: {template} When supplying custom field data for a custom field not targeted to the account.
159 Custom field is not targeted to the store: {template} When supplying custom field data for a custom field not targeted to the store.
160 Filename and content must be supplied together: {template} When supplying only filename or content for a file custom field.
161 Custom field file extension {extension} is too long: {template} When supplying a filename that contains an extension that contains more than 4 characters.
162 Custom field file extension {extension} is not allowed: {template} When supplying a filename that contains an extension that is not allowed.
163 Work start date was not supplied When a work start date is required but not supplied.
164 Invalid account group for position type When attempting to supply a position type for an account that is not Role slug general-manager, store-manager or employee.
165 Cannot set receive emails to false. User Email Opt Out is disabled When trying to disable receive emails for a user when User Email Opt Out is disabled. See account settings in system configuration
166 Cannot provide geocode when show map is not enabled When attempting to supply a custom geocode when show map is not enabled.
167 Password value is too long When the password supplied contains more than 50 characters.
168 Geocode value cannot be verified When supplying custom geocode coordinates that could not be geocoded.
169 Language was not supplied When the language is required but not supplied.
170 Invalid page When supplying an invalid page value (negative, zero or too high).
171 Custom field textbox is too long: {template} When supplying text that contains more than 65535 characters for a textbox custom field.
172 First Name was not supplied When a First Name is required but not supplied.
173 First Name value is too long When First Name supplied contains more that 64 characters.
174 Middle Name value is too long When Middle Name supplied contains more that 64 characters.
175 Last Name was not supplied When a Last Name is required but not supplied.
176 Last Name value is too long When Last Name supplied contains more that 64 characters.
177 Nickname value is too long When Nickname supplied contains more that 64 characters.
178 Display Name value is too long When Display Name supplied contains more that 64 characters.
179 Invalid Timestamp When a supplied timestamp is of an invalid format.
180 The following uuids are invalid: {uuids} When one or more uuids supplied are invalid.
181 Account group was not found: {groupUuid} When the account group supplied was not found.
182 Account group is invalid: {groupUuid} When the account group supplied is invalid.
183 Duplicate account group supplied When a duplicate account group is supplied.
184 Multiple account groups supplied When multiple account groups are supplied.
185 Account groups with different roles supplied When multiple account groups with different roles are supplied.
186 GroupId or GroupUuids field must be supplied When groupID and groupUuids are both supplied or neither are.
187 Role was not found: {role} When the role supplied was not found.