Goto APIs

Account API

General:

Basics:

Base-URL: https://capi.lagerkoll.com/v1/account/
Parameters in the url should all be encoded and all data sent should be UTF-8

MAX number of requests per minute is set to 200.
When the limit is hit an error with code 429 is returned, with the header "Retry-After" containing the number of seconds you have to wait for your next request.

Headers:

There are 2 ways to be authenticated when using this API. in both ways you add headers to the request.
1) Use an API-key together with store-id. This would be used when communicating machine to machine and no real person is involved. The API-key is available from where you activated the API. The store-id is also available in the same place.
2) Use a user_id and user_token together with a store-id. You get these values from the login-request. The values are connected to a person and are gained when an actual login to the system has been made.
store: <<STORE>>
user_id: <<USER_ID>>
user_token: <<USER_TOKEN>>
api_key: <<API_KEY>>
Accept: application/json
Content-Type: application/json

Errors:

Code Description
900001 Credentials don't match
900101 Common error
900429 Too many requests
901011 Error when getting license-url
901012 Error when creating account
901112 Error when creating integration
901212 Error when creating status message
901222 Error when logging in
901232 Error when verifying account
901242 Error when updating account
901251 Error when getting invoice
901261 Error when getting api settings
901262 Error when updating api settings
901272 Error when updating email settings
901273 Error when verifying email settings
901282 Error when sending support
{
  "errorCode" : 900101,
  "errorMessage" : "Something went wrong on the server",
  "errorField" : null,
  "errorData" : null
}

Account API:

Company Account

Get email settings

GETUrl: /email/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get email settings
Body:
Successfull response:

{ "password": "password", "auth": "false", "verified": true, "outgoingAddress": "outgoingAddress", "tls": "false", "ssl": "false", "email": "email", "outgoingPort": 9873, "username": "username" }

Get invoices

GETUrl: /invoices
Headers:
Accept: application/json or application/xml
Get list of invoices for account
Body:
Successfull response:

{"invoices": [{ "invoiceExpireDate": 1732182996445, "invoiceDays": 626, "invoicePaidDate": 1732182996445, "invoiceId": 5921, "state": "state", "invoiceDate": 1732182996445, "paymentDate": 1732182996445, "rows": [{ "articleName": "articleName", "discountPercent": 1005.7111966413279, "articleVat": 5802.770984673976, "articleId": "articleId", "articlePrice": 1729.9550231845585 }], "serverId": 8308, "invoicePeriodInMonths": 488 }]}

Get next invoice

GETUrl: /invoices/next
Headers:
Accept: application/json or application/xml
Get next invoice for account
Body:
Successfull response:

{ "invoiceExpireDate": 1732182996445, "invoiceDays": 7682, "invoicePaidDate": 1732182996445, "invoiceId": 8458, "state": "state", "invoiceDate": 1732182996445, "paymentDate": 1732182996445, "rows": [{ "articleName": "articleName", "discountPercent": 2416.282561344464, "articleVat": 2330.7804344594006, "articleId": "articleId", "articlePrice": 1261.0579150342926 }], "serverId": 2426, "invoicePeriodInMonths": 3165 }

Get invoice file

GETUrl: /invoices/{invoice_id}/print
Headers:
Accept: application/pdf or application/json
Get invoice binary file by id for account

Valid parameters:

Parameter Description Default value Allowed values
credit
store

Body:
Successfull response:

Get invoice by id

GETUrl: /invoices/{invoice_id}
Headers:
Accept: application/json or application/xml
Get single invoice by id for account
Body:
Successfull response:

{ "invoiceExpireDate": 1732182996446, "invoiceDays": 7294, "invoicePaidDate": 1732182996446, "invoiceId": 6794, "state": "state", "invoiceDate": 1732182996446, "paymentDate": 1732182996446, "rows": [{ "articleName": "articleName", "discountPercent": 1834.15554915912, "articleVat": 1503.1017568435445, "articleId": "articleId", "articlePrice": 7673.94489247213 }], "serverId": 7461, "invoicePeriodInMonths": 2608 }

Get license

GETUrl: /license
Headers:
Accept: application/json or application/xml
Other headers: Open request, no identification-headers needed
Get link to license. This must be displayed to user before he/she is allowed to register

Valid parameters:

Parameter Description Default value Allowed values
promotion_code

Body:
Successfull response:

{ "models": [{ "maxUsers": 6039, "maxArticles": 949, "reseller": false, "vismaAccess": 2453, "maxCustomers": 2058, "fortnoxAccess": 1029, "paymentType": 9985, "discountPercentage": 4816.816800229066, "premium": true, "batchAccess": 4441, "price": 4849.926767902054, "name": "name", "maxStocks": 1772, "id": 8720, "peAccess": 292 }], "eula": "eula" }

Get company account

GETUrl:
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Get information about the company account and master stock. This is not to be confused with a user account.
Body:
Successfull response:

{ "invoiceZip": "invoiceZip", "country": "country", "visma": false, "fieldsSettings": {"fields": {}}, "city": "city", "rules": { "canCreateCostCenters": false, "canCreateSupplierDeliveryTerm": false, "maxUsers": 7492, "defaultCategory": { "name": "name", "id": 6402, "articles": 5853 }, "articleNameMaxLength": 8157, "showVATAccount": true, "canCreateCustomerOrderInvoice": true, "canChangeCustomerOnOrderStateStart": 1191, "canCancelCustomerOrder": true, "allowZeroSumCustomerOrders": false, "customerOrderReservedStateEnd": 6545, "canCreateCustomerDeliveryTerm": true, "canCreateVAT": false, "customerOrderReservedStateStart": 3676, "defaultUnitType": { "name": "name", "externalId": "externalId", "id": 1772 }, "defaultVAT": { "isDefault": false, "code": "code", "vat": 6997.679576689437, "description": "description", "id": 8986, "account": 5504 }, "supportsCustomerOrderFees": false, "doesVATControllArticleType": true, "canCreatePaymentTerm": true, "canSetCostCentersOnCustomerOrder": false, "maxArticles": 933, "allowNegativeOrderedSumInCustomerOrder": true, "canCreateWayOfDelivery": false, "maxCustomers": 1467, "maxIntegrationDecimals": 4303, "canSetDefaultPricelist": false, "supportsBracketPricing": true, "allowRestCustomerOrder": true, "customerTypeSetsVAT": false, "batchAccess": false, "maxStocks": 1270, "supportsNoVAT": false, "canSetStock": false, "canCreateUnit": false, "increaseStockOnReceiveForPickNPack": false, "canChangeCustomerOnOrderStateEnd": 524, "supportsInvoiceTypes": true }, "invoiceAddress": "invoiceAddress", "invoiceEmail": "invoiceEmail", "fortnox": true, "paymentType": 5531, "masterStoreId": 9526, "features": [{ "image": "image", "server": false, "roles": [{}], "icon": "icon", "description": {}, "version": "version", "credits": "credits", "price": 4354.190801968678, "name": {}, "annual": true, "publisher": "publisher", "files": [{ "filename": "filename", "menuTitle": {}, "index": 5367 }], "id": "id", "category": [{}], "dashboard": "dashboard" }], "deactivateDate": 5694, "storeGroupId": 4907, "countryCode": "countryCode", "barcodePrintingFieldsSettings": {}, "customerOrderSettings": {}, "currency": "currency", "storeName": "storeName", "orgNumber": "orgNumber", "email": "email", "zip": "zip", "settings": { "cashInvoicePaymentWay": "cashInvoicePaymentWay", "truncateArticleName": true, "automaticBundling": false, "weeklyStatus": false, "projectInvoicePaymentWay": "projectInvoicePaymentWay", "decimals": 8241, "automaticDailyExport": false, "customerOrderNotification": true, "defaultTemplate": 454, "language": "language", "lowStockWarning": true }, "address": "address", "invoiceCountry": "invoiceCountry", "customerPortalSettings": { "showOtherPurchasedArticles": false, "showSerials": false, "showName": false, "welcomeTitle": {}, "welcomeText": {}, "showImage": false, "showArticleId": true, "orderArticlesNotInStock": false, "showWebshop": true, "showDescription": false, "showPrice": false, "showArticleStockStatus": true, "showBatches": false }, "purchaseOrderSettings": {}, "address2": "address2", "contactName": "contactName", "articleSuffix": "articleSuffix", "fortnoxV2": false, "salesPriceIncludesVAT": true, "invoiceAddress2": "invoiceAddress2", "storeId": 5668, "invoiceCity": "invoiceCity", "phone": "phone", "name": "name", "invoiceCountryCode": "invoiceCountryCode" }

Get API component settings

GETUrl: /api/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get API component settings for all of the company accounts
Body:
Successfull response:

{ "integrationSuccessfull": false, "integrationName": "integrationName", "stores": [{}], "apiKeys": [{ "name": "name", "requests": [{ "path": "path", "method": "method" }], "key": "key" }], "callbackUrl": "callbackUrl" }

Get Events component settings

GETUrl: /events/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get Scheduled Events component settings for all of the company accounts
Body:
Successfull response:

{ "bestBeforeTrigger": 6758, "purchaseOrdersReminder": false }

Get Report component settings

GETUrl: /reports/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get Report component settings for all of the company accounts
Body:
Successfull response:

{ "tobaccoEUCustomerTag": { "name": "name", "externalId": "externalId", "id": 7393, "desc": "desc" }, "tobaccoNoTaxCustomerTag": { "name": "name", "externalId": "externalId", "id": 386, "desc": "desc" }, "tobaccoSWCustomerTag": { "name": "name", "externalId": "externalId", "id": 2286, "desc": "desc" } }

Invite new company to Lagerkoll

POSTUrl: /promotion/invite
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Invite a new company to use Lagerkoll and get a discount on the next invoice
Body:

{"email": "email"}
Successfull response:

Register company account

POSTUrl: /register
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Register a new company account. Before user is allowed to do this, he/she must first view and accept the license agreement.
Body:

{ "zip": "zip", "country": "country", "address": "address", "notes": "notes", "city": "city", "licenceAccepted": "false", "companyName": "companyName", "promotionCode": "promotionCode", "contactPerson": "contactPerson", "language": "en", "paymentType": 6555, "features": [{}], "password": "password", "phone": "phone", "currency": "currency", "orgNumber": "orgNumber", "email": "email", "bankIDOrderRef": "bankIDOrderRef" }
Successfull response:

{ "invoiceZip": "invoiceZip", "country": "country", "visma": false, "fieldsSettings": {"fields": {}}, "city": "city", "rules": { "canCreateCostCenters": true, "canCreateSupplierDeliveryTerm": false, "maxUsers": 3845, "defaultCategory": { "name": "name", "id": 350, "articles": 1462 }, "articleNameMaxLength": 1138, "showVATAccount": true, "canCreateCustomerOrderInvoice": false, "canChangeCustomerOnOrderStateStart": 5976, "canCancelCustomerOrder": true, "allowZeroSumCustomerOrders": true, "customerOrderReservedStateEnd": 2249, "canCreateCustomerDeliveryTerm": true, "canCreateVAT": false, "customerOrderReservedStateStart": 7371, "defaultUnitType": { "name": "name", "externalId": "externalId", "id": 470 }, "defaultVAT": { "isDefault": false, "code": "code", "vat": 6878.958433206084, "description": "description", "id": 8357, "account": 5049 }, "supportsCustomerOrderFees": false, "doesVATControllArticleType": false, "canCreatePaymentTerm": true, "canSetCostCentersOnCustomerOrder": false, "maxArticles": 2439, "allowNegativeOrderedSumInCustomerOrder": true, "canCreateWayOfDelivery": true, "maxCustomers": 5580, "maxIntegrationDecimals": 6190, "canSetDefaultPricelist": true, "supportsBracketPricing": false, "allowRestCustomerOrder": true, "customerTypeSetsVAT": true, "batchAccess": false, "maxStocks": 4893, "supportsNoVAT": true, "canSetStock": false, "canCreateUnit": false, "increaseStockOnReceiveForPickNPack": true, "canChangeCustomerOnOrderStateEnd": 5399, "supportsInvoiceTypes": true }, "invoiceAddress": "invoiceAddress", "invoiceEmail": "invoiceEmail", "fortnox": true, "paymentType": 203, "masterStoreId": 3043, "features": [{ "image": "image", "server": true, "roles": [{}], "icon": "icon", "description": {}, "version": "version", "credits": "credits", "price": 868.6462471921941, "name": {}, "annual": true, "publisher": "publisher", "files": [{ "filename": "filename", "menuTitle": {}, "index": 1311 }], "id": "id", "category": [{}], "dashboard": "dashboard" }], "deactivateDate": 6344, "storeGroupId": 4281, "countryCode": "countryCode", "barcodePrintingFieldsSettings": {}, "customerOrderSettings": {}, "currency": "currency", "storeName": "storeName", "orgNumber": "orgNumber", "email": "email", "zip": "zip", "settings": { "cashInvoicePaymentWay": "cashInvoicePaymentWay", "truncateArticleName": true, "automaticBundling": false, "weeklyStatus": false, "projectInvoicePaymentWay": "projectInvoicePaymentWay", "decimals": 3033, "automaticDailyExport": false, "customerOrderNotification": false, "defaultTemplate": 6519, "language": "language", "lowStockWarning": false }, "address": "address", "invoiceCountry": "invoiceCountry", "customerPortalSettings": { "showOtherPurchasedArticles": true, "showSerials": false, "showName": false, "welcomeTitle": {}, "welcomeText": {}, "showImage": false, "showArticleId": true, "orderArticlesNotInStock": false, "showWebshop": true, "showDescription": false, "showPrice": true, "showArticleStockStatus": true, "showBatches": true }, "purchaseOrderSettings": {}, "address2": "address2", "contactName": "contactName", "articleSuffix": "articleSuffix", "fortnoxV2": true, "salesPriceIncludesVAT": true, "invoiceAddress2": "invoiceAddress2", "storeId": 9929, "invoiceCity": "invoiceCity", "phone": "phone", "name": "name", "invoiceCountryCode": "invoiceCountryCode" }

Send email

POSTUrl: /email/send
Headers:
Accept: application/json or application/xml
Content-type: multipart/form-data
Other headers: user_id, user_token
Send email to an email address

Valid parameters:

Parameter Description Default value Allowed values
file
file
toAddress Email to receiver
subject Subject of email
message Message of email

Body:
Successfull response:

Send support

POSTUrl: /support
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Send support mail to Lagerkoll
Body:

{ "subject": "subject", "message": "message" }
Successfull response:

Update company account

PUTUrl:
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Update information on the company account. This is not to be confused with a user account.
Body:

{ "invoiceZip": "invoiceZip", "country": "country", "visma": false, "fieldsSettings": {"fields": {}}, "city": "city", "rules": { "canCreateCostCenters": true, "canCreateSupplierDeliveryTerm": false, "maxUsers": 4857, "defaultCategory": { "name": "name", "id": 7970, "articles": 9767 }, "articleNameMaxLength": 4448, "showVATAccount": true, "canCreateCustomerOrderInvoice": false, "canChangeCustomerOnOrderStateStart": 5897, "canCancelCustomerOrder": false, "allowZeroSumCustomerOrders": false, "customerOrderReservedStateEnd": 8610, "canCreateCustomerDeliveryTerm": true, "canCreateVAT": false, "customerOrderReservedStateStart": 9263, "defaultUnitType": { "name": "name", "externalId": "externalId", "id": 9889 }, "defaultVAT": { "isDefault": true, "code": "code", "vat": 7768.244624442452, "description": "description", "id": 9850, "account": 8311 }, "supportsCustomerOrderFees": false, "doesVATControllArticleType": false, "canCreatePaymentTerm": false, "canSetCostCentersOnCustomerOrder": false, "maxArticles": 4950, "allowNegativeOrderedSumInCustomerOrder": true, "canCreateWayOfDelivery": true, "maxCustomers": 2095, "maxIntegrationDecimals": 3937, "canSetDefaultPricelist": false, "supportsBracketPricing": true, "allowRestCustomerOrder": false, "customerTypeSetsVAT": true, "batchAccess": false, "maxStocks": 358, "supportsNoVAT": true, "canSetStock": true, "canCreateUnit": false, "increaseStockOnReceiveForPickNPack": false, "canChangeCustomerOnOrderStateEnd": 2248, "supportsInvoiceTypes": true }, "invoiceAddress": "invoiceAddress", "invoiceEmail": "invoiceEmail", "fortnox": false, "paymentType": 4420, "masterStoreId": 647, "features": [{ "image": "image", "server": true, "roles": [{}], "icon": "icon", "description": {}, "version": "version", "credits": "credits", "price": 9516.16513106434, "name": {}, "annual": true, "publisher": "publisher", "files": [{ "filename": "filename", "menuTitle": {}, "index": 5571 }], "id": "id", "category": [{}], "dashboard": "dashboard" }], "deactivateDate": 3518, "storeGroupId": 6998, "countryCode": "countryCode", "barcodePrintingFieldsSettings": {}, "customerOrderSettings": {}, "currency": "currency", "storeName": "storeName", "orgNumber": "orgNumber", "email": "email", "zip": "zip", "settings": { "cashInvoicePaymentWay": "cashInvoicePaymentWay", "truncateArticleName": false, "automaticBundling": false, "weeklyStatus": false, "projectInvoicePaymentWay": "projectInvoicePaymentWay", "decimals": 3185, "automaticDailyExport": false, "customerOrderNotification": true, "defaultTemplate": 1349, "language": "language", "lowStockWarning": false }, "address": "address", "invoiceCountry": "invoiceCountry", "customerPortalSettings": { "showOtherPurchasedArticles": true, "showSerials": true, "showName": true, "welcomeTitle": {}, "welcomeText": {}, "showImage": false, "showArticleId": false, "orderArticlesNotInStock": false, "showWebshop": false, "showDescription": false, "showPrice": true, "showArticleStockStatus": true, "showBatches": true }, "purchaseOrderSettings": {}, "address2": "address2", "contactName": "contactName", "articleSuffix": "articleSuffix", "fortnoxV2": true, "salesPriceIncludesVAT": true, "invoiceAddress2": "invoiceAddress2", "storeId": 9772, "invoiceCity": "invoiceCity", "phone": "phone", "name": "name", "invoiceCountryCode": "invoiceCountryCode" }
Successfull response:

{ "invoiceZip": "invoiceZip", "country": "country", "visma": false, "fieldsSettings": {"fields": {}}, "city": "city", "rules": { "canCreateCostCenters": true, "canCreateSupplierDeliveryTerm": true, "maxUsers": 689, "defaultCategory": { "name": "name", "id": 6665, "articles": 7858 }, "articleNameMaxLength": 4693, "showVATAccount": false, "canCreateCustomerOrderInvoice": true, "canChangeCustomerOnOrderStateStart": 1972, "canCancelCustomerOrder": false, "allowZeroSumCustomerOrders": true, "customerOrderReservedStateEnd": 1304, "canCreateCustomerDeliveryTerm": false, "canCreateVAT": true, "customerOrderReservedStateStart": 8016, "defaultUnitType": { "name": "name", "externalId": "externalId", "id": 1253 }, "defaultVAT": { "isDefault": true, "code": "code", "vat": 1790.8276261144474, "description": "description", "id": 8336, "account": 372 }, "supportsCustomerOrderFees": true, "doesVATControllArticleType": true, "canCreatePaymentTerm": false, "canSetCostCentersOnCustomerOrder": false, "maxArticles": 2939, "allowNegativeOrderedSumInCustomerOrder": false, "canCreateWayOfDelivery": true, "maxCustomers": 7158, "maxIntegrationDecimals": 6314, "canSetDefaultPricelist": true, "supportsBracketPricing": false, "allowRestCustomerOrder": true, "customerTypeSetsVAT": true, "batchAccess": true, "maxStocks": 3680, "supportsNoVAT": false, "canSetStock": true, "canCreateUnit": false, "increaseStockOnReceiveForPickNPack": true, "canChangeCustomerOnOrderStateEnd": 933, "supportsInvoiceTypes": false }, "invoiceAddress": "invoiceAddress", "invoiceEmail": "invoiceEmail", "fortnox": false, "paymentType": 4652, "masterStoreId": 493, "features": [{ "image": "image", "server": true, "roles": [{}], "icon": "icon", "description": {}, "version": "version", "credits": "credits", "price": 6856.113392216849, "name": {}, "annual": true, "publisher": "publisher", "files": [{ "filename": "filename", "menuTitle": {}, "index": 6313 }], "id": "id", "category": [{}], "dashboard": "dashboard" }], "deactivateDate": 9397, "storeGroupId": 3786, "countryCode": "countryCode", "barcodePrintingFieldsSettings": {}, "customerOrderSettings": {}, "currency": "currency", "storeName": "storeName", "orgNumber": "orgNumber", "email": "email", "zip": "zip", "settings": { "cashInvoicePaymentWay": "cashInvoicePaymentWay", "truncateArticleName": true, "automaticBundling": true, "weeklyStatus": true, "projectInvoicePaymentWay": "projectInvoicePaymentWay", "decimals": 2376, "automaticDailyExport": false, "customerOrderNotification": true, "defaultTemplate": 5942, "language": "language", "lowStockWarning": true }, "address": "address", "invoiceCountry": "invoiceCountry", "customerPortalSettings": { "showOtherPurchasedArticles": true, "showSerials": true, "showName": false, "welcomeTitle": {}, "welcomeText": {}, "showImage": true, "showArticleId": false, "orderArticlesNotInStock": false, "showWebshop": false, "showDescription": true, "showPrice": true, "showArticleStockStatus": false, "showBatches": false }, "purchaseOrderSettings": {}, "address2": "address2", "contactName": "contactName", "articleSuffix": "articleSuffix", "fortnoxV2": false, "salesPriceIncludesVAT": false, "invoiceAddress2": "invoiceAddress2", "storeId": 9769, "invoiceCity": "invoiceCity", "phone": "phone", "name": "name", "invoiceCountryCode": "invoiceCountryCode" }

Upgrade premium

PUTUrl: /premium/{payment_type}
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Upgrade to a premium account. This can only be done if the account is a free account. If you wish to upgrade or downgrade please contact us on support@lagerkoll.com
Body:
Successfull response:

{ "invoiceZip": "invoiceZip", "country": "country", "visma": true, "fieldsSettings": {"fields": {}}, "city": "city", "rules": { "canCreateCostCenters": true, "canCreateSupplierDeliveryTerm": false, "maxUsers": 9696, "defaultCategory": { "name": "name", "id": 8861, "articles": 17 }, "articleNameMaxLength": 2385, "showVATAccount": false, "canCreateCustomerOrderInvoice": false, "canChangeCustomerOnOrderStateStart": 3897, "canCancelCustomerOrder": true, "allowZeroSumCustomerOrders": true, "customerOrderReservedStateEnd": 695, "canCreateCustomerDeliveryTerm": false, "canCreateVAT": false, "customerOrderReservedStateStart": 1354, "defaultUnitType": { "name": "name", "externalId": "externalId", "id": 6186 }, "defaultVAT": { "isDefault": false, "code": "code", "vat": 109.98495399827223, "description": "description", "id": 4470, "account": 545 }, "supportsCustomerOrderFees": false, "doesVATControllArticleType": true, "canCreatePaymentTerm": false, "canSetCostCentersOnCustomerOrder": false, "maxArticles": 7355, "allowNegativeOrderedSumInCustomerOrder": false, "canCreateWayOfDelivery": false, "maxCustomers": 4360, "maxIntegrationDecimals": 5040, "canSetDefaultPricelist": true, "supportsBracketPricing": true, "allowRestCustomerOrder": true, "customerTypeSetsVAT": false, "batchAccess": true, "maxStocks": 8091, "supportsNoVAT": false, "canSetStock": false, "canCreateUnit": true, "increaseStockOnReceiveForPickNPack": true, "canChangeCustomerOnOrderStateEnd": 9637, "supportsInvoiceTypes": true }, "invoiceAddress": "invoiceAddress", "invoiceEmail": "invoiceEmail", "fortnox": false, "paymentType": 3636, "masterStoreId": 7793, "features": [{ "image": "image", "server": true, "roles": [{}], "icon": "icon", "description": {}, "version": "version", "credits": "credits", "price": 652.0310981298849, "name": {}, "annual": false, "publisher": "publisher", "files": [{ "filename": "filename", "menuTitle": {}, "index": 3322 }], "id": "id", "category": [{}], "dashboard": "dashboard" }], "deactivateDate": 2948, "storeGroupId": 3047, "countryCode": "countryCode", "barcodePrintingFieldsSettings": {}, "customerOrderSettings": {}, "currency": "currency", "storeName": "storeName", "orgNumber": "orgNumber", "email": "email", "zip": "zip", "settings": { "cashInvoicePaymentWay": "cashInvoicePaymentWay", "truncateArticleName": false, "automaticBundling": true, "weeklyStatus": false, "projectInvoicePaymentWay": "projectInvoicePaymentWay", "decimals": 8539, "automaticDailyExport": false, "customerOrderNotification": true, "defaultTemplate": 5517, "language": "language", "lowStockWarning": true }, "address": "address", "invoiceCountry": "invoiceCountry", "customerPortalSettings": { "showOtherPurchasedArticles": false, "showSerials": false, "showName": true, "welcomeTitle": {}, "welcomeText": {}, "showImage": true, "showArticleId": true, "orderArticlesNotInStock": false, "showWebshop": false, "showDescription": true, "showPrice": false, "showArticleStockStatus": true, "showBatches": true }, "purchaseOrderSettings": {}, "address2": "address2", "contactName": "contactName", "articleSuffix": "articleSuffix", "fortnoxV2": false, "salesPriceIncludesVAT": false, "invoiceAddress2": "invoiceAddress2", "storeId": 1768, "invoiceCity": "invoiceCity", "phone": "phone", "name": "name", "invoiceCountryCode": "invoiceCountryCode" }

Update API component settings

PUTUrl: /api/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Update API component settings for all of the company accounts
Body:

{ "integrationSuccessfull": false, "integrationName": "integrationName", "stores": [{}], "apiKeys": [{ "name": "name", "requests": [{ "path": "path", "method": "method" }], "key": "key" }], "callbackUrl": "callbackUrl" }
Successfull response:

{ "integrationSuccessfull": false, "integrationName": "integrationName", "stores": [{}], "apiKeys": [{ "name": "name", "requests": [{ "path": "path", "method": "method" }], "key": "key" }], "callbackUrl": "callbackUrl" }

Update Events component settings

PUTUrl: /events/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Update Scheduled Events component settings for all of the company accounts
Body:

{ "bestBeforeTrigger": 348, "purchaseOrdersReminder": true }
Successfull response:

{ "bestBeforeTrigger": 465, "purchaseOrdersReminder": true }

Update Report component settings

PUTUrl: /reports/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Update Report component settings for all of the company accounts
Body:

{ "tobaccoEUCustomerTag": { "name": "name", "externalId": "externalId", "id": 6387, "desc": "desc" }, "tobaccoNoTaxCustomerTag": { "name": "name", "externalId": "externalId", "id": 3420, "desc": "desc" }, "tobaccoSWCustomerTag": { "name": "name", "externalId": "externalId", "id": 1121, "desc": "desc" } }
Successfull response:

{ "tobaccoEUCustomerTag": { "name": "name", "externalId": "externalId", "id": 2379, "desc": "desc" }, "tobaccoNoTaxCustomerTag": { "name": "name", "externalId": "externalId", "id": 8747, "desc": "desc" }, "tobaccoSWCustomerTag": { "name": "name", "externalId": "externalId", "id": 2093, "desc": "desc" } }

Update barcode settings

PUTUrl: /barcode/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Update barcode settings for company account
Body:

{"barcodePrintingFieldsSettings": {}}
Successfull response:

{"barcodePrintingFieldsSettings": {}}

Update email settings

PUTUrl: /email/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Update email settings to start using another email service than Lagerkoll´s when sending emails
Body:

{ "password": "password", "auth": "false", "verified": true, "outgoingAddress": "outgoingAddress", "tls": "false", "ssl": "false", "email": "email", "outgoingPort": 8563, "username": "username" }
Successfull response:

{ "password": "password", "auth": "false", "verified": true, "outgoingAddress": "outgoingAddress", "tls": "false", "ssl": "false", "email": "email", "outgoingPort": 1533, "username": "username" }

Verify email settings

PUTUrl: /email/verify
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Verify email settings and activates them on success
Body:

{ "storeId": 4602, "verification": "verification" }
Successfull response:

Remove email settings

DELETEUrl: /email/settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Remove email settings and start using Lagerkoll´s email server again when sending emails
Body:
Successfull response:

Status

Get unread status messages count

GETUrl: /status/count
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get number of unread status messages.
Body:
Successfull response:

{"count": 2607}

Get status messages

GETUrl: /status
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Get a list of the latest status messages saved for the store

Valid parameters:

Parameter Description Default value Allowed values
page 0
limit 100

Body:
Successfull response:

{ "pages": 2811, "pageSize": 9686, "messages": [{ "integrationType": "integrationType", "created": 8078, "technicalMessage": "technicalMessage", "action": "action", "messageId": "messageId", "progress": 5930, "type": "type", "message": "message" }], "page": 1443, "messagesCount": 7339 }

Send status message

POSTUrl: /status
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Send a status-message to Lagerkoll. INFO and ERRORs are stored and can be viewed when user loggs in, PROGRESS and PROGRESS_DONE are only showed for logged in users
Body:

{ "integrationType": "integrationType", "action": "action", "messageId": "messageId", "progress": 5377, "type": "type", "message": "message" }
Successfull response:

Remove all messages

DELETEUrl: /status
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Remove all status messages for the store
Body:
Successfull response:

User Account

Get users

GETUrl: /users
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get list of users connected to company account

Valid parameters:

Parameter Description Default value Allowed values
query
since 0
page 0
limit 100
filter_customers false

Body:
Successfull response:

{ "pages": 2093, "pageSize": 4438, "usersCount": 2167, "page": 1082, "users": [{ "systemAdmin": false, "bankID": false, "notes": "notes", "role": { "storeGroupId": 3854, "paths": {}, "name": "name", "id": 9908, "fields": {}, "portal": "portal", "users": 2163 }, "phone": "phone", "name": "name", "emailInvalid": true, "admin": false, "lastLoggedIn": 1626, "id": 5327, "email": "email", "customer": false }], "since": 4010 }

Get logged in user

GETUrl: /login
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Get logged in user, same response as in login
Body:
Successfull response:

{ "systemAdmin": false, "settings": { "productSortOrder": "productSortOrder", "storeArticleSortData": {}, "supplierArticleSettings": {}, "projectSortData": [{ "column": "column", "state": 8634, "order": "order" }], "showWelcome": false, "language": "language", "multiPickData": {}, "reportsSettings": {}, "customerSortData": {}, "articleSortData": {}, "pickingListSortData": {}, "projectArticleSortData": {}, "storeGroupId": 101, "pickingListSortColumn": "pickingListSortColumn", "customerOrderSortData": [{ "column": "column", "state": 9442, "order": "order" }], "productSortColumn": "productSortColumn", "productionOrderSortData": [{ "column": "column", "state": 4851, "order": "order" }], "warnedArticlesSortData": {}, "systemAccountSortData": {}, "lastReadStatusMessages": 9048, "invoiceDraftSortData": {}, "stocktakeArticleSortData": {}, "pickingListSortOrder": "pickingListSortOrder", "orderedArticlesSortData": {}, "accountSortData": {}, "supplierSortData": {}, "productionOrderData": {}, "openPurchaseOrderSortData": {}, "priceListSortData": {}, "storeId": 8189, "purchaseOrderSortData": [{ "column": "column", "state": 1035, "order": "order" }], "systemUserSortData": {}, "helpSectionsCollapsed": {}, "viewedReleaseNotesVersion": "viewedReleaseNotesVersion", "invoiceSortData": {} }, "apiKey": "apiKey", "phone": "phone", "name": "name", "storeGroups": [{ "stores": 6153, "groupId": 888, "name": "name", "integration": "integration", "storePermissions": [{ "role": { "storeGroupId": 6855, "paths": {}, "name": "name", "id": 1368, "fields": {}, "portal": "portal", "users": 9958 }, "capabilities": [{}], "storeGroupId": 2081, "isMaster": false, "name": "name", "currency": "currency", "language": "language", "storeId": 862 }] }], "admin": false, "delayedInvoicesMessage": "delayedInvoicesMessage", "userId": 5315, "email": "email" }

Get user account settings

GETUrl: /settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get user account settings
Body:
Successfull response:

{ "productSortOrder": "productSortOrder", "storeArticleSortData": {}, "supplierArticleSettings": {}, "projectSortData": [{ "column": "column", "state": 4923, "order": "order" }], "showWelcome": false, "language": "language", "multiPickData": {}, "reportsSettings": {}, "customerSortData": {}, "articleSortData": {}, "pickingListSortData": {}, "projectArticleSortData": {}, "storeGroupId": 3969, "pickingListSortColumn": "pickingListSortColumn", "customerOrderSortData": [{ "column": "column", "state": 7589, "order": "order" }], "productSortColumn": "productSortColumn", "productionOrderSortData": [{ "column": "column", "state": 2126, "order": "order" }], "warnedArticlesSortData": {}, "systemAccountSortData": {}, "lastReadStatusMessages": 5890, "invoiceDraftSortData": {}, "stocktakeArticleSortData": {}, "pickingListSortOrder": "pickingListSortOrder", "orderedArticlesSortData": {}, "accountSortData": {}, "supplierSortData": {}, "productionOrderData": {}, "openPurchaseOrderSortData": {}, "priceListSortData": {}, "storeId": 9613, "purchaseOrderSortData": [{ "column": "column", "state": 412, "order": "order" }], "systemUserSortData": {}, "helpSectionsCollapsed": {}, "viewedReleaseNotesVersion": "viewedReleaseNotesVersion", "invoiceSortData": {} }

Get unread web messages

GETUrl: /webmessages
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get list of unread web messages. This request will return a list of unread messages and then mark them as read. The messages will only be returned once

Valid parameters:

Parameter Description Default value Allowed values
statistics false

Body:
Successfull response:

{"messages": [{ "data": { "action": "action", "params": {} }, "action": "action", "responseCode": 6073 }]}

Get user

GETUrl: /users/{id}
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Get a user by id
Body:
Successfull response:

{ "systemAdmin": false, "bankID": true, "notes": "notes", "role": { "storeGroupId": 1039, "paths": {}, "name": "name", "id": 9886, "fields": {}, "portal": "portal", "users": 8681 }, "phone": "phone", "name": "name", "emailInvalid": false, "admin": true, "lastLoggedIn": 593, "id": 5029, "email": "email", "customer": false }

Log in

POSTUrl: /login
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Login to your Lagerkoll user account to get a valid user token to be used for other requests
Body:

{ "password": "password", "username": "username" }
Successfull response:

{ "systemAdmin": false, "settings": { "productSortOrder": "productSortOrder", "storeArticleSortData": {}, "supplierArticleSettings": {}, "projectSortData": [{ "column": "column", "state": 7540, "order": "order" }], "showWelcome": false, "language": "language", "multiPickData": {}, "reportsSettings": {}, "customerSortData": {}, "articleSortData": {}, "pickingListSortData": {}, "projectArticleSortData": {}, "storeGroupId": 5586, "pickingListSortColumn": "pickingListSortColumn", "customerOrderSortData": [{ "column": "column", "state": 523, "order": "order" }], "productSortColumn": "productSortColumn", "productionOrderSortData": [{ "column": "column", "state": 7604, "order": "order" }], "warnedArticlesSortData": {}, "systemAccountSortData": {}, "lastReadStatusMessages": 5345, "invoiceDraftSortData": {}, "stocktakeArticleSortData": {}, "pickingListSortOrder": "pickingListSortOrder", "orderedArticlesSortData": {}, "accountSortData": {}, "supplierSortData": {}, "productionOrderData": {}, "openPurchaseOrderSortData": {}, "priceListSortData": {}, "storeId": 723, "purchaseOrderSortData": [{ "column": "column", "state": 2009, "order": "order" }], "systemUserSortData": {}, "helpSectionsCollapsed": {}, "viewedReleaseNotesVersion": "viewedReleaseNotesVersion", "invoiceSortData": {} }, "apiKey": "apiKey", "phone": "phone", "name": "name", "storeGroups": [{ "stores": 7202, "groupId": 4676, "name": "name", "integration": "integration", "storePermissions": [{ "role": { "storeGroupId": 124, "paths": {}, "name": "name", "id": 2960, "fields": {}, "portal": "portal", "users": 4281 }, "capabilities": [{}], "storeGroupId": 9096, "isMaster": false, "name": "name", "currency": "currency", "language": "language", "storeId": 4267 }] }], "admin": true, "delayedInvoicesMessage": "delayedInvoicesMessage", "userId": 103, "email": "email" }

Verify user account

POSTUrl: /verify
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Verify the user account. If successful the account is activated and can be used to login with
Body:

{"verification": "verification"}
Successfull response:

{"username": "username"}

Log in with SSO

POSTUrl: /login/sso
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Login to your Lagerkoll user account and connect your SSO user with your Lagerkoll user
Body:

{ "password": "password", "externalId": "externalId", "type": "type", "username": "username" }
Successfull response:

{ "systemAdmin": true, "settings": { "productSortOrder": "productSortOrder", "storeArticleSortData": {}, "supplierArticleSettings": {}, "projectSortData": [{ "column": "column", "state": 7625, "order": "order" }], "showWelcome": false, "language": "language", "multiPickData": {}, "reportsSettings": {}, "customerSortData": {}, "articleSortData": {}, "pickingListSortData": {}, "projectArticleSortData": {}, "storeGroupId": 1982, "pickingListSortColumn": "pickingListSortColumn", "customerOrderSortData": [{ "column": "column", "state": 1110, "order": "order" }], "productSortColumn": "productSortColumn", "productionOrderSortData": [{ "column": "column", "state": 7663, "order": "order" }], "warnedArticlesSortData": {}, "systemAccountSortData": {}, "lastReadStatusMessages": 3592, "invoiceDraftSortData": {}, "stocktakeArticleSortData": {}, "pickingListSortOrder": "pickingListSortOrder", "orderedArticlesSortData": {}, "accountSortData": {}, "supplierSortData": {}, "productionOrderData": {}, "openPurchaseOrderSortData": {}, "priceListSortData": {}, "storeId": 7590, "purchaseOrderSortData": [{ "column": "column", "state": 504, "order": "order" }], "systemUserSortData": {}, "helpSectionsCollapsed": {}, "viewedReleaseNotesVersion": "viewedReleaseNotesVersion", "invoiceSortData": {} }, "apiKey": "apiKey", "phone": "phone", "name": "name", "storeGroups": [{ "stores": 189, "groupId": 6738, "name": "name", "integration": "integration", "storePermissions": [{ "role": { "storeGroupId": 732, "paths": {}, "name": "name", "id": 8833, "fields": {}, "portal": "portal", "users": 4361 }, "capabilities": [{}], "storeGroupId": 4960, "isMaster": false, "name": "name", "currency": "currency", "language": "language", "storeId": 5753 }] }], "admin": false, "delayedInvoicesMessage": "delayedInvoicesMessage", "userId": 8097, "email": "email" }

Log in with webtoken

POSTUrl: /login/webtoken/{web_token}
Headers:
Accept: application/json or application/xml
Login to your user account using a valid webtoken
Body:
Successfull response:

{ "systemAdmin": false, "settings": { "productSortOrder": "productSortOrder", "storeArticleSortData": {}, "supplierArticleSettings": {}, "projectSortData": [{ "column": "column", "state": 52, "order": "order" }], "showWelcome": true, "language": "language", "multiPickData": {}, "reportsSettings": {}, "customerSortData": {}, "articleSortData": {}, "pickingListSortData": {}, "projectArticleSortData": {}, "storeGroupId": 7412, "pickingListSortColumn": "pickingListSortColumn", "customerOrderSortData": [{ "column": "column", "state": 915, "order": "order" }], "productSortColumn": "productSortColumn", "productionOrderSortData": [{ "column": "column", "state": 3138, "order": "order" }], "warnedArticlesSortData": {}, "systemAccountSortData": {}, "lastReadStatusMessages": 707, "invoiceDraftSortData": {}, "stocktakeArticleSortData": {}, "pickingListSortOrder": "pickingListSortOrder", "orderedArticlesSortData": {}, "accountSortData": {}, "supplierSortData": {}, "productionOrderData": {}, "openPurchaseOrderSortData": {}, "priceListSortData": {}, "storeId": 8506, "purchaseOrderSortData": [{ "column": "column", "state": 8235, "order": "order" }], "systemUserSortData": {}, "helpSectionsCollapsed": {}, "viewedReleaseNotesVersion": "viewedReleaseNotesVersion", "invoiceSortData": {} }, "apiKey": "apiKey", "phone": "phone", "name": "name", "storeGroups": [{ "stores": 9150, "groupId": 4215, "name": "name", "integration": "integration", "storePermissions": [{ "role": { "storeGroupId": 84, "paths": {}, "name": "name", "id": 6719, "fields": {}, "portal": "portal", "users": 6705 }, "capabilities": [{}], "storeGroupId": 9922, "isMaster": true, "name": "name", "currency": "currency", "language": "language", "storeId": 9828 }] }], "admin": true, "delayedInvoicesMessage": "delayedInvoicesMessage", "userId": 6080, "email": "email" }

Invite user

POSTUrl: /users/invite
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Invite user to store
Body:

{ "notes": "notes", "role": { "paths": {}, "name": "name", "fields": {}, "portal": "portal" }, "phone": "phone", "name": "name", "email": "email" }
Successfull response:

{ "systemAdmin": false, "bankID": false, "notes": "notes", "role": { "storeGroupId": 7032, "paths": {}, "name": "name", "id": 9842, "fields": {}, "portal": "portal", "users": 2985 }, "phone": "phone", "name": "name", "emailInvalid": false, "admin": false, "lastLoggedIn": 7702, "id": 2848, "email": "email", "customer": true }

Update user settings

PUTUrl: /settings
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Update user account settings for the fields provided
Body:

{ "productSortOrder": "productSortOrder", "storeArticleSortData": {}, "supplierArticleSettings": {}, "projectSortData": [{ "column": "column", "state": 2906, "order": "order" }], "showWelcome": true, "language": "language", "multiPickData": {}, "reportsSettings": {}, "customerSortData": {}, "articleSortData": {}, "pickingListSortData": {}, "projectArticleSortData": {}, "storeGroupId": 3567, "pickingListSortColumn": "pickingListSortColumn", "customerOrderSortData": [{ "column": "column", "state": 6676, "order": "order" }], "productSortColumn": "productSortColumn", "productionOrderSortData": [{ "column": "column", "state": 792, "order": "order" }], "warnedArticlesSortData": {}, "systemAccountSortData": {}, "lastReadStatusMessages": 3303, "invoiceDraftSortData": {}, "stocktakeArticleSortData": {}, "pickingListSortOrder": "pickingListSortOrder", "orderedArticlesSortData": {}, "accountSortData": {}, "supplierSortData": {}, "productionOrderData": {}, "openPurchaseOrderSortData": {}, "priceListSortData": {}, "storeId": 7319, "purchaseOrderSortData": [{ "column": "column", "state": 4766, "order": "order" }], "systemUserSortData": {}, "helpSectionsCollapsed": {}, "viewedReleaseNotesVersion": "viewedReleaseNotesVersion", "invoiceSortData": {} }
Successfull response:

{ "productSortOrder": "productSortOrder", "storeArticleSortData": {}, "supplierArticleSettings": {}, "projectSortData": [{ "column": "column", "state": 8335, "order": "order" }], "showWelcome": false, "language": "language", "multiPickData": {}, "reportsSettings": {}, "customerSortData": {}, "articleSortData": {}, "pickingListSortData": {}, "projectArticleSortData": {}, "storeGroupId": 7871, "pickingListSortColumn": "pickingListSortColumn", "customerOrderSortData": [{ "column": "column", "state": 6436, "order": "order" }], "productSortColumn": "productSortColumn", "productionOrderSortData": [{ "column": "column", "state": 1842, "order": "order" }], "warnedArticlesSortData": {}, "systemAccountSortData": {}, "lastReadStatusMessages": 8043, "invoiceDraftSortData": {}, "stocktakeArticleSortData": {}, "pickingListSortOrder": "pickingListSortOrder", "orderedArticlesSortData": {}, "accountSortData": {}, "supplierSortData": {}, "productionOrderData": {}, "openPurchaseOrderSortData": {}, "priceListSortData": {}, "storeId": 6403, "purchaseOrderSortData": [{ "column": "column", "state": 1714, "order": "order" }], "systemUserSortData": {}, "helpSectionsCollapsed": {}, "viewedReleaseNotesVersion": "viewedReleaseNotesVersion", "invoiceSortData": {} }

Update user

PUTUrl: /users/{id}
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Update user account for the fields provided
Body:

{ "systemAdmin": false, "bankID": false, "notes": "notes", "role": { "storeGroupId": 4939, "paths": {}, "name": "name", "id": 1236, "fields": {}, "portal": "portal", "users": 3398 }, "phone": "phone", "name": "name", "emailInvalid": false, "admin": false, "lastLoggedIn": 5679, "id": 4946, "email": "email", "customer": false }
Successfull response:

{ "systemAdmin": true, "bankID": true, "notes": "notes", "role": { "storeGroupId": 1185, "paths": {}, "name": "name", "id": 9903, "fields": {}, "portal": "portal", "users": 6832 }, "phone": "phone", "name": "name", "emailInvalid": false, "admin": false, "lastLoggedIn": 7239, "id": 8474, "email": "email", "customer": true }

Prepare change user password

PUTUrl: /users/password/reset
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Sends out an email with a reset-url for the given user
Body:

{"username": "username"}
Successfull response:

Change user password

PUTUrl: /users/{id}/password
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Update user password from a reset key
Body:

{ "password": "password", "confirmPassword": "confirmPassword", "resetKey": "resetKey" }
Successfull response:

Remove SSO

DELETEUrl: /sso/{type}
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Remove Single Sign On from user
Body:
Successfull response:

Delete user

DELETEUrl: /users/{id}
Headers:
Accept: application/json or application/xml
Other headers: user_id, user_token
Delete existing user account
Body:
Successfull response:

Classes:

Account

Field Type Description Default Mandatory Accepted values Example values Access
companyName String true R,W
orgNumber String true R,W
address String R,W
city String R,W
zip String R,W
country String true Two letter codes for country, ISO alpha-2. SE for Sweden, DK for Denmark... For more codes, see http://www.nationsonline.org/oneworld/country_code_list.htm R,W
language String en en, sv R,W
contactPerson String true R,W
email String true R,W
phone String R,W
notes String R,W
currency String Currency used for sales true 3 letter codes for currencies. SEK for Swedish krona, DKK for Danish krone... For more codes, see http://www.nationsonline.org/oneworld/currencies.htm R,W
password String Either bankIDOrderRef or password Length must be 8 or more characters R,W
bankIDOrderRef String If user registers with BankID, this is the orderRef from a successfully authenticated user from BankID Either bankIDOrderRef or password R,W
paymentType Integer true Free account = 0, Small account = 1, Medium account = 2, Large account = 3 R,W
licenceAccepted Boolean The license agreement must be displayed to the user. It can be fetched by the /account/license request false true true, false R,W
promotionCode String Promotion code to get discount on next invoice R,W
features List List of feature ids that should be pre installed and part of the invoice when registering a new account R,W

AccountModel

Field Type Description Default Mandatory Accepted values Example values Access
id int R
paymentType int 0 = Free account, 1 = Small account, 2 = Medium account, 3 = Large account R
premium boolean Is this model premium or free R
reseller boolean Is this model for resellers R
name String R
price double Invoice price annually R
discountPercentage double Discount invoice price annually R
maxUsers int Max number of active users that can log in to Lagerkoll R
maxCustomers int When customer portal is active, max number of invited customers R
maxStocks int Max number of stores R
maxArticles int Max number of articles per store R
fortnoxAccess int 0 = Not available, 1 = Available, 2 = Included R
vismaAccess int 0 = Not available, 1 = Available, 2 = Included R
peAccess int 0 = Not available, 1 = Available, 2 = Included R
batchAccess int 0 = Not available, 1 = Available, 2 = Included R

AccountResponse

Field Type Description Default Mandatory Accepted values Example values Access
storeId Long Id of the requested store R
masterStoreId Long Id of master-store in the store-group R
storeGroupId Long R
name String R
orgNumber String R
paymentType Integer Free account = 0, Small account = 1, Medium account = 2, Large account = 3 R
deactivateDate Long If account is marked for deactivation, the date will tell when it will be deactivated R
fortnox Boolean Is Fortnox integration active? R
fortnoxV2 Boolean Is Fortnox V2 integration active? R
visma Boolean Is Visma integration active? R
settings StoreSettings Settings for store R,W
customerPortalSettings CustomerPortalSettings Settings for customer portal R,W
fieldsSettings FieldsSettings Settings for different fields R,W
purchaseOrderSettings HashMap Settings for purchase orders R,W
customerOrderSettings HashMap Settings for customer orders R,W
barcodePrintingFieldsSettings HashMap Settings for barcode labels R,W
rules Rules Set of rules for this account R
currency String R
salesPriceIncludesVAT Boolean Flag to indicate if salesprices include VAT R,W
contactName String R,W
address String R,W
address2 String R,W
zip String R,W
city String R,W
countryCode String R,W
country String R,W
invoiceAddress String R,W
invoiceAddress2 String R,W
invoiceZip String R,W
invoiceCity String R,W
invoiceCountryCode String R,W
invoiceCountry String R,W
phone String R,W
email String R,W
invoiceEmail String Email-address used to send invoices from Lagerkoll R
storeName String The name of the store R
articleSuffix String R
features List List of uploaded features R

AccountSettings

Field Type Description Default Mandatory Accepted values Example values Access
language String selected language sv, en R,W
storeGroupId Long selected storegroup id R
storeId Long selected store id R,W
showWelcome Boolean is it first time the user is logging in R,W
productSortColumn String sort column for articles R,W
productSortOrder String sort order for articles R,W
pickingListSortColumn String sort column for articles in customer order pickinglist R,W
pickingListSortOrder String sort order for articles in customer order pickinglist R,W
lastReadStatusMessages long timestamp of last read status message R,W
supplierArticleSettings HashMap last selected supplier in Supplier article R,W
supplierSortData HashMap sort column and order for suppliers R,W
openPurchaseOrderSortData HashMap sort column and order for open purchase order R,W
customerSortData HashMap sort column and order for customers R,W
articleSortData HashMap sort column and order for articles R,W
storeArticleSortData HashMap sort column and order for articles in all stores R,W
pickingListSortData HashMap sort column and order for picking list R,W
priceListSortData HashMap sort column and order for price list R,W
orderedArticlesSortData HashMap sort column and order for ordered articles R,W
warnedArticlesSortData HashMap sort column and order for warned articles R,W
accountSortData HashMap sort column and order for accounts R,W
stocktakeArticleSortData HashMap sort column and order for stocktake articles R,W
systemAccountSortData HashMap sort column and order for account R,W
systemUserSortData HashMap sort column and order for users R,W
helpSectionsCollapsed HashMap a map of what helpsections in Webapp that is collapsed R,W
reportsSettings HashMap settings for reports R,W
customerOrderSortData List sort column and order for customer orders based on order state R,W
purchaseOrderSortData List sort column and order for purchase orders based on order state R,W
productionOrderSortData List sort column and order for production orders based on order state R,W
productionOrderData HashMap settings for production order R,W
projectSortData List sort column and order for project based on order state R,W
projectArticleSortData HashMap sort column and order for project article based on order state R,W
invoiceDraftSortData HashMap sort column and order for invoice draft R,W
invoiceSortData HashMap sort column and order for invoice R,W
viewedReleaseNotesVersion String last viewed version of release notes R,W
multiPickData HashMap settings for multipick feature R,W

APIKey

Field Type Description Default Mandatory Accepted values Example values Access
name String Name of api key R,W
key String API key used for external integrations R,W
requests List API requests supported for the api key R,W

APIRequest

Field Type Description Default Mandatory Accepted values Example values Access
method String Allowed methods for this request GET, POST, PUT, DELETE, * R,W
path String Path for the request R,W

APISettings

Field Type Description Default Mandatory Accepted values Example values Access
apiKeys List API keys used for external integrations R,W
stores List List of store ids where the API key can be used. For all stores use * R,W
callbackUrl String Callback url used when there is an update made in Lagerkoll R,W
integrationName String Name of external integration R
integrationSuccessfull boolean Flag to indicate if integration to external system was successfull R

BarcodeSettings

Field Type Description Default Mandatory Accepted values Example values Access
barcodePrintingFieldsSettings HashMap Settings for barcode labels R,W

Category

Field Type Description Default Mandatory Accepted values Example values Access
id long R
name String Name of category R,W
articles Integer Number of articles that include this category R

Count

Field Type Description Default Mandatory Accepted values Example values Access
count int R

CustomerPortalSettings

Field Type Description Default Mandatory Accepted values Example values Access
showArticleStockStatus Boolean R
orderArticlesNotInStock Boolean R
showWebshop Boolean R
showArticleId Boolean R
showName Boolean R
showDescription Boolean R
showImage Boolean R
showPrice Boolean R
showBatches Boolean R
showSerials Boolean R
showOtherPurchasedArticles Boolean R
welcomeTitle HashMap R,W
welcomeText HashMap R,W

CustomerTag

Field Type Description Default Mandatory Accepted values Example values Access
id Long Write only with POST Post R,W
externalId String R,W
name String Post R,W
desc String Post R,W

EmailSettings

Field Type Description Default Mandatory Accepted values Example values Access
username String Username for email account. If missing email address will be used W
email String Email address W
password String Password for email account W
outgoingAddress String Outgoing address for email server, SMTP W
outgoingPort Integer Outgoing port for email server W
auth Boolean Should auth be used when connecting to email server false W
tls Boolean Should tls be used when connecting to email server false W
ssl Boolean Should ssl be used when connecting to email server false W
verified Boolean Flag to indicate if settings have been verified or not R

EmailVerification

Field Type Description Default Mandatory Accepted values Example values Access
verification String Verification key for email settings W
storeId Long Store id to verify email settings W

EventsSettings

Field Type Description Default Mandatory Accepted values Example values Access
bestBeforeTrigger Integer Number of week before the best before date expires R,W
purchaseOrdersReminder Boolean Activate delayed deliveries of purchase orders R,W

FeatureFile

Field Type Description Default Mandatory Accepted values Example values Access
index int If file should have its own link in the menu, this will be rendered according to ascending index R,W
filename String Filename R
menuTitle HashMap If file should have its own link in the menu, this will be the title R,W

FeatureResponse

Field Type Description Default Mandatory Accepted values Example values Access
id String Id of feature R
name HashMap Name of feature R
roles List List of roles needed to access the feature R,W
icon String Icon (Font Awesome v.5.15.4) to be rendered in the menu R
image String Name if image-file bundled in zip-file R
description HashMap Description of feature R
publisher String Name responsible person for this feature R
credits String Credits to people involved with this feature R
price Double Price for this feature R
annual Boolean Indicates if price is annual or onetime R
dashboard String Name of the function that renders data in the dashboard in Lagerkoll R
version String Version of feature R
files List List of files in the feature R
server Boolean Indicates if this feature has event callbacks R
category List List of categories for this feature R

FieldsSettings

Field Type Description Default Mandatory Accepted values Example values Access
fields HashMap R

Invoice

Field Type Description Default Mandatory Accepted values Example values Access
invoiceId Long R
serverId long R
invoiceDate Date R
invoiceDays int R
paymentDate Date R
invoicePeriodInMonths int R
rows List R
invoiceExpireDate Date R
state String R
invoicePaidDate Date R

InvoiceRow

Field Type Description Default Mandatory Accepted values Example values Access
articleId String R
articleName String R
articlePrice double R
articleVat double R
discountPercent double R

InvoicesResponse

Field Type Description Default Mandatory Accepted values Example values Access
invoices List R

License

Field Type Description Default Mandatory Accepted values Example values Access
eula String License agreement R
models List List of account models with information about price and limitations R

Login

Field Type Description Default Mandatory Accepted values Example values Access
username String true R,W
password String true R,W

LoginResponse

Field Type Description Default Mandatory Accepted values Example values Access
userId long R
apiKey String R
name String R
email String R
phone String R
storeGroups List R
systemAdmin Boolean R
admin Boolean R
settings AccountSettings R
delayedInvoicesMessage String If account is premium and has delayed invoices R

LoginSSO

Field Type Description Default Mandatory Accepted values Example values Access
username String true R,W
password String true R,W
type String true visma, bankid R,W
externalId String true R,W

Password

Field Type Description Default Mandatory Accepted values Example values Access
resetKey String Reset key is sent out in an email when requesting to change password W
password String New password W
confirmPassword String Confirm password W

PrepareResetPassword

Field Type Description Default Mandatory Accepted values Example values Access
username String Username to reset password for true W

PromotionCodeInviteRequest

Field Type Description Default Mandatory Accepted values Example values Access
email String Email for the invited user true W

Role

Field Type Description Default Mandatory Accepted values Example values Access
id Long R
storeGroupId Long R
name String R,W
paths ArrayList List of paths role has access to R,W
fields HashMap List of objects and fields that is filtered out when sending data to api and request data from api R,W
portal String What part of Lagerkoll is the role used ADMIN, SHOP R,W
users int Number of users connected to role R

Rules

Field Type Description Default Mandatory Accepted values Example values Access
articleNameMaxLength int R
canCreateVAT boolean R
supportsNoVAT boolean R
canCreateWayOfDelivery boolean R
canCreateSupplierDeliveryTerm boolean R
canCreateCustomerDeliveryTerm boolean R
canCreatePaymentTerm boolean R
canCreateUnit boolean R
canSetDefaultPricelist boolean R
supportsBracketPricing boolean R
showVATAccount boolean R
canCreateCustomerOrderInvoice boolean R
canCancelCustomerOrder boolean R
customerTypeSetsVAT boolean R
customerOrderReservedStateStart int R
customerOrderReservedStateEnd int R
defaultVAT VAT R
defaultUnitType Unit R
defaultCategory Category R
maxIntegrationDecimals int If account is connected to an integration (Fortnox or Visma), this field indicates the max number of decimals that system supports R
supportsCustomerOrderFees boolean R
doesVATControllArticleType boolean R
canCreateCostCenters boolean R
canSetCostCentersOnCustomerOrder boolean R
canSetStock boolean R
increaseStockOnReceiveForPickNPack boolean R
allowZeroSumCustomerOrders boolean R
allowNegativeOrderedSumInCustomerOrder boolean R
maxUsers int R
maxCustomers int R
maxStocks int R
maxArticles int R
batchAccess boolean R
allowRestCustomerOrder boolean R
supportsInvoiceTypes boolean R
canChangeCustomerOnOrderStateStart int R
canChangeCustomerOnOrderStateEnd int R

SortData

Field Type Description Default Mandatory Accepted values Example values Access
state Integer R
column String R
order String R

StatusMessage

Field Type Description Default Mandatory Accepted values Example values Access
type String What kind of message is this true info, error, progress, progress_done R,W
action String What action is this message connected to true get, add, update, delete R,W
messageId String Message id R,W
message String Message true R,W
technicalMessage String Technical message R
progress Integer If type is progress this value reflects the progress 1 - 100 R,W
integrationType String What kind of integration is this for. Default is Webshop fortnox, visma_v2, webshop, import, email R,W
created Long Created date R

StatusMessagesResponse

Field Type Description Default Mandatory Accepted values Example values Access
pages int Total pages R
page int Current page R
pageSize int Message per page R
messagesCount int Total amount of messages R
messages List R

StoreGroup

Field Type Description Default Mandatory Accepted values Example values Access
groupId long R
name String R
stores int R
storePermissions List R
integration String R

StoreGroupReportsSettings

Field Type Description Default Mandatory Accepted values Example values Access
tobaccoSWCustomerTag CustomerTag R,W
tobaccoEUCustomerTag CustomerTag R,W
tobaccoNoTaxCustomerTag CustomerTag R,W

StorePermission

Field Type Description Default Mandatory Accepted values Example values Access
storeId long R
storeGroupId long R
name String R
currency String R
language String R
role Role Role current user has access to R
capabilities List List of capabilities current user has access to MAIN_INVENTORY(1), INVENTORY_CREATE_NEW(101), INVENTORY_FINISH_LIST(102), MAIN_PRODUCT(2), PRODUCT_CREATE_NEW(201), PRODUCT_EDIT_EXISTING(202), PRODUCT_VIEW_PRICES(203), PRODUCT_UNIT_CREATE_NEW(204), MAIN_ORDER(5), ORDER_CREATE_NEW(501), MAIN_DELIVERY(6), DELIVERY_CLOSE_ORDER(601), MAIN_PICKING_LISTS(7), PICKING_LISTS_PICK(701), PICKING_LISTS_FINISH(702), MAIN_CHECKOUT(8), CHECKOUT(801), CHECKIN(802), MAIN_CUSTOMER_ORDER(9), CUSTOMER_ORDER_CREATE_NEW(901), BATCHES(1001) R
isMaster Boolean True if this is the master stock R

StoreSettings

Field Type Description Default Mandatory Accepted values Example values Access
decimals Integer R
weeklyStatus Boolean R
lowStockWarning Boolean R
customerOrderNotification Boolean R
truncateArticleName Boolean R
automaticBundling Boolean R
defaultTemplate Long R
automaticDailyExport Boolean R
language String R
cashInvoicePaymentWay String R
projectInvoicePaymentWay String R

Support

Field Type Description Default Mandatory Accepted values Example values Access
subject String true R,W
message String true R,W

Unit

Field Type Description Default Mandatory Accepted values Example values Access
id Long R,W
externalId String R
name String Name of unit R,W

User

Field Type Description Default Mandatory Accepted values Example values Access
id Long R
customer boolean flag to indicate if user has customer privileges R
admin boolean flag to indicate if user has admin privileges R
systemAdmin boolean flag to indicate if user has system admin privileges R
name String R,W
email String R,W
phone String R,W
notes String R,W
emailInvalid boolean If this flag is set to true, Lagerkoll has detected on multiple occassions that it cannot send emails to this address R
role Role Role of the current user. Admins can update permissions on other users, but a user cannot update his own permissions R,W
lastLoggedIn Long Timestamp when this user was last logged in R
bankID Boolean If user has activated login with BankID R

UsersResponse

Field Type Description Default Mandatory Accepted values Example values Access
page int R
pages int R
pageSize int R
usersCount int R
since long R
users List R

VAT

Field Type Description Default Mandatory Accepted values Example values Access
id long R
vat double VAT value in percentage R
account int sales account R
code String vat code R
description String description of vat R
isDefault Boolean default vat R

Verification

Field Type Description Default Mandatory Accepted values Example values Access
verification String code to verify account true R,W

VerificationResponse

Field Type Description Default Mandatory Accepted values Example values Access
username String account username R,W

WebMessage

Field Type Description Default Mandatory Accepted values Example values Access
params HashMap R
action String R

WebMessagesResponse

Field Type Description Default Mandatory Accepted values Example values Access
messages List R

WebMessageStatus

Field Type Description Default Mandatory Accepted values Example values Access
action String R
responseCode int R
data WebMessage R