| All Verbs | /api/relateditems/{ObjectId} |
|---|
"use strict";
/** @typedef {'Ascending'|'Descending'} */
export var SortOrder;
(function (SortOrder) {
SortOrder["Ascending"] = "Ascending"
SortOrder["Descending"] = "Descending"
})(SortOrder || (SortOrder = {}));
export class PagedModel {
/** @param {{PageNumber?:number,PageSize?:number,SortIndex?:number,SortOrder?:SortOrder}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description Page Number to retrieve */
PageNumber;
/**
* @type {number}
* @description Number of records to retrieve */
PageSize;
/**
* @type {number}
* @description Index of field to sort results by */
SortIndex;
/**
* @type {SortOrder}
* @description Sort Order - Ascending or Descending */
SortOrder;
}
export class RelatedItemsModel {
/** @param {{ObjectId?:string,RelatedItemName?:string,RelatedItemType?:string,CreatedAt?:string,CreatedByName?:string,CreatedById?:string,CreatedByThumbnailUrl?:string,Relationship?:string,IsSignificant?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Object linked to the related item. */
ObjectId;
/**
* @type {string}
* @description Related item name. */
RelatedItemName;
/**
* @type {string}
* @description Related item type. */
RelatedItemType;
/**
* @type {string}
* @description Date of creation of the related item. */
CreatedAt;
/**
* @type {string}
* @description Contact who created the related item */
CreatedByName;
/**
* @type {string}
* @description Contact who created the related item */
CreatedById;
/**
* @type {string}
* @description Profile photo of the contact who created the related item */
CreatedByThumbnailUrl;
/**
* @type {string}
* @description Relationship between objects linked to the related item */
Relationship;
/**
* @type {boolean}
* @description Is the related item significant? */
IsSignificant;
}
export class GetRelatedItemsResponse {
/** @param {{RelatedItems?:RelatedItemsModel[],TotalRelatedItems?:number,ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {RelatedItemsModel[]} */
RelatedItems;
/** @type {number} */
TotalRelatedItems;
/** @type {ResponseStatus} */
ResponseStatus;
}
export class GetRelatedItems extends PagedModel {
/** @param {{ObjectId?:string,RelatedItemsLevel?:string,IsPagedMode?:boolean,PageNumber?:number,PageSize?:number,SortIndex?:number,SortOrder?:SortOrder}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description Object to get related items for. */
ObjectId;
/**
* @type {string}
* @description Significant Only or All */
RelatedItemsLevel;
/**
* @type {boolean}
* @description Return all connections or paged results? */
IsPagedMode;
}
JavaScript GetRelatedItems DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/relateditems/{ObjectId} HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"ObjectId":"00000000-0000-0000-0000-000000000000","RelatedItemsLevel":"00000000-0000-0000-0000-000000000000","IsPagedMode":false,"PageNumber":0,"PageSize":0,"SortIndex":0,"SortOrder":"Ascending"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"RelatedItems":[{"ObjectId":"00000000-0000-0000-0000-000000000000","RelatedItemName":"String","RelatedItemType":"String","CreatedAt":"0001-01-01T00:00:00.0000000","CreatedByName":"String","CreatedById":"00000000-0000-0000-0000-000000000000","CreatedByThumbnailUrl":"String","Relationship":"String","IsSignificant":false}],"TotalRelatedItems":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}