Trendsic Platform Service

<back to all web services

ProjectSearchRequest

Requires Authentication
The following routes are available for this service:
POST,OPTIONS/v1/ProjectSearch

export class Project
{
    public ProjectID: number;
    public ProjectUID: string;
    public ProjectName: string;
    public ImageURL: string;
    public ImageKey: string;
    public ClientName: string;
    public ClientPhone: string;
    public ClientEmail: string;
    public ProjectManagerID: number;
    public ProjectManagerName: string;
    public StartDate?: string;
    public EndDate?: string;
    public ActualStartDate?: string;
    public ActualEndDate?: string;
    public JobCount: number;
    public CrewMemberCount: number;
    public EquipmentCount: number;
    public MaterialCount: number;
    public ProjectStatusID: number;
    public ProjectStatusDescription: string;
    public Budget: number;
    public CostToDate: number;
    public ProjectLocation: string;
    public ProjectType: string;
    public ProjectSponsor: string;
    public CreatedBy: string;
    public CreatedAt?: string;
    public UpdatedAt?: string;
    public ProjectDescription: string;
    public Scope: string;
    public StatusId: number;

    public constructor(init?: Partial<Project>) { (Object as any).assign(this, init); }
}

export class ProjectResponse
{
    public ResponseStatus: ResponseStatus;
    public Project: Project[] = [];

    public constructor(init?: Partial<ProjectResponse>) { (Object as any).assign(this, init); }
}

export class ProjectSearchRequest
{
    public filterStatus: number;
    public filterManager: number;
    public filterClientName: string;
    public filterStartBefore: string;
    public filterStartAfter: string;
    public filterEndBefore: string;
    public filterEndAfter: string;

    public constructor(init?: Partial<ProjectSearchRequest>) { (Object as any).assign(this, init); }
}

TypeScript ProjectSearchRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /v1/ProjectSearch HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"filterStatus":0,"filterManager":0,"filterClientName":"String","filterStartBefore":"0001-01-01T00:00:00.0000000","filterStartAfter":"0001-01-01T00:00:00.0000000","filterEndBefore":"0001-01-01T00:00:00.0000000","filterEndAfter":"0001-01-01T00:00:00.0000000"}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Project":[{"ProjectID":0,"ProjectUID":"00000000000000000000000000000000","ProjectName":"String","ImageURL":"String","ImageKey":"String","ClientName":"String","ClientPhone":"String","ClientEmail":"String","ProjectManagerID":0,"ProjectManagerName":"String","StartDate":"0001-01-01T00:00:00.0000000","EndDate":"0001-01-01T00:00:00.0000000","ActualStartDate":"0001-01-01T00:00:00.0000000","ActualEndDate":"0001-01-01T00:00:00.0000000","JobCount":0,"CrewMemberCount":0,"EquipmentCount":0,"MaterialCount":0,"ProjectStatusID":0,"ProjectStatusDescription":"String","Budget":0,"CostToDate":0,"ProjectLocation":"String","ProjectType":"String","ProjectSponsor":"String","CreatedBy":"String","CreatedAt":"0001-01-01T00:00:00.0000000","UpdatedAt":"0001-01-01T00:00:00.0000000","ProjectDescription":"String","Scope":"String","StatusId":0}]}