{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "expiration": {
      "$ref": "#/definitions/SCISO8601Date",
      "description": "Expiration of bulk\n\nIf the date is hit and the bulk is not done, it will be deleted and all data removed. Defaults to one hour."
    },
    "source": {
      "type": "string",
      "description": "Source of data for this bulk\n\nA short \"description\" of the source of the data to identify it inside the database. A second bulk with the same source overrides the data of the first bulk once it is done."
    },
    "type": {
      "$ref": "#/definitions/SCThingType",
      "description": "Type of things that are indexed in this bulk."
    },
    "state": {
      "type": "string",
      "enum": [
        "in progress",
        "done"
      ],
      "description": "State of bulk\n\nThe state is `in progress` while it accepts things to be added to the bulk. The state is `done` once it is closed."
    },
    "uid": {
      "$ref": "#/definitions/SCUuid",
      "description": "Universally unique identifier of the bulk"
    }
  },
  "required": [
    "source",
    "state",
    "type",
    "uid"
  ],
  "additionalProperties": false,
  "description": "Requested Bulk from backend",
  "definitions": {
    "SCISO8601Date": {
      "type": "string",
      "description": "An ISO8601 date",
      "pattern": "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])(T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])([\\.,][0-9]{0,7})?(Z|[+-](?:2[0-3]|[01][0-9])(:?[0-5][0-9])?)?)?$"
    },
    "SCThingType": {
      "type": "string",
      "enum": [
        "assessment",
        "academic event",
        "article",
        "book",
        "periodical",
        "building",
        "catalog",
        "certification",
        "contact point",
        "course of study",
        "date series",
        "diff",
        "dish",
        "favorite",
        "floor",
        "id card",
        "message",
        "organization",
        "person",
        "point of interest",
        "publication event",
        "room",
        "semester",
        "setting",
        "sport course",
        "study module",
        "ticket",
        "todo",
        "tour",
        "video",
        "job posting"
      ],
      "description": "Types a thing can be"
    },
    "SCUuid": {
      "type": "string",
      "description": "Universally unique identifier of the thing",
      "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
    },
    "SCSCBulkResponse": {
      "type": "object",
      "properties": {
        "expiration": {
          "$ref": "#/definitions/SCISO8601Date",
          "description": "Expiration of bulk\n\nIf the date is hit and the bulk is not done, it will be deleted and all data removed. Defaults to one hour."
        },
        "source": {
          "type": "string",
          "description": "Source of data for this bulk\n\nA short \"description\" of the source of the data to identify it inside the database. A second bulk with the same source overrides the data of the first bulk once it is done."
        },
        "type": {
          "$ref": "#/definitions/SCThingType",
          "description": "Type of things that are indexed in this bulk."
        },
        "state": {
          "type": "string",
          "enum": [
            "in progress",
            "done"
          ],
          "description": "State of bulk\n\nThe state is `in progress` while it accepts things to be added to the bulk. The state is `done` once it is closed."
        },
        "uid": {
          "$ref": "#/definitions/SCUuid",
          "description": "Universally unique identifier of the bulk"
        }
      },
      "required": [
        "source",
        "state",
        "type",
        "uid"
      ],
      "additionalProperties": false,
      "description": "Requested Bulk from backend"
    }
  },
  "$id": "https://core.stapps.tu-berlin.de/v4.0.2/lib/schema/SCBulkResponse.json"
}