{
  "x-generator": "On Key REST API Docs Generator",
  "openapi": "3.0.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"
  },
  "servers": [
    {
      "url": "{scheme}://{server}:{port}/api/tenants/{client}/{connection}",
      "description": "On Key API Server",
      "variables": {
        "scheme": {
          "default": "https",
          "description": "HTTP scheme"
        },
        "server": {
          "default": "<variable>",
          "description": "Server host"
        },
        "port": {
          "default": "443",
          "description": "Port"
        },
        "client": {
          "default": "<variable>",
          "description": "Client"
        },
        "connection": {
          "default": "<variable>",
          "description": "Connection/Environment (i.e. prod, qa)"
        }
      }
    }
  ],
  "paths": {
    "/": {
      "get": {
        "tags": [
          "Menu"
        ],
        "summary": "Get a menu of links to explore the System.",
        "description": "",
        "operationId": "GetSystemMenu",
        "responses": {
          "200": {
            "description": "Success response - body contains System Menu",
            "content": {
              "application/vnd.onkey.menu+json": {
                "schema": {
                  "$ref": "#/components/schemas/MenuSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Entity Enum Metadata  definition",
            "content": {
              "application/vnd.onkey.entityenummetadata+json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityEnumMetadata"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Entity Database Metadata definition",
            "content": {
              "application/vnd.onkey.entitydatabasemetadata+json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityMetadataDatabaseMappingDefinition"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Metadata definition",
            "content": {
              "application/vnd.onkey.entitymetadata+json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityMetadataSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "path",
            "in": "path",
            "required": true,
            "description": "Property Path to expand",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Metadata tree definition",
            "content": {
              "application/vnd.onkey.metadatatree+json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityMetadataTreeLevelSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "path",
            "in": "path",
            "required": true,
            "description": "Property Path to map",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Metadata tree path map definition",
            "content": {
              "application/vnd.onkey.metadatatreepathmapcollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityMetadataTreePathMapCollectionSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Name of Entity",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Metadata tree definition",
            "content": {
              "application/vnd.onkey.metadatatree+json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityMetadataTreeLevelSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "enumName",
            "in": "path",
            "required": true,
            "description": "Name of Enumeration",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Enum Metadata definition",
            "content": {
              "application/vnd.onkey.enummetadata+json": {
                "schema": {
                  "$ref": "#/components/schemas/EnumMetadata"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "responses": {
          "200": {
            "description": "Success response - body contains Metadata definitions",
            "content": {
              "application/vnd.onkey.metadatacollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityMetadataSummaryCollectionSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "responses": {
          "200": {
            "description": "Success response - body contains Metadata collection",
            "content": {
              "application/vnd.onkey.entitycollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllReportServerEntitiesMetadataCollectionResourceAction"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "responses": {
          "200": {
            "description": "Success response - body contains Enum Metadata Collection definition",
            "content": {
              "application/vnd.onkey.enummetadatacollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/EnumMetadataCollection"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Metadata definitions",
            "content": {
              "application/vnd.onkey.metadatacollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityMetadataSummaryCollectionSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "responses": {
          "200": {
            "description": "Success response - body contains collection of Modules for the System",
            "content": {
              "application/vnd.onkey.modulecollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/ModuleSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Select"
          },
          {
            "$ref": "#/components/parameters/Filter"
          },
          {
            "$ref": "#/components/parameters/Param"
          },
          {
            "$ref": "#/components/parameters/Top"
          },
          {
            "$ref": "#/components/parameters/Skip"
          },
          {
            "$ref": "#/components/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains pageable Resource Action Customisation Ownership collection",
            "content": {
              "application/vnd.onkey.entitycollectionpage+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetResourceActionCustomisationOwnershipCollectionResourceActionResponse"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Select"
          },
          {
            "$ref": "#/components/parameters/Filter"
          },
          {
            "$ref": "#/components/parameters/Param"
          },
          {
            "$ref": "#/components/parameters/Top"
          },
          {
            "$ref": "#/components/parameters/Skip"
          },
          {
            "$ref": "#/components/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains pageable User collection",
            "content": {
              "application/vnd.onkey.entitycollectionpage+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceActionCustomisationUserLookupResourceActionResponse"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 1
          },
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          }
        ],
        "requestBody": {
          "x-name": "delete",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.entitydelete+json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteResourceActionCustomisationByIdRequest"
              }
            }
          },
          "required": true,
          "x-position": 2
        },
        "responses": {
          "204": {
            "description": "Success response - Resource Action Customisation Ownership was successfully deleted"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          },
          {
            "$ref": "#/components/parameters/Schedule"
          },
          {
            "$ref": "#/components/parameters/ExecutionMode"
          }
        ],
        "requestBody": {
          "x-name": "patches",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.entitydeletecollection+json": {
              "schema": {
                "$ref": "#/components/schemas/BatchDeleteResourceActionCustomisationResourceActionRequest"
              }
            }
          },
          "required": true,
          "x-position": 1
        },
        "responses": {
          "204": {
            "description": "Success response - Resource Action Customisation Ownership batch was successfully deleted"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          },
          {
            "$ref": "#/components/parameters/Schedule"
          }
        ],
        "requestBody": {
          "x-name": "patches",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.entitypatchcollection+json": {
              "schema": {
                "$ref": "#/components/schemas/ChangeResourceActionCustomisationOwnershipResourceActionRequest"
              }
            }
          },
          "required": true,
          "x-position": 1
        },
        "responses": {
          "204": {
            "description": "Success response - operation was successfully executed"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}/Actions/{resourceActionName}": {
      "get": {
        "tags": [
          "API Resource Action"
        ],
        "summary": "Get a API Resource Action definition.",
        "description": "",
        "operationId": "GetResourceActionDefinition",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource Action definition",
            "content": {
              "application/vnd.onkey.resourceaction+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceActionSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource Action definitions",
            "content": {
              "application/vnd.onkey.resourceschemacollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource Action definitions",
            "content": {
              "application/vnd.onkey.resourceactioncollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceActionSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          },
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 4
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource Action Customisation collection",
            "content": {
              "application/vnd.onkey.customresourceaction+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceActionCustomisationSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      },
      "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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          },
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 4
          }
        ],
        "requestBody": {
          "x-name": "customisation",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.customresourceactionupdate+json": {
              "schema": {
                "$ref": "#/components/schemas/ResourceActionCustomisationUpdateSchema"
              }
            }
          },
          "required": true,
          "x-position": 5
        },
        "responses": {
          "204": {
            "description": "Success response - API Resource Action Customisation was successfully updated"
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      },
      "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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          },
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 4
          },
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          }
        ],
        "requestBody": {
          "x-name": "delete",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.entitydelete+json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteResourceActionCustomisationResourceActionRequest"
              }
            }
          },
          "required": true,
          "x-position": 5
        },
        "responses": {
          "204": {
            "description": "Success response - API Resource Action Customisation was successfully deleted"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          },
          {
            "$ref": "#/components/parameters/Select"
          },
          {
            "$ref": "#/components/parameters/Filter"
          },
          {
            "$ref": "#/components/parameters/Param"
          },
          {
            "$ref": "#/components/parameters/Top"
          },
          {
            "$ref": "#/components/parameters/Skip"
          },
          {
            "$ref": "#/components/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains pageable API Resource Action Customisation collection",
            "content": {
              "application/vnd.onkey.entitycollectionpage+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetResourceActionCustomisationsResourceActionResponse"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      },
      "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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "resourceActionName",
            "in": "path",
            "required": true,
            "description": "Name of Resource Action",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          }
        ],
        "requestBody": {
          "x-name": "customisation",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.customresourceactioncreate+json": {
              "schema": {
                "$ref": "#/components/schemas/ResourceActionCustomisationCreateSchema"
              }
            }
          },
          "required": true,
          "x-position": 4
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/created",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/DOCS/Modules/{module}/Resources/{resourceName}": {
      "get": {
        "tags": [
          "API Resource"
        ],
        "summary": "Get a API Resource definition.",
        "description": "",
        "operationId": "GetResourceDefinition",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource definition",
            "content": {
              "application/vnd.onkey.resource+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource Action definitions",
            "content": {
              "application/vnd.onkey.resourceactioncollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceActionSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource definitions",
            "content": {
              "application/vnd.onkey.resourcecollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource Action definitions",
            "content": {
              "application/vnd.onkey.resourceactioncollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceActionSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains API Resource definitions",
            "content": {
              "application/vnd.onkey.resourcecollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/ResourceSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "resourceName",
            "in": "path",
            "required": true,
            "description": "Name of Resource",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "group",
            "in": "query",
            "description": "Sub-grouping for the Module of the specification",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          },
          {
            "name": "version",
            "in": "query",
            "description": "Version for the specification",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 4
          },
          {
            "name": "scheme",
            "in": "query",
            "description": "Scheme for base url (http or https)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 5
          },
          {
            "name": "server",
            "in": "query",
            "description": "Server host for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 6
          },
          {
            "name": "port",
            "in": "query",
            "description": "Server port for base url",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "x-position": 7
          },
          {
            "name": "client",
            "in": "query",
            "description": "Name of client for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 8
          },
          {
            "name": "cnn",
            "in": "query",
            "description": "Name of connection for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 9
          },
          {
            "name": "schema",
            "in": "query",
            "description": "Schema of the specification (OpenApi3 or OpenApi2)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 10
          },
          {
            "name": "format",
            "in": "query",
            "description": "Format of the specification (Json or Yaml)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 11
          },
          {
            "name": "customisation",
            "in": "query",
            "description": "Generate with customisations applied",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 12
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains OpenApi specification",
            "content": {
              "application/vnd.onkey.spec+json": {
                "schema": {
                  "$ref": "#/components/schemas/SpecSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "version",
            "in": "query",
            "description": "Version for the specification",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "scheme",
            "in": "query",
            "description": "Scheme for base url (http or https)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "server",
            "in": "query",
            "description": "Server host for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          },
          {
            "name": "port",
            "in": "query",
            "description": "Server port for base url",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "x-position": 4
          },
          {
            "name": "client",
            "in": "query",
            "description": "Name of client for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 5
          },
          {
            "name": "cnn",
            "in": "query",
            "description": "Name of connection for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 6
          },
          {
            "name": "schema",
            "in": "query",
            "description": "Schema of the specification (OpenApi3 or OpenApi2)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 7
          },
          {
            "name": "format",
            "in": "query",
            "description": "Format of the specification (Json or Yaml)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 8
          },
          {
            "name": "customisation",
            "in": "query",
            "description": "Generate with customisations applied",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 9
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains OpenApi specification",
            "content": {
              "application/vnd.onkey.spec+json": {
                "schema": {
                  "$ref": "#/components/schemas/SpecSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "group",
            "in": "query",
            "description": "Sub-grouping for the Module of the specification",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "version",
            "in": "query",
            "description": "Version for the specification",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 3
          },
          {
            "name": "scheme",
            "in": "query",
            "description": "Scheme for base url (http or https)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 4
          },
          {
            "name": "server",
            "in": "query",
            "description": "Server host for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 5
          },
          {
            "name": "port",
            "in": "query",
            "description": "Server port for base url",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "x-position": 6
          },
          {
            "name": "client",
            "in": "query",
            "description": "Name of client for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 7
          },
          {
            "name": "cnn",
            "in": "query",
            "description": "Name of connection for base url",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 8
          },
          {
            "name": "schema",
            "in": "query",
            "description": "Schema of the specification (OpenApi3 or OpenApi2)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 9
          },
          {
            "name": "format",
            "in": "query",
            "description": "Format of the specification (Json or Yaml)",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 10
          },
          {
            "name": "customisation",
            "in": "query",
            "description": "Generate with customisations applied",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 11
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains OpenApi specification",
            "content": {
              "application/vnd.onkey.spec+json": {
                "schema": {
                  "$ref": "#/components/schemas/SpecSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 3
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Template Customisation",
            "content": {
              "application/vnd.onkey.customtemplate+json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateCustomisationSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      },
      "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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 3
          },
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          }
        ],
        "requestBody": {
          "x-name": "customisation",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.customtemplateupdate+json": {
              "schema": {
                "$ref": "#/components/schemas/TemplateCustomisationUpdateSchema"
              }
            }
          },
          "required": true,
          "x-position": 4
        },
        "responses": {
          "204": {
            "description": "Success response - Template Customisation was successfully updated"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      },
      "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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 3
          },
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          }
        ],
        "requestBody": {
          "x-name": "delete",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.entitydelete+json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteTemplateCustomisationResourceActionRequest"
              }
            }
          },
          "required": true,
          "x-position": 4
        },
        "responses": {
          "204": {
            "description": "Success response - Template Customisation was successfully deleted"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Select"
          },
          {
            "$ref": "#/components/parameters/Filter"
          },
          {
            "$ref": "#/components/parameters/Param"
          },
          {
            "$ref": "#/components/parameters/Top"
          },
          {
            "$ref": "#/components/parameters/Skip"
          },
          {
            "$ref": "#/components/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains pageable Template Customisation collection",
            "content": {
              "application/vnd.onkey.entitycollectionpage+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllTemplateCustomisationCollectionResourceActionResponse"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "$ref": "#/components/parameters/Select"
          },
          {
            "$ref": "#/components/parameters/Filter"
          },
          {
            "$ref": "#/components/parameters/Param"
          },
          {
            "$ref": "#/components/parameters/Top"
          },
          {
            "$ref": "#/components/parameters/Skip"
          },
          {
            "$ref": "#/components/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains pageable Template Customisation collection",
            "content": {
              "application/vnd.onkey.entitycollectionpage+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetModuleTemplateCustomisationCollectionResourceActionResponse"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "$ref": "#/components/parameters/Select"
          },
          {
            "$ref": "#/components/parameters/Filter"
          },
          {
            "$ref": "#/components/parameters/Param"
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains pageable Template Customisation collection",
            "content": {
              "application/vnd.onkey.entitycollectionpage+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTemplateCustomisationCollectionResourceActionResponse"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      },
      "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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          }
        ],
        "requestBody": {
          "x-name": "customisation",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.customtemplatecreate+json": {
              "schema": {
                "$ref": "#/components/schemas/TemplateCustomisationCreateSchema"
              }
            }
          },
          "required": true,
          "x-position": 3
        },
        "responses": {
          "201": {
            "$ref": "#/components/responses/created",
            "description": ""
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          },
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "description": "Id of Customisation",
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 3
          }
        ],
        "responses": {
          "204": {
            "description": "Success response - operation was successfully executed"
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Select"
          },
          {
            "$ref": "#/components/parameters/Filter"
          },
          {
            "$ref": "#/components/parameters/Param"
          },
          {
            "$ref": "#/components/parameters/Top"
          },
          {
            "$ref": "#/components/parameters/Skip"
          },
          {
            "$ref": "#/components/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains pageable Template Customisation Ownership collection",
            "content": {
              "application/vnd.onkey.entitycollectionpage+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTemplateCustomisationOwnershipCollectionResourceActionResponse"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Select"
          },
          {
            "$ref": "#/components/parameters/Filter"
          },
          {
            "$ref": "#/components/parameters/Param"
          },
          {
            "$ref": "#/components/parameters/Top"
          },
          {
            "$ref": "#/components/parameters/Skip"
          },
          {
            "$ref": "#/components/parameters/OrderBy"
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains pageable User collection",
            "content": {
              "application/vnd.onkey.entitycollectionpage+json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateCustomisationUserLookupResourceActionResponse"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "customisationId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-position": 1
          },
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          }
        ],
        "requestBody": {
          "x-name": "delete",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.entitydelete+json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteTemplateCustomisationByIdResourceActionRequest"
              }
            }
          },
          "required": true,
          "x-position": 2
        },
        "responses": {
          "204": {
            "description": "Success response - Template Customisation Ownership was successfully deleted"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          },
          {
            "$ref": "#/components/parameters/Schedule"
          },
          {
            "$ref": "#/components/parameters/ExecutionMode"
          }
        ],
        "requestBody": {
          "x-name": "patches",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.entitydeletecollection+json": {
              "schema": {
                "$ref": "#/components/schemas/BatchDeleteTemplateCustomisationResourceActionRequest"
              }
            }
          },
          "required": true,
          "x-position": 1
        },
        "responses": {
          "204": {
            "description": "Success response - Template Customisation Ownership batch was successfully deleted"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "$ref": "#/components/parameters/Async"
          },
          {
            "$ref": "#/components/parameters/AsyncDescription"
          },
          {
            "$ref": "#/components/parameters/Schedule"
          }
        ],
        "requestBody": {
          "x-name": "patches",
          "description": "Request Body content",
          "content": {
            "application/vnd.onkey.entitypatchcollection+json": {
              "schema": {
                "$ref": "#/components/schemas/ChangeTemplateCustomisationOwnershipResourceActionRequest"
              }
            }
          },
          "required": true,
          "x-position": 1
        },
        "responses": {
          "204": {
            "description": "Success response - operation was successfully executed"
          },
          "202": {
            "$ref": "#/components/responses/accepted",
            "description": ""
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "version",
            "in": "query",
            "description": "Migrations for template should be greater than this template version",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Template Migration Collection definition",
            "content": {
              "application/vnd.onkey.templatemigrationcollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateMigrationCollectionSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "version",
            "in": "query",
            "description": "Migrations for template should be greater than this template version",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Template Migration Collection definition",
            "content": {
              "application/vnd.onkey.templatemigrationcollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateMigrationCollectionSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Template",
            "content": {
              "application/vnd.onkey.template+json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          },
          {
            "name": "templateName",
            "in": "path",
            "required": true,
            "description": "Name of Template",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 2
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Translation Set definition",
            "content": {
              "application/vnd.onkey.translationset+json": {
                "schema": {
                  "$ref": "#/components/schemas/TranslationSetSchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "responses": {
          "200": {
            "description": "Success response - body contains Template collection",
            "content": {
              "application/vnd.onkey.templatecollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "module",
            "in": "path",
            "required": true,
            "description": "Name of Module",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains Template collection",
            "content": {
              "application/vnd.onkey.templatecollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateSummarySchema"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "responses": {
          "200": {
            "description": "Success response - body contains User Defined Field Metadata collection",
            "content": {
              "application/vnd.onkey.entitycollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllUserDefinedFieldsMetadataCollectionResourceAction"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    },
    "/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",
        "parameters": [
          {
            "name": "entity",
            "in": "path",
            "required": true,
            "description": "Entity type",
            "schema": {
              "type": "string",
              "format": "enum",
              "x-formatSpecifier": "EntityType"
            },
            "x-position": 1
          }
        ],
        "responses": {
          "200": {
            "description": "Success response - body contains User Defined Field Metadata collection",
            "content": {
              "application/vnd.onkey.entitycollection+json": {
                "schema": {
                  "$ref": "#/components/schemas/GetEntityTypeUserDefinedFieldsMetadataCollectionResourceAction"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/default",
            "description": ""
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "OperationExecutionMode": {
        "type": "string",
        "description": "",
        "x-enumNames": [
          "AllOrNone",
          "PerRecord"
        ],
        "enum": [
          "AllOrNone",
          "PerRecord"
        ]
      },
      "SeverityType": {
        "type": "string",
        "description": "",
        "nullable": false,
        "x-enumNames": [
          "Error",
          "Warning",
          "Information"
        ],
        "enum": [
          "error",
          "warning",
          "information"
        ]
      },
      "NotificationItemSchema": {
        "title": "NotificationItemSchema",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "code": {
            "title": "code",
            "type": "string",
            "description": "Unique code for message",
            "nullable": false
          },
          "message": {
            "title": "message",
            "type": "string",
            "nullable": false
          },
          "objectId": {
            "title": "objectId",
            "type": "string",
            "description": "Optional id of record to which the message applies",
            "nullable": true
          },
          "objectType": {
            "title": "objectType",
            "type": "string",
            "format": "enum",
            "nullable": true,
            "x-formatSpecifier": "EntityType"
          },
          "properties": {
            "title": "properties",
            "type": "array",
            "description": "Collection of properties referenced by the message using property path syntax",
            "nullable": true,
            "example": [
              "Asset->Code"
            ],
            "items": {
              "type": "string"
            }
          },
          "severity": {
            "$ref": "#/components/schemas/SeverityType"
          },
          "userObjectId": {
            "title": "userObjectId",
            "type": "string",
            "description": "Optional provided unique external record identifier to echo back with message",
            "nullable": true
          }
        }
      },
      "NotificationSchema": {
        "title": "NotificationSchema",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Collection of messages",
            "nullable": false,
            "items": {
              "$ref": "#/components/schemas/NotificationItemSchema"
            }
          }
        }
      },
      "MenuSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "self"
        ],
        "properties": {
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "Link": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "href",
          "method"
        ],
        "properties": {
          "doc": {
            "type": "string",
            "description": "Documentation endpoint that describes the link",
            "nullable": true
          },
          "href": {
            "type": "string",
            "description": "Endpoint to invoke link",
            "minLength": 1
          },
          "mapping": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "method": {
            "type": "string",
            "description": "HTTP method used for link",
            "minLength": 1
          },
          "module": {
            "type": "string",
            "description": "Module used by link",
            "nullable": true
          },
          "rel": {
            "type": "string",
            "nullable": true
          },
          "resource": {
            "type": "string",
            "description": "Resource used by link",
            "nullable": true
          },
          "resourceAction": {
            "type": "string",
            "description": "Resource Action used by link",
            "nullable": true
          },
          "title": {
            "type": "string",
            "description": "Title",
            "nullable": true
          },
          "type": {
            "description": "Type of link",
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/ResourceLinkType"
              }
            ]
          }
        }
      },
      "LinkMapping": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "source"
        ],
        "properties": {
          "source": {
            "type": "string"
          },
          "target": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "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",
        "additionalProperties": false,
        "properties": {
          "module": {
            "type": "string",
            "nullable": true
          },
          "entityType": {
            "type": "string",
            "nullable": true
          },
          "properties": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/EntityEnumMetadataProperty"
            }
          }
        }
      },
      "EntityEnumMetadataProperty": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "path",
          "dataType"
        ],
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1
          },
          "path": {
            "type": "string",
            "minLength": 1
          },
          "dataType": {
            "$ref": "#/components/schemas/PropertyDataType"
          },
          "format": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/PropertyFormat"
              }
            ]
          },
          "formatSpecifier": {
            "type": "string",
            "nullable": true
          },
          "values": {
            "type": "array",
            "nullable": true,
            "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",
        "additionalProperties": false,
        "properties": {
          "module": {
            "type": "string",
            "nullable": true
          },
          "entityType": {
            "type": "string",
            "nullable": true
          },
          "hasDatabaseTable": {
            "type": "boolean"
          },
          "sourceDatabase": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/SourceDatabase"
              }
            ]
          },
          "primaryTableName": {
            "type": "string",
            "nullable": true
          },
          "primaryKeyColumnName": {
            "type": "string",
            "nullable": true
          },
          "properties": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/EntityPropertyQueryMap"
            }
          },
          "queries": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/EntityDatabaseMappingSql"
            }
          }
        }
      },
      "SourceDatabase": {
        "type": "string",
        "description": "",
        "x-enumNames": [
          "Transaction",
          "Insights",
          "Config",
          "FileContentStore",
          "Archive"
        ],
        "enum": [
          "Transaction",
          "Insights",
          "Config",
          "FileContentStore",
          "Archive"
        ]
      },
      "EntityPropertyQueryMap": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "fullPropertyName": {
            "type": "string",
            "nullable": true
          },
          "propertyPath": {
            "type": "string",
            "nullable": true
          },
          "hasDbColumn": {
            "type": "boolean"
          },
          "tableName": {
            "type": "string",
            "nullable": true
          },
          "columnName": {
            "type": "string",
            "nullable": true
          },
          "dbType": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/NpgsqlDbType"
              }
            ]
          },
          "isEnum": {
            "type": "boolean",
            "nullable": true
          },
          "enumName": {
            "type": "string",
            "nullable": true
          },
          "isComposite": {
            "type": "boolean",
            "nullable": true
          },
          "compositeName": {
            "type": "string",
            "nullable": true
          },
          "joins": {
            "type": "array",
            "nullable": true,
            "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",
        "additionalProperties": false,
        "properties": {
          "primaryTableAlias": {
            "type": "string",
            "nullable": true
          },
          "includePermissions": {
            "type": "boolean"
          },
          "includeReferences": {
            "type": "boolean"
          },
          "sql": {
            "type": "string",
            "nullable": true
          },
          "parameters": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/EntityDatabaseQueryParameter"
            }
          }
        }
      },
      "EntityDatabaseQueryParameter": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "dbType": {
            "$ref": "#/components/schemas/NpgsqlDbType"
          },
          "value": {
            "nullable": true
          }
        }
      },
      "EntityMetadataSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "properties"
        ],
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EntityMetadataPropertySchema"
            }
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "EntityMetadataPropertySchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "path",
          "dataType"
        ],
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1
          },
          "path": {
            "type": "string",
            "minLength": 1
          },
          "dataType": {
            "$ref": "#/components/schemas/PropertyDataType"
          },
          "format": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/PropertyFormat"
              }
            ]
          },
          "formatSpecifier": {
            "type": "string",
            "nullable": true
          },
          "translatable": {
            "type": "boolean",
            "nullable": true
          },
          "referenceGroup": {
            "type": "string",
            "nullable": true
          },
          "originalSourcePath": {
            "type": "string",
            "nullable": true
          },
          "systemRequired": {
            "type": "boolean",
            "nullable": true
          },
          "validations": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/PropertyValidations"
              }
            ]
          },
          "isUserDefinedField": {
            "type": "boolean",
            "nullable": true
          },
          "userDefinedFieldName": {
            "type": "string",
            "nullable": true
          },
          "crossReferences": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/CrossReferenceSchema"
            }
          },
          "canExcludeFromPermission": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/EntityMetadataPermissionExcludeSchema"
              }
            ]
          }
        }
      },
      "PropertyValidations": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/PropertyValidation"
        }
      },
      "PropertyValidation": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "Exclusive": {
            "type": "boolean",
            "nullable": true
          },
          "Expression": {
            "type": "string",
            "nullable": true
          },
          "Origin": {
            "$ref": "#/components/schemas/ValidationOrigin"
          },
          "Type": {
            "$ref": "#/components/schemas/ValidationType"
          },
          "Value": {
            "nullable": true
          }
        }
      },
      "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",
        "additionalProperties": false,
        "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",
        "additionalProperties": false,
        "required": [
          "forView",
          "forInsert",
          "forEdit"
        ],
        "properties": {
          "forView": {
            "type": "boolean"
          },
          "forInsert": {
            "type": "boolean"
          },
          "forEdit": {
            "type": "boolean"
          }
        }
      },
      "EntityMetadataTreeLevelSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "entityName",
          "nodes"
        ],
        "properties": {
          "entityName": {
            "type": "string",
            "minLength": 1
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EntityMetadataTreeItemSchema"
            }
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "EntityMetadataTreeItemSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "generatedName",
          "path",
          "dataType",
          "selectable",
          "expandable",
          "target",
          "crossReferences",
          "allowNull"
        ],
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1
          },
          "generatedName": {
            "type": "string",
            "minLength": 1
          },
          "path": {
            "type": "string",
            "minLength": 1
          },
          "dataType": {
            "$ref": "#/components/schemas/PropertyDataType"
          },
          "format": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/PropertyFormat"
              }
            ]
          },
          "formatSpecifier": {
            "type": "string",
            "nullable": true
          },
          "originalSourcePath": {
            "type": "string",
            "nullable": true
          },
          "selectable": {
            "type": "boolean"
          },
          "expandable": {
            "type": "boolean"
          },
          "target": {
            "type": "boolean"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "validations": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/PropertyValidations"
              }
            ]
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "crossReferences": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EntityMetadataTreeItemSchema"
            }
          },
          "allowNull": {
            "type": "boolean"
          }
        }
      },
      "EntityMetadataTreePathMapCollectionSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EntityMetadataTreePathMapSchema"
            }
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "EntityMetadataTreePathMapSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "expandPath",
          "targetName",
          "targetPath"
        ],
        "properties": {
          "expandPath": {
            "type": "string",
            "minLength": 1
          },
          "targetName": {
            "type": "string",
            "minLength": 1
          },
          "targetPath": {
            "type": "string",
            "minLength": 1
          },
          "isCrossReference": {
            "type": "boolean",
            "nullable": true
          },
          "crossReferenceName": {
            "type": "string",
            "nullable": true
          },
          "crossReferenceAllowNulls": {
            "type": "boolean",
            "nullable": true
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "EnumMetadata": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "values": {
            "type": "array",
            "nullable": true,
            "items": {
              "type": "string"
            }
          },
          "usedBy": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/EnumMetadataEntityProperty"
            }
          }
        }
      },
      "EnumMetadataEntityProperty": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "entityName",
          "propertyName",
          "propertyPath"
        ],
        "properties": {
          "entityName": {
            "type": "string",
            "minLength": 1
          },
          "propertyName": {
            "type": "string",
            "minLength": 1
          },
          "propertyPath": {
            "type": "string",
            "minLength": 1
          }
        }
      },
      "EntityMetadataSummaryCollectionSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "self"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EntityMetadataSummarySchema"
            }
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "EntityMetadataSummarySchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "moduleName",
          "entityName",
          "self"
        ],
        "properties": {
          "moduleName": {
            "type": "string",
            "minLength": 1
          },
          "entityName": {
            "type": "string",
            "minLength": 1
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "GetAllReportServerEntitiesMetadataCollectionResourceActionResponse": {
        "title": "GetAllReportServerEntitiesMetadataCollectionResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "id": {
            "title": "id",
            "type": "integer",
            "format": "int64",
            "nullable": true,
            "x-propertyPath": "ReportServerEntityMetadataEntity->Id"
          },
          "version": {
            "title": "version",
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "x-propertyPath": "ReportServerEntityMetadataEntity->Version"
          },
          "categories": {
            "title": "categories",
            "type": "array",
            "format": "array",
            "nullable": true,
            "items": {
              "type": "string"
            },
            "x-propertyPath": "ReportServerEntityMetadataEntity->Categories",
            "x-formatSpecifier": "String"
          },
          "defaultReportName": {
            "title": "defaultReportName",
            "type": "string",
            "nullable": true,
            "x-propertyPath": "ReportServerEntityMetadataEntity->DefaultReportName"
          },
          "entityType": {
            "title": "entityType",
            "type": "string",
            "format": "enum",
            "nullable": true,
            "x-propertyPath": "ReportServerEntityMetadataEntity->EntityType",
            "x-formatSpecifier": "EntityType"
          }
        }
      },
      "GetAllReportServerEntitiesMetadataCollectionResourceAction": {
        "title": "GetAllReportServerEntitiesMetadataCollectionResourceAction",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of Metadata entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Collection of Metadata entities",
            "items": {
              "$ref": "#/components/schemas/GetAllReportServerEntitiesMetadataCollectionResourceActionResponse"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          }
        }
      },
      "EnumMetadataCollection": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EnumMetadata"
            }
          },
          "links": {
            "type": "array",
            "description": "Hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "self": {
            "description": "Self link to re-execute",
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "ModuleSummarySchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "description",
          "self"
        ],
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1
          },
          "description": {
            "type": "string",
            "minLength": 1
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "GetResourceActionCustomisationOwnershipCollectionResourceActionResponse": {
        "title": "GetResourceActionCustomisationOwnershipCollectionResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          },
          "next": {
            "$ref": "#/components/schemas/Link"
          },
          "prev": {
            "$ref": "#/components/schemas/Link"
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Pageable collection of entities",
            "items": {
              "title": "GetResourceActionCustomisationOwnershipCollectionResourceActionResponseItem",
              "type": "object",
              "additionalProperties": false,
              "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",
                  "nullable": true,
                  "example": 2
                },
                "properties": {
                  "title": "GetResourceActionCustomisationOwnershipCollectionResourceActionResponseItemProperties",
                  "type": "object",
                  "properties": {
                    "name": {
                      "title": "name",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->Name"
                    },
                    "description": {
                      "title": "description",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "ResourceActionCustomisation->Description"
                    },
                    "restrictionLevel": {
                      "title": "restrictionLevel",
                      "type": "string",
                      "format": "enum",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->RestrictionLevel",
                      "x-formatSpecifier": "RestrictionLevel"
                    },
                    "resource": {
                      "title": "resource",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->Resource"
                    },
                    "resourceAction": {
                      "title": "resourceAction",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->ResourceAction"
                    },
                    "module": {
                      "title": "module",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->Module"
                    },
                    "isRunnable": {
                      "title": "isRunnable",
                      "type": "boolean",
                      "nullable": true,
                      "x-propertyPath": "ResourceActionCustomisation->IsRunnable"
                    },
                    "createdByUserFullName": {
                      "title": "createdByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->CreatedByUser_FullName"
                    },
                    "createdOn": {
                      "title": "createdOn",
                      "type": "string",
                      "format": "date-time",
                      "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": "#/components/schemas/Link"
                  }
                }
              }
            }
          },
          "mapping": {
            "title": "mapping",
            "type": "array",
            "description": "Collection of source to target property mappings",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "ResourceActionCustomisationUserLookupResourceActionResponse": {
        "title": "ResourceActionCustomisationUserLookupResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          },
          "next": {
            "$ref": "#/components/schemas/Link"
          },
          "prev": {
            "$ref": "#/components/schemas/Link"
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Pageable collection of entities",
            "items": {
              "title": "ResourceActionCustomisationUserLookupResourceActionResponseItem",
              "type": "object",
              "additionalProperties": false,
              "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",
                  "nullable": true,
                  "example": 2
                },
                "properties": {
                  "title": "ResourceActionCustomisationUserLookupResourceActionResponseItemProperties",
                  "type": "object",
                  "properties": {
                    "code": {
                      "title": "code",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "User->Code"
                    },
                    "fullName": {
                      "title": "fullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "User->FullName"
                    }
                  }
                },
                "links": {
                  "title": "links",
                  "type": "array",
                  "description": "Collection of hypermedia links",
                  "items": {
                    "$ref": "#/components/schemas/Link"
                  }
                }
              }
            }
          },
          "mapping": {
            "title": "mapping",
            "type": "array",
            "description": "Collection of source to target property mappings",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "DeleteResourceActionCustomisationByIdRequest": {
        "title": "DeleteResourceActionCustomisationByIdRequest",
        "type": "object",
        "additionalProperties": false,
        "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",
            "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": "#/components/schemas/DeleteResourceActionCustomisationByIdRequest"
        }
      },
      "PatchOperationType": {
        "type": "string",
        "description": "",
        "nullable": true,
        "x-enumNames": [
          "Replace",
          "Add",
          "Remove"
        ],
        "enum": [
          "replace",
          "add",
          "remove"
        ]
      },
      "EntityPatchOperationSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "path",
          "value"
        ],
        "properties": {
          "op": {
            "title": "op",
            "description": "Type of operation to apply",
            "example": "replace",
            "$ref": "#/components/schemas/PatchOperationType"
          },
          "path": {
            "title": "path",
            "type": "string",
            "description": "Property path for the property being updated",
            "nullable": false,
            "example": "Asset->Code"
          },
          "value": {
            "title": "value",
            "type": "object",
            "description": "Value for the property being updated",
            "nullable": true,
            "example": "BOILER",
            "additionalProperties": false
          }
        }
      },
      "ChangeResourceActionCustomisationOwnership": {
        "title": "ChangeResourceActionCustomisationOwnership",
        "type": "object",
        "additionalProperties": false,
        "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",
            "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": "#/components/schemas/EntityPatchOperationSchema"
            },
            "x-patchproperties": [
              {
                "title": "userId",
                "type": "integer",
                "format": "int64",
                "nullable": false,
                "x-propertyPath": "ChangeResourceActionCustomisationOwnership->UserId"
              }
            ]
          }
        }
      },
      "ChangeResourceActionCustomisationOwnershipResourceActionRequest": {
        "title": "ChangeResourceActionCustomisationOwnershipResourceActionRequest",
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/ChangeResourceActionCustomisationOwnership"
        }
      },
      "ResourceActionSummarySchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "moduleName",
          "resourceName",
          "resourceActionName",
          "type",
          "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": "#/components/schemas/Link"
            }
          },
          "httpMethod": {
            "type": "string",
            "minLength": 1
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "ResourceSummarySchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "moduleName",
          "resourceName",
          "resourceDescription",
          "self"
        ],
        "properties": {
          "moduleName": {
            "type": "string",
            "minLength": 1
          },
          "resourceName": {
            "type": "string",
            "minLength": 1
          },
          "resourceDescription": {
            "type": "string",
            "nullable": true
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "ResourceActionCustomisationSchema": {
        "type": "object",
        "additionalProperties": false,
        "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",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isTemp": {
            "type": "boolean"
          },
          "request": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/ResourceActionCustomisationRequestSchema"
              }
            ]
          },
          "response": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/ResourceActionCustomisationResponseSchema"
              }
            ]
          },
          "links": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "restrictionLevel": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/RestrictionLevel"
              }
            ]
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "ResourceActionCustomisationRequestSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "properties"
        ],
        "properties": {
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ResourceActionCustomisationRequestPropertySchema"
            }
          }
        }
      },
      "ResourceActionCustomisationRequestPropertySchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "path",
          "validations"
        ],
        "properties": {
          "path": {
            "type": "string"
          },
          "validations": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/ResourceActionCustomisationRequestPropertyValidationSchema"
            }
          }
        }
      },
      "ResourceActionCustomisationRequestPropertyValidationSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "type": {
            "$ref": "#/components/schemas/ValidationType"
          },
          "expression": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "nullable": true
          }
        }
      },
      "ResourceActionCustomisationResponseSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "properties"
        ],
        "properties": {
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ResourceActionCustomisationResponsePropertySchema"
            }
          },
          "criteria": {
            "type": "string",
            "nullable": true
          },
          "orderBy": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "ResourceActionCustomisationResponsePropertySchema": {
        "type": "object",
        "additionalProperties": false,
        "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",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          },
          "next": {
            "$ref": "#/components/schemas/Link"
          },
          "prev": {
            "$ref": "#/components/schemas/Link"
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Pageable collection of entities",
            "items": {
              "title": "GetResourceActionCustomisationsResourceActionResponseItem",
              "type": "object",
              "additionalProperties": false,
              "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",
                  "nullable": true,
                  "example": 2
                },
                "properties": {
                  "title": "GetResourceActionCustomisationsResourceActionResponseItemProperties",
                  "type": "object",
                  "properties": {
                    "name": {
                      "title": "name",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->Name"
                    },
                    "description": {
                      "title": "description",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "ResourceActionCustomisation->Description"
                    },
                    "restrictionLevel": {
                      "title": "restrictionLevel",
                      "type": "string",
                      "format": "enum",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->RestrictionLevel",
                      "x-formatSpecifier": "RestrictionLevel"
                    },
                    "isRunnable": {
                      "title": "isRunnable",
                      "type": "boolean",
                      "nullable": true,
                      "x-propertyPath": "ResourceActionCustomisation->IsRunnable"
                    },
                    "createdByUserFullName": {
                      "title": "createdByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->CreatedByUser_FullName"
                    },
                    "createdOn": {
                      "title": "createdOn",
                      "type": "string",
                      "format": "date-time",
                      "nullable": true,
                      "example": "2005-04-20T11:52:23.0000000Z",
                      "x-propertyPath": "ResourceActionCustomisation->CreatedOn"
                    },
                    "modifiedByUserFullName": {
                      "title": "modifiedByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "ResourceActionCustomisation->ModifiedByUser_FullName"
                    },
                    "modifiedOn": {
                      "title": "modifiedOn",
                      "type": "string",
                      "format": "date-time",
                      "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": "#/components/schemas/Link"
                  }
                }
              }
            }
          },
          "mapping": {
            "title": "mapping",
            "type": "array",
            "description": "Collection of source to target property mappings",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "ResourceActionCustomisationCreateSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isTemp": {
            "type": "boolean"
          },
          "request": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/ResourceActionCustomisationRequestSchema"
              }
            ]
          },
          "response": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/ResourceActionCustomisationResponseSchema"
              }
            ]
          },
          "restrictionLevel": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/RestrictionLevel"
              }
            ]
          }
        }
      },
      "ResourceActionCustomisationUpdateSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "version"
        ],
        "properties": {
          "version": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "request": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/ResourceActionCustomisationRequestSchema"
              }
            ]
          },
          "response": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/ResourceActionCustomisationResponseSchema"
              }
            ]
          },
          "restrictionLevel": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/RestrictionLevel"
              }
            ]
          }
        }
      },
      "DeleteResourceActionCustomisationResourceActionRequest": {
        "title": "DeleteResourceActionCustomisationResourceActionRequest",
        "type": "object",
        "additionalProperties": false,
        "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",
            "nullable": true,
            "example": 1
          },
          "version": {
            "title": "version",
            "type": "integer",
            "description": "Version of the entity to delete",
            "format": "int32",
            "example": 1
          }
        }
      },
      "ResourceSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "description",
          "self",
          "primaryActions"
        ],
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "primaryActions": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/PrimaryActionsSchema"
              }
            ]
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "PrimaryActionsSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "fetch",
          "batchFetch",
          "query",
          "create",
          "batchCreate",
          "update",
          "batchUpdate",
          "delete",
          "batchDelete"
        ],
        "properties": {
          "fetch": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "batchFetch": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "query": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "create": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "batchCreate": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "update": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "batchUpdate": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "delete": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "batchDelete": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "SpecSchema": {
        "type": "string",
        "description": "",
        "x-enumNames": [
          "OpenApi3",
          "OpenApi2"
        ],
        "enum": [
          "openapi3",
          "openapi2"
        ]
      },
      "TemplateCustomisationSchema": {
        "type": "object",
        "additionalProperties": false,
        "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",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isTemp": {
            "type": "boolean"
          },
          "content": {
            "nullable": true
          },
          "restrictionLevel": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/RestrictionLevel"
              }
            ]
          },
          "links": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          }
        }
      },
      "GetAllTemplateCustomisationCollectionResourceActionResponse": {
        "title": "GetAllTemplateCustomisationCollectionResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          },
          "next": {
            "$ref": "#/components/schemas/Link"
          },
          "prev": {
            "$ref": "#/components/schemas/Link"
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Pageable collection of entities",
            "items": {
              "title": "GetAllTemplateCustomisationCollectionResourceActionResponseItem",
              "type": "object",
              "additionalProperties": false,
              "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",
                  "nullable": true,
                  "example": 2
                },
                "properties": {
                  "title": "GetAllTemplateCustomisationCollectionResourceActionResponseItemProperties",
                  "type": "object",
                  "properties": {
                    "name": {
                      "title": "name",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->Name"
                    },
                    "description": {
                      "title": "description",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Description"
                    },
                    "restrictionLevel": {
                      "title": "restrictionLevel",
                      "type": "string",
                      "format": "enum",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->RestrictionLevel",
                      "x-formatSpecifier": "RestrictionLevel"
                    },
                    "module": {
                      "title": "module",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->Module"
                    },
                    "type": {
                      "title": "type",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Type"
                    },
                    "isRunnable": {
                      "title": "isRunnable",
                      "type": "boolean",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->IsRunnable"
                    },
                    "createdByUserFullName": {
                      "title": "createdByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->CreatedByUser_FullName"
                    },
                    "createdOn": {
                      "title": "createdOn",
                      "type": "string",
                      "format": "date-time",
                      "nullable": true,
                      "example": "2005-04-20T11:52:23.0000000Z",
                      "x-propertyPath": "TemplateCustomisation->CreatedOn"
                    },
                    "modifiedByUserFullName": {
                      "title": "modifiedByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->ModifiedByUser_FullName"
                    },
                    "modifiedOn": {
                      "title": "modifiedOn",
                      "type": "string",
                      "format": "date-time",
                      "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": "#/components/schemas/Link"
                  }
                }
              }
            }
          },
          "mapping": {
            "title": "mapping",
            "type": "array",
            "description": "Collection of source to target property mappings",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "GetModuleTemplateCustomisationCollectionResourceActionResponse": {
        "title": "GetModuleTemplateCustomisationCollectionResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          },
          "next": {
            "$ref": "#/components/schemas/Link"
          },
          "prev": {
            "$ref": "#/components/schemas/Link"
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Pageable collection of entities",
            "items": {
              "title": "GetModuleTemplateCustomisationCollectionResourceActionResponseItem",
              "type": "object",
              "additionalProperties": false,
              "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",
                  "nullable": true,
                  "example": 2
                },
                "properties": {
                  "title": "GetModuleTemplateCustomisationCollectionResourceActionResponseItemProperties",
                  "type": "object",
                  "properties": {
                    "name": {
                      "title": "name",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->Name"
                    },
                    "description": {
                      "title": "description",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Description"
                    },
                    "restrictionLevel": {
                      "title": "restrictionLevel",
                      "type": "string",
                      "format": "enum",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->RestrictionLevel",
                      "x-formatSpecifier": "RestrictionLevel"
                    },
                    "module": {
                      "title": "module",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->Module"
                    },
                    "type": {
                      "title": "type",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Type"
                    },
                    "isRunnable": {
                      "title": "isRunnable",
                      "type": "boolean",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->IsRunnable"
                    },
                    "createdByUserFullName": {
                      "title": "createdByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->CreatedByUser_FullName"
                    },
                    "createdOn": {
                      "title": "createdOn",
                      "type": "string",
                      "format": "date-time",
                      "nullable": true,
                      "example": "2005-04-20T11:52:23.0000000Z",
                      "x-propertyPath": "TemplateCustomisation->CreatedOn"
                    },
                    "modifiedByUserFullName": {
                      "title": "modifiedByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->ModifiedByUser_FullName"
                    },
                    "modifiedOn": {
                      "title": "modifiedOn",
                      "type": "string",
                      "format": "date-time",
                      "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": "#/components/schemas/Link"
                  }
                }
              }
            }
          },
          "mapping": {
            "title": "mapping",
            "type": "array",
            "description": "Collection of source to target property mappings",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "GetTemplateCustomisationCollectionResourceActionResponse": {
        "title": "GetTemplateCustomisationCollectionResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          },
          "next": {
            "$ref": "#/components/schemas/Link"
          },
          "prev": {
            "$ref": "#/components/schemas/Link"
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Pageable collection of entities",
            "items": {
              "title": "GetTemplateCustomisationCollectionResourceActionResponseItem",
              "type": "object",
              "additionalProperties": false,
              "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",
                  "nullable": true,
                  "example": 2
                },
                "properties": {
                  "title": "GetTemplateCustomisationCollectionResourceActionResponseItemProperties",
                  "type": "object",
                  "properties": {
                    "template": {
                      "title": "template",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Template"
                    },
                    "name": {
                      "title": "name",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->Name"
                    },
                    "description": {
                      "title": "description",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Description"
                    },
                    "restrictionLevel": {
                      "title": "restrictionLevel",
                      "type": "string",
                      "format": "enum",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->RestrictionLevel",
                      "x-formatSpecifier": "RestrictionLevel"
                    },
                    "createdByUserId": {
                      "title": "createdByUserId",
                      "type": "integer",
                      "format": "int64",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->CreatedByUser_Id"
                    },
                    "createdByUserFullName": {
                      "title": "createdByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->CreatedByUser_FullName"
                    },
                    "createdOn": {
                      "title": "createdOn",
                      "type": "string",
                      "format": "date-time",
                      "nullable": true,
                      "example": "2005-04-20T11:52:23.0000000Z",
                      "x-propertyPath": "TemplateCustomisation->CreatedOn"
                    },
                    "modifiedByUserFullName": {
                      "title": "modifiedByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->ModifiedByUser_FullName"
                    },
                    "modifiedOn": {
                      "title": "modifiedOn",
                      "type": "string",
                      "format": "date-time",
                      "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": "#/components/schemas/Link"
                  }
                }
              }
            }
          },
          "mapping": {
            "title": "mapping",
            "type": "array",
            "description": "Collection of source to target property mappings",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "TemplateCustomisationCreateSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "content",
          "restrictionLevel"
        ],
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isTemp": {
            "type": "boolean"
          },
          "content": {},
          "restrictionLevel": {
            "$ref": "#/components/schemas/RestrictionLevel"
          }
        }
      },
      "TemplateCustomisationUpdateSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "version",
          "content",
          "restrictionLevel"
        ],
        "properties": {
          "version": {
            "type": "integer",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "content": {},
          "restrictionLevel": {
            "$ref": "#/components/schemas/RestrictionLevel"
          }
        }
      },
      "DeleteTemplateCustomisationResourceActionRequest": {
        "title": "DeleteTemplateCustomisationResourceActionRequest",
        "type": "object",
        "additionalProperties": false,
        "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",
            "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",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          },
          "next": {
            "$ref": "#/components/schemas/Link"
          },
          "prev": {
            "$ref": "#/components/schemas/Link"
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Pageable collection of entities",
            "items": {
              "title": "GetTemplateCustomisationOwnershipCollectionResourceActionResponseItem",
              "type": "object",
              "additionalProperties": false,
              "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",
                  "nullable": true,
                  "example": 2
                },
                "properties": {
                  "title": "GetTemplateCustomisationOwnershipCollectionResourceActionResponseItemProperties",
                  "type": "object",
                  "properties": {
                    "name": {
                      "title": "name",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->Name"
                    },
                    "description": {
                      "title": "description",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Description"
                    },
                    "restrictionLevel": {
                      "title": "restrictionLevel",
                      "type": "string",
                      "format": "enum",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->RestrictionLevel",
                      "x-formatSpecifier": "RestrictionLevel"
                    },
                    "module": {
                      "title": "module",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->Module"
                    },
                    "type": {
                      "title": "type",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Type"
                    },
                    "template": {
                      "title": "template",
                      "type": "string",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->Template"
                    },
                    "createdByUserId": {
                      "title": "createdByUserId",
                      "type": "integer",
                      "format": "int64",
                      "nullable": true,
                      "x-propertyPath": "TemplateCustomisation->CreatedByUser_Id"
                    },
                    "createdByUserFullName": {
                      "title": "createdByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->CreatedByUser_FullName"
                    },
                    "createdOn": {
                      "title": "createdOn",
                      "type": "string",
                      "format": "date-time",
                      "nullable": true,
                      "example": "2005-04-20T11:52:23.0000000Z",
                      "x-propertyPath": "TemplateCustomisation->CreatedOn"
                    },
                    "modifiedByUserFullName": {
                      "title": "modifiedByUserFullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "TemplateCustomisation->ModifiedByUser_FullName"
                    },
                    "modifiedOn": {
                      "title": "modifiedOn",
                      "type": "string",
                      "format": "date-time",
                      "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": "#/components/schemas/Link"
                  }
                }
              }
            }
          },
          "mapping": {
            "title": "mapping",
            "type": "array",
            "description": "Collection of source to target property mappings",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "TemplateCustomisationUserLookupResourceActionResponse": {
        "title": "TemplateCustomisationUserLookupResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          },
          "next": {
            "$ref": "#/components/schemas/Link"
          },
          "prev": {
            "$ref": "#/components/schemas/Link"
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Pageable collection of entities",
            "items": {
              "title": "TemplateCustomisationUserLookupResourceActionResponseItem",
              "type": "object",
              "additionalProperties": false,
              "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",
                  "nullable": true,
                  "example": 2
                },
                "properties": {
                  "title": "TemplateCustomisationUserLookupResourceActionResponseItemProperties",
                  "type": "object",
                  "properties": {
                    "code": {
                      "title": "code",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "User->Code"
                    },
                    "fullName": {
                      "title": "fullName",
                      "type": "string",
                      "nullable": false,
                      "x-propertyPath": "User->FullName"
                    }
                  }
                },
                "links": {
                  "title": "links",
                  "type": "array",
                  "description": "Collection of hypermedia links",
                  "items": {
                    "$ref": "#/components/schemas/Link"
                  }
                }
              }
            }
          },
          "mapping": {
            "title": "mapping",
            "type": "array",
            "description": "Collection of source to target property mappings",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/LinkMapping"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "DeleteTemplateCustomisationByIdResourceActionRequest": {
        "title": "DeleteTemplateCustomisationByIdResourceActionRequest",
        "type": "object",
        "additionalProperties": false,
        "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",
            "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": "#/components/schemas/DeleteTemplateCustomisationByIdResourceActionRequest"
        }
      },
      "ChangeTemplateCustomisationOwnership": {
        "title": "ChangeTemplateCustomisationOwnership",
        "type": "object",
        "additionalProperties": false,
        "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",
            "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": "#/components/schemas/EntityPatchOperationSchema"
            },
            "x-patchproperties": [
              {
                "title": "userId",
                "type": "integer",
                "format": "int64",
                "nullable": false,
                "x-propertyPath": "ChangeTemplateCustomisationOwnership->UserId"
              }
            ]
          }
        }
      },
      "ChangeTemplateCustomisationOwnershipResourceActionRequest": {
        "title": "ChangeTemplateCustomisationOwnershipResourceActionRequest",
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/ChangeTemplateCustomisationOwnership"
        }
      },
      "TemplateMigrationCollectionSchema": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TemplateMigrationSchema"
            }
          }
        }
      },
      "TemplateMigrationSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "module",
          "id",
          "isGlobal",
          "onkeyVersion",
          "sequenceNumber",
          "templateContent",
          "intentContent"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "module": {
            "type": "string",
            "nullable": true
          },
          "id": {
            "type": "string",
            "format": "guid"
          },
          "isGlobal": {
            "type": "boolean"
          },
          "onkeyVersion": {
            "type": "string"
          },
          "sequenceNumber": {
            "type": "integer",
            "format": "int32"
          },
          "templateContent": {
            "nullable": true
          },
          "intentContent": {
            "nullable": true
          }
        }
      },
      "TemplateSummarySchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "moduleName",
          "templateName",
          "templateType"
        ],
        "properties": {
          "moduleName": {
            "type": "string",
            "minLength": 1
          },
          "templateName": {
            "type": "string",
            "minLength": 1
          },
          "templateType": {
            "type": "string",
            "minLength": 1
          },
          "self": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/Link"
              }
            ]
          },
          "links": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          }
        }
      },
      "TranslationSetSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "items"
        ],
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "name": {
            "type": "string"
          },
          "langId": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "lang": {
            "type": "string",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TranslationSchema"
            }
          }
        }
      },
      "TranslationSchema": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "value",
          "source"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "source": {
            "$ref": "#/components/schemas/TranslationSource"
          }
        }
      },
      "TranslationSource": {
        "type": "string",
        "description": "",
        "x-enumNames": [
          "System",
          "User"
        ],
        "enum": [
          "System",
          "User"
        ]
      },
      "DynamicValueSchema": {
        "title": "DynamicValueSchema",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "type": {
            "title": "type",
            "type": "string",
            "format": "enum",
            "nullable": false,
            "x-formatSpecifier": "DynamicValueType",
            "x-enumNames": [
              "String",
              "Email",
              "Integer",
              "Long",
              "Float",
              "Currency",
              "DateTime",
              "Date",
              "Time",
              "Duration",
              "Boolean"
            ]
          },
          "value": {
            "title": "value",
            "type": "object",
            "additionalProperties": false
          }
        }
      },
      "GetAllUserDefinedFieldsMetadataCollectionResourceActionResponse": {
        "title": "GetAllUserDefinedFieldsMetadataCollectionResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "id": {
            "title": "id",
            "type": "integer",
            "format": "int64",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->Id"
          },
          "dataType": {
            "title": "dataType",
            "type": "string",
            "format": "enum",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->DataType",
            "x-formatSpecifier": "DynamicValueType"
          },
          "defaultPredefinedValueId": {
            "title": "defaultPredefinedValueId",
            "type": "integer",
            "format": "int64",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->DefaultPredefinedValueId"
          },
          "defaultValue": {
            "title": "defaultValue",
            "format": "composite",
            "nullable": true,
            "$ref": "#/components/schemas/DynamicValueSchema",
            "x-propertyPath": "UserDefinedFieldMetadataEntity->DefaultValue",
            "x-formatSpecifier": "DynamicValue"
          },
          "description": {
            "title": "description",
            "type": "string",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->Description"
          },
          "entityType": {
            "title": "entityType",
            "type": "string",
            "format": "enum",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->EntityType",
            "x-formatSpecifier": "EntityType"
          },
          "fieldType": {
            "title": "fieldType",
            "type": "string",
            "format": "enum",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->FieldType",
            "x-formatSpecifier": "UserDefinedFieldType"
          },
          "isActive": {
            "title": "isActive",
            "type": "boolean",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->IsActive"
          },
          "isMemo": {
            "title": "isMemo",
            "type": "boolean",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->IsMemo"
          },
          "name": {
            "title": "name",
            "type": "string",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->Name"
          },
          "sequenceNumber": {
            "title": "sequenceNumber",
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->SequenceNumber"
          },
          "stringLength": {
            "title": "stringLength",
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->StringLength"
          },
          "version": {
            "title": "version",
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->Version"
          },
          "enableMatchUpdate": {
            "title": "enableMatchUpdate",
            "type": "boolean",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->EnableMatchUpdate"
          }
        }
      },
      "GetAllUserDefinedFieldsMetadataCollectionResourceAction": {
        "title": "GetAllUserDefinedFieldsMetadataCollectionResourceAction",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of User Defined Field Metadata entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Collection of User Defined Field Metadata entities",
            "items": {
              "$ref": "#/components/schemas/GetAllUserDefinedFieldsMetadataCollectionResourceActionResponse"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          }
        }
      },
      "GetEntityTypeUserDefinedFieldsMetadataCollectionResourceActionResponse": {
        "title": "GetEntityTypeUserDefinedFieldsMetadataCollectionResourceActionResponse",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "id": {
            "title": "id",
            "type": "integer",
            "format": "int64",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->Id"
          },
          "dataType": {
            "title": "dataType",
            "type": "string",
            "format": "enum",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->DataType",
            "x-formatSpecifier": "DynamicValueType"
          },
          "defaultPredefinedValueId": {
            "title": "defaultPredefinedValueId",
            "type": "integer",
            "format": "int64",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->DefaultPredefinedValueId"
          },
          "defaultValue": {
            "title": "defaultValue",
            "format": "composite",
            "nullable": true,
            "$ref": "#/components/schemas/DynamicValueSchema",
            "x-propertyPath": "UserDefinedFieldMetadataEntity->DefaultValue",
            "x-formatSpecifier": "DynamicValue"
          },
          "description": {
            "title": "description",
            "type": "string",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->Description"
          },
          "entityType": {
            "title": "entityType",
            "type": "string",
            "format": "enum",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->EntityType",
            "x-formatSpecifier": "EntityType"
          },
          "fieldType": {
            "title": "fieldType",
            "type": "string",
            "format": "enum",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->FieldType",
            "x-formatSpecifier": "UserDefinedFieldType"
          },
          "isActive": {
            "title": "isActive",
            "type": "boolean",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->IsActive"
          },
          "isMemo": {
            "title": "isMemo",
            "type": "boolean",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->IsMemo"
          },
          "name": {
            "title": "name",
            "type": "string",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->Name"
          },
          "sequenceNumber": {
            "title": "sequenceNumber",
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->SequenceNumber"
          },
          "stringLength": {
            "title": "stringLength",
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->StringLength"
          },
          "version": {
            "title": "version",
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->Version"
          },
          "enableMatchUpdate": {
            "title": "enableMatchUpdate",
            "type": "boolean",
            "nullable": true,
            "x-propertyPath": "UserDefinedFieldMetadataEntity->EnableMatchUpdate"
          }
        }
      },
      "GetEntityTypeUserDefinedFieldsMetadataCollectionResourceAction": {
        "title": "GetEntityTypeUserDefinedFieldsMetadataCollectionResourceAction",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "count": {
            "title": "count",
            "type": "integer",
            "description": "Number of User Defined Field Metadata entities in the collection",
            "format": "int32",
            "nullable": false,
            "example": 2
          },
          "items": {
            "title": "items",
            "type": "array",
            "description": "Collection of User Defined Field Metadata entities",
            "items": {
              "$ref": "#/components/schemas/GetEntityTypeUserDefinedFieldsMetadataCollectionResourceActionResponse"
            }
          },
          "links": {
            "title": "links",
            "type": "array",
            "description": "Collection of hypermedia links",
            "items": {
              "$ref": "#/components/schemas/Link"
            }
          },
          "messages": {
            "title": "messages",
            "type": "array",
            "description": "Messages for the entity data",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchema"
            }
          },
          "self": {
            "$ref": "#/components/schemas/Link"
          }
        }
      }
    },
    "responses": {
      "default": {
        "description": "Error response - operation failed"
      },
      "created": {
        "description": "Success response - resource was successfully created",
        "headers": {
          "OnKey-Resource-Id": {
            "description": "Id of the resource created",
            "schema": {
              "type": "integer",
              "format": "Int64"
            },
            "example": 1582413583401002
          },
          "OnKey-Resource-Location": {
            "description": "Uri to fetch the created resource",
            "schema": {
              "type": "string"
            },
            "example": "/api/tenants/{client}/{connection}/Modules/GEN/Languages/1582413583401002"
          }
        }
      },
      "accepted": {
        "description": "Request was successfully registered for asynchronous execution using a Background Task",
        "headers": {
          "OnKey-Request-Id": {
            "description": "Request id for the Background Task created",
            "schema": {
              "type": "integer",
              "format": "Int64"
            },
            "example": 1582413583401002
          },
          "OnKey-Request-Location": {
            "description": "URI to poll for the asynchronous execution status of the request",
            "schema": {
              "type": "string"
            },
            "example": "/api/tenants/{client}/{connection}/Modules/System/BackgroundTasks/1582413583401002"
          }
        }
      },
      "scheduled": {
        "description": "Request was successfully scheduled for asynchronous execution using a Scheduled Background Task",
        "headers": {
          "OnKey-Resource-Id": {
            "description": "Id of the Scheduled Background Task resource created",
            "schema": {
              "type": "integer",
              "format": "Int64"
            },
            "example": 1582413583401002
          },
          "OnKey-Resource-Location": {
            "description": "Uri to fetch the Scheduled Background Task resource",
            "schema": {
              "type": "string"
            },
            "example": "/api/tenants/{client}/{connection}/Modules/System/ScheduledBackgroundTasks/1582413583401002"
          },
          "OnKey-Job-Id": {
            "description": "Job id of the job schedule created",
            "schema": {
              "type": "string",
              "format": "Uuid"
            },
            "example": "cc4820be-e990-4161-85ff-eec4bbde2acb"
          },
          "OnKey-Job-Schedule-Location": {
            "description": "URI to fetch the job schedule for the asynchronous execution of the request",
            "schema": {
              "type": "string"
            },
            "example": "/api/tenants/{client}/{connection}/Modules/System/Jobs/cc4820be-e990-4161-85ff-eec4bbde2acb/Schedule"
          }
        }
      }
    },
    "parameters": {
      "ExecutionMode": {
        "name": "mode",
        "in": "query",
        "description": "Execution mode to use for executing the batch operation",
        "schema": {
          "$ref": "#/components/schemas/OperationExecutionMode"
        }
      },
      "Async": {
        "name": "async",
        "in": "query",
        "description": "Enqueue the operation asynchronously using a Background Task.",
        "schema": {
          "type": "boolean"
        }
      },
      "AsyncDescription": {
        "name": "description",
        "in": "query",
        "description": "Optional description for the asynchronous execution of the Background Task.",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "Schedule": {
        "name": "schedule",
        "in": "query",
        "description": "Optional cron expression to schedule the asynchronous execution of the Background Task.",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "ScheduleFrom": {
        "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.",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "Filter": {
        "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'",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "OrderBy": {
        "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",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "Param": {
        "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'",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "Select": {
        "name": "$select",
        "in": "query",
        "description": "Comma separated list of the data properties on the resource to return, e.g. $select=id,code,description",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "Skip": {
        "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",
        "schema": {
          "type": "string",
          "nullable": true
        }
      },
      "Top": {
        "name": "$top",
        "in": "query",
        "description": "Number of items to return in the response data, e.g. $top=20",
        "schema": {
          "type": "string",
          "nullable": true
        }
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "description": "Use the JWT access token received by authenticating with your configured On Key Identity Provider",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "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"
      ]
    }
  ]
}