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
UserConfigRequest
Field Name | Type | Description |
---|---|---|
AuthorizationToken | String | Token that you generated for this customer. |
Sample
{
"AuthorizationToken": "a8e53e86eead4b69beaa0afcc29b67fb",
}
Response
UserConfigResponse
UserConfigResponse
Field Name | Type | Description |
---|---|---|
Error |
| Error string if there was an issue with the request. |
StepName Required |
| Current Step name, if returned "UserConfig" it will assume that the wizard is complete. |
AccountName Required |
| Account 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 |
| Description of the current wizard step. |
WizardStepTitle Required |
| User visible title displayed on the integration wizard. |
ConfigItems Required |
| See Config Item table. |
GlobalConfigSettings Optional |
| A set of global config settings for the individual integration. These include available price tags as well as options to disable UI config elements if not supported. These options help sellers easily identify what is supported and what is not rather than raising support cases when something seemingly doesn't work. The default behavior is that all features are supported if no settings are provided by the integration. |
ConfigItem
ConfigItem
Field Name | Type | Description |
---|---|---|
ConfigItemId Required |
| Unique id of either the wizard item or config item. |
Description Required |
| Description of the config item or wizard item. Will be displayed in tooltips . |
GroupName Required |
| Used to group the config or wizard items. |
ListValues |
| See List Value table. |
MustBeSpecified |
| Defines if the user must enter this value in the wizard or config. |
Name Required |
| Visible name on the wizard or config. |
ReadOnly |
| Defines if the field is a visible only field. |
RegexError |
| Message that will be shown to the custmer if wizard field validation does not go through. |
RegexValidation |
| JavaScript Regex validation script. |
SelectedValue |
| Selected value either default value or value selected in the UI when sent back. |
Sortorder Required |
| Order of config item to be displayed on the UI. |
ValueType Required |
| Valid values:
|
HidesHeaderAttribute |
| Determines 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
ListValue
Field Name | Type | Description |
---|---|---|
Display Required |
| User friendly visible value. |
Value Required |
| Key value that Linnworks will then send back in the |
GlobalConfigSettings
GlobalConfigSettings
Field Name | Type | Description |
---|---|---|
PriceTags Optional |
| Price tags that are available to be used in conjunction with the price sync.
For example this may be
|
IsPriceChangeVisible Optional |
| Defines if the price change tick box in the config should be visible for the users
|
IsRefundsVisible Optional |
| Defines if the refunds tick box in the config should be visible for the users
|
IsCancellationsVisible Optional |
| Defines if the cancellations tick box in the config should be visible for the users
|
IsShippingMappingVisible Optional |
| Defines if the shipping mapping button in the channel integrations screen should be enabled for the users.
|
IsPaymentMappingVisible Optional |
| Defines if the payment mapping button in the channel integrations screen should be enabled for the users.
|
IsInventoryMappingVisible Optional |
| Defines if the inventory mapping button in the channel integrations screen should be enabled for the users.
|
IsMultilocationEnabled Optional |
| Defines if the channel supports multi location.
|
MultiLocationInventory Conditional |
| Object for multi location inventory settings |
MultiLocationInventory
MultiLocationInventory
Field Name | Type | Description |
---|---|---|
OrdersLocationIdAlwaysProvided Required |
| Defines if order location location Id is provided for all locations If not always then the location specific mapping will be supplied.
|
AutoPopulateLocations Required |
|
|
Locations Conditional |
| List of MLI locations. |
Locations
Locations
Field Name | Type | Description |
---|---|---|
Tag Required |
| Tag will be provided on Inventory update |
Friendly Name Required |
| `Name will be provided to the end customer. |
OrdersLocationIdProvided Required |
|
|
Sample
{
"Error": null,
"StepName": "AddCredentials",
"WizardStepDescription": "This is where you add your website credentials",
"WizardStepTitle": "Add Credentials",
"GlobalConfigSettings": {
"PriceTags": [
"UK",
"DE",
"SALE",
"UK_SALE"
],
"IsShippingMappingVisible": true,
"IsPriceChangeVisible": true,
"IsPaymentMappingVisible": false,
"IsCancellationsVisible": false,
"IsRefundsVisible": false,
"IsInventoryMappingVisible": true,
"IsMultilocationEnabled": true,
"MultiLocationInventory":
{
"OrdersLocationIdAlwaysProvided": false,
"AutoPopulateLocations": true, //If false locations array below can be null, this allows user input of locations via UI
"Locations": [
{
"Tag": "Location_1",
"Friendly Name": "Warehouse One",
"OrdersLocationIdProvided": true //This field can override IsMultilocationIsOrdersLocationsSpecific
},
{
"Tag": "Location_2",
"Friendly Name": "Other Warehouse",
"OrdersLocationIdProvided": false
}
]
},
},
"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"
}
]
}
Updated about 21 hours ago