Incident Blockers

Incidents allow apps to report issues directly.

Log incident

POST /v1/log/incident

Saves an incident.

Request Body

CreateIncident

Return Type

Incident

Types for the Request Body

CreateIncident (root level)

KeyDescriptionTypesRestrictions
messageThe message to be recorded.stringrequired
not null
min length is 1
detailsAdditional data to be stored against the incident occurrence.objectnot null
task_referenceThe ID of the related task.stringnot null
match is /^[0-9a-z-]{36}$/
incident_bindingsBindings for the incident to be created.CreateIncidentBindingnot null
incident_type_codeOptional incident type code.stringmatch is /^[0-9a-zA-Z_-]{1,200}$/

CreateIncidentBinding

KeyDescriptionTypesRestrictions
userUser ID.numbernot null
companyCompany ID.numbernot null
organisationOrganisation ID.numbernot null
order_goodsoutOrder goodsout ID.numbernot null
order_channelOrder channel ID.numbernot null
product_channelProduct channel ID.numbernot null
product_variationProduct variation ID.numbernot null
product_componentProduct component ID.numbernot null
listingListing ID.numbernot null
vendor_orderVendor order ID.numbernot null
purchase_orderPurchase order ID.numbernot null

Rate limit cost

Each call to this endpoint deducts 1 credit from your request bucket.

Scopes

This endpoint is only available for users with scope APP::MISC.

<?php

// Instantiate a GuzzleHttp client
$client = new \GuzzleHttp\Client();

// Make the request
$response = $client->request("POST", "https://public-api.bladepro.io/v1/log/incident", [
    "body" => json_encode([
        "message" => "This is a message worth saving to our incident.",
        "details" => [
            "x" => 0,
            "y" => 0,
            "z" => 4,
        ],
        "incident_bindings" => [
            "user" => 46,
            "vendor_order" => 1546,
        ],
    ]),
    "headers" => [
        "Content-Type" => "application/json",
        "Access-Token" => "my-token-from-login",
    ],
]);

// Process the response
$responseBody = json_decode($response->getBody(), true);
require 'rest-client'
require 'json'

# Make the request
response = RestClient.post 'https://public-api.bladepro.io/v1/log/incident', {
  message: "This is a message worth saving to our incident.",
  details: {
    x: 0,
    y: 0,
    z: 4,
  },
  incident_bindings: {
    user: 46,
    vendor_order: 1546,
  },
}, {
  access_token: 'my-token-from-login',
  content_type: :json,
  accept: :json
}

# Process the response
puts response.body
// Require the node HTTP module
var request = require("request");

// Make the request
request({
    method: "POST",
    json: true,
    uri: "https://public-api.bladepro.io/v1/log/incident",
    body: {
        "message": "This is a message worth saving to our incident.",
        "details": {
            "x": 0,
            "y": 0,
            "z": 4
        },
        "incident_bindings": {
            "user": 46,
            "vendor_order": 1546
        }
    },
    headers: {
        "Access-Token": "my-token-from-login",
        "Content-Type": "application/json",
    },
    (error, response, body) => {
        // Process the response
        console.log(body);
    },
});
# Make the request
curl --location --request POST 'https://public-api.bladepro.io/v1/log/incident' \
--header 'Content-Type: application/json' \
--header 'Access-Token: my-token-from-login' \
--data-raw '{
    "message": "This is a message worth saving to our incident.",
    "details": {
        "x": 0,
        "y": 0,
        "z": 4
    },
    "incident_bindings": {
        "user": 46,
        "vendor_order": 1546
    }
}'

Example result:

{
    "meta": {
        "request_reference": "235chjz9h-c893v86"
    },
    "data": {
        "incident_id": 123
    }
}

Log incident import missing sku

POST /v1/log/incident/order_import/missing_sku

Saves an incident related to order import missing SKU.

Request Body

CreateIncidentImportMissingSku

Return Type

Incident

Types for the Request Body

CreateIncidentImportMissingSku (root level)

KeyDescriptionTypesRestrictions
product_skuThe product SKU to be stored against the incident occurrence.stringrequired
not null
min length is 1
product_nameThe product name to be stored against the incident occurrence.stringnot null
order_referenceThe product order reference.stringrequired
not null
min length is 1
max length is 120
order_channel_idOrder channel idintegerrequired
not null
min is 1
detailsAdditional data to be stored against the incident occurrence.object

Rate limit cost

Each call to this endpoint deducts 1 credit from your request bucket.

Scopes

This endpoint is only available for users with scope APP::MISC.

<?php

// Instantiate a GuzzleHttp client
$client = new \GuzzleHttp\Client();

// Make the request
$response = $client->request("POST", "https://public-api.bladepro.io/v1/log/incident/order_import/missing_sku", [
    "body" => json_encode([
        "product_sku" => "ABC12335",
        "product_name" => "ABC Backpack.",
        "order_reference" => "#1234-123442",
        "order_channel_id" => 137,
        "details" => [
            "x" => 0,
            "y" => 0,
            "z" => 4,
        ],
    ]),
    "headers" => [
        "Content-Type" => "application/json",
        "Access-Token" => "my-token-from-login",
    ],
]);

// Process the response
$responseBody = json_decode($response->getBody(), true);
require 'rest-client'
require 'json'

# Make the request
response = RestClient.post 'https://public-api.bladepro.io/v1/log/incident/order_import/missing_sku', {
  product_sku: "ABC12335",
  product_name: "ABC Backpack.",
  order_reference: "#1234-123442",
  order_channel_id: 137,
  details: {
    x: 0,
    y: 0,
    z: 4,
  },
}, {
  access_token: 'my-token-from-login',
  content_type: :json,
  accept: :json
}

# Process the response
puts response.body
// Require the node HTTP module
var request = require("request");

// Make the request
request({
    method: "POST",
    json: true,
    uri: "https://public-api.bladepro.io/v1/log/incident/order_import/missing_sku",
    body: {
        "product_sku": "ABC12335",
        "product_name": "ABC Backpack.",
        "order_reference": "#1234-123442",
        "order_channel_id": 137,
        "details": {
            "x": 0,
            "y": 0,
            "z": 4
        }
    },
    headers: {
        "Access-Token": "my-token-from-login",
        "Content-Type": "application/json",
    },
    (error, response, body) => {
        // Process the response
        console.log(body);
    },
});
# Make the request
curl --location --request POST 'https://public-api.bladepro.io/v1/log/incident/order_import/missing_sku' \
--header 'Content-Type: application/json' \
--header 'Access-Token: my-token-from-login' \
--data-raw '{
    "product_sku": "ABC12335",
    "product_name": "ABC Backpack.",
    "order_reference": "#1234-123442",
    "order_channel_id": 137,
    "details": {
        "x": 0,
        "y": 0,
        "z": 4
    }
}'

Example result:

{
    "meta": {
        "request_reference": "235chjz9h-c893v86"
    },
    "data": {
        "incident_id": 123
    }
}

Log incident import missing tax rate

POST /v1/log/incident/order_import/missing_tax_rate

Saves an incident related to order import missing tax rate.

Request Body

CreateIncidentImportMissingTaxRate

Return Type

Incident

Types for the Request Body

CreateIncidentImportMissingTaxRate (root level)

KeyDescriptionTypesRestrictions
tax_rateThe tax rate.numberrequired
not null
min is 0.01
order_referenceThe product order reference.stringrequired
not null
min length is 1
max length is 120
order_channel_idOrder channel idintegerrequired
not null
min is 1
detailsAdditional data to be stored against the incident occurrence.object

Rate limit cost

Each call to this endpoint deducts 1 credit from your request bucket.

Scopes

This endpoint is only available for users with scope APP::MISC.

<?php

// Instantiate a GuzzleHttp client
$client = new \GuzzleHttp\Client();

// Make the request
$response = $client->request("POST", "https://public-api.bladepro.io/v1/log/incident/order_import/missing_tax_rate", [
    "body" => json_encode([
        "tax_rate" => "12.2",
        "order_reference" => "#1234-123442",
        "order_channel_id" => 124,
        "details" => [
            "x" => 0,
            "y" => 0,
            "z" => 4,
        ],
    ]),
    "headers" => [
        "Content-Type" => "application/json",
        "Access-Token" => "my-token-from-login",
    ],
]);

// Process the response
$responseBody = json_decode($response->getBody(), true);
require 'rest-client'
require 'json'

# Make the request
response = RestClient.post 'https://public-api.bladepro.io/v1/log/incident/order_import/missing_tax_rate', {
  tax_rate: "12.2",
  order_reference: "#1234-123442",
  order_channel_id: 124,
  details: {
    x: 0,
    y: 0,
    z: 4,
  },
}, {
  access_token: 'my-token-from-login',
  content_type: :json,
  accept: :json
}

# Process the response
puts response.body
// Require the node HTTP module
var request = require("request");

// Make the request
request({
    method: "POST",
    json: true,
    uri: "https://public-api.bladepro.io/v1/log/incident/order_import/missing_tax_rate",
    body: {
        "tax_rate": "12.2",
        "order_reference": "#1234-123442",
        "order_channel_id": 124,
        "details": {
            "x": 0,
            "y": 0,
            "z": 4
        }
    },
    headers: {
        "Access-Token": "my-token-from-login",
        "Content-Type": "application/json",
    },
    (error, response, body) => {
        // Process the response
        console.log(body);
    },
});
# Make the request
curl --location --request POST 'https://public-api.bladepro.io/v1/log/incident/order_import/missing_tax_rate' \
--header 'Content-Type: application/json' \
--header 'Access-Token: my-token-from-login' \
--data-raw '{
    "tax_rate": "12.2",
    "order_reference": "#1234-123442",
    "order_channel_id": 124,
    "details": {
        "x": 0,
        "y": 0,
        "z": 4
    }
}'

Example result:

{
    "meta": {
        "request_reference": "235chjz9h-c893v86"
    },
    "data": {
        "incident_id": 123
    }
}

Log incident import failure

POST /v1/log/incident/order_import/failure

Saves an incident related to order import failure.

Request Body

CreateIncidentImportFailure

Return Type

Incident

Types for the Request Body

CreateIncidentImportFailure (root level)

KeyDescriptionTypesRestrictions
failure_messageFailure message.stringrequired
not null
min length is 1
order_referenceThe product order reference.stringrequired
not null
min length is 1
max length is 120
order_channel_idOrder channel idintegerrequired
not null
min is 1
detailsAdditional data to be stored against the incident occurrence.object

Rate limit cost

Each call to this endpoint deducts 1 credit from your request bucket.

Scopes

This endpoint is only available for users with scope APP::MISC.

<?php

// Instantiate a GuzzleHttp client
$client = new \GuzzleHttp\Client();

// Make the request
$response = $client->request("POST", "https://public-api.bladepro.io/v1/log/incident/order_import/failure", [
    "body" => json_encode([
        "failure_message" => "No response from the shop url",
        "order_reference" => "#1234-123442",
        "order_channel_id" => 172,
        "details" => [
            "x" => 0,
            "y" => 0,
            "z" => 4,
        ],
    ]),
    "headers" => [
        "Content-Type" => "application/json",
        "Access-Token" => "my-token-from-login",
    ],
]);

// Process the response
$responseBody = json_decode($response->getBody(), true);
require 'rest-client'
require 'json'

# Make the request
response = RestClient.post 'https://public-api.bladepro.io/v1/log/incident/order_import/failure', {
  failure_message: "No response from the shop url",
  order_reference: "#1234-123442",
  order_channel_id: 172,
  details: {
    x: 0,
    y: 0,
    z: 4,
  },
}, {
  access_token: 'my-token-from-login',
  content_type: :json,
  accept: :json
}

# Process the response
puts response.body
// Require the node HTTP module
var request = require("request");

// Make the request
request({
    method: "POST",
    json: true,
    uri: "https://public-api.bladepro.io/v1/log/incident/order_import/failure",
    body: {
        "failure_message": "No response from the shop url",
        "order_reference": "#1234-123442",
        "order_channel_id": 172,
        "details": {
            "x": 0,
            "y": 0,
            "z": 4
        }
    },
    headers: {
        "Access-Token": "my-token-from-login",
        "Content-Type": "application/json",
    },
    (error, response, body) => {
        // Process the response
        console.log(body);
    },
});
# Make the request
curl --location --request POST 'https://public-api.bladepro.io/v1/log/incident/order_import/failure' \
--header 'Content-Type: application/json' \
--header 'Access-Token: my-token-from-login' \
--data-raw '{
    "failure_message": "No response from the shop url",
    "order_reference": "#1234-123442",
    "order_channel_id": 172,
    "details": {
        "x": 0,
        "y": 0,
        "z": 4
    }
}'

Example result:

{
    "meta": {
        "request_reference": "235chjz9h-c893v86"
    },
    "data": {
        "incident_id": 123
    }
}

Log incident with purchase order import failure

POST /v1/log/incident/purchase_order_import/failure

Saves an incident related to purchase order import failure.

Request Body

CreateIncidentImportFailure

Return Type

Incident

Types for the Request Body

CreateIncidentImportFailure (root level)

KeyDescriptionTypesRestrictions
failure_messageFailure message.stringrequired
not null
min length is 1
order_referenceThe product order reference.stringrequired
not null
min length is 1
max length is 120
order_channel_idOrder channel idintegerrequired
not null
min is 1
detailsAdditional data to be stored against the incident occurrence.object

Rate limit cost

Each call to this endpoint deducts 1 credit from your request bucket.

Scopes

This endpoint is only available for users with scope APP::MISC.

<?php

// Instantiate a GuzzleHttp client
$client = new \GuzzleHttp\Client();

// Make the request
$response = $client->request("POST", "https://public-api.bladepro.io/v1/log/incident/purchase_order_import/failure", [
    "body" => json_encode([
        "failure_message" => "No response from the shop url",
        "order_reference" => "#1234-123442",
        "order_channel_id" => 152,
        "details" => [
            "x" => 0,
            "y" => 0,
            "z" => 4,
        ],
    ]),
    "headers" => [
        "Content-Type" => "application/json",
        "Access-Token" => "my-token-from-login",
    ],
]);

// Process the response
$responseBody = json_decode($response->getBody(), true);
require 'rest-client'
require 'json'

# Make the request
response = RestClient.post 'https://public-api.bladepro.io/v1/log/incident/purchase_order_import/failure', {
  failure_message: "No response from the shop url",
  order_reference: "#1234-123442",
  order_channel_id: 152,
  details: {
    x: 0,
    y: 0,
    z: 4,
  },
}, {
  access_token: 'my-token-from-login',
  content_type: :json,
  accept: :json
}

# Process the response
puts response.body
// Require the node HTTP module
var request = require("request");

// Make the request
request({
    method: "POST",
    json: true,
    uri: "https://public-api.bladepro.io/v1/log/incident/purchase_order_import/failure",
    body: {
        "failure_message": "No response from the shop url",
        "order_reference": "#1234-123442",
        "order_channel_id": 152,
        "details": {
            "x": 0,
            "y": 0,
            "z": 4
        }
    },
    headers: {
        "Access-Token": "my-token-from-login",
        "Content-Type": "application/json",
    },
    (error, response, body) => {
        // Process the response
        console.log(body);
    },
});
# Make the request
curl --location --request POST 'https://public-api.bladepro.io/v1/log/incident/purchase_order_import/failure' \
--header 'Content-Type: application/json' \
--header 'Access-Token: my-token-from-login' \
--data-raw '{
    "failure_message": "No response from the shop url",
    "order_reference": "#1234-123442",
    "order_channel_id": 152,
    "details": {
        "x": 0,
        "y": 0,
        "z": 4
    }
}'

Example result:

{
    "meta": {
        "request_reference": "235chjz9h-c893v86"
    },
    "data": {
        "incident_id": 123
    }
}