Platform API

<back to all web services

GetRelatedItems

Get related items related to the specified object.

Requires Authentication
The following routes are available for this service:
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 .jsv suffix or ?format=jsv

HTTP + JSV

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/jsv
Content-Type: text/jsv
Content-Length: length

{
	IsPagedMode: False,
	PageNumber: 0,
	PageSize: 0,
	SortIndex: 0,
	SortOrder: Ascending
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	RelatedItems: 
	[
		{
			RelatedItemName: String,
			RelatedItemType: String,
			CreatedAt: 0001-01-01,
			CreatedByName: String,
			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
		}
	}
}