{
  "openapi": "3.0.1",
  "info": {
    "title": "Calendar Due Dates Management API",
    "description": "Calendar Due Dates Management API",
    "version": "v1"
  },
  "servers": [
    {
      "url": "https://api.onesourcetax.com"
    },
    {
      "url": "https://api-apac.onesourcetax.com"
    },
    {
      "url": "https://api-emea.onesourcetax.com"
    }
  ],
  "paths": {
    "/calendar/due-dates/v1": {
      "get": {
        "tags": [
          "Due Dates"
        ],
        "summary": "Returns due dates that match the search criteria.",
        "parameters": [
          {
            "name": "Year",
            "in": "query",
            "description": "Return due dates with one of the years specified.",
            "schema": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int32"
              }
            }
          },
          {
            "name": "TaxType",
            "in": "query",
            "description": "Return due dates with one or more of the tax types specified.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Frequency",
            "in": "query",
            "description": "Return due dates with one of the frequency values specified.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "ObligationType",
            "in": "query",
            "description": "Return due dates with one or more of the obligation types specified.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "DeliverableType",
            "in": "query",
            "description": "Return due dates with one or more of the deliverable types specified.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Jurisdiction",
            "in": "query",
            "description": "Return due dates with one of the jurisdiction IDs specified. Example - http://ontology.onesourcetax.com/core/jurisdiction:USA",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Entity",
            "in": "query",
            "description": "Return due dates with an entity matching one of the entity IDs specified. Example - 5dcab5c21eadad0fa2988bd8",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Client",
            "in": "query",
            "description": "Return due dates with an client matching one of the client IDs specified. Example - 15",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "AssignedToUser",
            "in": "query",
            "description": "Return due dates with an assigned to user with one of the GUIDs specified. Use an empty value for unassigned records.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "OverallResponsibilityUser",
            "in": "query",
            "description": "Return due dates with an overall responsibility user with one of the GUIDs specified. Use an empty value for unassigned records.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "State",
            "in": "query",
            "description": "Return due dates that have one of the states specified. Valid values are [Complete, Open]",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Status",
            "in": "query",
            "description": "Return due dates using a status with one of the status IDs specified.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "DueDate",
            "in": "query",
            "description": "Return due dates that have a due date value on this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "DueDateLte",
            "in": "query",
            "description": "Return due dates that have a due date value on or before this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "DueDateGte",
            "in": "query",
            "description": "Return due dates that have a due date value on or after this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "TaxYearEndDate",
            "in": "query",
            "description": "Return due dates that have a tax year end on this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "TaxYearEndDateLte",
            "in": "query",
            "description": "Return due dates that have a tax year end on or before this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "TaxYearEndDateGte",
            "in": "query",
            "description": "Return due dates that have a tax year end on or after this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ReminderDate",
            "in": "query",
            "description": "Return due dates that have a reminder date on this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ReminderDateLte",
            "in": "query",
            "description": "Return due dates that have a reminder date on or before this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "ReminderDateGte",
            "in": "query",
            "description": "Return due dates that have a reminder date on or after this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "CreatedBy",
            "in": "query",
            "description": "Return due dates that were created by one of these user IDs.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "CreatedOn",
            "in": "query",
            "description": "Return due dates that were created on this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "CreatedOnLte",
            "in": "query",
            "description": "Return due dates that were created on or before this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "CreatedOnGte",
            "in": "query",
            "description": "Return due dates that were created on or after this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "DateComplete",
            "in": "query",
            "description": "Return due dates that have a complete date on this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "DateCompleteLte",
            "in": "query",
            "description": "Return due dates that have a complete date on or before",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "DateCompleteGte",
            "in": "query",
            "description": "Return due dates that have a complete date on or after this date.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "SortOrder",
            "in": "query",
            "description": "If sorting results by a specific field, order by ascending (asc) or descending (desc) order.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "OrderBy",
            "in": "query",
            "description": "Sort due date records by a specified field. If not specified, results are sorted by ID.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Offset",
            "in": "query",
            "description": "Offset based pagination - zero-based index specifying the first item in the collection to return. It cannot be a negative value.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "description": "Offset based pagination - maximum number of records to appear in the result. Maximum value of 100.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DueDatesSearchResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      },
      "post": {
        "tags": [
          "Due Dates"
        ],
        "summary": "Creates and schedules due dates.",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/DueDateCreateRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DueDateCreateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/DueDateCreateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/DueDateCreateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/calendar/due-dates/v1/filters": {
      "get": {
        "tags": [
          "Due Dates"
        ],
        "summary": "Gets filter values of specific field for a user's due dates.",
        "parameters": [
          {
            "name": "fieldId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DueDateFilterResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/calendar/due-dates/v1/{id}": {
      "patch": {
        "tags": [
          "Due Dates"
        ],
        "summary": "Update single due date",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "notifyOnAssign",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDueDateRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDueDateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDueDateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDueDateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          },
          "401": {
            "description": "Unauthorized"
          },
          "403": {
            "description": "Forbidden"
          }
        }
      }
    },
    "/calendar/due-dates/v1/custom": {
      "post": {
        "tags": [
          "Due Dates"
        ],
        "summary": "Creates custom due dates.",
        "requestBody": {
          "content": {
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/CustomDueDateCreateRequest"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomDueDateCreateRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomDueDateCreateRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CustomDueDateCreateRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success"
          }
        }
      }
    },
    "/calendar/due-dates/v1/groups": {
      "get": {
        "tags": [
          "Due Dates"
        ],
        "summary": "Returns customer obligations that match the search criteria.",
        "parameters": [
          {
            "name": "Offset",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "Limit",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "OrderBy",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "SortOrder",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "Id",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "format": "uuid"
              }
            }
          },
          {
            "name": "Year",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int32"
              }
            }
          },
          {
            "name": "Entity",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Jurisdiction",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "TaxType",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Status",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "DeliverableType",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "DomainType",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "Client",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomerObligationSearchResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/calendar/due-dates/v1/groups/filters": {
      "get": {
        "tags": [
          "Due Dates"
        ],
        "summary": "Gets filter values of specific field for a user's customer obligations.",
        "parameters": [
          {
            "name": "fieldId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetObligationRecordFilterResponse"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden"
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/calendar/fields/v1": {
      "get": {
        "tags": [
          "Fields"
        ],
        "summary": "Retrieves fields available to the user.",
        "parameters": [
          {
            "name": "showSystemFields",
            "in": "query",
            "description": "true if system fields are returned.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FieldsResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    },
    "/calendar/due-date-statuses/v1": {
      "get": {
        "tags": [
          "Statuses"
        ],
        "summary": "Get all statuses available to the user.",
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DueDateStatusResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "CalculationRule": {
        "type": "object",
        "properties": {
          "RuleId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "TaxYearRange": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Client": {
        "type": "object",
        "properties": {
          "clientid": {
            "type": "string",
            "nullable": true
          },
          "clientname": {
            "type": "string",
            "nullable": true
          },
          "clientnumber": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Container": {
        "type": "object",
        "properties": {
          "cid": {
            "type": "string",
            "description": "Container identifier of the requested container",
            "nullable": true
          },
          "pcid": {
            "type": "string",
            "description": "Parent Container identifier of the requested container",
            "nullable": true
          },
          "ctxt": {
            "type": "string",
            "description": "Display text for the requested container, possibly localized to the user's culture; \r\nTRTA.Calendar.Entity.Model.Contract.Concert.Output.Container.IsLocalized for more information on culture localization.",
            "nullable": true
          },
          "hc": {
            "type": "boolean",
            "description": "If set to true, then the container contains other containers as children.\r\nIn such a case Concert may call back to the application to retrieve\r\nthe child containers of this parent when the user performs UI\r\nactions requiring them (such as expanding a tree control node).",
            "default": false
          },
          "ps": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Permission"
            },
            "description": "TRTA.Calendar.Entity.Model.Contract.Concert.Output.Permission entries for this particular container",
            "default": null,
            "nullable": true
          },
          "il": {
            "type": "boolean",
            "description": "True if the ContainerText is localized to the user's culture.",
            "default": false
          }
        },
        "additionalProperties": false,
        "description": "Class to hold a container of other containers and permissions.  Returned from application when Concert needs a list of Containers with Permissions."
      },
      "CreateAdHocNotificationRequest": {
        "type": "object",
        "properties": {
          "DueDateIds": {
            "minItems": 1,
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "IsAssignedToUserToggled": {
            "type": "boolean"
          },
          "IsOverallResponsibilityUserToggled": {
            "type": "boolean"
          },
          "Note": {
            "maxLength": 250,
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCustomerObligationResponse": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "format": "uuid"
          },
          "ReferenceId": {
            "type": "string",
            "nullable": true
          },
          "Warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "ReplacementObligations": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateFieldRequest": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          },
          "DataType": {
            "type": "string",
            "nullable": true
          },
          "ListId": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "SectionId": {
            "type": "string",
            "format": "uuid"
          },
          "IsMultiValued": {
            "type": "boolean",
            "default": false
          },
          "RollForward": {
            "type": "boolean",
            "default": false
          },
          "IsFilterable": {
            "type": "boolean",
            "default": false
          },
          "IsRequiredToSchedule": {
            "type": "boolean",
            "default": false
          },
          "IsRequiredForCompletion": {
            "type": "boolean",
            "default": false
          },
          "LockWhenComplete": {
            "type": "boolean",
            "default": false
          },
          "FieldLength": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CreateListRequest": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          },
          "DataType": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateListValueRequest": {
        "type": "object",
        "properties": {
          "Data": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateOrUpdateSectionRequest": {
        "required": [
          "Name"
        ],
        "type": "object",
        "properties": {
          "Name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "CreateReminderRequest": {
        "type": "object",
        "properties": {
          "TenantId": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateStatusRequest": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          },
          "Color": {
            "type": "string",
            "nullable": true
          },
          "IsCompleteState": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CreatedByInfo": {
        "type": "object",
        "properties": {
          "UniversalId": {
            "type": "string",
            "nullable": true
          },
          "FullName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomDueDateCreateRequest": {
        "required": [
          "DueDate",
          "Entity",
          "JurisdictionCode",
          "ObligationDescription",
          "ObligationName",
          "TaxType",
          "Year"
        ],
        "type": "object",
        "properties": {
          "ObligationName": {
            "type": "string",
            "description": "The obligation Name."
          },
          "ObligationDescription": {
            "type": "string",
            "description": "The obligation Description."
          },
          "Year": {
            "type": "integer",
            "description": "The year for this due date.",
            "format": "int32"
          },
          "Entity": {
            "type": "string",
            "description": "The GUID of the entity associated to this due date."
          },
          "DueDate": {
            "type": "string",
            "description": "The DueDate of the Instance.",
            "format": "date-time"
          },
          "JurisdictionCode": {
            "type": "string",
            "description": "The Jurisdiction Code for this due date."
          },
          "TaxType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The TaxType for this due date."
          },
          "Client": {
            "type": "string",
            "description": "The id of the client associated to this due date.",
            "nullable": true
          },
          "Form": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The Form for this due date.",
            "nullable": true
          },
          "DeliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The DeliverableType for this due date.",
            "nullable": true
          },
          "ObligationType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The ObligationType for this due date.",
            "nullable": true
          },
          "Frequency": {
            "type": "string",
            "description": "The Frequency for this due date",
            "nullable": true
          },
          "TaxedAs": {
            "type": "string",
            "description": "The TaxedAs for this due date.",
            "nullable": true
          },
          "USReturnType": {
            "type": "string",
            "description": "The id of the client associated to this due date.",
            "nullable": true
          },
          "AssignedToUser": {
            "type": "string",
            "description": "The GUID of the ONESOURCE user to be assigned to this due date.",
            "nullable": true
          },
          "TaxYearStart": {
            "type": "string",
            "description": "The TaxYearStart for this due date.",
            "format": "date-time",
            "nullable": true
          },
          "TaxYearEnd": {
            "type": "string",
            "description": "The TaxYearEnd for this due date.",
            "format": "date-time",
            "nullable": true
          },
          "OverallResponsibilityUser": {
            "type": "string",
            "description": "The GUID of the ONESOURCE user to assume overall responsibility for this due date.",
            "nullable": true
          }
        },
        "additionalProperties": {}
      },
      "CustomerObligationResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "domainType": {
            "type": "string",
            "nullable": true
          },
          "taxType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "deliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "obligation": {
            "$ref": "#/components/schemas/ObligationV3"
          },
          "year": {
            "type": "integer",
            "format": "int32"
          },
          "yearType": {
            "$ref": "#/components/schemas/YearType"
          },
          "entity": {
            "$ref": "#/components/schemas/EntityRecord"
          },
          "client": {
            "$ref": "#/components/schemas/Client"
          },
          "documentsAssociated": {
            "type": "string",
            "nullable": true
          },
          "jurisdiction": {
            "$ref": "#/components/schemas/JurisdictionRecord"
          },
          "isScheduled": {
            "type": "boolean"
          },
          "taxYearStart": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "taxYearEnd": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "contentUpdateNotes": {
            "type": "string",
            "nullable": true
          },
          "replacementObligations": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "contentUpdateTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TLUProcessType"
            },
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/ObligationRecordStatus"
          },
          "warningMessage": {
            "type": "string",
            "nullable": true
          },
          "dueDates": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "rollForwardReplacement": {
            "$ref": "#/components/schemas/CustomerObligationRollForwardReplacement"
          }
        },
        "additionalProperties": false
      },
      "CustomerObligationRollForwardReplacement": {
        "type": "object",
        "properties": {
          "RollForwardReplacementObligations": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "OriginalCustomerObligationId": {
            "type": "string",
            "format": "uuid"
          },
          "CloneAssignedToUser": {
            "type": "boolean"
          },
          "CloneOverallResponsibilityUser": {
            "type": "boolean"
          },
          "RetainOverriddenDueDate": {
            "type": "boolean"
          },
          "RetainExtension": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CustomerObligationRollForwardRequest": {
        "type": "object",
        "properties": {
          "Records": {
            "$ref": "#/components/schemas/CustomerObligationSearchRequest"
          },
          "YearsForward": {
            "type": "integer",
            "format": "int32"
          },
          "RetainAssignedToUser": {
            "type": "boolean"
          },
          "RetainOverallResponsibilityUser": {
            "type": "boolean"
          },
          "RetainDueDateInUse": {
            "type": "boolean"
          },
          "RetainOverriddenValue": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CustomerObligationRollForwardResponse": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "CustomerObligationSearchRequest": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "Year": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "Entity": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Jurisdiction": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "TaxType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Status": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "DeliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "DomainType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Client": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CustomerObligationSearchResponse": {
        "type": "object",
        "properties": {
          "_meta": {
            "$ref": "#/components/schemas/SearchResponseMetadata"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomerObligationResponse"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DocumentsSyncRequest": {
        "required": [
          "ids"
        ],
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            }
          }
        },
        "additionalProperties": false
      },
      "DueDateAnalyticsResult": {
        "type": "object",
        "properties": {
          "TotalRecords": {
            "type": "integer",
            "format": "int32"
          },
          "DueSoon_7": {
            "type": "integer",
            "format": "int32"
          },
          "DueSoon_14": {
            "type": "integer",
            "format": "int32"
          },
          "DueSoon_30": {
            "type": "integer",
            "format": "int32"
          },
          "OverDue": {
            "type": "integer",
            "format": "int32"
          },
          "Completed": {
            "type": "integer",
            "format": "int32"
          },
          "AssignedToUser": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "nullable": true
          },
          "OverallResponsibilityUser": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "nullable": true
          },
          "Jurisdiction": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "nullable": true
          },
          "Status": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "nullable": true
          },
          "AssignedToUserStatusDistribution": {
            "type": "object",
            "additionalProperties": {
              "type": "object",
              "additionalProperties": {
                "type": "integer",
                "format": "int32"
              },
              "nullable": true
            },
            "nullable": true
          },
          "OverAllResponsibilityUserStatusDistribution": {
            "type": "object",
            "additionalProperties": {
              "type": "object",
              "additionalProperties": {
                "type": "integer",
                "format": "int32"
              },
              "nullable": true
            },
            "nullable": true
          },
          "StatusColour": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "nullable": true
            },
            "nullable": true
          },
          "StatusOrder": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "nullable": true
          },
          "Client": {
            "type": "object",
            "additionalProperties": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DueDateConfigRequest": {
        "type": "object",
        "properties": {
          "YearStartRange": {
            "type": "integer",
            "format": "int32"
          },
          "YearEndRange": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "DueDateContentUpdateInfo": {
        "type": "object",
        "properties": {
          "contentUpdateNotes": {
            "type": "string",
            "nullable": true
          },
          "contentUpdateTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TLUProcessType"
            },
            "nullable": true
          },
          "replacementObligations": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DueDateCreateRequest": {
        "required": [
          "Entity",
          "ObligationId",
          "Year",
          "YearType"
        ],
        "type": "object",
        "properties": {
          "ObligationId": {
            "type": "integer",
            "description": "The obligation ID.",
            "format": "int32"
          },
          "Year": {
            "type": "integer",
            "description": "The year for this due date.",
            "format": "int32"
          },
          "YearType": {
            "$ref": "#/components/schemas/YearType"
          },
          "Entity": {
            "type": "string",
            "description": "The GUID of the entity associated to this due date."
          },
          "Client": {
            "type": "string",
            "description": "The id of the client associated to this due date.",
            "nullable": true
          },
          "AssignedToUser": {
            "type": "string",
            "description": "The GUID of the ONESOURCE user to be assigned to this due date.",
            "nullable": true
          },
          "OverallResponsibilityUser": {
            "type": "string",
            "description": "The GUID of the ONESOURCE user to assume overall responsibility for this due date.",
            "nullable": true
          }
        },
        "additionalProperties": {}
      },
      "DueDateFilterResponse": {
        "type": "object",
        "properties": {
          "ObligationType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "OverallResponsibilityUser": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/User"
            },
            "nullable": true
          },
          "AssignedToUser": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/User"
            },
            "nullable": true
          },
          "Frequency": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Status": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StatusData"
            },
            "nullable": true
          },
          "CreatedBy": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreatedByInfo"
            },
            "nullable": true
          },
          "State": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Year": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "TaxType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Jurisdiction": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Jurisdiction"
            },
            "nullable": true
          },
          "DeliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Entity": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Entity"
            },
            "nullable": true
          },
          "Client": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Client"
            },
            "nullable": true
          }
        },
        "additionalProperties": {}
      },
      "DueDateInUseResponse": {
        "enum": [
          "overridden",
          "originalDueDate",
          "1stExtension",
          "2ndExtension",
          "3rdExtension",
          "4thExtension"
        ],
        "type": "string"
      },
      "DueDateInUseUpdate": {
        "enum": [
          "originalDueDate",
          "firstExtension",
          "secondExtension",
          "thirdExtension"
        ],
        "type": "string"
      },
      "DueDateMetadata": {
        "type": "object",
        "properties": {
          "dueDateInUse": {
            "$ref": "#/components/schemas/DueDateInUseResponse"
          },
          "originalDueDate": {
            "type": "string",
            "description": "The due date value",
            "format": "date-time"
          },
          "extensions": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "date-time"
            },
            "description": "The extensions available for the due date record.",
            "nullable": true
          },
          "extensionsRemaining": {
            "type": "integer",
            "description": "The",
            "format": "int32"
          },
          "totalExtensions": {
            "type": "integer",
            "description": "The number of extensions available for the due date.",
            "format": "int32"
          },
          "sequence": {
            "type": "integer",
            "description": "Sequence of the due date.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "DueDateRecord": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the due date record.",
            "format": "uuid"
          },
          "groupId": {
            "type": "string",
            "description": "ID of the due date record's obligation group.",
            "format": "uuid"
          },
          "dueDate": {
            "type": "string",
            "description": "The current due date value for the record.",
            "format": "date-time",
            "nullable": true
          },
          "dueDateMetadata": {
            "$ref": "#/components/schemas/DueDateMetadata"
          },
          "taxYearStartDate": {
            "type": "string",
            "description": "Tax year start date that was used to create this record.",
            "format": "date-time",
            "nullable": true
          },
          "taxYearEndDate": {
            "type": "string",
            "description": "Tax year end date that was used to create this record.",
            "format": "date-time",
            "nullable": true
          },
          "comment": {
            "type": "string",
            "description": "Comments for this due date record.",
            "nullable": true
          },
          "year": {
            "type": "integer",
            "description": "The year for this due date record.",
            "format": "int32"
          },
          "domainType": {
            "type": "string",
            "description": "Domain types applicable the obligation.",
            "nullable": true
          },
          "taxType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Tax types applicable the obligation.",
            "nullable": true
          },
          "deliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Deliverable types applicable to the obligation.",
            "nullable": true
          },
          "form": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Forms applicable to the obligation.",
            "nullable": true
          },
          "obligation": {
            "$ref": "#/components/schemas/Obligation"
          },
          "state": {
            "type": "string",
            "description": "The state of the due date record, based on its status.",
            "nullable": true
          },
          "status": {
            "$ref": "#/components/schemas/DueDateStatusRecord"
          },
          "entity": {
            "$ref": "#/components/schemas/EntityRecord"
          },
          "client": {
            "$ref": "#/components/schemas/Client"
          },
          "incorporationDate": {
            "type": "string",
            "description": "The incorporation date that was used while creating this record.",
            "format": "date-time",
            "nullable": true
          },
          "qualificationDate": {
            "type": "string",
            "description": "The qualification date that was used while creating this record.",
            "format": "date-time",
            "nullable": true
          },
          "jurisdiction": {
            "$ref": "#/components/schemas/JurisdictionRecord"
          },
          "assignedToUser": {
            "type": "string",
            "description": "GUID of the user assigned to this due date.",
            "nullable": true
          },
          "assignedToName": {
            "type": "string",
            "nullable": true
          },
          "overallResponsibilityUser": {
            "type": "string",
            "description": "GUID of the user with overall responsibility role to this due date.",
            "nullable": true
          },
          "overallResponsibilityName": {
            "type": "string",
            "nullable": true
          },
          "contentUpdates": {
            "$ref": "#/components/schemas/DueDateContentUpdateInfo"
          },
          "reminderDate": {
            "type": "string",
            "description": "User ID for the user that last modified this record.",
            "format": "date-time",
            "nullable": true
          },
          "reminderDateOverridden": {
            "type": "boolean",
            "description": "User ID for the user that last modified this record."
          },
          "dateComplete": {
            "type": "string",
            "description": "User ID for the user that last modified this record.",
            "format": "date-time",
            "nullable": true
          },
          "dateCompleteOverridden": {
            "type": "boolean",
            "description": "User ID for the user that last modified this record."
          },
          "documentsAssociated": {
            "type": "string",
            "nullable": true
          },
          "created": {
            "type": "string",
            "description": "User ID for the user that last modified this record.",
            "format": "date-time"
          },
          "createdBy": {
            "type": "string",
            "description": "User ID for the user that last modified this record.",
            "nullable": true
          },
          "modified": {
            "type": "string",
            "description": "The time that this record was last modified at, in UTC.",
            "format": "date-time"
          },
          "modifiedBy": {
            "type": "string",
            "description": "User ID for the user that last modified this record.",
            "nullable": true
          }
        },
        "additionalProperties": {}
      },
      "DueDateStatus": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the status.",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "description": "Name of the status.",
            "nullable": true
          },
          "displayColor": {
            "type": "string",
            "description": "Display color for the status.",
            "nullable": true
          },
          "isDefaultState": {
            "type": "boolean",
            "description": "true if this is the default status - new due dates will automatically assume this status."
          },
          "isCompleteState": {
            "type": "boolean",
            "description": "true if the status is considered as complete."
          },
          "displayOrder": {
            "type": "integer",
            "format": "int32"
          },
          "created": {
            "type": "string",
            "description": "Date at which the status was created.",
            "format": "date-time"
          },
          "modified": {
            "type": "string",
            "description": "Date at which the status was last modified.",
            "format": "date-time",
            "nullable": true
          },
          "completedDate": {
            "type": "string",
            "description": "Date at which the status was marked as completed.",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DueDateStatusRecord": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the due date status.",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "description": "Name of the due date status.",
            "nullable": true
          },
          "displayColor": {
            "type": "string",
            "description": "Display color to associate with the status.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DueDateStatusResponse": {
        "type": "object",
        "properties": {
          "_meta": {
            "$ref": "#/components/schemas/SearchResponseMetadata"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DueDateStatus"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DueDateUpdateRequest": {
        "required": [
          "Id"
        ],
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "format": "uuid"
          },
          "Level": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "DueDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "Comments": {
            "type": "string",
            "nullable": true
          },
          "AssignedToUser": {
            "$ref": "#/components/schemas/User"
          },
          "OverallResponsibilityUser": {
            "$ref": "#/components/schemas/User"
          },
          "Status": {
            "type": "string",
            "nullable": true
          },
          "ReminderDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "ReminderDateOverride": {
            "type": "boolean"
          }
        },
        "additionalProperties": {}
      },
      "DueDateUserFilterRequestV2": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          },
          "UserFilterType": {
            "$ref": "#/components/schemas/UserFilterTypes"
          },
          "Year": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "TaxType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Jurisdiction": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Jurisdiction"
            },
            "nullable": true
          },
          "Entity": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Entity"
            },
            "nullable": true
          },
          "Client": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Client"
            },
            "nullable": true
          },
          "AssignedToUser": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/User"
            },
            "nullable": true
          },
          "OverallResponsibilityUser": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/User"
            },
            "nullable": true
          },
          "DueDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "DueDateLte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "DueDateGte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "TaxYearEndDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "TaxYearEndDateLte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "TaxYearEndDateGte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "Frequency": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "ObligationType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "DeliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "DueDateMonthYear": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Status": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/StatusData"
            },
            "nullable": true
          },
          "State": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "CreatedBy": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreatedByInfo"
            },
            "nullable": true
          },
          "CreatedOn": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "CreatedOnLte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "CreatedOnGte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "CustomFields": {
            "type": "object",
            "additionalProperties": {
              "nullable": true
            },
            "nullable": true
          },
          "ReminderDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "ReminderDateLte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "ReminderDateGte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "DateComplete": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "DateCompleteLte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "DateCompleteGte": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "DueDateV2OutlookExport": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "dueDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "obligation": {
            "$ref": "#/components/schemas/Obligation"
          },
          "entity": {
            "$ref": "#/components/schemas/EntityRecord"
          },
          "jurisdiction": {
            "$ref": "#/components/schemas/JurisdictionRecord"
          }
        },
        "additionalProperties": false
      },
      "DueDatesSearchResponse": {
        "type": "object",
        "properties": {
          "_meta": {
            "$ref": "#/components/schemas/SearchResponseMetadata"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DueDateRecord"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Entity": {
        "required": [
          "EntityId"
        ],
        "type": "object",
        "properties": {
          "EntityId": {
            "type": "string"
          },
          "EntityCode": {
            "type": "string",
            "nullable": true
          },
          "Type": {
            "type": "string",
            "nullable": true
          },
          "Name": {
            "type": "string",
            "nullable": true
          },
          "TaxId": {
            "type": "string",
            "nullable": true
          },
          "TaxYearBeginningDate": {
            "type": "string",
            "nullable": true
          },
          "TaxYearEndingDate": {
            "type": "string",
            "nullable": true
          },
          "ShortName": {
            "type": "string",
            "nullable": true
          },
          "Registrations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Registration"
            },
            "nullable": true
          },
          "Incorporation_Qualification": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IncorporationAndQualification"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "EntityRecord": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "shortName": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ErrorResponse": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "message": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "type": "string",
            "nullable": true
          },
          "correlationId": {
            "type": "string",
            "nullable": true
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Field": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "ID of the field.",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name of the field.",
            "nullable": true
          },
          "dataType": {
            "type": "string",
            "description": "The data type for the field.",
            "nullable": true
          },
          "list": {
            "$ref": "#/components/schemas/List"
          },
          "isSystem": {
            "type": "boolean",
            "description": "If the field was created by Calendar."
          },
          "isMultiValued": {
            "type": "boolean",
            "description": "If the field can store multiple values."
          },
          "rollForward": {
            "type": "boolean",
            "description": "If the value for this field is copied over when roll forward occurs."
          },
          "isRequiredToSchedule": {
            "type": "boolean",
            "description": "Whether this field requires a value before this record can be scheduled."
          },
          "isRequiredForCompletion": {
            "type": "boolean",
            "description": "Whether this field requires a value before the due date can be assigned to a complete status."
          },
          "isClientManagerEnabled": {
            "type": "boolean"
          },
          "fieldLength": {
            "type": "integer",
            "description": "The maximum length of data that can be stored in this field.",
            "format": "int32"
          },
          "created": {
            "type": "string",
            "description": "The time that this status was created in UTC time.",
            "format": "date-time"
          },
          "modified": {
            "type": "string",
            "description": "The time that this status was last updated in UTC time.",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "FieldsResponse": {
        "type": "object",
        "properties": {
          "_meta": {
            "$ref": "#/components/schemas/SearchResponseMetadata"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Field"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetContainerItemsByContainerIDs": {
        "type": "object",
        "properties": {
          "ic": {
            "$ref": "#/components/schemas/IdentifyClient"
          },
          "ci": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of one or more container identifiers Concert needs the list of dynamic containers/permissions for",
            "nullable": true
          },
          "uc": {
            "type": "string",
            "description": "The culture specified by the user, for example, en or en-US.",
            "default": null,
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Class holding the parameters sent to the application web service SDK method GetContainerItemsByContainerIDs\r\nthat has the TRTA.Calendar.Entity.Model.Contract.Concert.Input.GetContainerItemsByContainerIDs.IdentifyClient object giving the firm identifiers, plus a list of\r\none or more container identifiers to request the list of child !:Container containers\r\ncontained by by the specified containers."
      },
      "GetContainerItemsByContainerIDsResult": {
        "type": "object",
        "properties": {
          "cs": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Container"
            },
            "description": "List of TRTA.Calendar.Entity.Model.Contract.Concert.Output.Container objects contained in the Concert-requested containers; containers hold\r\na list of TRTA.Calendar.Entity.Model.Contract.Concert.Output.Permission objects as well to indicate the permissions on the container.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Return value object for the GetContainerItemsByContainerIDs SDK method; holds a list of dynamic application-defined \r\ncontainers and permissions that are children of the containers requested by Concert in the method input parameters"
      },
      "GetObligationRecordFilterResponse": {
        "type": "object",
        "properties": {
          "Year": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "TaxType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Jurisdiction": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Jurisdiction"
            },
            "nullable": true
          },
          "DeliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "DomainType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Entity": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Entity"
            },
            "nullable": true
          },
          "Client": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Client"
            },
            "nullable": true
          },
          "Status": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ObligationRecordStatus"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "HolidayObligation": {
        "type": "object",
        "properties": {
          "ObligationId": {
            "type": "integer",
            "format": "int32"
          },
          "ContentUpdateNotes": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IdentifyClient": {
        "type": "object",
        "properties": {
          "afi": {
            "type": "string",
            "description": "The firm ID as known in the product whose product ID is set in the ProductId\r\n property",
            "nullable": true
          },
          "pi": {
            "type": "string",
            "description": "The product ID associated with the firm ID stored in the ApplicationFirmId\r\n property",
            "nullable": true
          },
          "osfi": {
            "type": "string",
            "description": "The ONESOURCE 3-character firm identifier",
            "default": null,
            "nullable": true
          },
          "cmcid": {
            "type": "integer",
            "description": "Client Manager identifier for the firm, if the account uses Client Manager",
            "format": "int32",
            "default": null,
            "nullable": true
          },
          "uid": {
            "type": "string",
            "description": "The universal login identifier for the user permissions being requested.  May be\r\nempty if the request context is not for a single user.",
            "default": null,
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Class to hold various firm identifiers so that client and web service know which\r\nfirm to use when running the business logic. and a Universal ID if the context of the request\r\nis specific to a single user."
      },
      "IncorporationAndQualification": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "nullable": true
          },
          "Jurisdiction": {
            "type": "string",
            "nullable": true
          },
          "Type": {
            "type": "string",
            "nullable": true
          },
          "Date": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "InstanceDeleteRequest": {
        "type": "object",
        "properties": {
          "Id": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "InstanceRequestV2": {
        "required": [
          "DomainType",
          "Entity",
          "Jurisdiction",
          "Obligation",
          "TaxType",
          "Year",
          "YearType"
        ],
        "type": "object",
        "properties": {
          "Year": {
            "type": "integer",
            "format": "int32"
          },
          "YearType": {
            "$ref": "#/components/schemas/YearType"
          },
          "DomainType": {
            "type": "string"
          },
          "TaxType": {
            "minItems": 1,
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "Jurisdiction": {
            "$ref": "#/components/schemas/Jurisdiction"
          },
          "DeliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Entity": {
            "$ref": "#/components/schemas/Entity"
          },
          "Client": {
            "$ref": "#/components/schemas/Client"
          },
          "Obligation": {
            "$ref": "#/components/schemas/ObligationV2"
          }
        },
        "additionalProperties": false
      },
      "InstanceSearchFilters": {
        "type": "object",
        "properties": {
          "Year": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "EntityId": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "JurisdictionId": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "TaxType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "DeliverableType": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Status": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "ClientId": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InstanceSearchRequest": {
        "type": "object",
        "properties": {
          "Filters": {
            "$ref": "#/components/schemas/InstanceSearchFilters"
          }
        },
        "additionalProperties": false
      },
      "Jurisdiction": {
        "required": [
          "JurisdictionId"
        ],
        "type": "object",
        "properties": {
          "JurisdictionId": {
            "type": "string"
          },
          "Name": {
            "type": "string",
            "nullable": true
          },
          "Code": {
            "type": "string",
            "nullable": true
          },
          "Region": {
            "type": "string",
            "nullable": true
          },
          "Type": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "JurisdictionRecord": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "type": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "region": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "List": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the list.",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "description": "The name of the list.",
            "nullable": true
          },
          "dataType": {
            "type": "string",
            "description": "The type of data stored in this list.",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ListItem"
            },
            "description": "The items stored in this list.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ListItem": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the list value.",
            "format": "uuid"
          },
          "value": {
            "type": "string",
            "description": "The data that this list value holds.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ListReorderRequest": {
        "type": "object",
        "properties": {
          "ListId": {
            "type": "string",
            "format": "uuid"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ListValueReorderRequest": {
        "type": "object",
        "properties": {
          "ValueId": {
            "type": "string",
            "format": "uuid"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "ModifyDisplayOrderRequest": {
        "required": [
          "DisplayOrder",
          "Fields",
          "SectionId"
        ],
        "type": "object",
        "properties": {
          "SectionId": {
            "type": "string",
            "format": "uuid"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          },
          "Fields": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ModifyFieldDisplay"
            }
          }
        },
        "additionalProperties": false
      },
      "ModifyFieldDisplay": {
        "required": [
          "DisplayOrder",
          "FieldId"
        ],
        "type": "object",
        "properties": {
          "FieldId": {
            "type": "string"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "NotificationReminderConfigurationRequest": {
        "type": "object",
        "properties": {
          "EnableNotificationReminders": {
            "type": "boolean"
          },
          "SendToAssignedToUser": {
            "type": "boolean"
          },
          "SendToOverallResponsibilityUser": {
            "type": "boolean"
          },
          "LeadTimeInDays": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "Obligation": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "ID of the obligation.",
            "format": "int32",
            "nullable": true
          },
          "name": {
            "type": "string",
            "description": "Name of the obligation.",
            "nullable": true
          },
          "description": {
            "type": "string",
            "description": "Description of the obligation.",
            "nullable": true
          },
          "isCustom": {
            "type": "boolean",
            "description": "If the due date is based on a custom obligation."
          },
          "frequency": {
            "type": "string",
            "description": "Frequency of the obligation.",
            "nullable": true
          },
          "type": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The obligation's types.",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ObligationRecordStatus": {
        "enum": [
          "Complete",
          "Scheduled",
          "Pending",
          "Warning",
          "Roll Forward Replacement",
          "Obligation Change",
          "Due Date Recalculated",
          "Mismatch in number of Due Dates"
        ],
        "type": "string"
      },
      "ObligationV2": {
        "required": [
          "CalculationRule",
          "Description",
          "Frequency",
          "Name",
          "ObligationId"
        ],
        "type": "object",
        "properties": {
          "ObligationId": {
            "type": "integer",
            "format": "int32"
          },
          "Name": {
            "type": "string"
          },
          "Frequency": {
            "type": "string"
          },
          "Description": {
            "type": "string"
          },
          "Form": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "Type": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "TaxYearStartDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "TaxYearEndDate": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "CalculationRule": {
            "$ref": "#/components/schemas/CalculationRule"
          },
          "RequiredForCalculation": {
            "$ref": "#/components/schemas/RequiredForCalculation"
          }
        },
        "additionalProperties": false
      },
      "ObligationV3": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "frequency": {
            "type": "string",
            "nullable": true
          },
          "form": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "type": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "isCustom": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "Permission": {
        "type": "object",
        "properties": {
          "pid": {
            "type": "string",
            "description": "Permission identifier as known in the application defining the permission. \r\nThis is a required property.",
            "nullable": true
          },
          "pt": {
            "type": "string",
            "description": "The displayed text of the permission in the Concert UI;\r\nTRTA.Calendar.Entity.Model.Contract.Concert.Output.Permission.IsLocalized for more information on culture localization.",
            "default": null,
            "nullable": true
          },
          "il": {
            "type": "boolean",
            "description": "True if the PermissionText is localized to the user's culture.",
            "default": false
          }
        },
        "additionalProperties": false,
        "description": "Class to hold a dynamic permission definition.  Returned by applications when Concert needs to get a list\r\nof child permissions owned by a particular container."
      },
      "Registration": {
        "type": "object",
        "properties": {
          "Registration_id": {
            "type": "string",
            "nullable": true
          },
          "Domain_label": {
            "type": "string",
            "nullable": true
          },
          "Jurisdiction_label": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RemoveTLUFlagRequest": {
        "type": "object",
        "properties": {
          "InstanceID": {
            "type": "string",
            "format": "uuid"
          },
          "ProcessTypes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TLUProcessType"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RequiredForCalculation": {
        "enum": [
          "taxId",
          "incorporationDate",
          "qualificationDate"
        ],
        "type": "string"
      },
      "RollForwardReplacementRequest": {
        "type": "object",
        "properties": {
          "CustomerObligationId": {
            "type": "string",
            "format": "uuid"
          },
          "SelectedObligation": {
            "type": "integer",
            "format": "int32"
          },
          "CustomerObligationRollForwardReplacement": {
            "$ref": "#/components/schemas/CustomerObligationRollForwardReplacement"
          }
        },
        "additionalProperties": false
      },
      "SearchResponse": {
        "type": "object",
        "properties": {
          "_meta": {
            "$ref": "#/components/schemas/SearchResponseMetadata"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DueDateV2OutlookExport"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SearchResponseMetadata": {
        "type": "object",
        "properties": {
          "totalItems": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "SetupAuditRecordResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "transactionId": {
            "type": "string",
            "format": "uuid"
          },
          "action": {
            "type": "string",
            "nullable": true
          },
          "details": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "string",
            "nullable": true
          },
          "category": {
            "type": "string",
            "nullable": true
          },
          "user": {
            "type": "string",
            "nullable": true
          },
          "item": {
            "type": "string",
            "format": "uuid"
          },
          "created": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "SetupAuditSearchResponse": {
        "type": "object",
        "properties": {
          "_meta": {
            "$ref": "#/components/schemas/SearchResponseMetadata"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SetupAuditRecordResponse"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StatusClassificationRequest": {
        "type": "object",
        "properties": {
          "DefaultStatus": {
            "type": "string",
            "format": "uuid"
          },
          "CompletedStatuses": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StatusData": {
        "type": "object",
        "properties": {
          "StatusId": {
            "type": "string",
            "format": "uuid"
          },
          "Name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "StatusReorderRequest": {
        "type": "object",
        "properties": {
          "StatusId": {
            "type": "string",
            "format": "uuid"
          },
          "DisplayOrder": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TLUProcessType": {
        "enum": [
          "obligationInfo",
          "calculationCorrection",
          "calculationChangeByTaxLawForFuture",
          "discontinueObligation",
          "dynamicAttribute",
          "holiday",
          "extension",
          "lookupCorrection",
          "dueDatesCountMismatch"
        ],
        "type": "string"
      },
      "TaxLawContentUpdate": {
        "type": "object",
        "properties": {
          "ObligationId": {
            "type": "integer",
            "format": "int32"
          },
          "ReplacementObligations": {
            "type": "array",
            "items": {
              "type": "integer",
              "format": "int32"
            },
            "nullable": true
          },
          "ObligationEffectiveFrom": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "ObligationEffectiveTo": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "RuleId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "CalculationId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "Level": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "Sequence": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "DueCalrequired": {
            "type": "boolean"
          },
          "ParentObligationId": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "ProcessType": {
            "$ref": "#/components/schemas/TLUProcessType"
          },
          "ContentUpdateNotes": {
            "type": "string",
            "nullable": true
          },
          "HolidayYear": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TaxLawHolidayUpdate": {
        "type": "object",
        "properties": {
          "HolidayJurisdictions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "HolidayObligations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/HolidayObligation"
            },
            "nullable": true
          },
          "HolidayYear": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "ProcessType": {
            "$ref": "#/components/schemas/TLUProcessType"
          }
        },
        "additionalProperties": false
      },
      "UpdateDueDateRequest": {
        "type": "object",
        "properties": {
          "DueDate": {
            "type": "string",
            "description": "The overridden due date value.",
            "format": "date-time",
            "nullable": true
          },
          "DueDateInUse": {
            "$ref": "#/components/schemas/DueDateInUseUpdate"
          },
          "Status": {
            "type": "string",
            "description": "The ID of the due date status.",
            "nullable": true
          },
          "Comments": {
            "type": "string",
            "description": "The comments for the due date.",
            "nullable": true
          },
          "ReminderDate": {
            "type": "string",
            "description": "The date at which the assigned users will be notified.",
            "format": "date-time",
            "nullable": true
          },
          "AssignedToUser": {
            "type": "string",
            "description": "The GUID of the ONESOURCE user to be assigned to this due date.",
            "nullable": true
          },
          "OverallResponsibilityUser": {
            "type": "string",
            "description": "The GUID of the ONESOURCE user to assume overall responsibility for this due date.",
            "nullable": true
          }
        },
        "additionalProperties": {}
      },
      "UpdateFieldRequest": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          },
          "RollForward": {
            "type": "boolean",
            "nullable": true
          },
          "IsFilterable": {
            "type": "boolean",
            "nullable": true
          },
          "IsRequiredToSchedule": {
            "type": "boolean",
            "nullable": true
          },
          "IsRequiredForCompletion": {
            "type": "boolean",
            "nullable": true
          },
          "LockWhenComplete": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateList": {
        "type": "object",
        "properties": {
          "TLUTransactionId": {
            "type": "string",
            "format": "uuid"
          },
          "ContentUpdateList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TaxLawContentUpdate"
            },
            "nullable": true
          },
          "HolidayUpdateList": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TaxLawHolidayUpdate"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateListRequest": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateListValueRequest": {
        "type": "object",
        "properties": {
          "Data": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateStatusRequest": {
        "type": "object",
        "properties": {
          "Name": {
            "type": "string",
            "nullable": true
          },
          "DisplayColor": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "User": {
        "type": "object",
        "properties": {
          "GUID": {
            "type": "string",
            "format": "uuid",
            "nullable": true
          },
          "UniversalId": {
            "type": "string",
            "nullable": true
          },
          "FullName": {
            "type": "string",
            "nullable": true
          },
          "EmailAddress": {
            "type": "string",
            "nullable": true
          },
          "IsNotified": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UserFilterTypes": {
        "enum": [
          "duedate",
          "dashboard"
        ],
        "type": "string"
      },
      "YearType": {
        "enum": [
          "start",
          "end"
        ],
        "type": "string"
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "apiKey",
        "description": "Enter the authorization token here. Example: Bearer ABC",
        "name": "Authorization",
        "in": "header"
      }
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ]
}
