Improved

IQA permissions change for IsAvailableForREST flag

Effective Version:

This change is expected to be live in iMIS EMS 20.3.231

What’s Changing:

Public users, users with UserType Public, have been restricted on the QueryDefinition endpoint for security reasons.

Additionally, staff users will be allowed to extract query definition details, from the QueryDefinition endpoint, regardless of the IQA security settings to make the query visible to the API.

Likewise, if the query is not available via the REST API in the IQA security tab, then both /api/iqa and /api/QueryService return HTTP 404 regardless of user.

Permissions by endpoint

/api/QueryDefinition

User typeAvailable for REST = trueAvailable for REST = false
Staff
Public❌ 403❌ 403

/api/iqa

User typeAvailable for REST = trueAvailable for REST = false
Staff❌ 404
Public❌ 404

/api/QueryService

User typeAvailable for REST = trueAvailable for REST = false
Staff❌ 404
Public❌ 404

Examples (Before– v20.3.231):

Request Endpoint

POST /QueryDefinition/_execute`

Request Body

  • For both public and staff users:
 {
   "$type": "Asi.Soa.Core.DataContracts.GenericExecuteRequest, Asi.Contracts",
   "OperationName": "FindById",
   "EntityTypeName": "QueryDefinition",
   "Parameters": {
     "$type": "System.Collections.ObjectModel.Collection`1[[System.Object, mscorlib]], mscorlib",
     "$values": [
       "6ba62070-aca8-40d6-b826-f2773b47428b"
     ]
   },
   "ParameterTypeName": {
     "$type": "System.Collections.ObjectModel.Collection`1[[System.String, mscorlib]], mscorlib",
     "$values": [
       "System.String"
     ]
   },
   "UseJson": false
 }

Response:

  • For a public user, the IQA is available to REST, and the IQA has Everyone Read access:
{
    "$type": "Asi.Soa.Core.DataContracts.ServiceResponse`1[[Asi.Soa.Core.DataContracts.QueryDefinitionData, Asi.Contracts]], Asi.Contracts",
    "Result": {
        "$type": "Asi.Soa.Core.DataContracts.IqaQueryDefinitionData, Asi.Contracts",
        "Document": {
            "$type": "Asi.Soa.Core.DataContracts.DocumentData, Asi.Contracts",
            "Data": {
                "$type": "System.Byte[], mscorlib",
                "$value": "<blob>"
            },
            "AccessId": "00000000-0000-0000-0000-000000000e02",
            "StatusUpdatedByUserId": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
            "StatusUpdatedOn": "2026-05-11T13:42:59.56",
            "Description": "",
            "DocumentId": "e8a299d6-838b-4eee-9332-48cd434c82b7",
            "DocumentVersionId": "6ba62070-aca8-40d6-b826-f2773b47428b",
            "DocumentTypeId": "IQD",
            "Name": "Everyone_Read_AvailableToREST_True",
            "Path": "$/Everyone_Read_AvailableToREST_True",
            "FolderPath": "$",
            "Status": "Published",
            "UpdateInfo": {
                "$type": "Asi.Soa.Core.DataContracts.EntityUpdateInformationData, Asi.Contracts",
                "CreatedBy": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
                "CreatedOn": "2026-05-11T13:42:59.557",
                "UpdatedBy": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
                "UpdatedOn": "2026-05-11T13:43:44.91"
            }
        },
        "Parameters": {
            "$type": "Asi.Soa.Core.DataContracts.CriteriaDataCollection, Asi.Contracts",
            "$values": []
        },
        "Path": "$/Everyone_Read_AvailableToREST_True",
        "Properties": {
            "$type": "Asi.Soa.Core.DataContracts.QueryPropertyDataCollection, Asi.Contracts",
            "$values": [
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL1",
                    "PropertyName": "Chapter",
                    "Alias": "",
                    "Caption": "NetContactData.Chapter",
                    "DisplayFormat": "G",
                    "DisplayOrder": 1,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL2",
                    "PropertyName": "Contact Key",
                    "Alias": "",
                    "Caption": "NetContactData.Contact Key",
                    "DisplayFormat": "",
                    "DisplayOrder": 2,
                    "Link": "",
                    "DataTypeName": "Guid"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL3",
                    "PropertyName": "Full Name",
                    "Alias": "",
                    "Caption": "NetContactData.Full Name",
                    "DisplayFormat": "G",
                    "DisplayOrder": 3,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL4",
                    "PropertyName": "Id",
                    "Alias": "",
                    "Caption": "NetContactData.Id",
                    "DisplayFormat": "G",
                    "DisplayOrder": 4,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL5",
                    "PropertyName": "Member Type",
                    "Alias": "",
                    "Caption": "NetContactData.Member Type",
                    "DisplayFormat": "G",
                    "DisplayOrder": 5,
                    "Link": "",
                    "DataTypeName": "String"
                }
            ]
        },
        "Relations": {
            "$type": "Asi.Soa.Core.DataContracts.QueryRelationDataCollection, Asi.Contracts",
            "$values": []
        },
        "Sources": {
            "$type": "Asi.Soa.Core.DataContracts.QuerySourceDataCollection, Asi.Contracts",
            "$values": [
                {
                    "$type": "Asi.Soa.Core.DataContracts.QuerySourceData, Asi.Contracts",
                    "QuerySourceId": "SR1",
                    "QuerySourceType": 1,
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Description": "NetContactData",
                    "BusinessControllerName": "NetContactData"
                }
            ]
        },
        "QueryDefinitionId": "6ba62070-aca8-40d6-b826-f2773b47428b"
    },
    "IsSuccessStatusCode": true,
    "Message": null,
    "ReasonPhrase": null,
    "StatusCode": 0,
    "ValidationResults": {
        "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts",
        "Errors": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        },
        "Warnings": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        }
    },
    "IsCachedResult": false,
    "BrowserCacheDuration": 0,
    "BrowserCacheIsPublic": false
}
  • For a public user, the IQA is not available to REST, and the IQA has Everyone Read access:
{
    "$type": "Asi.Soa.Core.DataContracts.ServiceResponse`1[[Asi.Soa.Core.DataContracts.QueryDefinitionData, Asi.Contracts]], Asi.Contracts",
    "Result": null,
    "IsSuccessStatusCode": false,
    "Message": "NotAuthorized",
    "ReasonPhrase": null,
    "StatusCode": 3,
    "ValidationResults": {
        "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts",
        "Errors": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        },
        "Warnings": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        }
    },
    "IsCachedResult": false,
    "BrowserCacheDuration": 0,
    "BrowserCacheIsPublic": false
}
  • The two scenarios below have the same response:
    • A public user, the IQA is available to REST, and the IQA has All Staff Full Control access
    • A public user, the IQA is not available to REST, and the IQA has All Staff Full Control access
{
    "$type": "Asi.Soa.Core.DataContracts.ServiceResponse`1[[Asi.Soa.Core.DataContracts.QueryDefinitionData, Asi.Contracts]], Asi.Contracts",
    "Result": null,
    "IsSuccessStatusCode": false,
    "Message": "Asi.Business.BusinessItemLoadException: Unable to load requested business object Document",
    "ReasonPhrase": null,
    "StatusCode": 9,
    "ValidationResults": {
        "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts",
        "Errors": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        },
        "Warnings": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        }
    },
    "IsCachedResult": false,
    "BrowserCacheDuration": 0,
    "BrowserCacheIsPublic": false
}
  • The two scenarios below have the same response:
    • A staff user, the IQA is available to REST, and the IQA has Everyone Read access:
    • A staff user, the IQA is available to REST, and the IQA has All Staff Full Control access:
{
    "$type": "Asi.Soa.Core.DataContracts.ServiceResponse`1[[Asi.Soa.Core.DataContracts.QueryDefinitionData, Asi.Contracts]], Asi.Contracts",
    "Result": {
        "$type": "Asi.Soa.Core.DataContracts.IqaQueryDefinitionData, Asi.Contracts",
        "Document": {
            "$type": "Asi.Soa.Core.DataContracts.DocumentData, Asi.Contracts",
            "Data": {
                "$type": "System.Byte[], mscorlib",
                "$value": "<blob>"
            },
            "AccessId": "00000000-0000-0000-0000-000000000e02",
            "StatusUpdatedByUserId": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
            "StatusUpdatedOn": "2026-05-11T13:42:59.56",
            "Description": "",
            "DocumentId": "e8a299d6-838b-4eee-9332-48cd434c82b7",
            "DocumentVersionId": "6ba62070-aca8-40d6-b826-f2773b47428b",
            "DocumentTypeId": "IQD",
            "Name": "Everyone_Read_AvailableToREST_True",
            "Path": "$/Everyone_Read_AvailableToREST_True",
            "FolderPath": "$",
            "Status": "Published",
            "UpdateInfo": {
                "$type": "Asi.Soa.Core.DataContracts.EntityUpdateInformationData, Asi.Contracts",
                "CreatedBy": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
                "CreatedOn": "2026-05-11T13:42:59.557",
                "UpdatedBy": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
                "UpdatedOn": "2026-05-11T13:43:44.91"
            }
        },
        "Parameters": {
            "$type": "Asi.Soa.Core.DataContracts.CriteriaDataCollection, Asi.Contracts",
            "$values": []
        },
        "Path": "$/Everyone_Read_AvailableToREST_True",
        "Properties": {
            "$type": "Asi.Soa.Core.DataContracts.QueryPropertyDataCollection, Asi.Contracts",
            "$values": [
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL1",
                    "PropertyName": "Chapter",
                    "Alias": "",
                    "Caption": "NetContactData.Chapter",
                    "DisplayFormat": "G",
                    "DisplayOrder": 1,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL2",
                    "PropertyName": "Contact Key",
                    "Alias": "",
                    "Caption": "NetContactData.Contact Key",
                    "DisplayFormat": "",
                    "DisplayOrder": 2,
                    "Link": "",
                    "DataTypeName": "Guid"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL3",
                    "PropertyName": "Full Name",
                    "Alias": "",
                    "Caption": "NetContactData.Full Name",
                    "DisplayFormat": "G",
                    "DisplayOrder": 3,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL4",
                    "PropertyName": "Id",
                    "Alias": "",
                    "Caption": "NetContactData.Id",
                    "DisplayFormat": "G",
                    "DisplayOrder": 4,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL5",
                    "PropertyName": "Member Type",
                    "Alias": "",
                    "Caption": "NetContactData.Member Type",
                    "DisplayFormat": "G",
                    "DisplayOrder": 5,
                    "Link": "",
                    "DataTypeName": "String"
                }
            ]
        },
        "Relations": {
            "$type": "Asi.Soa.Core.DataContracts.QueryRelationDataCollection, Asi.Contracts",
            "$values": []
        },
        "Sources": {
            "$type": "Asi.Soa.Core.DataContracts.QuerySourceDataCollection, Asi.Contracts",
            "$values": [
                {
                    "$type": "Asi.Soa.Core.DataContracts.QuerySourceData, Asi.Contracts",
                    "QuerySourceId": "SR1",
                    "QuerySourceType": 1,
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Description": "NetContactData",
                    "BusinessControllerName": "NetContactData"
                }
            ]
        },
        "QueryDefinitionId": "6ba62070-aca8-40d6-b826-f2773b47428b"
    },
    "IsSuccessStatusCode": true,
    "Message": null,
    "ReasonPhrase": null,
    "StatusCode": 0,
    "ValidationResults": {
        "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts",
        "Errors": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        },
        "Warnings": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        }
    },
    "IsCachedResult": false,
    "BrowserCacheDuration": 0,
    "BrowserCacheIsPublic": false
}
  • The two scenarios below have the same response:
    • A staff user, the IQA is not available to REST, and the IQA has Everyone Read access:
    • A staff user, the IQA is not available to REST, and the IQA has All Staff Full Control access:
{
    "$type": "Asi.Soa.Core.DataContracts.ServiceResponse`1[[Asi.Soa.Core.DataContracts.QueryDefinitionData, Asi.Contracts]], Asi.Contracts",
    "Result": null,
    "IsSuccessStatusCode": false,
    "Message": "NotAuthorized",
    "ReasonPhrase": null,
    "StatusCode": 3,
    "ValidationResults": {
        "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts",
        "Errors": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        },
        "Warnings": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        }
    },
    "IsCachedResult": false,
    "BrowserCacheDuration": 0,
    "BrowserCacheIsPublic": false
}


Example (After – v20.3.231):

Request Endpoint

POST /QueryDefinition/_execute`

Request Body

  • For both public and staff users:
 {
   "$type": "Asi.Soa.Core.DataContracts.GenericExecuteRequest, Asi.Contracts",
   "OperationName": "FindById",
   "EntityTypeName": "QueryDefinition",
   "Parameters": {
     "$type": "System.Collections.ObjectModel.Collection`1[[System.Object, mscorlib]], mscorlib",
     "$values": [
       "6ba62070-aca8-40d6-b826-f2773b47428b"
     ]
   },
   "ParameterTypeName": {
     "$type": "System.Collections.ObjectModel.Collection`1[[System.String, mscorlib]], mscorlib",
     "$values": [
       "System.String"
     ]
   },
   "UseJson": false
 }

Response

  • The two scenarios below have the same response:
    • A public user, the IQA is available to REST, and the IQA has Everyone Read access:
    • A public user, the IQA is not available to REST, and the IQA has Everyone Read access:
{
    "$type": "Asi.Soa.Core.DataContracts.ServiceResponse`1[[Asi.Soa.Core.DataContracts.QueryDefinitionData, Asi.Contracts]], Asi.Contracts",
    "Result": null,
    "IsSuccessStatusCode": false,
    "Message": "NotAuthorized",
    "ReasonPhrase": null,
    "StatusCode": 3,
    "ValidationResults": {
        "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts",
        "Errors": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        },
        "Warnings": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        }
    },
    "IsCachedResult": false,
    "BrowserCacheDuration": 0,
    "BrowserCacheIsPublic": false
}
  • The two scenarios below have the same response:
    • A public user, the IQA is available to REST, and the IQA has All Staff Full Control access:
    • A public user, the IQA is not available to REST, and the IQA has All Staff Full Control access:
{
    "$type": "Asi.Soa.Core.DataContracts.ServiceResponse`1[[Asi.Soa.Core.DataContracts.QueryDefinitionData, Asi.Contracts]], Asi.Contracts",
    "Result": null,
    "IsSuccessStatusCode": false,
    "Message": "An error occurred processing the request.",
    "ReasonPhrase": null,
    "StatusCode": 5,
    "ValidationResults": {
        "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts",
        "Errors": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": [
                {
                    "$type": "Asi.Soa.Core.DataContracts.ValidationResultData, Asi.Contracts",
                    "Message": "Query definition '9c122beb-977a-4834-aa46-e39664e45f62' not found."
                }
            ]
        },
        "Warnings": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        }
    },
    "IsCachedResult": false,
    "BrowserCacheDuration": 0,
    "BrowserCacheIsPublic": false
}
  • All of the scenarios below share the same response:
    • A staff user, the IQA is available to REST, and the IQA has Everyone Read access:
    • A staff user, the IQA is not available to REST, and the IQA has Everyone Read access:
    • A staff user, the IQA is available to REST, and the IQA has All Staff Full Control access:
    • A staff user, the IQA is not available to REST, and the IQA has All Staff Full Control access:
{
    "$type": "Asi.Soa.Core.DataContracts.ServiceResponse`1[[Asi.Soa.Core.DataContracts.QueryDefinitionData, Asi.Contracts]], Asi.Contracts",
    "Result": {
        "$type": "Asi.Soa.Core.DataContracts.IqaQueryDefinitionData, Asi.Contracts",
        "Document": {
            "$type": "Asi.Soa.Core.DataContracts.DocumentData, Asi.Contracts",
            "Data": {
                "$type": "System.Byte[], mscorlib",
                "$value": "<blob>"
            },
            "AccessId": "00000000-0000-0000-0000-000000000e02",
            "StatusUpdatedByUserId": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
            "StatusUpdatedOn": "2026-05-11T13:42:59.56",
            "Description": "",
            "DocumentId": "e8a299d6-838b-4eee-9332-48cd434c82b7",
            "DocumentVersionId": "6ba62070-aca8-40d6-b826-f2773b47428b",
            "DocumentTypeId": "IQD",
            "Name": "Everyone_Read_AvailableToREST_True",
            "Path": "$/Everyone_Read_AvailableToREST_True",
            "FolderPath": "$",
            "Status": "Published",
            "UpdateInfo": {
                "$type": "Asi.Soa.Core.DataContracts.EntityUpdateInformationData, Asi.Contracts",
                "CreatedBy": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
                "CreatedOn": "2026-05-11T13:42:59.557",
                "UpdatedBy": "ffc79677-c5c0-42d0-bd6b-b26bf6af1e65",
                "UpdatedOn": "2026-05-11T13:43:44.91"
            }
        },
        "Parameters": {
            "$type": "Asi.Soa.Core.DataContracts.CriteriaDataCollection, Asi.Contracts",
            "$values": []
        },
        "Path": "$/Everyone_Read_AvailableToREST_True",
        "Properties": {
            "$type": "Asi.Soa.Core.DataContracts.QueryPropertyDataCollection, Asi.Contracts",
            "$values": [
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL1",
                    "PropertyName": "Chapter",
                    "Alias": "",
                    "Caption": "NetContactData.Chapter",
                    "DisplayFormat": "G",
                    "DisplayOrder": 1,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL2",
                    "PropertyName": "Contact Key",
                    "Alias": "",
                    "Caption": "NetContactData.Contact Key",
                    "DisplayFormat": "",
                    "DisplayOrder": 2,
                    "Link": "",
                    "DataTypeName": "Guid"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL3",
                    "PropertyName": "Full Name",
                    "Alias": "",
                    "Caption": "NetContactData.Full Name",
                    "DisplayFormat": "G",
                    "DisplayOrder": 3,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL4",
                    "PropertyName": "Id",
                    "Alias": "",
                    "Caption": "NetContactData.Id",
                    "DisplayFormat": "G",
                    "DisplayOrder": 4,
                    "Link": "",
                    "DataTypeName": "String"
                },
                {
                    "$type": "Asi.Soa.Core.DataContracts.QueryPropertyData, Asi.Contracts",
                    "QuerySourceId": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.CL5",
                    "PropertyName": "Member Type",
                    "Alias": "",
                    "Caption": "NetContactData.Member Type",
                    "DisplayFormat": "G",
                    "DisplayOrder": 5,
                    "Link": "",
                    "DataTypeName": "String"
                }
            ]
        },
        "Relations": {
            "$type": "Asi.Soa.Core.DataContracts.QueryRelationDataCollection, Asi.Contracts",
            "$values": []
        },
        "Sources": {
            "$type": "Asi.Soa.Core.DataContracts.QuerySourceDataCollection, Asi.Contracts",
            "$values": [
                {
                    "$type": "Asi.Soa.Core.DataContracts.QuerySourceData, Asi.Contracts",
                    "QuerySourceId": "SR1",
                    "QuerySourceType": 1,
                    "Name": "e8a299d6-838b-4eee-9332-48cd434c82b7.SR1",
                    "Description": "NetContactData",
                    "BusinessControllerName": "NetContactData"
                }
            ]
        },
        "QueryDefinitionId": "6ba62070-aca8-40d6-b826-f2773b47428b"
    },
    "IsSuccessStatusCode": true,
    "Message": null,
    "ReasonPhrase": null,
    "StatusCode": 0,
    "ValidationResults": {
        "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts",
        "Errors": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        },
        "Warnings": {
            "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts",
            "$values": []
        }
    },
    "IsCachedResult": false,
    "BrowserCacheDuration": 0,
    "BrowserCacheIsPublic": false
}


Impact:

If you do not use the /QueryDefinition, /api/QueryService, or /api/iqa endpoints in your integrations, you are unaffected by this change and no action is required.

Please review your current implementations and plan for this change to ensure a smooth transition.

Contact us
Copyright © Advanced Solutions International, All rights reserved.