{
  "x-generator": "On Key REST API Docs Generator",
  "swagger": "2.0",
  "info": {
    "title": "On Key DOCS  API Specification",
    "description": "Better and smarter enterprise asset management with one of the world's leading Enterprise Asset Management (EAM) systems.",
    "termsOfService": "https://www.onkey.com/",
    "contact": {
      "name": "On Key Support",
      "url": "https://www.onkey.com/",
      "email": "onkey.support@pragmaworld.net"
    },
    "license": {
      "name": "On Key Licence",
      "url": "https://www.onkey.com/"
    },
    "version": "1.0.0"
  },
  "host": "<variable>:443",
  "basePath": "/api/tenants/{client}/{connection}",
  "schemes": [
    "https"
  ],
  "consumes": [
    "application/vnd.onkey.entitydelete+json",
    "application/vnd.onkey.entitydeletecollection+json",
    "application/vnd.onkey.entitypatchcollection+json",
    "application/vnd.onkey.customresourceactioncreate+json",
    "application/vnd.onkey.customresourceactionupdate+json",
    "application/vnd.onkey.customtemplatecreate+json",
    "application/vnd.onkey.customtemplateupdate+json",
    "application/vnd.onkey.entity+json"
  ],
  "produces": [
    "application/vnd.onkey.menu+json",
    "application/vnd.onkey.notification+json",
    "application/vnd.onkey.entityenummetadata+json",
    "application/vnd.onkey.entitydatabasemetadata+json",
    "application/vnd.onkey.entitymetadata+json",
    "application/vnd.onkey.metadatatree+json",
    "application/vnd.onkey.metadatatreepathmapcollection+json",
    "application/vnd.onkey.enummetadata+json",
    "application/vnd.onkey.metadatacollection+json",
    "application/vnd.onkey.entitycollection+json",
    "application/vnd.onkey.enummetadatacollection+json",
    "application/vnd.onkey.modulecollection+json",
    "application/vnd.onkey.entitycollectionpage+json",
    "application/vnd.onkey.resourceaction+json",
    "application/vnd.onkey.resourceschemacollection+json",
    "application/vnd.onkey.resourceactioncollection+json",
    "application/vnd.onkey.customresourceaction+json",
    "application/vnd.onkey.resource+json",
    "application/vnd.onkey.resourcecollection+json",
    "application/vnd.onkey.spec+json",
    "application/vnd.onkey.customtemplate+json",
    "application/vnd.onkey.templatemigrationcollection+json",
    "application/vnd.onkey.template+json",
    "application/vnd.onkey.translationset+json",
    "application/vnd.onkey.templatecollection+json"
  ],
  "paths": {
    "/": {
      "get": {
        "tags": [
          "Menu"
        ],
        "summary": "Get a menu of links to explore the System.",
        "description": "",
        "operationId": "GetSystemMenu",
        "produces": [
          "application/vnd.onkey.menu+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains System Menu",
            "schema": {
              "$ref": "#/definitions/MenuSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Metadata/Entities/{entity}/Enums": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the Entity Enum Metadata  definition.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| entityType | EntityEnumMetadata->EntityType | string |  |\r\n| module | EntityEnumMetadata->Module | string |  |\r\n| properties | EntityEnumMetadata->Properties | object |  |\r\n",
        "operationId": "GetEntityEnumMetadata",
        "produces": [
          "application/vnd.onkey.entityenummetadata+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Entity Enum Metadata  definition",
            "schema": {
              "$ref": "#/definitions/EntityEnumMetadata"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Metadata/Entities/{entity}/DatabaseMappings": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the Entity Database Metadata definition.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| entityName | EntityMetadataSummary->EntityName | string |  |\r\n| moduleName | EntityMetadataSummary->ModuleName | string |  |\r\n",
        "operationId": "GetEntityDatabaseMetadata",
        "produces": [
          "application/vnd.onkey.entitydatabasemetadata+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Entity Database Metadata definition",
            "schema": {
              "$ref": "#/definitions/EntityMetadataDatabaseMappingDefinition"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Metadata/Entities/{entity}": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the Entity Metadata Summary definition.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| entityName | EntityMetadataSummary->EntityName | string |  |\r\n| moduleName | EntityMetadataSummary->ModuleName | string |  |\r\n",
        "operationId": "GetEntityMetadata",
        "produces": [
          "application/vnd.onkey.entitymetadata+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Metadata definition",
            "schema": {
              "$ref": "#/definitions/EntityMetadataSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Metadata/Entities/{entity}/Tree/{path}": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the expanded Entity Metadata Summary tree definition for the path.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| entityMetadata | EntityMetadataTreeLevel->EntityMetadata | object |  |\r\n| items | EntityMetadataTreeLevel->Items | object |  |\r\n| parentNode | EntityMetadataTreeLevel->ParentNode | object |  |\r\n",
        "operationId": "GetEntityMetadataTreeExpand",
        "produces": [
          "application/vnd.onkey.metadatatree+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "path",
            "in": "path",
            "required": true,
            "description": "Property Path to expand",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Metadata tree definition",
            "schema": {
              "$ref": "#/definitions/EntityMetadataTreeLevelSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Metadata/Entities/{entity}/Tree/{path}/Pathmap": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the Entity Metadata Summary tree path map definition for the path.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| crossReferenceAllowNulls | EntityMetadataPathMapItem->CrossReferenceAllowNulls | boolean |  |\r\n| crossReferenceName | EntityMetadataPathMapItem->CrossReferenceName | string |  |\r\n| entityName | EntityMetadataPathMapItem->EntityName | string |  |\r\n| expandPath | EntityMetadataPathMapItem->ExpandPath | string |  |\r\n| isCrossReference | EntityMetadataPathMapItem->IsCrossReference | boolean |  |\r\n| moduleName | EntityMetadataPathMapItem->ModuleName | string |  |\r\n| targetName | EntityMetadataPathMapItem->TargetName | string |  |\r\n| targetPath | EntityMetadataPathMapItem->TargetPath | string |  |\r\n",
        "operationId": "GetEntityMetadataTreePathMap",
        "produces": [
          "application/vnd.onkey.metadatatreepathmapcollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "path",
            "in": "path",
            "required": true,
            "description": "Property Path to map",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Metadata tree path map definition",
            "schema": {
              "$ref": "#/definitions/EntityMetadataTreePathMapCollectionSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Metadata/Entities/{entity}/Tree": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the Entity Metadata Summary tree definition.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| entityMetadata | EntityMetadataTreeLevel->EntityMetadata | object |  |\r\n| items | EntityMetadataTreeLevel->Items | object |  |\r\n| parentNode | EntityMetadataTreeLevel->ParentNode | object |  |\r\n",
        "operationId": "GetEntityMetadataTree",
        "produces": [
          "application/vnd.onkey.metadatatree+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Metadata tree definition",
            "schema": {
              "$ref": "#/definitions/EntityMetadataTreeLevelSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Metadata/Enums/{enumName}": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the Enum Metadata definition.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| enumMembers | EnumMetadata->EnumMembers | object |  |\r\n| enumName | EnumMetadata->EnumName | string |  |\r\n| usedBy | EnumMetadata->UsedBy | object |  |\r\n",
        "operationId": "GetEnumMetadata",
        "produces": [
          "application/vnd.onkey.enummetadata+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "enumName",
            "in": "path",
            "required": true,
            "description": "Name of Enumeration",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Enum Metadata definition",
            "schema": {
              "$ref": "#/definitions/EnumMetadata"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Metadata/Entities": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get a collection of all Entity Metadata Summary definitions for the system.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| entityName | EntityMetadataSummary->EntityName | string |  |\r\n| moduleName | EntityMetadataSummary->ModuleName | string |  |\r\n",
        "operationId": "GetAllEntityMetadata",
        "produces": [
          "application/vnd.onkey.metadatacollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Metadata definitions",
            "schema": {
              "$ref": "#/definitions/EntityMetadataSummaryCollectionSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Metadata/Entities/ReportServer": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get a collection of all System Option Report Server Entity definitions for the System.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | ReportServerEntityMetadataEntity->Id | integer | int64 |\r\n| version | ReportServerEntityMetadataEntity->Version | integer | int32 |\r\n| categories | ReportServerEntityMetadataEntity->Categories | array | array |\r\n| defaultReportName | ReportServerEntityMetadataEntity->DefaultReportName | string |  |\r\n| entityType | ReportServerEntityMetadataEntity->EntityType | string (Allowed values: [Alarm, NewAlarm, AlarmExpression, AlarmExpressionTask, AlarmAttribute, AlarmDocument, AlarmType, MonitoringPoint, MonitoringPointBoundEvaluationLog, MonitoringPointParameter, MonitoringPointReading, MonitoringPointTrigger, MonitoringPointTriggerExpression, MonitoringPointTriggerExpressionAlarmType, MonitoringPointTriggerExpressionParameter, MonitoringPointTriggerExpressionEvaluation, MonitoringPointTriggerExpressionEvaluationLog, MonitoringPointType, MonitoringPointTypeParameter, MonitoringPointAttribute, MonitoringPointDocument, AuxiliaryAssetTask, AuxiliaryAssetTaskResource, AuxiliaryAssetTaskSpare, AuxiliaryAssetTaskSubTask, RegularAssetComponent, RegularAssetComponentAttribute, RegularAssetComponentDocument, RegularAssetComponentRuleEvaluationFailure, AssetComponent, AssetWarranty, PlaceholderAssetComponent, PlaceholderAssetComponentOptionValue, PlaceholderAssetComponentCondition, PlaceholderAssetMeter, PlaceholderAssetComponentRuleEvaluationFailure, RegularAssetCondition, RegularAssetActiveCondition, AssetFmeca, RegularAssetOptionValue, Asset, RegularAssetAttribute, RegularAssetDocument, RegularAssetFileAttachment, PlaceholderAsset, PlaceholderAssetAttribute, PlaceholderAssetDocument, PlaceholderAssetFileAttachment, PlaceholderAssetRuleEvaluationFailure, PlaceholderAssetResponsibility, PlaceholderAssetCondition, PlaceholderAssetActiveCondition, AssetTask, SetAssetTaskSpareWarehouseEntity, RegularAssetTask, RegularAssetTaskRuleEvaluationFailure, RegularAssetTaskAttribute, RegularAssetTaskAuxiliaryTask, RegularAssetTaskFollowUpTask, RegularAssetTaskFollowUpTaskExpression, RegularAssetTaskSuppressedTask, RegularAssetTaskResource, RegularAssetTaskResourceRuleEvaluationFailure, RegularAssetTaskSpare, RegularAssetTaskSpareRuleEvaluationFailure, RegularAssetTaskSubTask, RegularAssetTaskFileAttachment, AuxiliaryAssetTypeTask, AuxiliaryAssetTypeTaskResource, AuxiliaryAssetTypeTaskSpare, AuxiliaryAssetTypeTaskSubTask, RegularAssetTypeComponent, RegularAssetTypeComponentAttribute, RegularAssetTypeComponentDocument, AssetTypeComponent, PlaceholderAssetTypeComponent, PlaceholderAssetTypeComponentCondition, PlaceholderAssetTypeComponentAttribute, PlaceholderAssetTypeComponentDocument, PlaceholderAssetTypeComponentRuleLink, RegularAssetTypeComponentRuleLink, PlaceholderAssetComponentAttribute, PlaceholderAssetComponentDocument, PlaceholderAssetComponentActiveCondition, AssetTypeFmeca, AssetTypeFunction, AssetFunction, AssetFmecaTask, AssetTypeFmecaTask, AssetTypeFolder, RegularAssetTypeOption, AssetType, PlaceholderAssetType, PlaceholderAssetTypeSpare, PlaceholderAssetTypeAttribute, PlaceholderAssetTypeDocument, PlaceholderAssetTypeResponsibility, PlaceholderAssetTypeRuleLink, RegularAssetTypeTask, RegularAssetTypeTaskAttribute, RegularAssetTypeTaskAuxiliaryTask, RegularAssetTypeTaskCondition, RegularAssetTypeTaskDocument, RegularAssetTypeTaskFollowUpTask, RegularAssetTypeTaskFollowUpTaskExpression, AssetTypeTask, AssetTypeTaskResource, AssetTaskResource, AssetTaskSpare, AssetTypeTaskSpare, RegularAssetTypeTaskResource, RegularAssetTypeTaskRuleLink, RegularAssetTypeTaskSpare, RegularAssetTypeTaskSubTask, RegularAssetTypeTaskSuppressedTask, Condition, ConditionType, Event, FailureCause, FailureCauseType, FailureMechanism, FailureMechanismType, FailureMode, FailureModeType, InPlaceAssetMeter, InPlaceAssetAttribute, InPlaceAssetFileAttachment, InPlaceAssetRuleEvaluationFailure, InPlaceAssetResponsibility, InPlaceAssetSpare, InPlaceAssetType, InPlaceAssetTypeResponsibility, InPlaceAssetTypeRuleLink, InPlaceAssetTypeSpare, InPlaceAsset, Option, OptionCategory, RegularAsset, RegularAssetTaskDocument, RegularAssetMeter, RegularAssetResponsibility, RegularAssetMonitoringPointTrigger, RegularAssetSpare, RegularAssetTaskCondition, RegularAssetType, RegularAssetTypeAttribute, RegularAssetTypeDocument, RegularAssetTypeCondition, PlaceholderAssetTypeCondition, RegularAssetTypeRule, RegularAssetTypeResponsibility, RegularAssetTypeMonitoringPointTrigger, RegularAssetTypeSpare, RepairType, Rule, RuleCategory, RuleOption, StandardTask, StandardTaskSpare, StandardTaskSubTask, StandardTaskResource, StandardTaskAttribute, StandardTaskDocument, TaskImportance, TaskInterval, TaskIntervalType, TaskRollUpPoint, TypeOfWork, RegularAssetTypeTaskSpareRuleLink, InPlaceAssetTypeAttribute, RegularAssetTypeTaskResourceRuleLink, PlaceholderAssetSpare, RegularAssetMonitoringPointTriggerParameter, AssetSpare, AssetTypeSpare, AssetMeter, AssetConsumption, RegularAssetConsumption, PlaceholderAssetConsumption, InPlaceAssetConsumption, WarrantyType, RegularAssetTypeFileAttachment, Meter, MeterAttribute, MeterDocument, MeterReading, PredictedMeterReading, TimeLossCategory, TimeLossReason, TimeLossType, Consumable, AcquisitionStatus, AcquisitionType, DocumentFolder, DocumentRecord, DocumentRecordAttribute, FileAttachment, FileAttachmentCategory, FileAttachmentContentHistory, DocumentRecordFileHistory, Costing, CostingBudget, CostCentre, CostCentreAttribute, CostCentreDocument, CostCentreType, CostElement, CostElementAttribute, CostElementDocument, Currency, BudgetTemplate, BudgetTemplateParameter, FinancialYear, FinancialYearPeriod, GeneralLedger, GeneralLedgerAttribute, GeneralLedgerDocument, CurrencyRate, Budget, BudgetParameter, AddressType, Approval, Attribute, AttributeAllowedValue, Calendar, CalendarDay, CalendarException, CalendarDayHour, Classification, ClassificationAllowedValue, EmailType, Language, OperationalRole, OperationalRoleTemplate, OperationalRoleResource, PhoneNumberType, UserOperationalRole, UserOperationalRoleTemplate, UserOperationalRoleResource, TermsAndCondition, TermsAndConditionVersion, TermsAndConditionOperationalRole, UserTermsAndConditionVersion, Location, LocationAttribute, LocationDocument, LocalisationSet, LocalisationKey, LocalisationTranslation, Phrase, PhraseTranslation, PreconfiguredReason, Site, SiteAttribute, SiteDocument, SiteType, Supplier, SupplierFileAttachment, SupplierAttribute, SupplierDocument, SupplierContactAddress, SupplierContactEmail, SupplierContactPhoneNumber, SupplierResource, SupplierTaxRate, UnitOfMeasurement, SiteResource, SiteContactAddress, SiteContactEmail, SiteContactPhoneNumber, ChangeDataTrigger, ChangeDataTriggerOccurrenceLog, ChangeDataTriggerCriteria, NotificationTemplate, ChangeDataTriggerCriteriaParameter, ChangeDataTriggerNotificationEvent, NotificationTemplateParameter, ChangeDataTriggerNotificationEventAttachment, ChangeDataTriggerNotificationEventAttachmentParameter, RequestType, Category, Commodity, MaterialMaster, MaterialMasterAttribute, MaterialMasterDocument, MaterialMasterBin, MaterialMasterSupplier, MaterialMasterLinkWarehouse, StockItem, StockItemFileAttachment, StockItemAttribute, StockItemDocument, StockItemBin, StockItemSupplier, WarehouseAttribute, Warehouse, WarehouseDocument, Requisition, RequisitionFileAttachment, RequisitionStatus, RequisitionStatusChange, RequisitionStatusAttribute, RequisitionStatusDocument, RequisitionStatusChangeHistory, RequisitionItemTransaction, ApprovalRole, RequisitionAttribute, RequisitionDocument, RequisitionTransaction, RequisitionItem, RequisitionItemFileAttachment, UserSiteApprovalRole, ApprovalWorkflow, ApprovalWorkflowExpression, ApprovalWorkflowExpressionApprovalRole, Competency, Resource, ResourceAttribute, ResourceAddress, ResourceClassification, ResourceCompetency, ResourceDocument, ResourceEmail, ResourcePhoneNumber, ResourceTrade, ResourceTradeCompetency, ResourceTradeFinancialRate, Section, SectionAttribute, SectionDocument, SectionTrade, TradeAttribute, TradeDocument, Trade, TradeCompetency, TradeFinancialRate, ResourceContext, ResourceFileAttachment, AssetImportance, RiskConsequence, RiskConsequenceCategory, RiskModel, RiskModelConsequenceCategory, RiskModelImportance, RiskModelProbability, RiskProbability, WorkOrderImportance, WorkOrderStatus, WorkOrderStatusAttribute, WorkOrderStatusDocument, WorkOrderStatusAllowedChange, WorkOrder, WorkOrderStatusChangeHistory, WorkOrderStatusChange, WorkOrderMerge, WorkOrderSplit, WorkOrderMeter, WorkOrderAttribute, WorkOrderDocument, WorkOrderFileAttachment, WorkOrderTaskFileAttachment, WorkOrderTaskWarranty, WorkOrderTaskSpareFileAttachment, WorkOrderTask, WorkOrderTaskDocument, WorkOrderTaskAdHocCost, WorkOrderMonitoringPoint, WorkOrderTaskMonitoringPoint, WorkOrderTaskSpare, WorkOrderTaskSubTask, WorkOrderTaskResource, WorkOrderTaskResourceUsage, DueTask, DueTaskSuppressor, ProposedWorkOrderBatch, ProposedWorkOrder, ProposedWorkOrderTask, ProposedWorkOrderMeter, WorkOrderMovement, WorkOrderTaskMovement, WorkOrderTaskResourceMovement, WorkOrderTaskSpareMovement, WorkOrderTaskSubTaskMovement, WorkOrderCompleteAllTasksLog, WorkRequest, WorkRequestAttribute, WorkRequestDocument, WorkRequestStatus, WorkRequestStatusChange, WorkRequestStatusChangeHistory, WorkRequestFileAttachment, WorkOrderDowntimeLoss, WorkOrderProgressEvent, WorkOrderProgressEventAllowedChange, WorkOrderProgressLog, WorkOrderWarranty, ServiceLevelAgreementClassification, ServiceLevelAgreement, ServiceLevelAgreementMeasure, WorkOrderServiceLevelAgreement, WorkOrderServiceLevelAgreementMeasure, ServiceLevelAgreementMeasureTrigger, ServiceLevelAgreementMeasureFieldAssignment, PermissionTree, User, UserAttribute, UserDocument, UserAuthentication, SecurityRole, SecurityRolePermission, UserSecurityRole, UserCustomPermission, UserOption, BackgroundTask, BackgroundTaskStep, ScheduledBackgroundTask, ScheduledJob, UserDefinedField, UserDefinedFieldPredefinedValue, SystemOption, SystemOptionPageLimit, SystemOptionWorkOrderStatus, SystemOptionDefaultStandardTask, SystemOptionWorkOrderStatusTypeOfWork, SystemOptionReferenceDataViewPermission, SystemOptionFileAttachmentCategory, SystemOptionFileAttachmentFileType, RecordChange, RecordChangeValue, RecordChangeUser, RecordChangeProperty, NotificationEventOutbox, NotificationEventAttachmentOutbox, NotificationOutbox, NotificationOutboxLog, ChangeDataTriggerCriteriaEvaluation, SystemOptionReportServerEntity, SystemOptionReportServerEntityDefaultReport, TemplateMigrationLog, TemplateMigrationLogIntent, ResourceActionMigrationLog, ImportSchema, ImportFile, UserDefinedQuery, ResourceActionCustomisation, TemplateCustomisation, TemplateResource, ClusterSettings, ClusterIdentityProviderSettings, MessageBrokerHost, MessageBrokerTopic, MessageBrokerTopicConsumer, TenantSettings, TenantChangeDataSubscriptionSettings, TenantIdentityProviderSettings, TenantJobSettings, TenantFileContentStoreLocationSettings, TenantFileContentStoreFileTypeGroupSettings, TenantFileContentStoreFileTypeSettings, ClusterFeatureToggle, TenantFeatureToggle, TenantHealthCheck, TenantMachineHealthCheck, ClusterHealthCheck, ClusterMachineHealthCheck, ClusterCapacitySlot, TenantChangeLogCleanupExpressionSettings, ClusterJobSettings, Ignore]) | enum |\r\n",
        "operationId": "GetAllReportServerEntitiesMetadataCollection",
        "produces": [
          "application/vnd.onkey.entitycollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Metadata collection",
            "schema": {
              "$ref": "#/definitions/GetAllReportServerEntitiesMetadataCollectionResourceAction"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Metadata/Enums": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the collection of Enum Metadata definitions.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| enumMembers | EnumMetadata->EnumMembers | object |  |\r\n| enumName | EnumMetadata->EnumName | string |  |\r\n| usedBy | EnumMetadata->UsedBy | object |  |\r\n",
        "operationId": "GetEnumMetadataCollection",
        "produces": [
          "application/vnd.onkey.enummetadatacollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Enum Metadata Collection definition",
            "schema": {
              "$ref": "#/definitions/EnumMetadataCollection"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Metadata/Entities": {
      "get": {
        "tags": [
          "Metadata"
        ],
        "summary": "Get the collection of Entity Metadata Summary definitions for all entities within the Module.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| entityName | EntityMetadataSummary->EntityName | string |  |\r\n| moduleName | EntityMetadataSummary->ModuleName | string |  |\r\n",
        "operationId": "GetModuleEntityMetadataCollection",
        "produces": [
          "application/vnd.onkey.metadatacollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Metadata definitions",
            "schema": {
              "$ref": "#/definitions/EntityMetadataSummaryCollectionSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules": {
      "get": {
        "tags": [
          "Module"
        ],
        "summary": "Get a collection of Domain Modules for the System.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| module | ModuleSummary->Module | object |  |\r\n",
        "operationId": "GetDomainModuleCollection",
        "produces": [
          "application/vnd.onkey.modulecollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains collection of Modules for the System",
            "schema": {
              "$ref": "#/definitions/ModuleSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Resources/Actions/Ownership/Customisations": {
      "get": {
        "tags": [
          "Resource Action Customisation Ownership"
        ],
        "summary": "Get a collection of all the Resource Action Customisation Ownership definitions.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | ResourceActionCustomisation->Id | integer | int64 |\r\n| version | ResourceActionCustomisation->Version | integer | int32 |\r\n| name | ResourceActionCustomisation->Name | string |  |\r\n| description | ResourceActionCustomisation->Description | string |  |\r\n| restrictionLevel | ResourceActionCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| resource | ResourceActionCustomisation->Resource | string |  |\r\n| resourceAction | ResourceActionCustomisation->ResourceAction | string |  |\r\n| module | ResourceActionCustomisation->Module | string |  |\r\n| isRunnable | ResourceActionCustomisation->IsRunnable | boolean |  |\r\n| createdByUserFullName | ResourceActionCustomisation->CreatedByUser_FullName | string |  |\r\n| createdOn | ResourceActionCustomisation->CreatedOn | string | date-time |\r\n",
        "operationId": "GetResourceActionCustomisationOwnershipCollection",
        "produces": [
          "application/vnd.onkey.entitycollectionpage+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Select"
          },
          {
            "$ref": "#/parameters/Filter"
          },
          {
            "$ref": "#/parameters/Param"
          },
          {
            "$ref": "#/parameters/Top"
          },
          {
            "$ref": "#/parameters/Skip"
          },
          {
            "$ref": "#/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains pageable Resource Action Customisation Ownership collection",
            "schema": {
              "$ref": "#/definitions/GetResourceActionCustomisationOwnershipCollectionResourceActionResponse"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Resources/Actions/Lookups/LookupResourceActionCustomisationUser": {
      "get": {
        "tags": [
          "Resource Action Customisation Ownership"
        ],
        "summary": "Lookup the User for the Resource Action Customisation Ownership.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | User->Id | integer | int64 |\r\n| code | User->Code | string |  |\r\n| fullName | User->FullName | string |  |\r\n",
        "operationId": "LookupResourceActionCustomisationUser",
        "produces": [
          "application/vnd.onkey.entitycollectionpage+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Select"
          },
          {
            "$ref": "#/parameters/Filter"
          },
          {
            "$ref": "#/parameters/Param"
          },
          {
            "$ref": "#/parameters/Top"
          },
          {
            "$ref": "#/parameters/Skip"
          },
          {
            "$ref": "#/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains pageable User collection",
            "schema": {
              "$ref": "#/definitions/ResourceActionCustomisationUserLookupResourceActionResponse"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Resources/Actions/Ownership/Customisations/{customisationId}": {
      "delete": {
        "tags": [
          "Resource Action Customisation Ownership"
        ],
        "summary": "Delete an existing API Resource Action Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| version | ResourceActionCustomisation->Version | integer | int32 |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| version | Required | True |  |\r\n| version | Nullable | False |  |\r\n\r\n",
        "operationId": "DeleteResourceActionCustomisationById",
        "consumes": [
          "application/vnd.onkey.entitydelete+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "format": "int64",
            "x-nullable": false
          },
          {
            "name": "delete",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/DeleteResourceActionCustomisationByIdRequest"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - Resource Action Customisation Ownership was successfully deleted"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Resources/Actions/Ownership/Customisations/Batch": {
      "delete": {
        "tags": [
          "Resource Action Customisation Ownership"
        ],
        "summary": "Delete a batch of existing API Resource Action Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | ResourceActionCustomisation->Id | integer | int64 |\r\n| version | ResourceActionCustomisation->Version | integer | int32 |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| id | Required | True |  |\r\n| id | Nullable | False |  |\r\n| version | Required | True |  |\r\n| version | Nullable | False |  |\r\n\r\n",
        "operationId": "BatchDeleteResourceActionCustomisationById",
        "consumes": [
          "application/vnd.onkey.entitydeletecollection+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "name": "patches",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/BatchDeleteResourceActionCustomisationResourceActionRequest"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          },
          {
            "$ref": "#/parameters/Schedule"
          },
          {
            "$ref": "#/parameters/ExecutionMode"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - Resource Action Customisation Ownership batch was successfully deleted"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Resources/Actions/Ownership/Customisations/ChangeOwnership/Batch": {
      "patch": {
        "tags": [
          "Resource Action Customisation Ownership"
        ],
        "summary": "Change API Resource Action Customisation Ownership",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | ChangeResourceActionCustomisationOwnership->Id | integer | int64 |\r\n| userId | ChangeResourceActionCustomisationOwnership->UserId | integer | int64 |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| id | Required | True |  |\r\n| id | Nullable | False |  |\r\n| userId | Required | True |  |\r\n| userId | Nullable | False |  |\r\n\r\n",
        "operationId": "ChangeResourceActionCustomisationOwnership",
        "consumes": [
          "application/vnd.onkey.entitypatchcollection+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "name": "patches",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/ChangeResourceActionCustomisationOwnershipResourceActionRequest"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          },
          {
            "$ref": "#/parameters/Schedule"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - operation was successfully executed"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}/Actions/{resourceActionName}": {
      "get": {
        "tags": [
          "API Resource Action"
        ],
        "summary": "Get a API Resource Action definition.",
        "description": "",
        "operationId": "GetResourceActionDefinition",
        "produces": [
          "application/vnd.onkey.resourceaction+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource Action definition",
            "schema": {
              "$ref": "#/definitions/ResourceActionSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}/Actions/{resourceActionName}/crossReferences/templates": {
      "get": {
        "tags": [
          "API Resource Action"
        ],
        "summary": "Get a collection of all API Resource Action Cross Reference Template summaries.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| filterPath | ResourceActionCrossReferenceTemplateSummary->FilterPath | string |  |\r\n| resourceActionName | ResourceActionCrossReferenceTemplateSummary->ResourceActionName | string |  |\r\n| resourceName | ResourceActionCrossReferenceTemplateSummary->ResourceName | string |  |\r\n| sourcePath | ResourceActionCrossReferenceTemplateSummary->SourcePath | string |  |\r\n| sourcePropertyName | ResourceActionCrossReferenceTemplateSummary->SourcePropertyName | string |  |\r\n| templateName | ResourceActionCrossReferenceTemplateSummary->TemplateName | string |  |\r\n",
        "operationId": "GetResourceActionCrossReferenceTemplateCollection",
        "produces": [
          "application/vnd.onkey.resourceschemacollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource Action definitions",
            "schema": {
              "$ref": "#/definitions/ResourceSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}/Actions": {
      "get": {
        "tags": [
          "API Resource Action"
        ],
        "summary": "Get a collection of API Resource Action definitions.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| httpMethod | ResourceActionSummary->HttpMethod | string |  |\r\n| moduleName | ResourceActionSummary->ModuleName | string |  |\r\n| resourceActionName | ResourceActionSummary->ResourceActionName | string |  |\r\n| resourceActionType | ResourceActionSummary->ResourceActionType | string |  |\r\n| resourceName | ResourceActionSummary->ResourceName | string |  |\r\n",
        "operationId": "GetResourceActionDefinitionCollection",
        "produces": [
          "application/vnd.onkey.resourceactioncollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource Action definitions",
            "schema": {
              "$ref": "#/definitions/ResourceActionSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}/Actions/{resourceActionName}/Customisations/{customisationId}": {
      "get": {
        "tags": [
          "API Resource Action Customisation"
        ],
        "summary": "Get a API Resource Action Customisation definition.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| createdByUserId | ResourceActionCustomisation->CreatedByUser_Id | integer | int64 |\r\n| createdByUserCode | ResourceActionCustomisation->CreatedByUser_Code | string |  |\r\n| createdByUserFullName | ResourceActionCustomisation->CreatedByUser_FullName | string |  |\r\n| createdOn | ResourceActionCustomisation->CreatedOn | string | date-time |\r\n| modifiedByUserId | ResourceActionCustomisation->ModifiedByUser_Id | integer | int64 |\r\n| modifiedByUserCode | ResourceActionCustomisation->ModifiedByUser_Code | string |  |\r\n| modifiedByUserFullName | ResourceActionCustomisation->ModifiedByUser_FullName | string |  |\r\n| modifiedOn | ResourceActionCustomisation->ModifiedOn | string | date-time |\r\n| version | ResourceActionCustomisation->Version | integer | int32 |\r\n| id | ResourceActionCustomisation->Id | integer | int64 |\r\n| description | ResourceActionCustomisation->Description | string |  |\r\n| isRunnable | ResourceActionCustomisation->IsRunnable | boolean |  |\r\n| isTemp | ResourceActionCustomisation->IsTemp | boolean |  |\r\n| module | ResourceActionCustomisation->Module | string |  |\r\n| name | ResourceActionCustomisation->Name | string |  |\r\n| requestBody | ResourceActionCustomisation->RequestBody | object |  |\r\n| resource | ResourceActionCustomisation->Resource | string |  |\r\n| resourceAction | ResourceActionCustomisation->ResourceAction | string |  |\r\n| responseBody | ResourceActionCustomisation->ResponseBody | object |  |\r\n| restrictionLevel | ResourceActionCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n",
        "operationId": "GetResourceActionCustomisation",
        "produces": [
          "application/vnd.onkey.customresourceaction+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "format": "int64",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource Action Customisation collection",
            "schema": {
              "$ref": "#/definitions/ResourceActionCustomisationSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      },
      "put": {
        "tags": [
          "API Resource Action Customisation"
        ],
        "summary": "Update an existing API Resource Action Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| version | ResourceActionCustomisation->Version | integer | int32 |\r\n| restrictionLevel | ResourceActionCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| name | ResourceActionCustomisation->Name | string |  |\r\n| description | ResourceActionCustomisation->Description | string |  |\r\n| requestBody | ResourceActionCustomisation->RequestBody | object |  |\r\n| responseBody | ResourceActionCustomisation->ResponseBody | object |  |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| version | Required | True |  |\r\n| version | Nullable | False |  |\r\n| restrictionLevel | Nullable | False |  |\r\n| name | Nullable | False |  |\r\n| name | Nullable | False |  |\r\n\r\n",
        "operationId": "UpdateResourceActionCustomisation",
        "consumes": [
          "application/vnd.onkey.customresourceactionupdate+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "format": "int64",
            "x-nullable": false
          },
          {
            "name": "customisation",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/ResourceActionCustomisationUpdateSchema"
            }
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - API Resource Action Customisation was successfully updated"
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      },
      "delete": {
        "tags": [
          "API Resource Action Customisation"
        ],
        "summary": "Delete an existing API Resource Action Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| version | ResourceActionCustomisation->Version | integer | int32 |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| version | Required | True |  |\r\n| version | Nullable | False |  |\r\n\r\n",
        "operationId": "DeleteResourceActionCustomisation",
        "consumes": [
          "application/vnd.onkey.entitydelete+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "format": "int64",
            "x-nullable": false
          },
          {
            "name": "delete",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/DeleteResourceActionCustomisationResourceActionRequest"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - API Resource Action Customisation was successfully deleted"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}/Actions/{resourceActionName}/Customisations": {
      "get": {
        "tags": [
          "API Resource Action Customisation"
        ],
        "summary": "Get a collection of API Resource Action Customisation definitions.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | ResourceActionCustomisation->Id | integer | int64 |\r\n| version | ResourceActionCustomisation->Version | integer | int32 |\r\n| name | ResourceActionCustomisation->Name | string |  |\r\n| description | ResourceActionCustomisation->Description | string |  |\r\n| restrictionLevel | ResourceActionCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| isRunnable | ResourceActionCustomisation->IsRunnable | boolean |  |\r\n| createdByUserFullName | ResourceActionCustomisation->CreatedByUser_FullName | string |  |\r\n| createdOn | ResourceActionCustomisation->CreatedOn | string | date-time |\r\n| modifiedByUserFullName | ResourceActionCustomisation->ModifiedByUser_FullName | string |  |\r\n| modifiedOn | ResourceActionCustomisation->ModifiedOn | string | date-time |\r\n",
        "operationId": "GetResourceActionCustomisationCollection",
        "produces": [
          "application/vnd.onkey.entitycollectionpage+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "x-nullable": false
          },
          {
            "$ref": "#/parameters/Select"
          },
          {
            "$ref": "#/parameters/Filter"
          },
          {
            "$ref": "#/parameters/Param"
          },
          {
            "$ref": "#/parameters/Top"
          },
          {
            "$ref": "#/parameters/Skip"
          },
          {
            "$ref": "#/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains pageable API Resource Action Customisation collection",
            "schema": {
              "$ref": "#/definitions/GetResourceActionCustomisationsResourceActionResponse"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      },
      "post": {
        "tags": [
          "API Resource Action Customisation"
        ],
        "summary": "Create a new API Resource Action Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| name | ResourceActionCustomisation->Name | string |  |\r\n| restrictionLevel | ResourceActionCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| description | ResourceActionCustomisation->Description | string |  |\r\n| isTemp | ResourceActionCustomisation->IsTemp | boolean |  |\r\n| requestBody | ResourceActionCustomisation->RequestBody | object |  |\r\n| responseBody | ResourceActionCustomisation->ResponseBody | object |  |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| name | Required | True |  |\r\n| name | Nullable | False |  |\r\n| restrictionLevel | Required | True |  |\r\n| restrictionLevel | Nullable | False |  |\r\n\r\n",
        "operationId": "CreateResourceActionCustomisation",
        "consumes": [
          "application/vnd.onkey.customresourceactioncreate+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "x-nullable": false
          },
          {
            "name": "customisation",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/ResourceActionCustomisationCreateSchema"
            }
          }
        ],
        "responses": {
          "201": {
            "x-nullable": true,
            "description": "Success response - resource was successfully created",
            "headers": {
              "OnKey-Resource-Id": {
                "type": "integer",
                "description": "Id of the resource created",
                "format": "Int64"
              },
              "OnKey-Resource-Location": {
                "type": "string",
                "description": "Uri to fetch the created resource"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}": {
      "get": {
        "tags": [
          "API Resource"
        ],
        "summary": "Get a API Resource definition.",
        "description": "",
        "operationId": "GetResourceDefinition",
        "produces": [
          "application/vnd.onkey.resource+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource definition",
            "schema": {
              "$ref": "#/definitions/ResourceSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Resources/Actions": {
      "get": {
        "tags": [
          "API Resource"
        ],
        "summary": "Get a collection of all API Resource Action definitions for the System.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| httpMethod | ResourceActionSummary->HttpMethod | string |  |\r\n| moduleName | ResourceActionSummary->ModuleName | string |  |\r\n| resourceActionName | ResourceActionSummary->ResourceActionName | string |  |\r\n| resourceActionType | ResourceActionSummary->ResourceActionType | string |  |\r\n| resourceName | ResourceActionSummary->ResourceName | string |  |\r\n",
        "operationId": "GetAllResourceActionDefinitionCollection",
        "produces": [
          "application/vnd.onkey.resourceactioncollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource Action definitions",
            "schema": {
              "$ref": "#/definitions/ResourceActionSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Resources": {
      "get": {
        "tags": [
          "API Resource"
        ],
        "summary": "Get a collection of all API Resource definitions for the System.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| moduleName | ResourceSummary->ModuleName | string |  |\r\n| resourceName | ResourceSummary->ResourceName | string |  |\r\n| resourceDescription | ResourceSummary->ResourceDescription | string |  |\r\n",
        "operationId": "GetAllResourceDefinitionCollection",
        "produces": [
          "application/vnd.onkey.resourcecollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource definitions",
            "schema": {
              "$ref": "#/definitions/ResourceSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/Actions": {
      "get": {
        "tags": [
          "API Resource"
        ],
        "summary": "Get a collection of API Resource Action definitions for the Module.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| httpMethod | ResourceActionSummary->HttpMethod | string |  |\r\n| moduleName | ResourceActionSummary->ModuleName | string |  |\r\n| resourceActionName | ResourceActionSummary->ResourceActionName | string |  |\r\n| resourceActionType | ResourceActionSummary->ResourceActionType | string |  |\r\n| resourceName | ResourceActionSummary->ResourceName | string |  |\r\n",
        "operationId": "GetModuleAllResourceActionDefinitionCollection",
        "produces": [
          "application/vnd.onkey.resourceactioncollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource Action definitions",
            "schema": {
              "$ref": "#/definitions/ResourceActionSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources": {
      "get": {
        "tags": [
          "API Resource"
        ],
        "summary": "Get a collection of API Resource definitions for the Module.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| moduleName | ResourceSummary->ModuleName | string |  |\r\n| resourceName | ResourceSummary->ResourceName | string |  |\r\n| resourceDescription | ResourceSummary->ResourceDescription | string |  |\r\n",
        "operationId": "GetModuleResourceDefinitionCollection",
        "produces": [
          "application/vnd.onkey.resourcecollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains API Resource definitions",
            "schema": {
              "$ref": "#/definitions/ResourceSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}/Spec": {
      "get": {
        "tags": [
          "Specification"
        ],
        "summary": "Get an OpenAPI Specification for a Resource within the Module.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| doc | Spec->Doc | object |  |\r\n| format | Spec->Format | string (Allowed values: [Json, Yaml]) | enum |\r\n| schema | Spec->Schema | string (Allowed values: [OpenApi3, OpenApi2]) | enum |\r\n",
        "operationId": "GetModuleResourceSpec",
        "produces": [
          "application/vnd.onkey.spec+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "group",
            "in": "query",
            "description": "Sub-grouping for the Module of the specification",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "version",
            "in": "query",
            "description": "Version for the specification",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "scheme",
            "in": "query",
            "description": "Scheme for base url (http or https)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "server",
            "in": "query",
            "description": "Server host for base url",
            "x-nullable": true
          },
          {
            "type": "integer",
            "name": "port",
            "in": "query",
            "description": "Server port for base url",
            "format": "int32",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "client",
            "in": "query",
            "description": "Name of client for base url",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "cnn",
            "in": "query",
            "description": "Name of connection for base url",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "schema",
            "in": "query",
            "description": "Schema of the specification (OpenApi3 or OpenApi2)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "format",
            "in": "query",
            "description": "Format of the specification (Json or Yaml)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "customisation",
            "in": "query",
            "description": "Generate with customisations applied",
            "x-nullable": true
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains OpenApi specification",
            "schema": {
              "$ref": "#/definitions/SpecSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Spec": {
      "get": {
        "tags": [
          "Specification"
        ],
        "summary": "Get an OpenAPI Specification for all Modules within the System.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| doc | Spec->Doc | object |  |\r\n| format | Spec->Format | string (Allowed values: [Json, Yaml]) | enum |\r\n| schema | Spec->Schema | string (Allowed values: [OpenApi3, OpenApi2]) | enum |\r\n",
        "operationId": "GetModuleSpecCollection",
        "produces": [
          "application/vnd.onkey.spec+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "version",
            "in": "query",
            "description": "Version for the specification",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "scheme",
            "in": "query",
            "description": "Scheme for base url (http or https)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "server",
            "in": "query",
            "description": "Server host for base url",
            "x-nullable": true
          },
          {
            "type": "integer",
            "name": "port",
            "in": "query",
            "description": "Server port for base url",
            "format": "int32",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "client",
            "in": "query",
            "description": "Name of client for base url",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "cnn",
            "in": "query",
            "description": "Name of connection for base url",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "schema",
            "in": "query",
            "description": "Schema of the specification (OpenApi3 or OpenApi2)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "format",
            "in": "query",
            "description": "Format of the specification (Json or Yaml)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "customisation",
            "in": "query",
            "description": "Generate with customisations applied",
            "x-nullable": true
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains OpenApi specification",
            "schema": {
              "$ref": "#/definitions/SpecSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/Spec": {
      "get": {
        "tags": [
          "Specification"
        ],
        "summary": "Get an OpenAPI Specification for the Module.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| doc | Spec->Doc | object |  |\r\n| format | Spec->Format | string (Allowed values: [Json, Yaml]) | enum |\r\n| schema | Spec->Schema | string (Allowed values: [OpenApi3, OpenApi2]) | enum |\r\n",
        "operationId": "GetModuleSpec",
        "produces": [
          "application/vnd.onkey.spec+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "group",
            "in": "query",
            "description": "Sub-grouping for the Module of the specification",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "version",
            "in": "query",
            "description": "Version for the specification",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "scheme",
            "in": "query",
            "description": "Scheme for base url (http or https)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "server",
            "in": "query",
            "description": "Server host for base url",
            "x-nullable": true
          },
          {
            "type": "integer",
            "name": "port",
            "in": "query",
            "description": "Server port for base url",
            "format": "int32",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "client",
            "in": "query",
            "description": "Name of client for base url",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "cnn",
            "in": "query",
            "description": "Name of connection for base url",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "schema",
            "in": "query",
            "description": "Schema of the specification (OpenApi3 or OpenApi2)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "format",
            "in": "query",
            "description": "Format of the specification (Json or Yaml)",
            "x-nullable": true
          },
          {
            "type": "string",
            "name": "customisation",
            "in": "query",
            "description": "Generate with customisations applied",
            "x-nullable": true
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains OpenApi specification",
            "schema": {
              "$ref": "#/definitions/SpecSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Templates/{templateName}/Customisations/{customisationId}": {
      "get": {
        "tags": [
          "Template Customisation"
        ],
        "summary": "Get a Template Customisation definition.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| createdByUserId | TemplateCustomisation->CreatedByUser_Id | integer | int64 |\r\n| createdByUserCode | TemplateCustomisation->CreatedByUser_Code | string |  |\r\n| createdByUserFullName | TemplateCustomisation->CreatedByUser_FullName | string |  |\r\n| createdOn | TemplateCustomisation->CreatedOn | string | date-time |\r\n| modifiedByUserId | TemplateCustomisation->ModifiedByUser_Id | integer | int64 |\r\n| modifiedByUserCode | TemplateCustomisation->ModifiedByUser_Code | string |  |\r\n| modifiedByUserFullName | TemplateCustomisation->ModifiedByUser_FullName | string |  |\r\n| modifiedOn | TemplateCustomisation->ModifiedOn | string | date-time |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n| id | TemplateCustomisation->Id | integer | int64 |\r\n| content | TemplateCustomisation->Content | object |  |\r\n| description | TemplateCustomisation->Description | string |  |\r\n| isRunnable | TemplateCustomisation->IsRunnable | boolean |  |\r\n| isTemp | TemplateCustomisation->IsTemp | boolean |  |\r\n| module | TemplateCustomisation->Module | string |  |\r\n| name | TemplateCustomisation->Name | string |  |\r\n| restrictionLevel | TemplateCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| template | TemplateCustomisation->Template | string |  |\r\n| type | TemplateCustomisation->Type | string |  |\r\n",
        "operationId": "GetTemplateCustomisation",
        "produces": [
          "application/vnd.onkey.customtemplate+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "format": "int64",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Template Customisation",
            "schema": {
              "$ref": "#/definitions/TemplateCustomisationSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      },
      "put": {
        "tags": [
          "Template Customisation"
        ],
        "summary": "Update an existing Template Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n| restrictionLevel | TemplateCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| name | TemplateCustomisation->Name | string |  |\r\n| description | TemplateCustomisation->Description | string |  |\r\n| content | TemplateCustomisation->Content | object |  |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| version | Required | True |  |\r\n| version | Nullable | False |  |\r\n| restrictionLevel | Nullable | False |  |\r\n| name | Nullable | False |  |\r\n| name | Nullable | False |  |\r\n| content | Required | True |  |\r\n| content | Nullable | False |  |\r\n\r\n",
        "operationId": "UpdateTemplateCustomisation",
        "consumes": [
          "application/vnd.onkey.customtemplateupdate+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "format": "int64",
            "x-nullable": false
          },
          {
            "name": "customisation",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/TemplateCustomisationUpdateSchema"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - Template Customisation was successfully updated"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      },
      "delete": {
        "tags": [
          "Template Customisation"
        ],
        "summary": "Delete an existing Template Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| version | Required | True |  |\r\n| version | Nullable | False |  |\r\n\r\n",
        "operationId": "DeleteTemplateCustomisation",
        "consumes": [
          "application/vnd.onkey.entitydelete+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "format": "int64",
            "x-nullable": false
          },
          {
            "name": "delete",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/DeleteTemplateCustomisationResourceActionRequest"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - Template Customisation was successfully deleted"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Templates/Customisations": {
      "get": {
        "tags": [
          "Template Customisation"
        ],
        "summary": "Get a collection of Template Customisation definitions.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | TemplateCustomisation->Id | integer | int64 |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n| name | TemplateCustomisation->Name | string |  |\r\n| description | TemplateCustomisation->Description | string |  |\r\n| restrictionLevel | TemplateCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| module | TemplateCustomisation->Module | string |  |\r\n| type | TemplateCustomisation->Type | string |  |\r\n| isRunnable | TemplateCustomisation->IsRunnable | boolean |  |\r\n| createdByUserFullName | TemplateCustomisation->CreatedByUser_FullName | string |  |\r\n| createdOn | TemplateCustomisation->CreatedOn | string | date-time |\r\n| modifiedByUserFullName | TemplateCustomisation->ModifiedByUser_FullName | string |  |\r\n| modifiedOn | TemplateCustomisation->ModifiedOn | string | date-time |\r\n",
        "operationId": "GetAllTemplateCustomisationCollection",
        "produces": [
          "application/vnd.onkey.entitycollectionpage+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Select"
          },
          {
            "$ref": "#/parameters/Filter"
          },
          {
            "$ref": "#/parameters/Param"
          },
          {
            "$ref": "#/parameters/Top"
          },
          {
            "$ref": "#/parameters/Skip"
          },
          {
            "$ref": "#/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains pageable Template Customisation collection",
            "schema": {
              "$ref": "#/definitions/GetAllTemplateCustomisationCollectionResourceActionResponse"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Templates/Customisations": {
      "get": {
        "tags": [
          "Template Customisation"
        ],
        "summary": "Get a collection of Template Customisation definitions.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | TemplateCustomisation->Id | integer | int64 |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n| name | TemplateCustomisation->Name | string |  |\r\n| description | TemplateCustomisation->Description | string |  |\r\n| restrictionLevel | TemplateCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| module | TemplateCustomisation->Module | string |  |\r\n| type | TemplateCustomisation->Type | string |  |\r\n| isRunnable | TemplateCustomisation->IsRunnable | boolean |  |\r\n| createdByUserFullName | TemplateCustomisation->CreatedByUser_FullName | string |  |\r\n| createdOn | TemplateCustomisation->CreatedOn | string | date-time |\r\n| modifiedByUserFullName | TemplateCustomisation->ModifiedByUser_FullName | string |  |\r\n| modifiedOn | TemplateCustomisation->ModifiedOn | string | date-time |\r\n",
        "operationId": "GetModuleTemplateCustomisationCollection",
        "produces": [
          "application/vnd.onkey.entitycollectionpage+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "$ref": "#/parameters/Select"
          },
          {
            "$ref": "#/parameters/Filter"
          },
          {
            "$ref": "#/parameters/Param"
          },
          {
            "$ref": "#/parameters/Top"
          },
          {
            "$ref": "#/parameters/Skip"
          },
          {
            "$ref": "#/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains pageable Template Customisation collection",
            "schema": {
              "$ref": "#/definitions/GetModuleTemplateCustomisationCollectionResourceActionResponse"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Templates/{templateName}/Customisations": {
      "get": {
        "tags": [
          "Template Customisation"
        ],
        "summary": "Get a collection of Template Customisation definitions.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | TemplateCustomisation->Id | integer | int64 |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n| template | TemplateCustomisation->Template | string |  |\r\n| name | TemplateCustomisation->Name | string |  |\r\n| description | TemplateCustomisation->Description | string |  |\r\n| restrictionLevel | TemplateCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| createdByUserId | TemplateCustomisation->CreatedByUser_Id | integer | int64 |\r\n| createdByUserFullName | TemplateCustomisation->CreatedByUser_FullName | string |  |\r\n| createdOn | TemplateCustomisation->CreatedOn | string | date-time |\r\n| modifiedByUserFullName | TemplateCustomisation->ModifiedByUser_FullName | string |  |\r\n| modifiedOn | TemplateCustomisation->ModifiedOn | string | date-time |\r\n",
        "operationId": "GetTemplateCustomisationCollection",
        "produces": [
          "application/vnd.onkey.entitycollectionpage+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          },
          {
            "$ref": "#/parameters/Select"
          },
          {
            "$ref": "#/parameters/Filter"
          },
          {
            "$ref": "#/parameters/Param"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains pageable Template Customisation collection",
            "schema": {
              "$ref": "#/definitions/GetTemplateCustomisationCollectionResourceActionResponse"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      },
      "post": {
        "tags": [
          "Template Customisation"
        ],
        "summary": "Create a new Template Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| name | TemplateCustomisation->Name | string |  |\r\n| restrictionLevel | TemplateCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| description | TemplateCustomisation->Description | string |  |\r\n| isTemp | TemplateCustomisation->IsTemp | boolean |  |\r\n| content | TemplateCustomisation->Content | object |  |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| name | Required | True |  |\r\n| name | Nullable | False |  |\r\n| restrictionLevel | Required | True |  |\r\n| restrictionLevel | Nullable | False |  |\r\n| content | Required | True |  |\r\n| content | Nullable | False |  |\r\n\r\n",
        "operationId": "CreateTemplateCustomisation",
        "consumes": [
          "application/vnd.onkey.customtemplatecreate+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          },
          {
            "name": "customisation",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/TemplateCustomisationCreateSchema"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          }
        ],
        "responses": {
          "201": {
            "x-nullable": true,
            "description": "Success response - resource was successfully created",
            "headers": {
              "OnKey-Resource-Id": {
                "type": "integer",
                "description": "Id of the resource created",
                "format": "Int64"
              },
              "OnKey-Resource-Location": {
                "type": "string",
                "description": "Uri to fetch the created resource"
              }
            }
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Templates/{templateName}/Customisations/{customisationId}/Restore": {
      "post": {
        "tags": [
          "Template Customisation"
        ],
        "summary": "Restore an existing Template Customisation definition to match the system default template.",
        "description": "",
        "operationId": "RestoreTemplateCustomisation",
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "format": "int64",
            "x-nullable": false
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - operation was successfully executed"
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Templates/Ownership/Customisations": {
      "get": {
        "tags": [
          "Template Customisation Ownership"
        ],
        "summary": "Get a collection of Template Customisation Ownership definitions.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | TemplateCustomisation->Id | integer | int64 |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n| name | TemplateCustomisation->Name | string |  |\r\n| description | TemplateCustomisation->Description | string |  |\r\n| restrictionLevel | TemplateCustomisation->RestrictionLevel | string (Allowed values: [Public, PublicReadOnly, Private]) | enum |\r\n| module | TemplateCustomisation->Module | string |  |\r\n| type | TemplateCustomisation->Type | string |  |\r\n| template | TemplateCustomisation->Template | string |  |\r\n| createdByUserId | TemplateCustomisation->CreatedByUser_Id | integer | int64 |\r\n| createdByUserFullName | TemplateCustomisation->CreatedByUser_FullName | string |  |\r\n| createdOn | TemplateCustomisation->CreatedOn | string | date-time |\r\n| modifiedByUserFullName | TemplateCustomisation->ModifiedByUser_FullName | string |  |\r\n| modifiedOn | TemplateCustomisation->ModifiedOn | string | date-time |\r\n",
        "operationId": "GetTemplateCustomisationOwnershipCollection",
        "produces": [
          "application/vnd.onkey.entitycollectionpage+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Select"
          },
          {
            "$ref": "#/parameters/Filter"
          },
          {
            "$ref": "#/parameters/Param"
          },
          {
            "$ref": "#/parameters/Top"
          },
          {
            "$ref": "#/parameters/Skip"
          },
          {
            "$ref": "#/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains pageable Template Customisation Ownership collection",
            "schema": {
              "$ref": "#/definitions/GetTemplateCustomisationOwnershipCollectionResourceActionResponse"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Templates/Ownership/Lookups/LookupTemplateCustomisationUser": {
      "get": {
        "tags": [
          "Template Customisation Ownership"
        ],
        "summary": "Lookup the User for the Template Customisation Ownership.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | User->Id | integer | int64 |\r\n| code | User->Code | string |  |\r\n| fullName | User->FullName | string |  |\r\n",
        "operationId": "LookupTemplateCustomisationUser",
        "produces": [
          "application/vnd.onkey.entitycollectionpage+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Select"
          },
          {
            "$ref": "#/parameters/Filter"
          },
          {
            "$ref": "#/parameters/Param"
          },
          {
            "$ref": "#/parameters/Top"
          },
          {
            "$ref": "#/parameters/Skip"
          },
          {
            "$ref": "#/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains pageable User collection",
            "schema": {
              "$ref": "#/definitions/TemplateCustomisationUserLookupResourceActionResponse"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Templates/Ownership/Customisations/{customisationId}": {
      "delete": {
        "tags": [
          "Template Customisation Ownership"
        ],
        "summary": "Delete an existing Template Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| version | Required | True |  |\r\n| version | Nullable | False |  |\r\n\r\n",
        "operationId": "DeleteTemplateCustomisationById",
        "consumes": [
          "application/vnd.onkey.entitydelete+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "integer",
            "name": "customisationId",
            "in": "path",
            "required": true,
            "format": "int64",
            "x-nullable": false
          },
          {
            "name": "delete",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/DeleteTemplateCustomisationByIdResourceActionRequest"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - Template Customisation Ownership was successfully deleted"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Templates/Ownership/Customisations/Batch": {
      "delete": {
        "tags": [
          "Template Customisation Ownership"
        ],
        "summary": "Delete a batch of existing Template Customisation definition.",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | TemplateCustomisation->Id | integer | int64 |\r\n| version | TemplateCustomisation->Version | integer | int32 |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| id | Required | True |  |\r\n| id | Nullable | False |  |\r\n| version | Required | True |  |\r\n| version | Nullable | False |  |\r\n\r\n",
        "operationId": "BatchDeleteTemplateCustomisationById",
        "consumes": [
          "application/vnd.onkey.entitydeletecollection+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "name": "patches",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/BatchDeleteTemplateCustomisationResourceActionRequest"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          },
          {
            "$ref": "#/parameters/Schedule"
          },
          {
            "$ref": "#/parameters/ExecutionMode"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - Template Customisation Ownership batch was successfully deleted"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/Modules/DOCS/Templates/Ownership/Customisations/ChangeOwnership/Batch": {
      "patch": {
        "tags": [
          "Template Customisation Ownership"
        ],
        "summary": "Change Template Customisation Ownership",
        "description": "### <a name='request'></a> Request Body\r\n#### Payload\r\n\r\nThe request body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | ChangeTemplateCustomisationOwnership->Id | integer | int64 |\r\n| userId | ChangeTemplateCustomisationOwnership->UserId | integer | int64 |\r\n\r\n#### Business Rules\r\n\r\nThe following business rules apply to the properties:\r\n\r\n| Property | Rule | Value | Condition |\r\n| ---- | :----: | :----: | :----: |\r\n| id | Required | True |  |\r\n| id | Nullable | False |  |\r\n| userId | Required | True |  |\r\n| userId | Nullable | False |  |\r\n\r\n",
        "operationId": "ChangeTemplateCustomisationOwnership",
        "consumes": [
          "application/vnd.onkey.entitypatchcollection+json"
        ],
        "produces": [
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "name": "patches",
            "in": "body",
            "required": true,
            "description": "Request Body content",
            "schema": {
              "$ref": "#/definitions/ChangeTemplateCustomisationOwnershipResourceActionRequest"
            }
          },
          {
            "$ref": "#/parameters/Async"
          },
          {
            "$ref": "#/parameters/AsyncDescription"
          },
          {
            "$ref": "#/parameters/Schedule"
          }
        ],
        "responses": {
          "204": {
            "x-nullable": true,
            "description": "Success response - operation was successfully executed"
          },
          "202": {
            "description": "Request was successfully registered for asynchronous execution using a Background Task",
            "headers": {
              "OnKey-Request-Id": {
                "type": "integer",
                "description": "Request id for the Background Task created",
                "format": "Int64"
              },
              "OnKey-Request-Location": {
                "type": "string",
                "description": "URI to poll for the asynchronous execution status of the request"
              }
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Templates/Migrations/{templateName}": {
      "get": {
        "tags": [
          "Template Migration"
        ],
        "summary": "Get a collection of Template Migration definitions for the template.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | TemplateMigrationEntity->Id | string | uuid |\r\n| isGlobal | TemplateMigrationEntity->IsGlobal | boolean |  |\r\n| module | TemplateMigrationEntity->Module | string |  |\r\n| name | TemplateMigrationEntity->Name | string |  |\r\n| templateContent | TemplateMigrationEntity->TemplateContent | string |  |\r\n| intentContent | TemplateMigrationEntity->IntentContent | string |  |\r\n| onKeyVersion | TemplateMigrationEntity->OnKeyVersion | string |  |\r\n| sequenceNumber | TemplateMigrationEntity->SequenceNumber | integer | int32 |\r\n",
        "operationId": "GetTemplateMigrationCollection",
        "produces": [
          "application/vnd.onkey.templatemigrationcollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "version",
            "in": "query",
            "description": "Migrations for template should be greater than this template version",
            "format": "int32",
            "x-nullable": true
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Template Migration Collection definition",
            "schema": {
              "$ref": "#/definitions/TemplateMigrationCollectionSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Templates/Migrations/{templateName}/Content": {
      "get": {
        "tags": [
          "Template Migration"
        ],
        "summary": "Get a collection of Template Migration definitions with migration content for the template.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | TemplateMigrationEntity->Id | string | uuid |\r\n| isGlobal | TemplateMigrationEntity->IsGlobal | boolean |  |\r\n| module | TemplateMigrationEntity->Module | string |  |\r\n| name | TemplateMigrationEntity->Name | string |  |\r\n| templateContent | TemplateMigrationEntity->TemplateContent | string |  |\r\n| intentContent | TemplateMigrationEntity->IntentContent | string |  |\r\n| onKeyVersion | TemplateMigrationEntity->OnKeyVersion | string |  |\r\n| sequenceNumber | TemplateMigrationEntity->SequenceNumber | integer | int32 |\r\n",
        "operationId": "GetTemplateMigrationContentCollection",
        "produces": [
          "application/vnd.onkey.templatemigrationcollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          },
          {
            "type": "integer",
            "name": "version",
            "in": "query",
            "description": "Migrations for template should be greater than this template version",
            "format": "int32",
            "x-nullable": true
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Template Migration Collection definition",
            "schema": {
              "$ref": "#/definitions/TemplateMigrationCollectionSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Templates/{templateName}": {
      "get": {
        "tags": [
          "Template"
        ],
        "summary": "Get a Template definition.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| module | TemplateEntity->Module | string |  |\r\n| content | TemplateEntity->Content | string |  |\r\n| name | TemplateEntity->Name | string |  |\r\n| type | TemplateEntity->Type | string (Allowed values: [Dashboard, Create, Update, View, BatchUpdate, DetailCollection, AssistDashboard, AssistCreate, AssistUpdate, AssistView, UITheme, UIMenu, UITranslations, Lookups, Lookup, Custom, UISettings, Process]) | enum |\r\n",
        "operationId": "GetTemplate",
        "produces": [
          "application/vnd.onkey.template+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Template",
            "schema": {
              "$ref": "#/definitions/TemplateSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Templates/{templateName}/Translations": {
      "get": {
        "tags": [
          "Template"
        ],
        "summary": "Get the Translation Set for a Template.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | TranslationSet->Id | integer | int64 |\r\n| languageCode | TranslationSet->LanguageCode | string |  |\r\n| languageId | TranslationSet->LanguageId | integer | int64 |\r\n| name | TranslationSet->Name | string |  |\r\n| translations | TranslationSet->Translations | object |  |\r\n",
        "operationId": "GetTemplateTranslations",
        "produces": [
          "application/vnd.onkey.translationset+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          },
          {
            "type": "string",
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Translation Set definition",
            "schema": {
              "$ref": "#/definitions/TranslationSetSchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Templates": {
      "get": {
        "tags": [
          "Template"
        ],
        "summary": "Get a collection of Template definitions for the System.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| moduleName | TemplateSummary->ModuleName | string |  |\r\n| templateName | TemplateSummary->TemplateName | string |  |\r\n| templateType | TemplateSummary->TemplateType | string |  |\r\n",
        "operationId": "GetAllTemplateCollection",
        "produces": [
          "application/vnd.onkey.templatecollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Template collection",
            "schema": {
              "$ref": "#/definitions/TemplateSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Templates": {
      "get": {
        "tags": [
          "Template"
        ],
        "summary": "Get a collection of Template definitions for the Module.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| moduleName | TemplateSummary->ModuleName | string |  |\r\n| templateName | TemplateSummary->TemplateName | string |  |\r\n| templateType | TemplateSummary->TemplateType | string |  |\r\n",
        "operationId": "GetModuleTemplateCollection",
        "produces": [
          "application/vnd.onkey.templatecollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "x-nullable": false
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains Template collection",
            "schema": {
              "$ref": "#/definitions/TemplateSummarySchema"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Metadata/Entities/UserDefinedFields": {
      "get": {
        "tags": [
          "User Defined Field Metadata"
        ],
        "summary": "Get a collection of all User Defined Field Metadata definitions for the System.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | UserDefinedFieldMetadataEntity->Id | integer | int64 |\r\n| dataType | UserDefinedFieldMetadataEntity->DataType | string (Allowed values: [String, Email, Integer, Long, Float, Currency, DateTime, Date, Time, Duration, Boolean]) | enum |\r\n| defaultPredefinedValueId | UserDefinedFieldMetadataEntity->DefaultPredefinedValueId | integer | int64 |\r\n| defaultValue | UserDefinedFieldMetadataEntity->DefaultValue | object | composite |\r\n| description | UserDefinedFieldMetadataEntity->Description | string |  |\r\n| entityType | UserDefinedFieldMetadataEntity->EntityType | string (Allowed values: [Alarm, NewAlarm, AlarmExpression, AlarmExpressionTask, AlarmAttribute, AlarmDocument, AlarmType, MonitoringPoint, MonitoringPointBoundEvaluationLog, MonitoringPointParameter, MonitoringPointReading, MonitoringPointTrigger, MonitoringPointTriggerExpression, MonitoringPointTriggerExpressionAlarmType, MonitoringPointTriggerExpressionParameter, MonitoringPointTriggerExpressionEvaluation, MonitoringPointTriggerExpressionEvaluationLog, MonitoringPointType, MonitoringPointTypeParameter, MonitoringPointAttribute, MonitoringPointDocument, AuxiliaryAssetTask, AuxiliaryAssetTaskResource, AuxiliaryAssetTaskSpare, AuxiliaryAssetTaskSubTask, RegularAssetComponent, RegularAssetComponentAttribute, RegularAssetComponentDocument, RegularAssetComponentRuleEvaluationFailure, AssetComponent, AssetWarranty, PlaceholderAssetComponent, PlaceholderAssetComponentOptionValue, PlaceholderAssetComponentCondition, PlaceholderAssetMeter, PlaceholderAssetComponentRuleEvaluationFailure, RegularAssetCondition, RegularAssetActiveCondition, AssetFmeca, RegularAssetOptionValue, Asset, RegularAssetAttribute, RegularAssetDocument, RegularAssetFileAttachment, PlaceholderAsset, PlaceholderAssetAttribute, PlaceholderAssetDocument, PlaceholderAssetFileAttachment, PlaceholderAssetRuleEvaluationFailure, PlaceholderAssetResponsibility, PlaceholderAssetCondition, PlaceholderAssetActiveCondition, AssetTask, SetAssetTaskSpareWarehouseEntity, RegularAssetTask, RegularAssetTaskRuleEvaluationFailure, RegularAssetTaskAttribute, RegularAssetTaskAuxiliaryTask, RegularAssetTaskFollowUpTask, RegularAssetTaskFollowUpTaskExpression, RegularAssetTaskSuppressedTask, RegularAssetTaskResource, RegularAssetTaskResourceRuleEvaluationFailure, RegularAssetTaskSpare, RegularAssetTaskSpareRuleEvaluationFailure, RegularAssetTaskSubTask, RegularAssetTaskFileAttachment, AuxiliaryAssetTypeTask, AuxiliaryAssetTypeTaskResource, AuxiliaryAssetTypeTaskSpare, AuxiliaryAssetTypeTaskSubTask, RegularAssetTypeComponent, RegularAssetTypeComponentAttribute, RegularAssetTypeComponentDocument, AssetTypeComponent, PlaceholderAssetTypeComponent, PlaceholderAssetTypeComponentCondition, PlaceholderAssetTypeComponentAttribute, PlaceholderAssetTypeComponentDocument, PlaceholderAssetTypeComponentRuleLink, RegularAssetTypeComponentRuleLink, PlaceholderAssetComponentAttribute, PlaceholderAssetComponentDocument, PlaceholderAssetComponentActiveCondition, AssetTypeFmeca, AssetTypeFunction, AssetFunction, AssetFmecaTask, AssetTypeFmecaTask, AssetTypeFolder, RegularAssetTypeOption, AssetType, PlaceholderAssetType, PlaceholderAssetTypeSpare, PlaceholderAssetTypeAttribute, PlaceholderAssetTypeDocument, PlaceholderAssetTypeResponsibility, PlaceholderAssetTypeRuleLink, RegularAssetTypeTask, RegularAssetTypeTaskAttribute, RegularAssetTypeTaskAuxiliaryTask, RegularAssetTypeTaskCondition, RegularAssetTypeTaskDocument, RegularAssetTypeTaskFollowUpTask, RegularAssetTypeTaskFollowUpTaskExpression, AssetTypeTask, AssetTypeTaskResource, AssetTaskResource, AssetTaskSpare, AssetTypeTaskSpare, RegularAssetTypeTaskResource, RegularAssetTypeTaskRuleLink, RegularAssetTypeTaskSpare, RegularAssetTypeTaskSubTask, RegularAssetTypeTaskSuppressedTask, Condition, ConditionType, Event, FailureCause, FailureCauseType, FailureMechanism, FailureMechanismType, FailureMode, FailureModeType, InPlaceAssetMeter, InPlaceAssetAttribute, InPlaceAssetFileAttachment, InPlaceAssetRuleEvaluationFailure, InPlaceAssetResponsibility, InPlaceAssetSpare, InPlaceAssetType, InPlaceAssetTypeResponsibility, InPlaceAssetTypeRuleLink, InPlaceAssetTypeSpare, InPlaceAsset, Option, OptionCategory, RegularAsset, RegularAssetTaskDocument, RegularAssetMeter, RegularAssetResponsibility, RegularAssetMonitoringPointTrigger, RegularAssetSpare, RegularAssetTaskCondition, RegularAssetType, RegularAssetTypeAttribute, RegularAssetTypeDocument, RegularAssetTypeCondition, PlaceholderAssetTypeCondition, RegularAssetTypeRule, RegularAssetTypeResponsibility, RegularAssetTypeMonitoringPointTrigger, RegularAssetTypeSpare, RepairType, Rule, RuleCategory, RuleOption, StandardTask, StandardTaskSpare, StandardTaskSubTask, StandardTaskResource, StandardTaskAttribute, StandardTaskDocument, TaskImportance, TaskInterval, TaskIntervalType, TaskRollUpPoint, TypeOfWork, RegularAssetTypeTaskSpareRuleLink, InPlaceAssetTypeAttribute, RegularAssetTypeTaskResourceRuleLink, PlaceholderAssetSpare, RegularAssetMonitoringPointTriggerParameter, AssetSpare, AssetTypeSpare, AssetMeter, AssetConsumption, RegularAssetConsumption, PlaceholderAssetConsumption, InPlaceAssetConsumption, WarrantyType, RegularAssetTypeFileAttachment, Meter, MeterAttribute, MeterDocument, MeterReading, PredictedMeterReading, TimeLossCategory, TimeLossReason, TimeLossType, Consumable, AcquisitionStatus, AcquisitionType, DocumentFolder, DocumentRecord, DocumentRecordAttribute, FileAttachment, FileAttachmentCategory, FileAttachmentContentHistory, DocumentRecordFileHistory, Costing, CostingBudget, CostCentre, CostCentreAttribute, CostCentreDocument, CostCentreType, CostElement, CostElementAttribute, CostElementDocument, Currency, BudgetTemplate, BudgetTemplateParameter, FinancialYear, FinancialYearPeriod, GeneralLedger, GeneralLedgerAttribute, GeneralLedgerDocument, CurrencyRate, Budget, BudgetParameter, AddressType, Approval, Attribute, AttributeAllowedValue, Calendar, CalendarDay, CalendarException, CalendarDayHour, Classification, ClassificationAllowedValue, EmailType, Language, OperationalRole, OperationalRoleTemplate, OperationalRoleResource, PhoneNumberType, UserOperationalRole, UserOperationalRoleTemplate, UserOperationalRoleResource, TermsAndCondition, TermsAndConditionVersion, TermsAndConditionOperationalRole, UserTermsAndConditionVersion, Location, LocationAttribute, LocationDocument, LocalisationSet, LocalisationKey, LocalisationTranslation, Phrase, PhraseTranslation, PreconfiguredReason, Site, SiteAttribute, SiteDocument, SiteType, Supplier, SupplierFileAttachment, SupplierAttribute, SupplierDocument, SupplierContactAddress, SupplierContactEmail, SupplierContactPhoneNumber, SupplierResource, SupplierTaxRate, UnitOfMeasurement, SiteResource, SiteContactAddress, SiteContactEmail, SiteContactPhoneNumber, ChangeDataTrigger, ChangeDataTriggerOccurrenceLog, ChangeDataTriggerCriteria, NotificationTemplate, ChangeDataTriggerCriteriaParameter, ChangeDataTriggerNotificationEvent, NotificationTemplateParameter, ChangeDataTriggerNotificationEventAttachment, ChangeDataTriggerNotificationEventAttachmentParameter, RequestType, Category, Commodity, MaterialMaster, MaterialMasterAttribute, MaterialMasterDocument, MaterialMasterBin, MaterialMasterSupplier, MaterialMasterLinkWarehouse, StockItem, StockItemFileAttachment, StockItemAttribute, StockItemDocument, StockItemBin, StockItemSupplier, WarehouseAttribute, Warehouse, WarehouseDocument, Requisition, RequisitionFileAttachment, RequisitionStatus, RequisitionStatusChange, RequisitionStatusAttribute, RequisitionStatusDocument, RequisitionStatusChangeHistory, RequisitionItemTransaction, ApprovalRole, RequisitionAttribute, RequisitionDocument, RequisitionTransaction, RequisitionItem, RequisitionItemFileAttachment, UserSiteApprovalRole, ApprovalWorkflow, ApprovalWorkflowExpression, ApprovalWorkflowExpressionApprovalRole, Competency, Resource, ResourceAttribute, ResourceAddress, ResourceClassification, ResourceCompetency, ResourceDocument, ResourceEmail, ResourcePhoneNumber, ResourceTrade, ResourceTradeCompetency, ResourceTradeFinancialRate, Section, SectionAttribute, SectionDocument, SectionTrade, TradeAttribute, TradeDocument, Trade, TradeCompetency, TradeFinancialRate, ResourceContext, ResourceFileAttachment, AssetImportance, RiskConsequence, RiskConsequenceCategory, RiskModel, RiskModelConsequenceCategory, RiskModelImportance, RiskModelProbability, RiskProbability, WorkOrderImportance, WorkOrderStatus, WorkOrderStatusAttribute, WorkOrderStatusDocument, WorkOrderStatusAllowedChange, WorkOrder, WorkOrderStatusChangeHistory, WorkOrderStatusChange, WorkOrderMerge, WorkOrderSplit, WorkOrderMeter, WorkOrderAttribute, WorkOrderDocument, WorkOrderFileAttachment, WorkOrderTaskFileAttachment, WorkOrderTaskWarranty, WorkOrderTaskSpareFileAttachment, WorkOrderTask, WorkOrderTaskDocument, WorkOrderTaskAdHocCost, WorkOrderMonitoringPoint, WorkOrderTaskMonitoringPoint, WorkOrderTaskSpare, WorkOrderTaskSubTask, WorkOrderTaskResource, WorkOrderTaskResourceUsage, DueTask, DueTaskSuppressor, ProposedWorkOrderBatch, ProposedWorkOrder, ProposedWorkOrderTask, ProposedWorkOrderMeter, WorkOrderMovement, WorkOrderTaskMovement, WorkOrderTaskResourceMovement, WorkOrderTaskSpareMovement, WorkOrderTaskSubTaskMovement, WorkOrderCompleteAllTasksLog, WorkRequest, WorkRequestAttribute, WorkRequestDocument, WorkRequestStatus, WorkRequestStatusChange, WorkRequestStatusChangeHistory, WorkRequestFileAttachment, WorkOrderDowntimeLoss, WorkOrderProgressEvent, WorkOrderProgressEventAllowedChange, WorkOrderProgressLog, WorkOrderWarranty, ServiceLevelAgreementClassification, ServiceLevelAgreement, ServiceLevelAgreementMeasure, WorkOrderServiceLevelAgreement, WorkOrderServiceLevelAgreementMeasure, ServiceLevelAgreementMeasureTrigger, ServiceLevelAgreementMeasureFieldAssignment, PermissionTree, User, UserAttribute, UserDocument, UserAuthentication, SecurityRole, SecurityRolePermission, UserSecurityRole, UserCustomPermission, UserOption, BackgroundTask, BackgroundTaskStep, ScheduledBackgroundTask, ScheduledJob, UserDefinedField, UserDefinedFieldPredefinedValue, SystemOption, SystemOptionPageLimit, SystemOptionWorkOrderStatus, SystemOptionDefaultStandardTask, SystemOptionWorkOrderStatusTypeOfWork, SystemOptionReferenceDataViewPermission, SystemOptionFileAttachmentCategory, SystemOptionFileAttachmentFileType, RecordChange, RecordChangeValue, RecordChangeUser, RecordChangeProperty, NotificationEventOutbox, NotificationEventAttachmentOutbox, NotificationOutbox, NotificationOutboxLog, ChangeDataTriggerCriteriaEvaluation, SystemOptionReportServerEntity, SystemOptionReportServerEntityDefaultReport, TemplateMigrationLog, TemplateMigrationLogIntent, ResourceActionMigrationLog, ImportSchema, ImportFile, UserDefinedQuery, ResourceActionCustomisation, TemplateCustomisation, TemplateResource, ClusterSettings, ClusterIdentityProviderSettings, MessageBrokerHost, MessageBrokerTopic, MessageBrokerTopicConsumer, TenantSettings, TenantChangeDataSubscriptionSettings, TenantIdentityProviderSettings, TenantJobSettings, TenantFileContentStoreLocationSettings, TenantFileContentStoreFileTypeGroupSettings, TenantFileContentStoreFileTypeSettings, ClusterFeatureToggle, TenantFeatureToggle, TenantHealthCheck, TenantMachineHealthCheck, ClusterHealthCheck, ClusterMachineHealthCheck, ClusterCapacitySlot, TenantChangeLogCleanupExpressionSettings, ClusterJobSettings, Ignore]) | enum |\r\n| fieldType | UserDefinedFieldMetadataEntity->FieldType | string (Allowed values: [Predefined, AnyValue, Both]) | enum |\r\n| isActive | UserDefinedFieldMetadataEntity->IsActive | boolean |  |\r\n| isMemo | UserDefinedFieldMetadataEntity->IsMemo | boolean |  |\r\n| name | UserDefinedFieldMetadataEntity->Name | string |  |\r\n| sequenceNumber | UserDefinedFieldMetadataEntity->SequenceNumber | integer | int32 |\r\n| stringLength | UserDefinedFieldMetadataEntity->StringLength | integer | int32 |\r\n| version | UserDefinedFieldMetadataEntity->Version | integer | int32 |\r\n| enableMatchUpdate | UserDefinedFieldMetadataEntity->EnableMatchUpdate | boolean |  |\r\n",
        "operationId": "GetAllUserDefinedFieldsMetadataCollection",
        "produces": [
          "application/vnd.onkey.entitycollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains User Defined Field Metadata collection",
            "schema": {
              "$ref": "#/definitions/GetAllUserDefinedFieldsMetadataCollectionResourceAction"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    },
    "/DOCS/Modules/Metadata/Entities/{entity}/UserDefinedFields": {
      "get": {
        "tags": [
          "User Defined Field Metadata"
        ],
        "summary": "Get a collection of User Defined Field Metadata definitions for a specific Entity Type in the System.",
        "description": "### <a name='response'></a> Response Body\r\n#### Payload\r\n\r\nThe response body can contain the following properties:\r\n\r\n| Name | Path | Type | Format |\r\n| ---- | ---- | ---- | ---- |\r\n| id | UserDefinedFieldMetadataEntity->Id | integer | int64 |\r\n| dataType | UserDefinedFieldMetadataEntity->DataType | string (Allowed values: [String, Email, Integer, Long, Float, Currency, DateTime, Date, Time, Duration, Boolean]) | enum |\r\n| defaultPredefinedValueId | UserDefinedFieldMetadataEntity->DefaultPredefinedValueId | integer | int64 |\r\n| defaultValue | UserDefinedFieldMetadataEntity->DefaultValue | object | composite |\r\n| description | UserDefinedFieldMetadataEntity->Description | string |  |\r\n| entityType | UserDefinedFieldMetadataEntity->EntityType | string (Allowed values: [Alarm, NewAlarm, AlarmExpression, AlarmExpressionTask, AlarmAttribute, AlarmDocument, AlarmType, MonitoringPoint, MonitoringPointBoundEvaluationLog, MonitoringPointParameter, MonitoringPointReading, MonitoringPointTrigger, MonitoringPointTriggerExpression, MonitoringPointTriggerExpressionAlarmType, MonitoringPointTriggerExpressionParameter, MonitoringPointTriggerExpressionEvaluation, MonitoringPointTriggerExpressionEvaluationLog, MonitoringPointType, MonitoringPointTypeParameter, MonitoringPointAttribute, MonitoringPointDocument, AuxiliaryAssetTask, AuxiliaryAssetTaskResource, AuxiliaryAssetTaskSpare, AuxiliaryAssetTaskSubTask, RegularAssetComponent, RegularAssetComponentAttribute, RegularAssetComponentDocument, RegularAssetComponentRuleEvaluationFailure, AssetComponent, AssetWarranty, PlaceholderAssetComponent, PlaceholderAssetComponentOptionValue, PlaceholderAssetComponentCondition, PlaceholderAssetMeter, PlaceholderAssetComponentRuleEvaluationFailure, RegularAssetCondition, RegularAssetActiveCondition, AssetFmeca, RegularAssetOptionValue, Asset, RegularAssetAttribute, RegularAssetDocument, RegularAssetFileAttachment, PlaceholderAsset, PlaceholderAssetAttribute, PlaceholderAssetDocument, PlaceholderAssetFileAttachment, PlaceholderAssetRuleEvaluationFailure, PlaceholderAssetResponsibility, PlaceholderAssetCondition, PlaceholderAssetActiveCondition, AssetTask, SetAssetTaskSpareWarehouseEntity, RegularAssetTask, RegularAssetTaskRuleEvaluationFailure, RegularAssetTaskAttribute, RegularAssetTaskAuxiliaryTask, RegularAssetTaskFollowUpTask, RegularAssetTaskFollowUpTaskExpression, RegularAssetTaskSuppressedTask, RegularAssetTaskResource, RegularAssetTaskResourceRuleEvaluationFailure, RegularAssetTaskSpare, RegularAssetTaskSpareRuleEvaluationFailure, RegularAssetTaskSubTask, RegularAssetTaskFileAttachment, AuxiliaryAssetTypeTask, AuxiliaryAssetTypeTaskResource, AuxiliaryAssetTypeTaskSpare, AuxiliaryAssetTypeTaskSubTask, RegularAssetTypeComponent, RegularAssetTypeComponentAttribute, RegularAssetTypeComponentDocument, AssetTypeComponent, PlaceholderAssetTypeComponent, PlaceholderAssetTypeComponentCondition, PlaceholderAssetTypeComponentAttribute, PlaceholderAssetTypeComponentDocument, PlaceholderAssetTypeComponentRuleLink, RegularAssetTypeComponentRuleLink, PlaceholderAssetComponentAttribute, PlaceholderAssetComponentDocument, PlaceholderAssetComponentActiveCondition, AssetTypeFmeca, AssetTypeFunction, AssetFunction, AssetFmecaTask, AssetTypeFmecaTask, AssetTypeFolder, RegularAssetTypeOption, AssetType, PlaceholderAssetType, PlaceholderAssetTypeSpare, PlaceholderAssetTypeAttribute, PlaceholderAssetTypeDocument, PlaceholderAssetTypeResponsibility, PlaceholderAssetTypeRuleLink, RegularAssetTypeTask, RegularAssetTypeTaskAttribute, RegularAssetTypeTaskAuxiliaryTask, RegularAssetTypeTaskCondition, RegularAssetTypeTaskDocument, RegularAssetTypeTaskFollowUpTask, RegularAssetTypeTaskFollowUpTaskExpression, AssetTypeTask, AssetTypeTaskResource, AssetTaskResource, AssetTaskSpare, AssetTypeTaskSpare, RegularAssetTypeTaskResource, RegularAssetTypeTaskRuleLink, RegularAssetTypeTaskSpare, RegularAssetTypeTaskSubTask, RegularAssetTypeTaskSuppressedTask, Condition, ConditionType, Event, FailureCause, FailureCauseType, FailureMechanism, FailureMechanismType, FailureMode, FailureModeType, InPlaceAssetMeter, InPlaceAssetAttribute, InPlaceAssetFileAttachment, InPlaceAssetRuleEvaluationFailure, InPlaceAssetResponsibility, InPlaceAssetSpare, InPlaceAssetType, InPlaceAssetTypeResponsibility, InPlaceAssetTypeRuleLink, InPlaceAssetTypeSpare, InPlaceAsset, Option, OptionCategory, RegularAsset, RegularAssetTaskDocument, RegularAssetMeter, RegularAssetResponsibility, RegularAssetMonitoringPointTrigger, RegularAssetSpare, RegularAssetTaskCondition, RegularAssetType, RegularAssetTypeAttribute, RegularAssetTypeDocument, RegularAssetTypeCondition, PlaceholderAssetTypeCondition, RegularAssetTypeRule, RegularAssetTypeResponsibility, RegularAssetTypeMonitoringPointTrigger, RegularAssetTypeSpare, RepairType, Rule, RuleCategory, RuleOption, StandardTask, StandardTaskSpare, StandardTaskSubTask, StandardTaskResource, StandardTaskAttribute, StandardTaskDocument, TaskImportance, TaskInterval, TaskIntervalType, TaskRollUpPoint, TypeOfWork, RegularAssetTypeTaskSpareRuleLink, InPlaceAssetTypeAttribute, RegularAssetTypeTaskResourceRuleLink, PlaceholderAssetSpare, RegularAssetMonitoringPointTriggerParameter, AssetSpare, AssetTypeSpare, AssetMeter, AssetConsumption, RegularAssetConsumption, PlaceholderAssetConsumption, InPlaceAssetConsumption, WarrantyType, RegularAssetTypeFileAttachment, Meter, MeterAttribute, MeterDocument, MeterReading, PredictedMeterReading, TimeLossCategory, TimeLossReason, TimeLossType, Consumable, AcquisitionStatus, AcquisitionType, DocumentFolder, DocumentRecord, DocumentRecordAttribute, FileAttachment, FileAttachmentCategory, FileAttachmentContentHistory, DocumentRecordFileHistory, Costing, CostingBudget, CostCentre, CostCentreAttribute, CostCentreDocument, CostCentreType, CostElement, CostElementAttribute, CostElementDocument, Currency, BudgetTemplate, BudgetTemplateParameter, FinancialYear, FinancialYearPeriod, GeneralLedger, GeneralLedgerAttribute, GeneralLedgerDocument, CurrencyRate, Budget, BudgetParameter, AddressType, Approval, Attribute, AttributeAllowedValue, Calendar, CalendarDay, CalendarException, CalendarDayHour, Classification, ClassificationAllowedValue, EmailType, Language, OperationalRole, OperationalRoleTemplate, OperationalRoleResource, PhoneNumberType, UserOperationalRole, UserOperationalRoleTemplate, UserOperationalRoleResource, TermsAndCondition, TermsAndConditionVersion, TermsAndConditionOperationalRole, UserTermsAndConditionVersion, Location, LocationAttribute, LocationDocument, LocalisationSet, LocalisationKey, LocalisationTranslation, Phrase, PhraseTranslation, PreconfiguredReason, Site, SiteAttribute, SiteDocument, SiteType, Supplier, SupplierFileAttachment, SupplierAttribute, SupplierDocument, SupplierContactAddress, SupplierContactEmail, SupplierContactPhoneNumber, SupplierResource, SupplierTaxRate, UnitOfMeasurement, SiteResource, SiteContactAddress, SiteContactEmail, SiteContactPhoneNumber, ChangeDataTrigger, ChangeDataTriggerOccurrenceLog, ChangeDataTriggerCriteria, NotificationTemplate, ChangeDataTriggerCriteriaParameter, ChangeDataTriggerNotificationEvent, NotificationTemplateParameter, ChangeDataTriggerNotificationEventAttachment, ChangeDataTriggerNotificationEventAttachmentParameter, RequestType, Category, Commodity, MaterialMaster, MaterialMasterAttribute, MaterialMasterDocument, MaterialMasterBin, MaterialMasterSupplier, MaterialMasterLinkWarehouse, StockItem, StockItemFileAttachment, StockItemAttribute, StockItemDocument, StockItemBin, StockItemSupplier, WarehouseAttribute, Warehouse, WarehouseDocument, Requisition, RequisitionFileAttachment, RequisitionStatus, RequisitionStatusChange, RequisitionStatusAttribute, RequisitionStatusDocument, RequisitionStatusChangeHistory, RequisitionItemTransaction, ApprovalRole, RequisitionAttribute, RequisitionDocument, RequisitionTransaction, RequisitionItem, RequisitionItemFileAttachment, UserSiteApprovalRole, ApprovalWorkflow, ApprovalWorkflowExpression, ApprovalWorkflowExpressionApprovalRole, Competency, Resource, ResourceAttribute, ResourceAddress, ResourceClassification, ResourceCompetency, ResourceDocument, ResourceEmail, ResourcePhoneNumber, ResourceTrade, ResourceTradeCompetency, ResourceTradeFinancialRate, Section, SectionAttribute, SectionDocument, SectionTrade, TradeAttribute, TradeDocument, Trade, TradeCompetency, TradeFinancialRate, ResourceContext, ResourceFileAttachment, AssetImportance, RiskConsequence, RiskConsequenceCategory, RiskModel, RiskModelConsequenceCategory, RiskModelImportance, RiskModelProbability, RiskProbability, WorkOrderImportance, WorkOrderStatus, WorkOrderStatusAttribute, WorkOrderStatusDocument, WorkOrderStatusAllowedChange, WorkOrder, WorkOrderStatusChangeHistory, WorkOrderStatusChange, WorkOrderMerge, WorkOrderSplit, WorkOrderMeter, WorkOrderAttribute, WorkOrderDocument, WorkOrderFileAttachment, WorkOrderTaskFileAttachment, WorkOrderTaskWarranty, WorkOrderTaskSpareFileAttachment, WorkOrderTask, WorkOrderTaskDocument, WorkOrderTaskAdHocCost, WorkOrderMonitoringPoint, WorkOrderTaskMonitoringPoint, WorkOrderTaskSpare, WorkOrderTaskSubTask, WorkOrderTaskResource, WorkOrderTaskResourceUsage, DueTask, DueTaskSuppressor, ProposedWorkOrderBatch, ProposedWorkOrder, ProposedWorkOrderTask, ProposedWorkOrderMeter, WorkOrderMovement, WorkOrderTaskMovement, WorkOrderTaskResourceMovement, WorkOrderTaskSpareMovement, WorkOrderTaskSubTaskMovement, WorkOrderCompleteAllTasksLog, WorkRequest, WorkRequestAttribute, WorkRequestDocument, WorkRequestStatus, WorkRequestStatusChange, WorkRequestStatusChangeHistory, WorkRequestFileAttachment, WorkOrderDowntimeLoss, WorkOrderProgressEvent, WorkOrderProgressEventAllowedChange, WorkOrderProgressLog, WorkOrderWarranty, ServiceLevelAgreementClassification, ServiceLevelAgreement, ServiceLevelAgreementMeasure, WorkOrderServiceLevelAgreement, WorkOrderServiceLevelAgreementMeasure, ServiceLevelAgreementMeasureTrigger, ServiceLevelAgreementMeasureFieldAssignment, PermissionTree, User, UserAttribute, UserDocument, UserAuthentication, SecurityRole, SecurityRolePermission, UserSecurityRole, UserCustomPermission, UserOption, BackgroundTask, BackgroundTaskStep, ScheduledBackgroundTask, ScheduledJob, UserDefinedField, UserDefinedFieldPredefinedValue, SystemOption, SystemOptionPageLimit, SystemOptionWorkOrderStatus, SystemOptionDefaultStandardTask, SystemOptionWorkOrderStatusTypeOfWork, SystemOptionReferenceDataViewPermission, SystemOptionFileAttachmentCategory, SystemOptionFileAttachmentFileType, RecordChange, RecordChangeValue, RecordChangeUser, RecordChangeProperty, NotificationEventOutbox, NotificationEventAttachmentOutbox, NotificationOutbox, NotificationOutboxLog, ChangeDataTriggerCriteriaEvaluation, SystemOptionReportServerEntity, SystemOptionReportServerEntityDefaultReport, TemplateMigrationLog, TemplateMigrationLogIntent, ResourceActionMigrationLog, ImportSchema, ImportFile, UserDefinedQuery, ResourceActionCustomisation, TemplateCustomisation, TemplateResource, ClusterSettings, ClusterIdentityProviderSettings, MessageBrokerHost, MessageBrokerTopic, MessageBrokerTopicConsumer, TenantSettings, TenantChangeDataSubscriptionSettings, TenantIdentityProviderSettings, TenantJobSettings, TenantFileContentStoreLocationSettings, TenantFileContentStoreFileTypeGroupSettings, TenantFileContentStoreFileTypeSettings, ClusterFeatureToggle, TenantFeatureToggle, TenantHealthCheck, TenantMachineHealthCheck, ClusterHealthCheck, ClusterMachineHealthCheck, ClusterCapacitySlot, TenantChangeLogCleanupExpressionSettings, ClusterJobSettings, Ignore]) | enum |\r\n| fieldType | UserDefinedFieldMetadataEntity->FieldType | string (Allowed values: [Predefined, AnyValue, Both]) | enum |\r\n| isActive | UserDefinedFieldMetadataEntity->IsActive | boolean |  |\r\n| isMemo | UserDefinedFieldMetadataEntity->IsMemo | boolean |  |\r\n| name | UserDefinedFieldMetadataEntity->Name | string |  |\r\n| sequenceNumber | UserDefinedFieldMetadataEntity->SequenceNumber | integer | int32 |\r\n| stringLength | UserDefinedFieldMetadataEntity->StringLength | integer | int32 |\r\n| version | UserDefinedFieldMetadataEntity->Version | integer | int32 |\r\n| enableMatchUpdate | UserDefinedFieldMetadataEntity->EnableMatchUpdate | boolean |  |\r\n",
        "operationId": "GetEntityTypeUserDefinedFieldsMetadataCollection",
        "produces": [
          "application/vnd.onkey.entitycollection+json",
          "application/vnd.onkey.notification+json"
        ],
        "parameters": [
          {
            "type": "string",
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Entity type",
            "format": "enum",
            "x-nullable": false,
            "x-formatSpecifier": "EntityType"
          }
        ],
        "responses": {
          "200": {
            "x-nullable": true,
            "description": "Success response - body contains User Defined Field Metadata collection",
            "schema": {
              "$ref": "#/definitions/GetEntityTypeUserDefinedFieldsMetadataCollectionResourceAction"
            }
          },
          "default": {
            "x-nullable": true,
            "description": "Error response - operation failed"
          }
        }
      }
    }
  },
  "definitions": {
    "OperationExecutionMode": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "AllOrNone",
        "PerRecord"
      ],
      "enum": [
        "AllOrNone",
        "PerRecord"
      ]
    },
    "SeverityType": {
      "type": "string",
      "description": "",
      "x-nullable": false,
      "x-enumNames": [
        "Error",
        "Warning",
        "Information"
      ],
      "enum": [
        "error",
        "warning",
        "information"
      ]
    },
    "NotificationItemSchema": {
      "title": "NotificationItemSchema",
      "type": "object",
      "properties": {
        "code": {
          "title": "code",
          "type": "string",
          "description": "Unique code for message",
          "x-nullable": false
        },
        "message": {
          "title": "message",
          "type": "string",
          "x-nullable": false
        },
        "objectId": {
          "title": "objectId",
          "type": "string",
          "description": "Optional id of record to which the message applies",
          "x-nullable": true
        },
        "objectType": {
          "title": "objectType",
          "type": "string",
          "format": "enum",
          "x-nullable": true,
          "x-formatSpecifier": "EntityType"
        },
        "properties": {
          "title": "properties",
          "type": "array",
          "description": "Collection of properties referenced by the message using property path syntax",
          "x-nullable": true,
          "example": [
            "Asset->Code"
          ],
          "items": {
            "type": "string"
          }
        },
        "severity": {
          "$ref": "#/definitions/SeverityType"
        },
        "userObjectId": {
          "title": "userObjectId",
          "type": "string",
          "description": "Optional provided unique external record identifier to echo back with message",
          "x-nullable": true
        }
      }
    },
    "NotificationSchema": {
      "title": "NotificationSchema",
      "type": "object",
      "properties": {
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Collection of messages",
          "x-nullable": false,
          "items": {
            "$ref": "#/definitions/NotificationItemSchema"
          }
        }
      }
    },
    "MenuSchema": {
      "type": "object",
      "required": [
        "links",
        "self"
      ],
      "properties": {
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "Link": {
      "type": "object",
      "required": [
        "href",
        "method"
      ],
      "properties": {
        "doc": {
          "type": "string",
          "description": "Documentation endpoint that describes the link"
        },
        "href": {
          "type": "string",
          "description": "Endpoint to invoke link",
          "minLength": 1
        },
        "mapping": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "method": {
          "type": "string",
          "description": "HTTP method used for link",
          "minLength": 1
        },
        "module": {
          "type": "string",
          "description": "Module used by link"
        },
        "rel": {
          "type": "string"
        },
        "resource": {
          "type": "string",
          "description": "Resource used by link"
        },
        "resourceAction": {
          "type": "string",
          "description": "Resource Action used by link"
        },
        "title": {
          "type": "string",
          "description": "Title"
        },
        "type": {
          "description": "Type of link",
          "$ref": "#/definitions/ResourceLinkType"
        }
      }
    },
    "LinkMapping": {
      "type": "object",
      "required": [
        "source"
      ],
      "properties": {
        "source": {
          "type": "string"
        },
        "target": {
          "type": "string"
        }
      }
    },
    "ResourceLinkType": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "Association",
        "PrimaryAction",
        "CustomAction",
        "Collection",
        "Detail",
        "Lookup",
        "Documentation",
        "Navigation",
        "Specification"
      ],
      "enum": [
        "association",
        "primaryAction",
        "customAction",
        "collection",
        "detail",
        "lookup",
        "documentation",
        "navigation",
        "specification"
      ]
    },
    "EntityEnumMetadata": {
      "type": "object",
      "properties": {
        "module": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityEnumMetadataProperty"
          }
        }
      }
    },
    "EntityEnumMetadataProperty": {
      "type": "object",
      "required": [
        "name",
        "path",
        "dataType"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1
        },
        "path": {
          "type": "string",
          "minLength": 1
        },
        "dataType": {
          "$ref": "#/definitions/PropertyDataType"
        },
        "format": {
          "$ref": "#/definitions/PropertyFormat"
        },
        "formatSpecifier": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "PropertyDataType": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "String",
        "Number",
        "Integer",
        "Boolean",
        "Object",
        "Array"
      ],
      "enum": [
        "string",
        "number",
        "integer",
        "boolean",
        "object",
        "array"
      ]
    },
    "PropertyFormat": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "Datetime",
        "Date",
        "Int32",
        "Int64",
        "Float",
        "Double",
        "Decimal",
        "Byte",
        "Binary",
        "Password",
        "Email",
        "Phone",
        "Uuid",
        "Timespan",
        "Duration",
        "Composite",
        "Time",
        "Enum",
        "Array",
        "Memo"
      ],
      "enum": [
        "date-time",
        "date",
        "int32",
        "int64",
        "float",
        "double",
        "decimal",
        "byte",
        "binary",
        "password",
        "email",
        "phone",
        "uuid",
        "timespan",
        "duration",
        "composite",
        "time",
        "enum",
        "array",
        "memo"
      ]
    },
    "EntityMetadataDatabaseMappingDefinition": {
      "type": "object",
      "required": [
        "hasDatabaseTable"
      ],
      "properties": {
        "module": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "hasDatabaseTable": {
          "type": "boolean"
        },
        "sourceDatabase": {
          "$ref": "#/definitions/SourceDatabase"
        },
        "primaryTableName": {
          "type": "string"
        },
        "primaryKeyColumnName": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityPropertyQueryMap"
          }
        },
        "queries": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityDatabaseMappingSql"
          }
        }
      }
    },
    "SourceDatabase": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "Transaction",
        "Insights",
        "Config",
        "FileContentStore",
        "Archive"
      ],
      "enum": [
        "Transaction",
        "Insights",
        "Config",
        "FileContentStore",
        "Archive"
      ]
    },
    "EntityPropertyQueryMap": {
      "type": "object",
      "required": [
        "hasDbColumn"
      ],
      "properties": {
        "fullPropertyName": {
          "type": "string"
        },
        "propertyPath": {
          "type": "string"
        },
        "hasDbColumn": {
          "type": "boolean"
        },
        "tableName": {
          "type": "string"
        },
        "columnName": {
          "type": "string"
        },
        "dbType": {
          "$ref": "#/definitions/NpgsqlDbType"
        },
        "isEnum": {
          "type": "boolean"
        },
        "enumName": {
          "type": "string"
        },
        "isComposite": {
          "type": "boolean"
        },
        "compositeName": {
          "type": "string"
        },
        "joins": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "NpgsqlDbType": {
      "type": "string",
      "description": "Represents a PostgreSQL data type that can be written or read to the database.\nUsed in places such as NpgsqlDbType to unambiguously specify\nhow to encode or decode values.",
      "x-enumNames": [
        "Bigint",
        "Boolean",
        "Box",
        "Bytea",
        "Circle",
        "Char",
        "Date",
        "Double",
        "Integer",
        "Line",
        "LSeg",
        "Money",
        "Numeric",
        "Path",
        "Point",
        "Polygon",
        "Real",
        "Smallint",
        "Text",
        "Time",
        "Timestamp",
        "Varchar",
        "Refcursor",
        "Inet",
        "Bit",
        "TimestampTz",
        "Uuid",
        "Xml",
        "Oidvector",
        "Interval",
        "TimeTz",
        "Name",
        "Abstime",
        "MacAddr",
        "Json",
        "Jsonb",
        "Hstore",
        "InternalChar",
        "Varbit",
        "Unknown",
        "Oid",
        "Xid",
        "Cid",
        "Cidr",
        "TsVector",
        "TsQuery",
        "Regtype",
        "Geometry",
        "Citext",
        "Int2Vector",
        "Tid",
        "MacAddr8",
        "Geography",
        "Regconfig",
        "JsonPath",
        "PgLsn",
        "LTree",
        "LQuery",
        "LTxtQuery",
        "Xid8",
        "Multirange",
        "BigIntMultirange",
        "DateMultirange",
        "IntegerMultirange",
        "NumericMultirange",
        "TimestampMultirange",
        "TimestampTzMultirange",
        "Range",
        "BigIntRange",
        "DateRange",
        "IntegerRange",
        "NumericRange",
        "TimestampRange",
        "TimestampTzRange",
        "Array"
      ],
      "enum": [
        "Bigint",
        "Boolean",
        "Box",
        "Bytea",
        "Circle",
        "Char",
        "Date",
        "Double",
        "Integer",
        "Line",
        "LSeg",
        "Money",
        "Numeric",
        "Path",
        "Point",
        "Polygon",
        "Real",
        "Smallint",
        "Text",
        "Time",
        "Timestamp",
        "Varchar",
        "Refcursor",
        "Inet",
        "Bit",
        "TimestampTz",
        "Uuid",
        "Xml",
        "Oidvector",
        "Interval",
        "TimeTz",
        "Name",
        "Abstime",
        "MacAddr",
        "Json",
        "Jsonb",
        "Hstore",
        "InternalChar",
        "Varbit",
        "Unknown",
        "Oid",
        "Xid",
        "Cid",
        "Cidr",
        "TsVector",
        "TsQuery",
        "Regtype",
        "Geometry",
        "Citext",
        "Int2Vector",
        "Tid",
        "MacAddr8",
        "Geography",
        "Regconfig",
        "JsonPath",
        "PgLsn",
        "LTree",
        "LQuery",
        "LTxtQuery",
        "Xid8",
        "Multirange",
        "BigIntMultirange",
        "DateMultirange",
        "IntegerMultirange",
        "NumericMultirange",
        "TimestampMultirange",
        "TimestampTzMultirange",
        "Range",
        "BigIntRange",
        "DateRange",
        "IntegerRange",
        "NumericRange",
        "TimestampRange",
        "TimestampTzRange",
        "Array"
      ]
    },
    "EntityDatabaseMappingSql": {
      "type": "object",
      "required": [
        "includePermissions",
        "includeReferences"
      ],
      "properties": {
        "primaryTableAlias": {
          "type": "string"
        },
        "includePermissions": {
          "type": "boolean"
        },
        "includeReferences": {
          "type": "boolean"
        },
        "sql": {
          "type": "string"
        },
        "parameters": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityDatabaseQueryParameter"
          }
        }
      }
    },
    "EntityDatabaseQueryParameter": {
      "type": "object",
      "required": [
        "dbType"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "dbType": {
          "$ref": "#/definitions/NpgsqlDbType"
        },
        "value": {}
      }
    },
    "EntityMetadataSchema": {
      "type": "object",
      "required": [
        "name",
        "properties",
        "links"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityMetadataPropertySchema"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "EntityMetadataPropertySchema": {
      "type": "object",
      "required": [
        "name",
        "path",
        "dataType"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1
        },
        "path": {
          "type": "string",
          "minLength": 1
        },
        "dataType": {
          "$ref": "#/definitions/PropertyDataType"
        },
        "format": {
          "$ref": "#/definitions/PropertyFormat"
        },
        "formatSpecifier": {
          "type": "string"
        },
        "translatable": {
          "type": "boolean"
        },
        "referenceGroup": {
          "type": "string"
        },
        "originalSourcePath": {
          "type": "string"
        },
        "systemRequired": {
          "type": "boolean"
        },
        "validations": {
          "$ref": "#/definitions/PropertyValidations"
        },
        "isUserDefinedField": {
          "type": "boolean"
        },
        "userDefinedFieldName": {
          "type": "string"
        },
        "crossReferences": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/CrossReferenceSchema"
          }
        },
        "canExcludeFromPermission": {
          "$ref": "#/definitions/EntityMetadataPermissionExcludeSchema"
        }
      }
    },
    "PropertyValidations": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/PropertyValidation"
      }
    },
    "PropertyValidation": {
      "type": "object",
      "required": [
        "Origin",
        "Type"
      ],
      "properties": {
        "Exclusive": {
          "type": "boolean"
        },
        "Expression": {
          "type": "string"
        },
        "Origin": {
          "$ref": "#/definitions/ValidationOrigin"
        },
        "Type": {
          "$ref": "#/definitions/ValidationType"
        },
        "Value": {}
      }
    },
    "ValidationOrigin": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "Domain",
        "Api",
        "Custom"
      ],
      "enum": [
        "domain",
        "api",
        "custom"
      ]
    },
    "ValidationType": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "Null",
        "Required",
        "Pattern",
        "MinValue",
        "MaxValue",
        "MinLength",
        "MaxLength",
        "ReadOnly"
      ],
      "enum": [
        "null",
        "required",
        "pattern",
        "minValue",
        "maxValue",
        "minLength",
        "maxLength",
        "readonly"
      ]
    },
    "CrossReferenceSchema": {
      "type": "object",
      "required": [
        "resource",
        "resourceAction",
        "filterPath",
        "name"
      ],
      "properties": {
        "resource": {
          "type": "string",
          "minLength": 1
        },
        "resourceAction": {
          "type": "string",
          "minLength": 1
        },
        "filterPath": {
          "type": "string",
          "minLength": 1
        },
        "name": {
          "type": "string",
          "minLength": 1
        }
      }
    },
    "EntityMetadataPermissionExcludeSchema": {
      "type": "object",
      "required": [
        "forView",
        "forInsert",
        "forEdit"
      ],
      "properties": {
        "forView": {
          "type": "boolean"
        },
        "forInsert": {
          "type": "boolean"
        },
        "forEdit": {
          "type": "boolean"
        }
      }
    },
    "EntityMetadataTreeLevelSchema": {
      "type": "object",
      "required": [
        "entityName",
        "nodes",
        "links"
      ],
      "properties": {
        "entityName": {
          "type": "string",
          "minLength": 1
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityMetadataTreeItemSchema"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "EntityMetadataTreeItemSchema": {
      "type": "object",
      "required": [
        "name",
        "generatedName",
        "path",
        "dataType",
        "selectable",
        "expandable",
        "target",
        "links",
        "crossReferences",
        "allowNull"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1
        },
        "generatedName": {
          "type": "string",
          "minLength": 1
        },
        "path": {
          "type": "string",
          "minLength": 1
        },
        "dataType": {
          "$ref": "#/definitions/PropertyDataType"
        },
        "format": {
          "$ref": "#/definitions/PropertyFormat"
        },
        "formatSpecifier": {
          "type": "string"
        },
        "originalSourcePath": {
          "type": "string"
        },
        "selectable": {
          "type": "boolean"
        },
        "expandable": {
          "type": "boolean"
        },
        "target": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "validations": {
          "$ref": "#/definitions/PropertyValidations"
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "crossReferences": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityMetadataTreeItemSchema"
          }
        },
        "allowNull": {
          "type": "boolean"
        }
      }
    },
    "EntityMetadataTreePathMapCollectionSchema": {
      "type": "object",
      "required": [
        "count",
        "items",
        "links"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "format": "int32"
        },
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityMetadataTreePathMapSchema"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "EntityMetadataTreePathMapSchema": {
      "type": "object",
      "required": [
        "expandPath",
        "targetName",
        "targetPath",
        "links"
      ],
      "properties": {
        "expandPath": {
          "type": "string",
          "minLength": 1
        },
        "targetName": {
          "type": "string",
          "minLength": 1
        },
        "targetPath": {
          "type": "string",
          "minLength": 1
        },
        "isCrossReference": {
          "type": "boolean"
        },
        "crossReferenceName": {
          "type": "string"
        },
        "crossReferenceAllowNulls": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "EnumMetadata": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "usedBy": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EnumMetadataEntityProperty"
          }
        }
      }
    },
    "EnumMetadataEntityProperty": {
      "type": "object",
      "required": [
        "entityName",
        "propertyName",
        "propertyPath"
      ],
      "properties": {
        "entityName": {
          "type": "string",
          "minLength": 1
        },
        "propertyName": {
          "type": "string",
          "minLength": 1
        },
        "propertyPath": {
          "type": "string",
          "minLength": 1
        }
      }
    },
    "EntityMetadataSummaryCollectionSchema": {
      "type": "object",
      "required": [
        "items",
        "links",
        "self"
      ],
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EntityMetadataSummarySchema"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "EntityMetadataSummarySchema": {
      "type": "object",
      "required": [
        "moduleName",
        "entityName",
        "links",
        "self"
      ],
      "properties": {
        "moduleName": {
          "type": "string",
          "minLength": 1
        },
        "entityName": {
          "type": "string",
          "minLength": 1
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "GetAllReportServerEntitiesMetadataCollectionResourceActionResponse": {
      "title": "GetAllReportServerEntitiesMetadataCollectionResourceActionResponse",
      "type": "object",
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "format": "int64",
          "x-nullable": true,
          "x-propertyPath": "ReportServerEntityMetadataEntity->Id"
        },
        "version": {
          "title": "version",
          "type": "integer",
          "format": "int32",
          "x-nullable": true,
          "x-propertyPath": "ReportServerEntityMetadataEntity->Version"
        },
        "categories": {
          "title": "categories",
          "type": "array",
          "format": "array",
          "x-nullable": true,
          "items": {
            "type": "string"
          },
          "x-propertyPath": "ReportServerEntityMetadataEntity->Categories",
          "x-formatSpecifier": "String"
        },
        "defaultReportName": {
          "title": "defaultReportName",
          "type": "string",
          "x-nullable": true,
          "x-propertyPath": "ReportServerEntityMetadataEntity->DefaultReportName"
        },
        "entityType": {
          "title": "entityType",
          "type": "string",
          "format": "enum",
          "x-nullable": true,
          "x-propertyPath": "ReportServerEntityMetadataEntity->EntityType",
          "x-formatSpecifier": "EntityType"
        }
      }
    },
    "GetAllReportServerEntitiesMetadataCollectionResourceAction": {
      "title": "GetAllReportServerEntitiesMetadataCollectionResourceAction",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of Metadata entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Collection of Metadata entities",
          "items": {
            "$ref": "#/definitions/GetAllReportServerEntitiesMetadataCollectionResourceActionResponse"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "EnumMetadataCollection": {
      "type": "object",
      "required": [
        "count",
        "items",
        "links"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "format": "int32"
        },
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/EnumMetadata"
          }
        },
        "links": {
          "type": "array",
          "description": "Hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "self": {
          "description": "Self link to re-execute",
          "$ref": "#/definitions/Link"
        }
      }
    },
    "ModuleSummarySchema": {
      "type": "object",
      "required": [
        "name",
        "description",
        "self",
        "links"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1
        },
        "description": {
          "type": "string",
          "minLength": 1
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "GetResourceActionCustomisationOwnershipCollectionResourceActionResponse": {
      "title": "GetResourceActionCustomisationOwnershipCollectionResourceActionResponse",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "next": {
          "$ref": "#/definitions/Link"
        },
        "prev": {
          "$ref": "#/definitions/Link"
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Pageable collection of entities",
          "items": {
            "title": "GetResourceActionCustomisationOwnershipCollectionResourceActionResponseItem",
            "type": "object",
            "properties": {
              "class": {
                "title": "class",
                "type": "string"
              },
              "id": {
                "title": "id",
                "type": "integer",
                "description": "Id of the entity",
                "format": "int64",
                "example": 5000001018
              },
              "version": {
                "title": "version",
                "type": "integer",
                "description": "Version of the entity",
                "format": "int32",
                "x-nullable": true,
                "example": 2
              },
              "properties": {
                "title": "GetResourceActionCustomisationOwnershipCollectionResourceActionResponseItemProperties",
                "type": "object",
                "properties": {
                  "name": {
                    "title": "name",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->Name"
                  },
                  "description": {
                    "title": "description",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "ResourceActionCustomisation->Description"
                  },
                  "restrictionLevel": {
                    "title": "restrictionLevel",
                    "type": "string",
                    "format": "enum",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->RestrictionLevel",
                    "x-formatSpecifier": "RestrictionLevel"
                  },
                  "resource": {
                    "title": "resource",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->Resource"
                  },
                  "resourceAction": {
                    "title": "resourceAction",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->ResourceAction"
                  },
                  "module": {
                    "title": "module",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->Module"
                  },
                  "isRunnable": {
                    "title": "isRunnable",
                    "type": "boolean",
                    "x-nullable": true,
                    "x-propertyPath": "ResourceActionCustomisation->IsRunnable"
                  },
                  "createdByUserFullName": {
                    "title": "createdByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->CreatedByUser_FullName"
                  },
                  "createdOn": {
                    "title": "createdOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "ResourceActionCustomisation->CreatedOn"
                  }
                }
              },
              "links": {
                "title": "links",
                "type": "array",
                "description": "Collection of hypermedia links",
                "items": {
                  "$ref": "#/definitions/Link"
                }
              }
            }
          }
        },
        "mapping": {
          "title": "mapping",
          "type": "array",
          "description": "Collection of source to target property mappings",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "ResourceActionCustomisationUserLookupResourceActionResponse": {
      "title": "ResourceActionCustomisationUserLookupResourceActionResponse",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "next": {
          "$ref": "#/definitions/Link"
        },
        "prev": {
          "$ref": "#/definitions/Link"
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Pageable collection of entities",
          "items": {
            "title": "ResourceActionCustomisationUserLookupResourceActionResponseItem",
            "type": "object",
            "properties": {
              "class": {
                "title": "class",
                "type": "string"
              },
              "id": {
                "title": "id",
                "type": "integer",
                "description": "Id of the entity",
                "format": "int64",
                "example": 5000001018
              },
              "version": {
                "title": "version",
                "type": "integer",
                "description": "Version of the entity",
                "format": "int32",
                "x-nullable": true,
                "example": 2
              },
              "properties": {
                "title": "ResourceActionCustomisationUserLookupResourceActionResponseItemProperties",
                "type": "object",
                "properties": {
                  "code": {
                    "title": "code",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "User->Code"
                  },
                  "fullName": {
                    "title": "fullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "User->FullName"
                  }
                }
              },
              "links": {
                "title": "links",
                "type": "array",
                "description": "Collection of hypermedia links",
                "items": {
                  "$ref": "#/definitions/Link"
                }
              }
            }
          }
        },
        "mapping": {
          "title": "mapping",
          "type": "array",
          "description": "Collection of source to target property mappings",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "DeleteResourceActionCustomisationByIdRequest": {
      "title": "DeleteResourceActionCustomisationByIdRequest",
      "type": "object",
      "required": [
        "version"
      ],
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "description": "Id of the entity to delete. Only required for batch operations as non-batch operations specify the id in the url.",
          "format": "int64",
          "x-nullable": true,
          "example": 1
        },
        "version": {
          "title": "version",
          "type": "integer",
          "description": "Version of the entity to delete",
          "format": "int32",
          "example": 1
        }
      }
    },
    "BatchDeleteResourceActionCustomisationResourceActionRequest": {
      "title": "BatchDeleteResourceActionCustomisationResourceActionRequest",
      "type": "array",
      "items": {
        "$ref": "#/definitions/DeleteResourceActionCustomisationByIdRequest"
      }
    },
    "PatchOperationType": {
      "type": "string",
      "description": "",
      "x-nullable": true,
      "x-enumNames": [
        "Replace",
        "Add",
        "Remove"
      ],
      "enum": [
        "replace",
        "add",
        "remove"
      ]
    },
    "EntityPatchOperationSchema": {
      "type": "object",
      "required": [
        "path",
        "value"
      ],
      "properties": {
        "op": {
          "title": "op",
          "description": "Type of operation to apply",
          "example": "replace",
          "$ref": "#/definitions/PatchOperationType"
        },
        "path": {
          "title": "path",
          "type": "string",
          "description": "Property path for the property being updated",
          "x-nullable": false,
          "example": "Asset->Code"
        },
        "value": {
          "title": "value",
          "type": "object",
          "description": "Value for the property being updated",
          "x-nullable": true,
          "example": "BOILER"
        }
      }
    },
    "ChangeResourceActionCustomisationOwnership": {
      "title": "ChangeResourceActionCustomisationOwnership",
      "type": "object",
      "required": [
        "version"
      ],
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "description": "Id of the entity to patch. Only required for batch operations as non-batch operations specify the id in the url.",
          "format": "int64",
          "x-nullable": true,
          "example": 1
        },
        "version": {
          "title": "version",
          "type": "integer",
          "description": "Version of the entity to patch",
          "format": "int32",
          "example": 1
        },
        "operations": {
          "title": "operations",
          "type": "array",
          "description": "Collection of patch operations to apply to the entity",
          "items": {
            "$ref": "#/definitions/EntityPatchOperationSchema"
          },
          "x-patchproperties": [
            {
              "title": "userId",
              "type": "integer",
              "format": "int64",
              "x-nullable": false,
              "x-propertyPath": "ChangeResourceActionCustomisationOwnership->UserId"
            }
          ]
        }
      }
    },
    "ChangeResourceActionCustomisationOwnershipResourceActionRequest": {
      "title": "ChangeResourceActionCustomisationOwnershipResourceActionRequest",
      "type": "array",
      "items": {
        "$ref": "#/definitions/ChangeResourceActionCustomisationOwnership"
      }
    },
    "ResourceActionSummarySchema": {
      "type": "object",
      "required": [
        "moduleName",
        "resourceName",
        "resourceActionName",
        "type",
        "links",
        "httpMethod"
      ],
      "properties": {
        "moduleName": {
          "type": "string",
          "minLength": 1
        },
        "resourceName": {
          "type": "string",
          "minLength": 1
        },
        "resourceActionName": {
          "type": "string",
          "minLength": 1
        },
        "type": {
          "type": "string",
          "minLength": 1
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "httpMethod": {
          "type": "string",
          "minLength": 1
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "ResourceSummarySchema": {
      "type": "object",
      "required": [
        "moduleName",
        "resourceName",
        "resourceDescription",
        "self",
        "links"
      ],
      "properties": {
        "moduleName": {
          "type": "string",
          "minLength": 1
        },
        "resourceName": {
          "type": "string",
          "minLength": 1
        },
        "resourceDescription": {
          "type": "string"
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "ResourceActionCustomisationSchema": {
      "type": "object",
      "required": [
        "id",
        "version",
        "resource",
        "resourceAction",
        "isTemp"
      ],
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "version": {
          "type": "integer",
          "format": "int32"
        },
        "resource": {
          "type": "string"
        },
        "resourceAction": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "isTemp": {
          "type": "boolean"
        },
        "request": {
          "$ref": "#/definitions/ResourceActionCustomisationRequestSchema"
        },
        "response": {
          "$ref": "#/definitions/ResourceActionCustomisationResponseSchema"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "restrictionLevel": {
          "$ref": "#/definitions/RestrictionLevel"
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "ResourceActionCustomisationRequestSchema": {
      "type": "object",
      "required": [
        "properties"
      ],
      "properties": {
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ResourceActionCustomisationRequestPropertySchema"
          }
        }
      }
    },
    "ResourceActionCustomisationRequestPropertySchema": {
      "type": "object",
      "required": [
        "path",
        "validations"
      ],
      "properties": {
        "path": {
          "type": "string"
        },
        "validations": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ResourceActionCustomisationRequestPropertyValidationSchema"
          }
        }
      }
    },
    "ResourceActionCustomisationRequestPropertyValidationSchema": {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "type": {
          "$ref": "#/definitions/ValidationType"
        },
        "expression": {
          "type": "string"
        },
        "value": {}
      }
    },
    "ResourceActionCustomisationResponseSchema": {
      "type": "object",
      "required": [
        "properties"
      ],
      "properties": {
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ResourceActionCustomisationResponsePropertySchema"
          }
        },
        "criteria": {
          "type": "string"
        },
        "orderBy": {
          "type": "string"
        }
      }
    },
    "ResourceActionCustomisationResponsePropertySchema": {
      "type": "object",
      "required": [
        "path"
      ],
      "properties": {
        "path": {
          "type": "string",
          "minLength": 1
        }
      }
    },
    "RestrictionLevel": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "Public",
        "PublicReadOnly",
        "Private"
      ],
      "enum": [
        "Public",
        "PublicReadOnly",
        "Private"
      ]
    },
    "GetResourceActionCustomisationsResourceActionResponse": {
      "title": "GetResourceActionCustomisationsResourceActionResponse",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "next": {
          "$ref": "#/definitions/Link"
        },
        "prev": {
          "$ref": "#/definitions/Link"
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Pageable collection of entities",
          "items": {
            "title": "GetResourceActionCustomisationsResourceActionResponseItem",
            "type": "object",
            "properties": {
              "class": {
                "title": "class",
                "type": "string"
              },
              "id": {
                "title": "id",
                "type": "integer",
                "description": "Id of the entity",
                "format": "int64",
                "example": 5000001018
              },
              "version": {
                "title": "version",
                "type": "integer",
                "description": "Version of the entity",
                "format": "int32",
                "x-nullable": true,
                "example": 2
              },
              "properties": {
                "title": "GetResourceActionCustomisationsResourceActionResponseItemProperties",
                "type": "object",
                "properties": {
                  "name": {
                    "title": "name",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->Name"
                  },
                  "description": {
                    "title": "description",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "ResourceActionCustomisation->Description"
                  },
                  "restrictionLevel": {
                    "title": "restrictionLevel",
                    "type": "string",
                    "format": "enum",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->RestrictionLevel",
                    "x-formatSpecifier": "RestrictionLevel"
                  },
                  "isRunnable": {
                    "title": "isRunnable",
                    "type": "boolean",
                    "x-nullable": true,
                    "x-propertyPath": "ResourceActionCustomisation->IsRunnable"
                  },
                  "createdByUserFullName": {
                    "title": "createdByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->CreatedByUser_FullName"
                  },
                  "createdOn": {
                    "title": "createdOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "ResourceActionCustomisation->CreatedOn"
                  },
                  "modifiedByUserFullName": {
                    "title": "modifiedByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "ResourceActionCustomisation->ModifiedByUser_FullName"
                  },
                  "modifiedOn": {
                    "title": "modifiedOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "ResourceActionCustomisation->ModifiedOn"
                  }
                }
              },
              "links": {
                "title": "links",
                "type": "array",
                "description": "Collection of hypermedia links",
                "items": {
                  "$ref": "#/definitions/Link"
                }
              }
            }
          }
        },
        "mapping": {
          "title": "mapping",
          "type": "array",
          "description": "Collection of source to target property mappings",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "ResourceActionCustomisationCreateSchema": {
      "type": "object",
      "required": [
        "isTemp"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "isTemp": {
          "type": "boolean"
        },
        "request": {
          "$ref": "#/definitions/ResourceActionCustomisationRequestSchema"
        },
        "response": {
          "$ref": "#/definitions/ResourceActionCustomisationResponseSchema"
        },
        "restrictionLevel": {
          "$ref": "#/definitions/RestrictionLevel"
        }
      }
    },
    "ResourceActionCustomisationUpdateSchema": {
      "type": "object",
      "required": [
        "version"
      ],
      "properties": {
        "version": {
          "type": "integer",
          "format": "int32"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "request": {
          "$ref": "#/definitions/ResourceActionCustomisationRequestSchema"
        },
        "response": {
          "$ref": "#/definitions/ResourceActionCustomisationResponseSchema"
        },
        "restrictionLevel": {
          "$ref": "#/definitions/RestrictionLevel"
        }
      }
    },
    "DeleteResourceActionCustomisationResourceActionRequest": {
      "title": "DeleteResourceActionCustomisationResourceActionRequest",
      "type": "object",
      "required": [
        "version"
      ],
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "description": "Id of the entity to delete. Only required for batch operations as non-batch operations specify the id in the url.",
          "format": "int64",
          "x-nullable": true,
          "example": 1
        },
        "version": {
          "title": "version",
          "type": "integer",
          "description": "Version of the entity to delete",
          "format": "int32",
          "example": 1
        }
      }
    },
    "ResourceSchema": {
      "type": "object",
      "required": [
        "name",
        "description",
        "self",
        "primaryActions",
        "links"
      ],
      "properties": {
        "name": {
          "type": "string",
          "minLength": 1
        },
        "description": {
          "type": "string"
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "primaryActions": {
          "$ref": "#/definitions/PrimaryActionsSchema"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "PrimaryActionsSchema": {
      "type": "object",
      "required": [
        "fetch",
        "batchFetch",
        "query",
        "create",
        "batchCreate",
        "update",
        "batchUpdate",
        "delete",
        "batchDelete"
      ],
      "properties": {
        "fetch": {
          "$ref": "#/definitions/Link"
        },
        "batchFetch": {
          "$ref": "#/definitions/Link"
        },
        "query": {
          "$ref": "#/definitions/Link"
        },
        "create": {
          "$ref": "#/definitions/Link"
        },
        "batchCreate": {
          "$ref": "#/definitions/Link"
        },
        "update": {
          "$ref": "#/definitions/Link"
        },
        "batchUpdate": {
          "$ref": "#/definitions/Link"
        },
        "delete": {
          "$ref": "#/definitions/Link"
        },
        "batchDelete": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "SpecSchema": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "OpenApi3",
        "OpenApi2"
      ],
      "enum": [
        "openapi3",
        "openapi2"
      ]
    },
    "TemplateCustomisationSchema": {
      "type": "object",
      "required": [
        "id",
        "version",
        "module",
        "template",
        "isTemp"
      ],
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "version": {
          "type": "integer",
          "format": "int32"
        },
        "module": {
          "type": "string"
        },
        "template": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "isTemp": {
          "type": "boolean"
        },
        "content": {},
        "restrictionLevel": {
          "$ref": "#/definitions/RestrictionLevel"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "GetAllTemplateCustomisationCollectionResourceActionResponse": {
      "title": "GetAllTemplateCustomisationCollectionResourceActionResponse",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "next": {
          "$ref": "#/definitions/Link"
        },
        "prev": {
          "$ref": "#/definitions/Link"
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Pageable collection of entities",
          "items": {
            "title": "GetAllTemplateCustomisationCollectionResourceActionResponseItem",
            "type": "object",
            "properties": {
              "class": {
                "title": "class",
                "type": "string"
              },
              "id": {
                "title": "id",
                "type": "integer",
                "description": "Id of the entity",
                "format": "int64",
                "example": 5000001018
              },
              "version": {
                "title": "version",
                "type": "integer",
                "description": "Version of the entity",
                "format": "int32",
                "x-nullable": true,
                "example": 2
              },
              "properties": {
                "title": "GetAllTemplateCustomisationCollectionResourceActionResponseItemProperties",
                "type": "object",
                "properties": {
                  "name": {
                    "title": "name",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->Name"
                  },
                  "description": {
                    "title": "description",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Description"
                  },
                  "restrictionLevel": {
                    "title": "restrictionLevel",
                    "type": "string",
                    "format": "enum",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->RestrictionLevel",
                    "x-formatSpecifier": "RestrictionLevel"
                  },
                  "module": {
                    "title": "module",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->Module"
                  },
                  "type": {
                    "title": "type",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Type"
                  },
                  "isRunnable": {
                    "title": "isRunnable",
                    "type": "boolean",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->IsRunnable"
                  },
                  "createdByUserFullName": {
                    "title": "createdByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->CreatedByUser_FullName"
                  },
                  "createdOn": {
                    "title": "createdOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "TemplateCustomisation->CreatedOn"
                  },
                  "modifiedByUserFullName": {
                    "title": "modifiedByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->ModifiedByUser_FullName"
                  },
                  "modifiedOn": {
                    "title": "modifiedOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "TemplateCustomisation->ModifiedOn"
                  }
                }
              },
              "links": {
                "title": "links",
                "type": "array",
                "description": "Collection of hypermedia links",
                "items": {
                  "$ref": "#/definitions/Link"
                }
              }
            }
          }
        },
        "mapping": {
          "title": "mapping",
          "type": "array",
          "description": "Collection of source to target property mappings",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "GetModuleTemplateCustomisationCollectionResourceActionResponse": {
      "title": "GetModuleTemplateCustomisationCollectionResourceActionResponse",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "next": {
          "$ref": "#/definitions/Link"
        },
        "prev": {
          "$ref": "#/definitions/Link"
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Pageable collection of entities",
          "items": {
            "title": "GetModuleTemplateCustomisationCollectionResourceActionResponseItem",
            "type": "object",
            "properties": {
              "class": {
                "title": "class",
                "type": "string"
              },
              "id": {
                "title": "id",
                "type": "integer",
                "description": "Id of the entity",
                "format": "int64",
                "example": 5000001018
              },
              "version": {
                "title": "version",
                "type": "integer",
                "description": "Version of the entity",
                "format": "int32",
                "x-nullable": true,
                "example": 2
              },
              "properties": {
                "title": "GetModuleTemplateCustomisationCollectionResourceActionResponseItemProperties",
                "type": "object",
                "properties": {
                  "name": {
                    "title": "name",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->Name"
                  },
                  "description": {
                    "title": "description",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Description"
                  },
                  "restrictionLevel": {
                    "title": "restrictionLevel",
                    "type": "string",
                    "format": "enum",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->RestrictionLevel",
                    "x-formatSpecifier": "RestrictionLevel"
                  },
                  "module": {
                    "title": "module",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->Module"
                  },
                  "type": {
                    "title": "type",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Type"
                  },
                  "isRunnable": {
                    "title": "isRunnable",
                    "type": "boolean",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->IsRunnable"
                  },
                  "createdByUserFullName": {
                    "title": "createdByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->CreatedByUser_FullName"
                  },
                  "createdOn": {
                    "title": "createdOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "TemplateCustomisation->CreatedOn"
                  },
                  "modifiedByUserFullName": {
                    "title": "modifiedByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->ModifiedByUser_FullName"
                  },
                  "modifiedOn": {
                    "title": "modifiedOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "TemplateCustomisation->ModifiedOn"
                  }
                }
              },
              "links": {
                "title": "links",
                "type": "array",
                "description": "Collection of hypermedia links",
                "items": {
                  "$ref": "#/definitions/Link"
                }
              }
            }
          }
        },
        "mapping": {
          "title": "mapping",
          "type": "array",
          "description": "Collection of source to target property mappings",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "GetTemplateCustomisationCollectionResourceActionResponse": {
      "title": "GetTemplateCustomisationCollectionResourceActionResponse",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "next": {
          "$ref": "#/definitions/Link"
        },
        "prev": {
          "$ref": "#/definitions/Link"
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Pageable collection of entities",
          "items": {
            "title": "GetTemplateCustomisationCollectionResourceActionResponseItem",
            "type": "object",
            "properties": {
              "class": {
                "title": "class",
                "type": "string"
              },
              "id": {
                "title": "id",
                "type": "integer",
                "description": "Id of the entity",
                "format": "int64",
                "example": 5000001018
              },
              "version": {
                "title": "version",
                "type": "integer",
                "description": "Version of the entity",
                "format": "int32",
                "x-nullable": true,
                "example": 2
              },
              "properties": {
                "title": "GetTemplateCustomisationCollectionResourceActionResponseItemProperties",
                "type": "object",
                "properties": {
                  "template": {
                    "title": "template",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Template"
                  },
                  "name": {
                    "title": "name",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->Name"
                  },
                  "description": {
                    "title": "description",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Description"
                  },
                  "restrictionLevel": {
                    "title": "restrictionLevel",
                    "type": "string",
                    "format": "enum",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->RestrictionLevel",
                    "x-formatSpecifier": "RestrictionLevel"
                  },
                  "createdByUserId": {
                    "title": "createdByUserId",
                    "type": "integer",
                    "format": "int64",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->CreatedByUser_Id"
                  },
                  "createdByUserFullName": {
                    "title": "createdByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->CreatedByUser_FullName"
                  },
                  "createdOn": {
                    "title": "createdOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "TemplateCustomisation->CreatedOn"
                  },
                  "modifiedByUserFullName": {
                    "title": "modifiedByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->ModifiedByUser_FullName"
                  },
                  "modifiedOn": {
                    "title": "modifiedOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "TemplateCustomisation->ModifiedOn"
                  }
                }
              },
              "links": {
                "title": "links",
                "type": "array",
                "description": "Collection of hypermedia links",
                "items": {
                  "$ref": "#/definitions/Link"
                }
              }
            }
          }
        },
        "mapping": {
          "title": "mapping",
          "type": "array",
          "description": "Collection of source to target property mappings",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "TemplateCustomisationCreateSchema": {
      "type": "object",
      "required": [
        "isTemp",
        "content",
        "restrictionLevel"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "isTemp": {
          "type": "boolean"
        },
        "content": {},
        "restrictionLevel": {
          "$ref": "#/definitions/RestrictionLevel"
        }
      }
    },
    "TemplateCustomisationUpdateSchema": {
      "type": "object",
      "required": [
        "version",
        "content",
        "restrictionLevel"
      ],
      "properties": {
        "version": {
          "type": "integer",
          "format": "int32"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "content": {},
        "restrictionLevel": {
          "$ref": "#/definitions/RestrictionLevel"
        }
      }
    },
    "DeleteTemplateCustomisationResourceActionRequest": {
      "title": "DeleteTemplateCustomisationResourceActionRequest",
      "type": "object",
      "required": [
        "version"
      ],
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "description": "Id of the entity to delete. Only required for batch operations as non-batch operations specify the id in the url.",
          "format": "int64",
          "x-nullable": true,
          "example": 1
        },
        "version": {
          "title": "version",
          "type": "integer",
          "description": "Version of the entity to delete",
          "format": "int32",
          "example": 1
        }
      }
    },
    "GetTemplateCustomisationOwnershipCollectionResourceActionResponse": {
      "title": "GetTemplateCustomisationOwnershipCollectionResourceActionResponse",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "next": {
          "$ref": "#/definitions/Link"
        },
        "prev": {
          "$ref": "#/definitions/Link"
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Pageable collection of entities",
          "items": {
            "title": "GetTemplateCustomisationOwnershipCollectionResourceActionResponseItem",
            "type": "object",
            "properties": {
              "class": {
                "title": "class",
                "type": "string"
              },
              "id": {
                "title": "id",
                "type": "integer",
                "description": "Id of the entity",
                "format": "int64",
                "example": 5000001018
              },
              "version": {
                "title": "version",
                "type": "integer",
                "description": "Version of the entity",
                "format": "int32",
                "x-nullable": true,
                "example": 2
              },
              "properties": {
                "title": "GetTemplateCustomisationOwnershipCollectionResourceActionResponseItemProperties",
                "type": "object",
                "properties": {
                  "name": {
                    "title": "name",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->Name"
                  },
                  "description": {
                    "title": "description",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Description"
                  },
                  "restrictionLevel": {
                    "title": "restrictionLevel",
                    "type": "string",
                    "format": "enum",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->RestrictionLevel",
                    "x-formatSpecifier": "RestrictionLevel"
                  },
                  "module": {
                    "title": "module",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->Module"
                  },
                  "type": {
                    "title": "type",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Type"
                  },
                  "template": {
                    "title": "template",
                    "type": "string",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->Template"
                  },
                  "createdByUserId": {
                    "title": "createdByUserId",
                    "type": "integer",
                    "format": "int64",
                    "x-nullable": true,
                    "x-propertyPath": "TemplateCustomisation->CreatedByUser_Id"
                  },
                  "createdByUserFullName": {
                    "title": "createdByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->CreatedByUser_FullName"
                  },
                  "createdOn": {
                    "title": "createdOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "TemplateCustomisation->CreatedOn"
                  },
                  "modifiedByUserFullName": {
                    "title": "modifiedByUserFullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "TemplateCustomisation->ModifiedByUser_FullName"
                  },
                  "modifiedOn": {
                    "title": "modifiedOn",
                    "type": "string",
                    "format": "date-time",
                    "x-nullable": true,
                    "example": "2005-04-20T11:52:23.0000000Z",
                    "x-propertyPath": "TemplateCustomisation->ModifiedOn"
                  }
                }
              },
              "links": {
                "title": "links",
                "type": "array",
                "description": "Collection of hypermedia links",
                "items": {
                  "$ref": "#/definitions/Link"
                }
              }
            }
          }
        },
        "mapping": {
          "title": "mapping",
          "type": "array",
          "description": "Collection of source to target property mappings",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "TemplateCustomisationUserLookupResourceActionResponse": {
      "title": "TemplateCustomisationUserLookupResourceActionResponse",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "next": {
          "$ref": "#/definitions/Link"
        },
        "prev": {
          "$ref": "#/definitions/Link"
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Pageable collection of entities",
          "items": {
            "title": "TemplateCustomisationUserLookupResourceActionResponseItem",
            "type": "object",
            "properties": {
              "class": {
                "title": "class",
                "type": "string"
              },
              "id": {
                "title": "id",
                "type": "integer",
                "description": "Id of the entity",
                "format": "int64",
                "example": 5000001018
              },
              "version": {
                "title": "version",
                "type": "integer",
                "description": "Version of the entity",
                "format": "int32",
                "x-nullable": true,
                "example": 2
              },
              "properties": {
                "title": "TemplateCustomisationUserLookupResourceActionResponseItemProperties",
                "type": "object",
                "properties": {
                  "code": {
                    "title": "code",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "User->Code"
                  },
                  "fullName": {
                    "title": "fullName",
                    "type": "string",
                    "x-nullable": false,
                    "x-propertyPath": "User->FullName"
                  }
                }
              },
              "links": {
                "title": "links",
                "type": "array",
                "description": "Collection of hypermedia links",
                "items": {
                  "$ref": "#/definitions/Link"
                }
              }
            }
          }
        },
        "mapping": {
          "title": "mapping",
          "type": "array",
          "description": "Collection of source to target property mappings",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/LinkMapping"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "DeleteTemplateCustomisationByIdResourceActionRequest": {
      "title": "DeleteTemplateCustomisationByIdResourceActionRequest",
      "type": "object",
      "required": [
        "version"
      ],
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "description": "Id of the entity to delete. Only required for batch operations as non-batch operations specify the id in the url.",
          "format": "int64",
          "x-nullable": true,
          "example": 1
        },
        "version": {
          "title": "version",
          "type": "integer",
          "description": "Version of the entity to delete",
          "format": "int32",
          "example": 1
        }
      }
    },
    "BatchDeleteTemplateCustomisationResourceActionRequest": {
      "title": "BatchDeleteTemplateCustomisationResourceActionRequest",
      "type": "array",
      "items": {
        "$ref": "#/definitions/DeleteTemplateCustomisationByIdResourceActionRequest"
      }
    },
    "ChangeTemplateCustomisationOwnership": {
      "title": "ChangeTemplateCustomisationOwnership",
      "type": "object",
      "required": [
        "version"
      ],
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "description": "Id of the entity to patch. Only required for batch operations as non-batch operations specify the id in the url.",
          "format": "int64",
          "x-nullable": true,
          "example": 1
        },
        "version": {
          "title": "version",
          "type": "integer",
          "description": "Version of the entity to patch",
          "format": "int32",
          "example": 1
        },
        "operations": {
          "title": "operations",
          "type": "array",
          "description": "Collection of patch operations to apply to the entity",
          "items": {
            "$ref": "#/definitions/EntityPatchOperationSchema"
          },
          "x-patchproperties": [
            {
              "title": "userId",
              "type": "integer",
              "format": "int64",
              "x-nullable": false,
              "x-propertyPath": "ChangeTemplateCustomisationOwnership->UserId"
            }
          ]
        }
      }
    },
    "ChangeTemplateCustomisationOwnershipResourceActionRequest": {
      "title": "ChangeTemplateCustomisationOwnershipResourceActionRequest",
      "type": "array",
      "items": {
        "$ref": "#/definitions/ChangeTemplateCustomisationOwnership"
      }
    },
    "TemplateMigrationCollectionSchema": {
      "type": "object",
      "required": [
        "count",
        "items"
      ],
      "properties": {
        "count": {
          "type": "integer",
          "format": "int32"
        },
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/TemplateMigrationSchema"
          }
        }
      }
    },
    "TemplateMigrationSchema": {
      "type": "object",
      "required": [
        "name",
        "module",
        "id",
        "isGlobal",
        "onkeyVersion",
        "sequenceNumber",
        "templateContent",
        "intentContent"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "module": {
          "type": "string"
        },
        "id": {
          "type": "string",
          "format": "guid"
        },
        "isGlobal": {
          "type": "boolean"
        },
        "onkeyVersion": {
          "type": "string"
        },
        "sequenceNumber": {
          "type": "integer",
          "format": "int32"
        },
        "templateContent": {},
        "intentContent": {}
      }
    },
    "TemplateSummarySchema": {
      "type": "object",
      "required": [
        "moduleName",
        "templateName",
        "templateType"
      ],
      "properties": {
        "moduleName": {
          "type": "string",
          "minLength": 1
        },
        "templateName": {
          "type": "string",
          "minLength": 1
        },
        "templateType": {
          "type": "string",
          "minLength": 1
        },
        "self": {
          "$ref": "#/definitions/Link"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Link"
          }
        }
      }
    },
    "TranslationSetSchema": {
      "type": "object",
      "required": [
        "id",
        "name",
        "items"
      ],
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "name": {
          "type": "string"
        },
        "langId": {
          "type": "integer",
          "format": "int64"
        },
        "lang": {
          "type": "string"
        },
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/TranslationSchema"
          }
        }
      }
    },
    "TranslationSchema": {
      "type": "object",
      "required": [
        "name",
        "value",
        "source"
      ],
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        },
        "source": {
          "$ref": "#/definitions/TranslationSource"
        }
      }
    },
    "TranslationSource": {
      "type": "string",
      "description": "",
      "x-enumNames": [
        "System",
        "User"
      ],
      "enum": [
        "System",
        "User"
      ]
    },
    "DynamicValueSchema": {
      "title": "DynamicValueSchema",
      "type": "object",
      "properties": {
        "type": {
          "title": "type",
          "type": "string",
          "format": "enum",
          "x-nullable": false,
          "x-formatSpecifier": "DynamicValueType",
          "x-enumNames": [
            "String",
            "Email",
            "Integer",
            "Long",
            "Float",
            "Currency",
            "DateTime",
            "Date",
            "Time",
            "Duration",
            "Boolean"
          ]
        },
        "value": {
          "title": "value",
          "type": "object"
        }
      }
    },
    "GetAllUserDefinedFieldsMetadataCollectionResourceActionResponse": {
      "title": "GetAllUserDefinedFieldsMetadataCollectionResourceActionResponse",
      "type": "object",
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "format": "int64",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->Id"
        },
        "dataType": {
          "title": "dataType",
          "type": "string",
          "format": "enum",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->DataType",
          "x-formatSpecifier": "DynamicValueType"
        },
        "defaultPredefinedValueId": {
          "title": "defaultPredefinedValueId",
          "type": "integer",
          "format": "int64",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->DefaultPredefinedValueId"
        },
        "defaultValue": {
          "title": "defaultValue",
          "format": "composite",
          "x-nullable": true,
          "$ref": "#/definitions/DynamicValueSchema",
          "x-propertyPath": "UserDefinedFieldMetadataEntity->DefaultValue",
          "x-formatSpecifier": "DynamicValue"
        },
        "description": {
          "title": "description",
          "type": "string",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->Description"
        },
        "entityType": {
          "title": "entityType",
          "type": "string",
          "format": "enum",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->EntityType",
          "x-formatSpecifier": "EntityType"
        },
        "fieldType": {
          "title": "fieldType",
          "type": "string",
          "format": "enum",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->FieldType",
          "x-formatSpecifier": "UserDefinedFieldType"
        },
        "isActive": {
          "title": "isActive",
          "type": "boolean",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->IsActive"
        },
        "isMemo": {
          "title": "isMemo",
          "type": "boolean",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->IsMemo"
        },
        "name": {
          "title": "name",
          "type": "string",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->Name"
        },
        "sequenceNumber": {
          "title": "sequenceNumber",
          "type": "integer",
          "format": "int32",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->SequenceNumber"
        },
        "stringLength": {
          "title": "stringLength",
          "type": "integer",
          "format": "int32",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->StringLength"
        },
        "version": {
          "title": "version",
          "type": "integer",
          "format": "int32",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->Version"
        },
        "enableMatchUpdate": {
          "title": "enableMatchUpdate",
          "type": "boolean",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->EnableMatchUpdate"
        }
      }
    },
    "GetAllUserDefinedFieldsMetadataCollectionResourceAction": {
      "title": "GetAllUserDefinedFieldsMetadataCollectionResourceAction",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of User Defined Field Metadata entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Collection of User Defined Field Metadata entities",
          "items": {
            "$ref": "#/definitions/GetAllUserDefinedFieldsMetadataCollectionResourceActionResponse"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    },
    "GetEntityTypeUserDefinedFieldsMetadataCollectionResourceActionResponse": {
      "title": "GetEntityTypeUserDefinedFieldsMetadataCollectionResourceActionResponse",
      "type": "object",
      "properties": {
        "id": {
          "title": "id",
          "type": "integer",
          "format": "int64",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->Id"
        },
        "dataType": {
          "title": "dataType",
          "type": "string",
          "format": "enum",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->DataType",
          "x-formatSpecifier": "DynamicValueType"
        },
        "defaultPredefinedValueId": {
          "title": "defaultPredefinedValueId",
          "type": "integer",
          "format": "int64",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->DefaultPredefinedValueId"
        },
        "defaultValue": {
          "title": "defaultValue",
          "format": "composite",
          "x-nullable": true,
          "$ref": "#/definitions/DynamicValueSchema",
          "x-propertyPath": "UserDefinedFieldMetadataEntity->DefaultValue",
          "x-formatSpecifier": "DynamicValue"
        },
        "description": {
          "title": "description",
          "type": "string",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->Description"
        },
        "entityType": {
          "title": "entityType",
          "type": "string",
          "format": "enum",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->EntityType",
          "x-formatSpecifier": "EntityType"
        },
        "fieldType": {
          "title": "fieldType",
          "type": "string",
          "format": "enum",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->FieldType",
          "x-formatSpecifier": "UserDefinedFieldType"
        },
        "isActive": {
          "title": "isActive",
          "type": "boolean",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->IsActive"
        },
        "isMemo": {
          "title": "isMemo",
          "type": "boolean",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->IsMemo"
        },
        "name": {
          "title": "name",
          "type": "string",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->Name"
        },
        "sequenceNumber": {
          "title": "sequenceNumber",
          "type": "integer",
          "format": "int32",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->SequenceNumber"
        },
        "stringLength": {
          "title": "stringLength",
          "type": "integer",
          "format": "int32",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->StringLength"
        },
        "version": {
          "title": "version",
          "type": "integer",
          "format": "int32",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->Version"
        },
        "enableMatchUpdate": {
          "title": "enableMatchUpdate",
          "type": "boolean",
          "x-nullable": true,
          "x-propertyPath": "UserDefinedFieldMetadataEntity->EnableMatchUpdate"
        }
      }
    },
    "GetEntityTypeUserDefinedFieldsMetadataCollectionResourceAction": {
      "title": "GetEntityTypeUserDefinedFieldsMetadataCollectionResourceAction",
      "type": "object",
      "properties": {
        "count": {
          "title": "count",
          "type": "integer",
          "description": "Number of User Defined Field Metadata entities in the collection",
          "format": "int32",
          "x-nullable": false,
          "example": 2
        },
        "items": {
          "title": "items",
          "type": "array",
          "description": "Collection of User Defined Field Metadata entities",
          "items": {
            "$ref": "#/definitions/GetEntityTypeUserDefinedFieldsMetadataCollectionResourceActionResponse"
          }
        },
        "links": {
          "title": "links",
          "type": "array",
          "description": "Collection of hypermedia links",
          "items": {
            "$ref": "#/definitions/Link"
          }
        },
        "messages": {
          "title": "messages",
          "type": "array",
          "description": "Messages for the entity data",
          "x-nullable": true,
          "items": {
            "$ref": "#/definitions/NotificationSchema"
          }
        },
        "self": {
          "$ref": "#/definitions/Link"
        }
      }
    }
  },
  "parameters": {
    "ExecutionMode": {
      "type": "string",
      "name": "mode",
      "in": "query",
      "description": "Execution mode to use for executing the batch operation",
      "enum": [
        "AllOrNone",
        "PerRecord"
      ]
    },
    "Async": {
      "type": "boolean",
      "name": "async",
      "in": "query",
      "description": "Enqueue the operation asynchronously using a Background Task."
    },
    "AsyncDescription": {
      "type": "string",
      "name": "description",
      "in": "query",
      "description": "Optional description for the asynchronous execution of the Background Task."
    },
    "Schedule": {
      "type": "string",
      "name": "schedule",
      "in": "query",
      "description": "Optional cron expression to schedule the asynchronous execution of the Background Task."
    },
    "ScheduleFrom": {
      "type": "string",
      "name": "from",
      "in": "query",
      "description": "Optional future date at which a recurring schedule for the asynchronous execution of the Background Task should start. If no value is provided the current UTC date and time is used."
    },
    "Filter": {
      "type": "string",
      "name": "$filter",
      "in": "query",
      "description": "Filter expression to apply on the resource to limit the response data returned, e.g. $filter=id gt 0 and code startswith 'ABCD'"
    },
    "OrderBy": {
      "type": "string",
      "name": "$orderby",
      "in": "query",
      "description": "Comma separated list of the data properties on the resource to order the response data returned, e.g. $orderby=id DESC,code ASC"
    },
    "Param": {
      "type": "string",
      "name": "$param",
      "in": "query",
      "description": "Comma separated list of key/value pairs to parameterise `$filter` expressions to limit the response data returned, e.g. $param=@code:'JUMA'"
    },
    "Select": {
      "type": "string",
      "name": "$select",
      "in": "query",
      "description": "Comma separated list of the data properties on the resource to return, e.g. $select=id,code,description"
    },
    "Skip": {
      "type": "string",
      "name": "$skip",
      "in": "query",
      "description": "Number of items to skip.  Use in combination with `$top` to page through the response data returned, e.g. $skip=20"
    },
    "Top": {
      "type": "string",
      "name": "$top",
      "in": "query",
      "description": "Number of items to return in the response data, e.g. $top=20"
    }
  },
  "responses": {
    "default": {
      "x-nullable": true,
      "description": "Error response - operation failed"
    },
    "created": {
      "x-nullable": true,
      "description": "Success response - resource was successfully created",
      "headers": {
        "OnKey-Resource-Id": {
          "type": "integer",
          "description": "Id of the resource created",
          "format": "Int64"
        },
        "OnKey-Resource-Location": {
          "type": "string",
          "description": "Uri to fetch the created resource"
        }
      }
    },
    "accepted": {
      "description": "Request was successfully registered for asynchronous execution using a Background Task",
      "headers": {
        "OnKey-Request-Id": {
          "type": "integer",
          "description": "Request id for the Background Task created",
          "format": "Int64"
        },
        "OnKey-Request-Location": {
          "type": "string",
          "description": "URI to poll for the asynchronous execution status of the request"
        }
      }
    },
    "scheduled": {
      "description": "Request was successfully scheduled for asynchronous execution using a Scheduled Background Task",
      "headers": {
        "OnKey-Resource-Id": {
          "type": "integer",
          "description": "Id of the Scheduled Background Task resource created",
          "format": "Int64"
        },
        "OnKey-Resource-Location": {
          "type": "string",
          "description": "Uri to fetch the Scheduled Background Task resource"
        },
        "OnKey-Job-Id": {
          "type": "string",
          "description": "Job id of the job schedule created",
          "format": "Uuid"
        },
        "OnKey-Job-Schedule-Location": {
          "type": "string",
          "description": "URI to fetch the job schedule for the asynchronous execution of the request"
        }
      }
    }
  },
  "securityDefinitions": {
    "Bearer": {
      "type": "basic",
      "description": "Use the JWT access token received by authenticating with your configured On Key Identity Provider"
    }
  },
  "security": [
    {
      "Bearer": []
    }
  ],
  "tags": [
    {
      "name": "Menu"
    },
    {
      "name": "Metadata"
    },
    {
      "name": "Module"
    },
    {
      "name": "Resource Action Customisation Ownership"
    },
    {
      "name": "API Resource Action"
    },
    {
      "name": "API Resource Action Customisation"
    },
    {
      "name": "API Resource"
    },
    {
      "name": "Specification"
    },
    {
      "name": "Template Customisation"
    },
    {
      "name": "Template Customisation Ownership"
    },
    {
      "name": "Template Migration"
    },
    {
      "name": "Template"
    },
    {
      "name": "User Defined Field Metadata"
    }
  ],
  "x-tagGroups": [
    {
      "name": "DOCS",
      "tags": [
        "Menu",
        "Metadata",
        "Module",
        "Resource Action Customisation Ownership",
        "API Resource Action",
        "API Resource Action Customisation",
        "API Resource",
        "Specification",
        "Template Customisation",
        "Template Customisation Ownership",
        "Template Migration",
        "Template",
        "User Defined Field Metadata"
      ]
    }
  ]
}