IKEA · Schema

AvailabilityEnvelope

Availability envelope containing availabilities, sales Sales Locations and errors.

RetailHome FurnishingsConsumer ProductsOpen-SourceCommunityUnofficial APISmart Home

Properties

Name Type Description
availabilities array List of product availabilities
salesLocations array
errors array List of errors
timestamp string ISO 8601 formatted timestamp with timezone
traceId string Unique trace identifier for debugging and log correlation
View JSON Schema on GitHub

JSON Schema

ikea-sales-item-availability-envelope-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/ikea/refs/heads/main/json-schema/ikea-sales-item-availability-envelope-schema.json",
  "title": "AvailabilityEnvelope",
  "description": "Availability envelope containing availabilities, sales Sales Locations and errors.",
  "type": "object",
  "properties": {
    "availabilities": {
      "type": "array",
      "description": "List of product availabilities",
      "items": {
        "type": "object",
        "description": "Availability of a Product",
        "properties": {
          "availableForCashCarry": {
            "type": "boolean",
            "example": true
          },
          "availableForClickCollect": {
            "type": "boolean",
            "example": false
          },
          "buyingOption": {
            "type": "object",
            "example": {
              "clickCollect": {
                "range": {
                  "inRange": true
                }
              }
            }
          },
          "childAvailabilities": {
            "type": "array",
            "items": {
              "type": "object",
              "description": "Availability of a Product",
              "properties": {
                "availableForCashCarry": {
                  "type": "boolean",
                  "example": true
                },
                "availableForClickCollect": {
                  "type": "boolean",
                  "example": false
                },
                "buyingOption": {
                  "type": "object",
                  "example": {
                    "clickCollect": {
                      "range": {
                        "inRange": true
                      }
                    }
                  }
                },
                "childAvailabilities": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Availability"
                  },
                  "example": []
                },
                "classUnitKey": {
                  "type": "object",
                  "description": "Class Unit Key gives context when invoking the AvailabilityClassifications API.\n",
                  "properties": {
                    "classUnitCode": {
                      "type": "string",
                      "minLength": 2,
                      "maxLength": 5,
                      "description": "`classUnitCode` is the unique identifier of a Class Unit when\ncombined with a `classUnitType`.\n\nA valid `classUnitCode` always has a pattern like `^([A-Z]|[0-9]){2,5}$`.\n\nThis can either be a:\n\n* **Retail Unit** - Retail Unit must be combined with a valid `classUnitCode`. For example, `SE` for Sweden or `DE` for Germany. A list of valid Class Units can be found [in CBD](https://iwww.cbdview.ikea.com/) (requires VPN or internal network).\n* **Store ID** - The 3-digit store ID. E.g. `066`.\n",
                      "examples": [
                        "GB",
                        "DE",
                        "066"
                      ]
                    },
                    "classUnitType": {
                      "type": "string",
                      "description": "Class Unit Type:\n  * `RU` - Retail Unit - Retail Unit must be combined with a valid `classUnitCode`. For example, `SE` for Sweden or `DE` for Germany. A list of valid Retail Units can be found [in CBD](https://iwww.cbdview.ikea.com/) (requires VPN or internal network).\n  * `STO` - Store - The store availability for a given store\n",
                      "enum": [
                        "RU",
                        "STO"
                      ],
                      "example": "RU"
                    }
                  }
                },
                "itemKey": {
                  "type": "object",
                  "description": "Item key (Product ID and Item type)",
                  "properties": {
                    "itemNo": {
                      "$ref": "#/components/schemas/productId"
                    },
                    "itemType": {
                      "$ref": "#/components/schemas/itemType"
                    }
                  }
                }
              }
            },
            "example": []
          },
          "classUnitKey": {
            "type": "object",
            "description": "Class Unit Key gives context when invoking the AvailabilityClassifications API.\n",
            "properties": {
              "classUnitCode": {
                "type": "string",
                "minLength": 2,
                "maxLength": 5,
                "description": "`classUnitCode` is the unique identifier of a Class Unit when\ncombined with a `classUnitType`.\n\nA valid `classUnitCode` always has a pattern like `^([A-Z]|[0-9]){2,5}$`.\n\nThis can either be a:\n\n* **Retail Unit** - Retail Unit must be combined with a valid `classUnitCode`. For example, `SE` for Sweden or `DE` for Germany. A list of valid Class Units can be found [in CBD](https://iwww.cbdview.ikea.com/) (requires VPN or internal network).\n* **Store ID** - The 3-digit store ID. E.g. `066`.\n",
                "examples": [
                  "GB",
                  "DE",
                  "066"
                ]
              },
              "classUnitType": {
                "type": "string",
                "description": "Class Unit Type:\n  * `RU` - Retail Unit - Retail Unit must be combined with a valid `classUnitCode`. For example, `SE` for Sweden or `DE` for Germany. A list of valid Retail Units can be found [in CBD](https://iwww.cbdview.ikea.com/) (requires VPN or internal network).\n  * `STO` - Store - The store availability for a given store\n",
                "enum": [
                  "RU",
                  "STO"
                ],
                "example": "RU"
              }
            }
          },
          "itemKey": {
            "type": "object",
            "description": "Item key (Product ID and Item type)",
            "properties": {
              "itemNo": {
                "type": "string",
                "description": "Product identifier",
                "example": "00263850"
              },
              "itemType": {
                "type": "string",
                "description": "Item type code\n",
                "enum": [
                  "ART",
                  "SPR"
                ],
                "example": "SPR"
              }
            }
          }
        }
      }
    },
    "salesLocations": {
      "type": "array",
      "items": {
        "type": "object",
        "description": null,
        "properties": {
          "childItems": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "itemKey": {
                  "type": "object",
                  "description": "Item key (Product ID and Item type)",
                  "properties": {
                    "itemNo": {
                      "$ref": "#/components/schemas/productId"
                    },
                    "itemType": {
                      "$ref": "#/components/schemas/itemType"
                    }
                  }
                },
                "salesLocations": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "example": {
                      "aisleAndBin": {
                        "aisle": "06",
                        "bin": "01"
                      },
                      "division": "SELF_SERVE",
                      "id": "060100",
                      "recommendationRank": 1,
                      "type": "AISLE_AND_BIN"
                    }
                  }
                }
              }
            }
          },
          "classUnitKey": {
            "type": "object",
            "description": "Class Unit Key gives context when invoking the AvailabilityClassifications API.\n",
            "properties": {
              "classUnitCode": {
                "type": "string",
                "minLength": 2,
                "maxLength": 5,
                "description": "`classUnitCode` is the unique identifier of a Class Unit when\ncombined with a `classUnitType`.\n\nA valid `classUnitCode` always has a pattern like `^([A-Z]|[0-9]){2,5}$`.\n\nThis can either be a:\n\n* **Retail Unit** - Retail Unit must be combined with a valid `classUnitCode`. For example, `SE` for Sweden or `DE` for Germany. A list of valid Class Units can be found [in CBD](https://iwww.cbdview.ikea.com/) (requires VPN or internal network).\n* **Store ID** - The 3-digit store ID. E.g. `066`.\n",
                "examples": [
                  "GB",
                  "DE",
                  "066"
                ]
              },
              "classUnitType": {
                "type": "string",
                "description": "Class Unit Type:\n  * `RU` - Retail Unit - Retail Unit must be combined with a valid `classUnitCode`. For example, `SE` for Sweden or `DE` for Germany. A list of valid Retail Units can be found [in CBD](https://iwww.cbdview.ikea.com/) (requires VPN or internal network).\n  * `STO` - Store - The store availability for a given store\n",
                "enum": [
                  "RU",
                  "STO"
                ],
                "example": "RU"
              }
            }
          },
          "itemKey": {
            "type": "object",
            "description": "Item key (Product ID and Item type)",
            "properties": {
              "itemNo": {
                "type": "string",
                "description": "Product identifier",
                "example": "00263850"
              },
              "itemType": {
                "type": "string",
                "description": "Item type code\n",
                "enum": [
                  "ART",
                  "SPR"
                ],
                "example": "SPR"
              }
            }
          }
        }
      }
    },
    "errors": {
      "type": "array",
      "description": "List of errors",
      "items": {
        "type": "object",
        "required": [
          "code",
          "message"
        ],
        "description": "Error object describing the reason of failure",
        "properties": {
          "code": {
            "type": "integer",
            "description": "Error Codes:\n  * `404` - Not found\n  * `405` - ClassUnitCode doesn't exist\n  * `602` - itemNos in query is required\n  * `604` - itemNos.`n` in query should be at least 8 chars long. Where `n` is the positional indicator for the parameter.\n  * `606` - expand.`n` in query should be one of [ChildItems Restocks StoresList SalesLocations DeliveryPrice CollectPrice DisplayLocations DeliveryTime FoodAvailabilities]. Where `n` is the positional indicator for the parameter.\n",
            "example": 404
          },
          "details": {
            "type": "object",
            "description": "Additional error details. These change depending on the context of the query.",
            "example": {
              "classUnitCode": "DE",
              "classUnitType": "RU",
              "itemNo": "s59047406"
            }
          },
          "message": {
            "type": "string",
            "description": "Error message indicating the failure",
            "example": "Not found"
          }
        }
      }
    },
    "timestamp": {
      "type": "string",
      "description": "ISO 8601 formatted timestamp with timezone",
      "format": "date-time",
      "example": "2025-09-10T14:23:33.956Z"
    },
    "traceId": {
      "type": "string",
      "description": "Unique trace identifier for debugging and log correlation",
      "example": "4119683959736817039"
    }
  },
  "required": [
    "availabilities",
    "timestamp",
    "traceId"
  ]
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/ikea-sales-item-availability-envelope"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.