| Requires the role: | superadmin |
| POST | /superadmin/support/cases | Add a new support case | Add a new support case to the company of the currently logged in user, only administrators are allowed to add support cases. |
|---|
"use strict";
export class SupportCaseStatusResponse {
/** @param {{Id?:number,Name?:string,Description?:string,Icon?:string,Color?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The status id */
Id;
/**
* @type {string}
* @description The status name */
Name;
/**
* @type {string}
* @description The status description */
Description;
/**
* @type {string}
* @description The status icon */
Icon;
/**
* @type {string}
* @description The status color */
Color;
}
export class SupportCaseTypeResponse {
/** @param {{Id?:number,Name?:string,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The type id */
Id;
/**
* @type {string}
* @description The type name */
Name;
/**
* @type {string}
* @description The type description */
Description;
}
export class SupportCaseAreaResponse {
/** @param {{Id?:number,Name?:string,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The area id */
Id;
/**
* @type {string}
* @description The area name */
Name;
/**
* @type {string}
* @description The area description */
Description;
}
export class SupportCaseCommentsResponse {
/** @param {{SupportCaseId?:number,Id?:number,Comment?:string,CreatedBy?:string,Created?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The case id */
SupportCaseId;
/**
* @type {number}
* @description The comments id */
Id;
/**
* @type {string}
* @description The case comment */
Comment;
/**
* @type {string}
* @description The case comment created by */
CreatedBy;
/**
* @type {string}
* @description The case comment created date */
Created;
}
export class SupportCaseAttachmentResponse {
/** @param {{Id?:number,FileUrl?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The attachment id */
Id;
/**
* @type {string}
* @description The attachment file url */
FileUrl;
}
export class SupportCaseQueryResponse {
/** @param {{Id?:number,CompanyUserId?:string,Title?:string,Description?:string,CaseStatusId?:number,CaseTypeId?:number,CaseAreaId?:number,CreatedBy?:string,UpdatedBy?:string,SolvedBy?:string,Updated?:string,Created?:string,CaseOwner?:string,CaseStatus?:SupportCaseStatusResponse,CaseType?:SupportCaseTypeResponse,CaseArea?:SupportCaseAreaResponse,Comments?:SupportCaseCommentsResponse[],Attachments?:SupportCaseAttachmentResponse[],CaseStatusOptions?:SupportCaseStatusResponse[],CaseTypeOptions?:SupportCaseTypeResponse[],CaseAreaOptions?:SupportCaseAreaResponse[]}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The support case id */
Id;
/**
* @type {string}
* @description The company user id */
CompanyUserId;
/**
* @type {string}
* @description The case title. */
Title;
/**
* @type {string}
* @description The case description. */
Description;
/**
* @type {number}
* @description The case status id. */
CaseStatusId;
/**
* @type {number}
* @description If the case type id. */
CaseTypeId;
/**
* @type {number}
* @description If the case area id. */
CaseAreaId;
/**
* @type {string}
* @description The case created by. */
CreatedBy;
/**
* @type {string}
* @description The case updated by. */
UpdatedBy;
/**
* @type {string}
* @description The case solved by. */
SolvedBy;
/**
* @type {string}
* @description If case updated date. */
Updated;
/**
* @type {string}
* @description If case created date. */
Created;
/**
* @type {string}
* @description Who owns the support case. */
CaseOwner;
/**
* @type {SupportCaseStatusResponse}
* @description The case status information. */
CaseStatus;
/**
* @type {SupportCaseTypeResponse}
* @description The case type information. */
CaseType;
/**
* @type {SupportCaseAreaResponse}
* @description The case area information. */
CaseArea;
/**
* @type {SupportCaseCommentsResponse[]}
* @description The case comments. */
Comments = [];
/**
* @type {SupportCaseAttachmentResponse[]}
* @description The case attachments. */
Attachments = [];
/**
* @type {SupportCaseStatusResponse[]}
* @description The case status options to select from. */
CaseStatusOptions = [];
/**
* @type {SupportCaseTypeResponse[]}
* @description The case type options to select from. */
CaseTypeOptions = [];
/**
* @type {SupportCaseAreaResponse[]}
* @description The case area options to select from. */
CaseAreaOptions = [];
}
export class SuperAdminCreateSupportCase {
/** @param {{CompanyId?:string,Title?:string,Description?:string,CaseTypeId?:number,CaseAreaId?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description Enter the company id, if blank company id and you are an admin, your company id will be used. */
CompanyId;
/**
* @type {string}
* @description The case title. */
Title;
/**
* @type {string}
* @description The case description. */
Description;
/**
* @type {number}
* @description If the case type id. */
CaseTypeId;
/**
* @type {number}
* @description If the case area id. */
CaseAreaId;
}
JavaScript SuperAdminCreateSupportCase 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 /superadmin/support/cases HTTP/1.1
Host: testapi.bokamera.se
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<SuperAdminCreateSupportCase xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
<CaseAreaId>0</CaseAreaId>
<CaseTypeId>0</CaseTypeId>
<CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
<Description>String</Description>
<Title>String</Title>
</SuperAdminCreateSupportCase>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<SupportCaseQueryResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
<Attachments>
<SupportCaseAttachmentResponse>
<FileUrl>String</FileUrl>
<Id>0</Id>
</SupportCaseAttachmentResponse>
</Attachments>
<CaseArea>
<Description>String</Description>
<Id>0</Id>
<Name>String</Name>
</CaseArea>
<CaseAreaId>0</CaseAreaId>
<CaseAreaOptions>
<SupportCaseAreaResponse>
<Description>String</Description>
<Id>0</Id>
<Name>String</Name>
</SupportCaseAreaResponse>
</CaseAreaOptions>
<CaseOwner>String</CaseOwner>
<CaseStatus>
<Color>String</Color>
<Description>String</Description>
<Icon>String</Icon>
<Id>0</Id>
<Name>String</Name>
</CaseStatus>
<CaseStatusId>0</CaseStatusId>
<CaseStatusOptions>
<SupportCaseStatusResponse>
<Color>String</Color>
<Description>String</Description>
<Icon>String</Icon>
<Id>0</Id>
<Name>String</Name>
</SupportCaseStatusResponse>
</CaseStatusOptions>
<CaseType>
<Description>String</Description>
<Id>0</Id>
<Name>String</Name>
</CaseType>
<CaseTypeId>0</CaseTypeId>
<CaseTypeOptions>
<SupportCaseTypeResponse>
<Description>String</Description>
<Id>0</Id>
<Name>String</Name>
</SupportCaseTypeResponse>
</CaseTypeOptions>
<Comments>
<SupportCaseCommentsResponse>
<Comment>String</Comment>
<Created>0001-01-01T00:00:00</Created>
<CreatedBy>String</CreatedBy>
<Id>0</Id>
<SupportCaseId>0</SupportCaseId>
</SupportCaseCommentsResponse>
</Comments>
<CompanyUserId>00000000-0000-0000-0000-000000000000</CompanyUserId>
<Created>0001-01-01T00:00:00</Created>
<CreatedBy>String</CreatedBy>
<Description>String</Description>
<Id>0</Id>
<SolvedBy>String</SolvedBy>
<Title>String</Title>
<Updated>0001-01-01T00:00:00</Updated>
<UpdatedBy>String</UpdatedBy>
</SupportCaseQueryResponse>