| GET | /GetNodeChildrenRequest | This will return no data for those nodes with collectible children. There is no advanced APi version for this call. |
|---|
import 'package:servicestack/servicestack.dart';
class BaseResponse implements IConvertible
{
int? Total;
int? OpCode;
String? ErrorText;
String? RequestTime;
String? ResponseTime;
String? TotalExecutionTime;
bool? CachedResponse;
bool? PermitAccess;
String? AccessDeniedMessage;
BaseResponse({this.Total,this.OpCode,this.ErrorText,this.RequestTime,this.ResponseTime,this.TotalExecutionTime,this.CachedResponse,this.PermitAccess,this.AccessDeniedMessage});
BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Total = json['Total'];
OpCode = json['OpCode'];
ErrorText = json['ErrorText'];
RequestTime = json['RequestTime'];
ResponseTime = json['ResponseTime'];
TotalExecutionTime = json['TotalExecutionTime'];
CachedResponse = json['CachedResponse'];
PermitAccess = json['PermitAccess'];
AccessDeniedMessage = json['AccessDeniedMessage'];
return this;
}
Map<String, dynamic> toJson() => {
'Total': Total,
'OpCode': OpCode,
'ErrorText': ErrorText,
'RequestTime': RequestTime,
'ResponseTime': ResponseTime,
'TotalExecutionTime': TotalExecutionTime,
'CachedResponse': CachedResponse,
'PermitAccess': PermitAccess,
'AccessDeniedMessage': AccessDeniedMessage
};
getTypeName() => "BaseResponse";
TypeContext? context = _ctx;
}
class NodeDto implements IConvertible
{
int? Id;
String? Name;
String? Description;
String? FeaturedImageUrl;
String? FeaturedImageAttribution;
String? FlagCode;
String? CountryName;
int? SortingPosition;
int? NodeChildrenCountLive;
int? CollectibleChildrenCountLive;
int? ParentNode_Id;
int? RootNode_Id;
List<NodeDto>? ChildNodes;
NodeDto({this.Id,this.Name,this.Description,this.FeaturedImageUrl,this.FeaturedImageAttribution,this.FlagCode,this.CountryName,this.SortingPosition,this.NodeChildrenCountLive,this.CollectibleChildrenCountLive,this.ParentNode_Id,this.RootNode_Id,this.ChildNodes});
NodeDto.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Name = json['Name'];
Description = json['Description'];
FeaturedImageUrl = json['FeaturedImageUrl'];
FeaturedImageAttribution = json['FeaturedImageAttribution'];
FlagCode = json['FlagCode'];
CountryName = json['CountryName'];
SortingPosition = json['SortingPosition'];
NodeChildrenCountLive = json['NodeChildrenCountLive'];
CollectibleChildrenCountLive = json['CollectibleChildrenCountLive'];
ParentNode_Id = json['ParentNode_Id'];
RootNode_Id = json['RootNode_Id'];
ChildNodes = JsonConverters.fromJson(json['ChildNodes'],'List<NodeDto>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Name': Name,
'Description': Description,
'FeaturedImageUrl': FeaturedImageUrl,
'FeaturedImageAttribution': FeaturedImageAttribution,
'FlagCode': FlagCode,
'CountryName': CountryName,
'SortingPosition': SortingPosition,
'NodeChildrenCountLive': NodeChildrenCountLive,
'CollectibleChildrenCountLive': CollectibleChildrenCountLive,
'ParentNode_Id': ParentNode_Id,
'RootNode_Id': RootNode_Id,
'ChildNodes': JsonConverters.toJson(ChildNodes,'List<NodeDto>',context!)
};
getTypeName() => "NodeDto";
TypeContext? context = _ctx;
}
class NodeResponse extends BaseResponse implements IConvertible
{
List<NodeDto>? Data;
NodeResponse({this.Data});
NodeResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Data = JsonConverters.fromJson(json['Data'],'List<NodeDto>',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Data': JsonConverters.toJson(Data,'List<NodeDto>',context!)
});
getTypeName() => "NodeResponse";
TypeContext? context = _ctx;
}
/**
* Retrieve node children for a given node
*/
// @Api(Description="Retrieve node children for a given node")
class GetNodeChildrenRequest implements IConvertible
{
int? NodeId;
GetNodeChildrenRequest({this.NodeId});
GetNodeChildrenRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
NodeId = json['NodeId'];
return this;
}
Map<String, dynamic> toJson() => {
'NodeId': NodeId
};
getTypeName() => "GetNodeChildrenRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'cpgpublicapiv2dev.greysheet.com', types: <String, TypeInfo> {
'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()),
'NodeDto': TypeInfo(TypeOf.Class, create:() => NodeDto()),
'List<NodeDto>': TypeInfo(TypeOf.Class, create:() => <NodeDto>[]),
'NodeResponse': TypeInfo(TypeOf.Class, create:() => NodeResponse()),
'GetNodeChildrenRequest': TypeInfo(TypeOf.Class, create:() => GetNodeChildrenRequest()),
});
Dart GetNodeChildrenRequest 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.
GET /GetNodeChildrenRequest HTTP/1.1 Host: cpgpublicapiv2dev.greysheet.com Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<NodeResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Cdn.PublicApiV2.ResponseObjects">
<AccessDeniedMessage>String</AccessDeniedMessage>
<CachedResponse>false</CachedResponse>
<ErrorText>String</ErrorText>
<OpCode>0</OpCode>
<PermitAccess>false</PermitAccess>
<RequestTime>String</RequestTime>
<ResponseTime>String</ResponseTime>
<Total>0</Total>
<TotalExecutionTime>String</TotalExecutionTime>
<Data xmlns:d2p1="http://schemas.datacontract.org/2004/07/Cdn.PublicApiV2.Dto">
<d2p1:NodeDto>
<d2p1:ChildNodes>
<d2p1:NodeDto>
<d2p1:ChildNodes>
<d2p1:NodeDto>
<d2p1:ChildNodes i:nil="true" />
<d2p1:CollectibleChildrenCountLive>0</d2p1:CollectibleChildrenCountLive>
<d2p1:CountryName>String</d2p1:CountryName>
<d2p1:Description>String</d2p1:Description>
<d2p1:FeaturedImageAttribution>String</d2p1:FeaturedImageAttribution>
<d2p1:FeaturedImageUrl>String</d2p1:FeaturedImageUrl>
<d2p1:FlagCode>String</d2p1:FlagCode>
<d2p1:Id>0</d2p1:Id>
<d2p1:Name>String</d2p1:Name>
<d2p1:NodeChildrenCountLive>0</d2p1:NodeChildrenCountLive>
<d2p1:ParentNode_Id>0</d2p1:ParentNode_Id>
<d2p1:RootNode_Id>0</d2p1:RootNode_Id>
<d2p1:SortingPosition>0</d2p1:SortingPosition>
</d2p1:NodeDto>
</d2p1:ChildNodes>
<d2p1:CollectibleChildrenCountLive>0</d2p1:CollectibleChildrenCountLive>
<d2p1:CountryName>String</d2p1:CountryName>
<d2p1:Description>String</d2p1:Description>
<d2p1:FeaturedImageAttribution>String</d2p1:FeaturedImageAttribution>
<d2p1:FeaturedImageUrl>String</d2p1:FeaturedImageUrl>
<d2p1:FlagCode>String</d2p1:FlagCode>
<d2p1:Id>0</d2p1:Id>
<d2p1:Name>String</d2p1:Name>
<d2p1:NodeChildrenCountLive>0</d2p1:NodeChildrenCountLive>
<d2p1:ParentNode_Id>0</d2p1:ParentNode_Id>
<d2p1:RootNode_Id>0</d2p1:RootNode_Id>
<d2p1:SortingPosition>0</d2p1:SortingPosition>
</d2p1:NodeDto>
</d2p1:ChildNodes>
<d2p1:CollectibleChildrenCountLive>0</d2p1:CollectibleChildrenCountLive>
<d2p1:CountryName>String</d2p1:CountryName>
<d2p1:Description>String</d2p1:Description>
<d2p1:FeaturedImageAttribution>String</d2p1:FeaturedImageAttribution>
<d2p1:FeaturedImageUrl>String</d2p1:FeaturedImageUrl>
<d2p1:FlagCode>String</d2p1:FlagCode>
<d2p1:Id>0</d2p1:Id>
<d2p1:Name>String</d2p1:Name>
<d2p1:NodeChildrenCountLive>0</d2p1:NodeChildrenCountLive>
<d2p1:ParentNode_Id>0</d2p1:ParentNode_Id>
<d2p1:RootNode_Id>0</d2p1:RootNode_Id>
<d2p1:SortingPosition>0</d2p1:SortingPosition>
</d2p1:NodeDto>
</Data>
</NodeResponse>