Endpoint - User Config

This request is made in two situations:

Firstly when a customer is going through the integration wizard to integrate the channel for the first time or when required updates are needed. The wizard StepName should be anything but "UserConfig" if you are flowing a user through integration steps. To complete the wizard then return the StepName as "UserConfig" this will indicate the wizard is complete and complete the wizard for the user.

The second instance is when the config is loaded the call is made to load any dynamic ConfigItems that may be required to show on the Linnworks config UI. SaveConfigEndpoint will be called on each wizard step and when the config is saved.

If the config is loaded and the StepName is not "UserConfig" it will load the config wizard and take them through the stages until "UserConfig" is returned. This can be especially useful if the user is required to go through additional steps down the line such as updating an auth token.

This call is not called periodically and only when the user is editing their configuration.

Request

Post

UserConfigRequest

Field NameTypeDescription
AuthorizationTokenStringToken that you generated for this customer.

Sample

{
	"AuthorizationToken": "a8e53e86eead4b69beaa0afcc29b67fb",
}

Response

UserConfigResponse

Field NameTypeDescription
ErrorStringError string if there was an issue with the request.
StepName
Required
StringCurrent Step name, if returned "UserConfig" it will assume that the wizard is complete.
AccountName
Required
StringAccount name being integrated into the system. Will never change and on integration it is suggest that duplicates are checked for. Nb. Customers may expect to have multiple integrations of the same channel in Linnworks.
WizardStepDescription
Required
StringDescription of the current wizard step.
WizardStepTitle
Required
StringUser visible title displayed on the integration wizard.
ConfigItems
Required
ConfigItem[]See Config Item table.

ConfigItem

Field NameTypeDescription
ConfigItemId
Required
StringUnique id of either the wizard item or config item.
Description
Required
StringDescription of the config item or wizard item. Will be displayed in tooltips .
GroupName
Required
StringUsed to group the config or wizard items.
ListValuesListValue[]See List Value table.
MustBeSpecifiedBooleanDefines if the user must enter this value in the wizard or config.
Name
Required
StringVisible name on the wizard or config.
ReadOnlyBooleanDefines if the field is a visible only field.
RegexErrorStringMessage that will be shown to the custmer if wizard field validation does not go through.
RegexValidationStringJavaScript Regex validation script.
SelectedValueStringSelected value either default value or value selected in the UI when sent back.
Sortorder
Required
IntOrder of config item to be displayed on the UI.
ValueType
Required
StringValid values:

- STRING
- INT
- DOUBLE
- BOOLEAN
- PASSWORD
- LIST
HidesHeaderAttributeBooleanDetermines whether a header-level attribute (e.g. InventorySync) should be hidden from the config. Used in conjunction with the Name property, where Name identifies the attribute to hide.

ListValue

Field NameTypeDescription
Display
Required
StringUser friendly visible value.
Value
Required
StringKey value that Linnworks will then send back in the SelectedValue field on the SaveConfigEndpont.

Sample

{
	"Error": null,
	"StepName": "AddCredentials",
	"WizardStepDescription": "This is where you add your website credentials",
	"WizardStepTitle": "Add Credentials",
	"ConfigItems": [
		{
			"ConfigItemId": "APIKey",
			"Name": "API Key",
			"Description": "Website API Key",
			"GroupName": "API Credentials",
			"SortOrder": 1,
			"SelectedValue": "AnApiKeyGoesHere",
			"RegExValidation": null,
			"RegExError": null,
			"MustBeSpecified": true,
			"ReadOnly": false,
			"ListValues": [],
			"ValueType": "PASSWORD"
		},
		{
			"ConfigItemId": "APISecretKey",
			"Name": "API Secret Key",
			"Description": "Website API Secret Key",
			"GroupName": "API Credentials",
			"SortOrder": 2,
			"SelectedValue": "MYSuperSecretKey",
			"RegExValidation": null,
			"RegExError": null,
			"MustBeSpecified": true,
			"ReadOnly": false,
			"ListValues": [],
			"ValueType": "PASSWORD"
		},
		{
			"ConfigItemId": "IsOauth",
			"Name": "Is Oauth",
			"Description": "Defines if the authentication type is Oauth",
			"GroupName": "API Settings",
			"SortOrder": 3,
			"SelectedValue": "False",
			"RegExValidation": null,
			"RegExError": null,
			"MustBeSpecified": true,
			"ReadOnly": false,
			"ListValues": [],
			"ValueType": "BOOLEAN"
		},
		{
			"ConfigItemId": "Version",
			"Name": "Version",
			"Description": "Version of the API",
			"GroupName": "API Settings",
			"SortOrder": 3,
			"SelectedValue": "False",
			"RegExValidation": null,
			"RegExError": null,
			"MustBeSpecified": true,
			"ReadOnly": false,
			"ListValues": [
				{
					"Display": "1.6 - Stable",
					"Value": "1.6.0"
				},
				{
					"Display": "1.6 - Beta",
					"Value": "1.6.1"
				},
				{
					"Display": "1.5 - Stable",
					"Value": "1.5.0"
				}
			],
			"ValueType": "LIST"
		}
	]
}