Goto APIs

Webhooks API

General:

Basics:

Base-URL: https://capi.lagerkoll.com/v1/webhooks/
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
902101 Error when getting webhook
{
  "errorCode" : 900101,
  "errorMessage" : "Something went wrong on the server",
  "errorField" : null,
  "errorData" : null
}

Webhooks API:

Webhooks

Get webhooks for feature

GETUrl: /{id}
Headers:
Accept: application/json
Content-type: application/json
Get all webhooks for a feature
Body:
Successfull response:

{"webhooks": [{ "featureMethod": "featureMethod", "guid": "guid", "id": 3274, "featureId": "featureId", "url": "url" }]}

Create webhook

POSTUrl:
Headers:
Accept: application/json or application/xml
Content-type: application/json or application/xml
Create a webhook for a feature and method

Valid parameters:

Parameter Description Default value Allowed values
enable_for_group true if the webhook should apply for the whole group, false if it only applies for the specified store false

Body:

{ "featureMethod": "featureMethod", "featureId": "featureId" }
Successfull response:

{ "featureMethod": "featureMethod", "guid": "guid", "id": 6157, "featureId": "featureId", "url": "url" }

Execute webhook

POSTUrl: /{guid}
Headers:
Accept: application/json
Content-type: application/json
Execute a webhook based on a guid
Body:
Successfull response:

Delete webhook

DELETEUrl: /{id}
Headers:
Accept: application/json or application/xml
Delete webhook
Body:
Successfull response:

Classes:

Webhook

Field Type Description Default Mandatory Accepted values Example values Access
id Long Id of webhook R
guid String GUID for webhook R
featureId String Id of feature R,W
featureMethod String Method of feature R,W
url String Url for webhook R

WebhookResponse

Field Type Description Default Mandatory Accepted values Example values Access
webhooks List List of webhooks for feature R,W