{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/when-i-work/json-schema/when-i-work-import-schema.json",
  "title": "Import",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/when-i-work-import-api-openapi.yml#/components/schemas/Import",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "readOnly": true,
      "description": "The import's ID"
    },
    "type": {
      "$ref": "#/$defs/ImportType",
      "readOnly": true
    },
    "user_columns": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "readOnly": true,
      "description": "The column names from the user's file."
    },
    "suggested_matches": {
      "type": "object",
      "additionalProperties": {
        "type": [
          "string",
          null
        ],
        "description": "The suggested mapping from WIW property names to user column names. The keys of this object are the WIW property names, determined by the import's `type`. The values are the user column names.\n\nA null value means no match was suggested, and you should prompt the user to provide the mapping if necessary.\n"
      }
    }
  },
  "$defs": {
    "ImportType": {
      "type": "string",
      "enum": [
        "EMPLOYEE",
        "SHIFT_TEMPLATE"
      ],
      "description": "The type of resource to be imported. Determines the column names that appear throughout the process.\n\nA full list of accepted column names for each type can be found in the Import section documentation.\n"
    }
  }
}