IKEA · Schema

Availability

Availability of a Product

RetailHome FurnishingsConsumer ProductsOpensourceCommunityUnofficial APISmart Home

Properties

Name Type Description
availableForCashCarry boolean
availableForClickCollect boolean
buyingOption object
childAvailabilities array
classUnitKey object Class Unit Key gives context when invoking the AvailabilityClassifications API.
itemKey object Item key (Product ID and Item type)
View JSON Schema on GitHub

JSON Schema

ikea-sales-item-availability-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-schema.json",
  "title": "Availability",
  "description": "Availability of a Product",
  "type": "object",
  "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": {
              "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"
              }
            }
          }
        }
      },
      "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"
        }
      }
    }
  }
}