| Requires any of the roles: | Client, Admin, Partner |
| GET, POST | /scadmeta/tables/{TablesId}/data | Gets table records |
|---|
<?php namespace dtos;
use DateTime;
use Exception;
use DateInterval;
use JsonSerializable;
use ServiceStack\{IReturn,IReturnVoid,IGet,IPost,IPut,IDelete,IPatch,IMeta,IHasSessionId,IHasBearerToken,IHasVersion};
use ServiceStack\{ICrud,ICreateDb,IUpdateDb,IPatchDb,IDeleteDb,ISaveDb,AuditBase,QueryDb,QueryDb2,QueryData,QueryData2,QueryResponse};
use ServiceStack\{ResponseStatus,ResponseError,EmptyResponse,IdResponse,ArrayList,KeyValuePair2,StringResponse,StringsResponse,Tuple2,Tuple3,ByteArray};
use ServiceStack\{JsonConverters,Returns,TypeContext};
class Filter implements JsonSerializable
{
public function __construct(
/** @var string|null */
public ?string $Column=null,
/** @var string|null */
public ?string $Operator=null,
/** @var Object|null */
public ?Object $Value=null,
/** @var string|null */
public ?string $FromVariable=null,
/** @var Object|null */
public ?Object $ToValue=null,
/** @var string|null */
public ?string $ToVariable=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Column'])) $this->Column = $o['Column'];
if (isset($o['Operator'])) $this->Operator = $o['Operator'];
if (isset($o['Value'])) $this->Value = JsonConverters::from('Object', $o['Value']);
if (isset($o['FromVariable'])) $this->FromVariable = $o['FromVariable'];
if (isset($o['ToValue'])) $this->ToValue = JsonConverters::from('Object', $o['ToValue']);
if (isset($o['ToVariable'])) $this->ToVariable = $o['ToVariable'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Column)) $o['Column'] = $this->Column;
if (isset($this->Operator)) $o['Operator'] = $this->Operator;
if (isset($this->Value)) $o['Value'] = JsonConverters::to('Object', $this->Value);
if (isset($this->FromVariable)) $o['FromVariable'] = $this->FromVariable;
if (isset($this->ToValue)) $o['ToValue'] = JsonConverters::to('Object', $this->ToValue);
if (isset($this->ToVariable)) $o['ToVariable'] = $this->ToVariable;
return empty($o) ? new class(){} : $o;
}
}
class Paging implements JsonSerializable
{
public function __construct(
/** @var int */
public int $PageNumber=0,
/** @var int */
public int $PageSize=0
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['PageNumber'])) $this->PageNumber = $o['PageNumber'];
if (isset($o['PageSize'])) $this->PageSize = $o['PageSize'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->PageNumber)) $o['PageNumber'] = $this->PageNumber;
if (isset($this->PageSize)) $o['PageSize'] = $this->PageSize;
return empty($o) ? new class(){} : $o;
}
}
class GetTableRecordsRequest implements JsonSerializable
{
public function __construct(
/** @description Table id */
// @ApiMember(Description="Table id", IsRequired=true)
/** @var int */
public int $TablesId=0,
/** @description Query id */
// @ApiMember(Description="Query id")
/** @var int|null */
public ?int $QueryId=null,
/** @description Parameter list */
// @ApiMember(Description="Parameter list")
/** @var array<string,Object>|null */
public ?array $ParameterList=null,
/** @description Filter list */
// @ApiMember(Description="Filter list")
/** @var array<string,Object>|null */
public ?array $FilterList=null,
/** @var array<Filter>|null */
public ?array $Filter=null,
/** @description Number of items to be returned per page */
// @ApiMember(Description="Number of items to be returned per page")
/** @var Paging|null */
public ?Paging $Paging=null,
/** @description Drill down filter list */
// @ApiMember(Description="Drill down filter list")
/** @var array<string,Object>|null */
public ?array $DrillDownFilterList=null,
/** @description Global parameter list */
// @ApiMember(Description="Global parameter list")
/** @var array<string,Object>|null */
public ?array $GlobalParamList=null,
/** @description View id */
// @ApiMember(Description="View id")
/** @var int|null */
public ?int $ViewId=null,
/** @description Whether or not to refresh the cache */
// @ApiMember(Description="Whether or not to refresh the cache")
/** @var bool|null */
public ?bool $RefreshCache=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['TablesId'])) $this->TablesId = $o['TablesId'];
if (isset($o['QueryId'])) $this->QueryId = $o['QueryId'];
if (isset($o['ParameterList'])) $this->ParameterList = JsonConverters::from(JsonConverters::context('Dictionary',genericArgs:['string','Object']), $o['ParameterList']);
if (isset($o['FilterList'])) $this->FilterList = JsonConverters::from(JsonConverters::context('Dictionary',genericArgs:['string','Object']), $o['FilterList']);
if (isset($o['Filter'])) $this->Filter = JsonConverters::fromArray('Filter', $o['Filter']);
if (isset($o['Paging'])) $this->Paging = JsonConverters::from('Paging', $o['Paging']);
if (isset($o['DrillDownFilterList'])) $this->DrillDownFilterList = JsonConverters::from(JsonConverters::context('Dictionary',genericArgs:['string','Object']), $o['DrillDownFilterList']);
if (isset($o['GlobalParamList'])) $this->GlobalParamList = JsonConverters::from(JsonConverters::context('Dictionary',genericArgs:['string','Object']), $o['GlobalParamList']);
if (isset($o['ViewId'])) $this->ViewId = $o['ViewId'];
if (isset($o['RefreshCache'])) $this->RefreshCache = $o['RefreshCache'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->TablesId)) $o['TablesId'] = $this->TablesId;
if (isset($this->QueryId)) $o['QueryId'] = $this->QueryId;
if (isset($this->ParameterList)) $o['ParameterList'] = JsonConverters::to(JsonConverters::context('Dictionary',genericArgs:['string','Object']), $this->ParameterList);
if (isset($this->FilterList)) $o['FilterList'] = JsonConverters::to(JsonConverters::context('Dictionary',genericArgs:['string','Object']), $this->FilterList);
if (isset($this->Filter)) $o['Filter'] = JsonConverters::toArray('Filter', $this->Filter);
if (isset($this->Paging)) $o['Paging'] = JsonConverters::to('Paging', $this->Paging);
if (isset($this->DrillDownFilterList)) $o['DrillDownFilterList'] = JsonConverters::to(JsonConverters::context('Dictionary',genericArgs:['string','Object']), $this->DrillDownFilterList);
if (isset($this->GlobalParamList)) $o['GlobalParamList'] = JsonConverters::to(JsonConverters::context('Dictionary',genericArgs:['string','Object']), $this->GlobalParamList);
if (isset($this->ViewId)) $o['ViewId'] = $this->ViewId;
if (isset($this->RefreshCache)) $o['RefreshCache'] = $this->RefreshCache;
return empty($o) ? new class(){} : $o;
}
}
PHP GetTableRecordsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /scadmeta/tables/{TablesId}/data HTTP/1.1
Host: duengageapi.uat.scadsoftware.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<GetTableRecordsRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/digitaluapi.ServiceModel">
<DrillDownFilterList xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringanyType>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value />
</d2p1:KeyValueOfstringanyType>
</DrillDownFilterList>
<Filter xmlns:d2p1="http://schemas.datacontract.org/2004/07/digitaluapi.ServiceModel.Types">
<d2p1:Filter>
<d2p1:Column>String</d2p1:Column>
<d2p1:FromVariable>String</d2p1:FromVariable>
<d2p1:Operator>String</d2p1:Operator>
<d2p1:ToValue />
<d2p1:ToVariable>String</d2p1:ToVariable>
<d2p1:Value />
</d2p1:Filter>
</Filter>
<FilterList xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringanyType>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value />
</d2p1:KeyValueOfstringanyType>
</FilterList>
<GlobalParamList xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringanyType>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value />
</d2p1:KeyValueOfstringanyType>
</GlobalParamList>
<Paging xmlns:d2p1="http://schemas.datacontract.org/2004/07/digitaluapi.ServiceModel.Types">
<d2p1:PageNumber>0</d2p1:PageNumber>
<d2p1:PageSize>0</d2p1:PageSize>
</Paging>
<ParameterList xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringanyType>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value />
</d2p1:KeyValueOfstringanyType>
</ParameterList>
<QueryId>0</QueryId>
<RefreshCache>false</RefreshCache>
<TablesId>0</TablesId>
<ViewId>0</ViewId>
</GetTableRecordsRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <ArrayOfanyType xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <anyType /> </ArrayOfanyType>