BokaMera.API.Host

<back to all web services

SuperAdminUpdateSupportCase

Requires Authentication
Requires the role:superadmin
The following routes are available for this service:
PUT/superadmin/support/cases/{Id}Update a support caseUpdate a support case to the company of the currently logged in user, only administrators are allowed to add support cases.
namespace BokaMera.API.ServiceModel.Dtos

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type SupportCaseStatusResponse() = 
        ///<summary>
        ///The status id
        ///</summary>
        [<ApiMember(Description="The status id")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The status name
        ///</summary>
        [<ApiMember(Description="The status name")>]
        member val Name:String = null with get,set

        ///<summary>
        ///The status description
        ///</summary>
        [<ApiMember(Description="The status description")>]
        member val Description:String = null with get,set

        ///<summary>
        ///The status icon
        ///</summary>
        [<ApiMember(Description="The status icon")>]
        member val Icon:String = null with get,set

        ///<summary>
        ///The status color
        ///</summary>
        [<ApiMember(Description="The status color")>]
        member val Color:String = null with get,set

    [<AllowNullLiteral>]
    type SupportCaseTypeResponse() = 
        ///<summary>
        ///The type id
        ///</summary>
        [<ApiMember(Description="The type id")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The type name
        ///</summary>
        [<ApiMember(Description="The type name")>]
        member val Name:String = null with get,set

        ///<summary>
        ///The type description
        ///</summary>
        [<ApiMember(Description="The type description")>]
        member val Description:String = null with get,set

    [<AllowNullLiteral>]
    type SupportCaseAreaResponse() = 
        ///<summary>
        ///The area id
        ///</summary>
        [<ApiMember(Description="The area id")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The area name
        ///</summary>
        [<ApiMember(Description="The area name")>]
        member val Name:String = null with get,set

        ///<summary>
        ///The area description
        ///</summary>
        [<ApiMember(Description="The area description")>]
        member val Description:String = null with get,set

    [<AllowNullLiteral>]
    type SupportCaseCommentsResponse() = 
        ///<summary>
        ///The case id
        ///</summary>
        [<ApiMember(Description="The case id")>]
        member val SupportCaseId:Int32 = new Int32() with get,set

        ///<summary>
        ///The comments id
        ///</summary>
        [<ApiMember(Description="The comments id")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The case comment
        ///</summary>
        [<ApiMember(Description="The case comment")>]
        member val Comment:String = null with get,set

        ///<summary>
        ///The case comment created by
        ///</summary>
        [<ApiMember(Description="The case comment created by")>]
        member val CreatedBy:String = null with get,set

        ///<summary>
        ///The case comment created date
        ///</summary>
        [<ApiMember(Description="The case comment created date")>]
        member val Created:DateTime = new DateTime() with get,set

    [<AllowNullLiteral>]
    type SupportCaseAttachmentResponse() = 
        ///<summary>
        ///The attachment id
        ///</summary>
        [<ApiMember(Description="The attachment id")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The attachment file url
        ///</summary>
        [<ApiMember(Description="The attachment file url")>]
        member val FileUrl:String = null with get,set

    [<AllowNullLiteral>]
    type SupportCaseQueryResponse() = 
        ///<summary>
        ///The support case id
        ///</summary>
        [<ApiMember(Description="The support case id")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The company user id
        ///</summary>
        [<ApiMember(Description="The company user id")>]
        member val CompanyUserId:Guid = new Guid() with get,set

        ///<summary>
        ///The case title.
        ///</summary>
        [<ApiMember(Description="The case title.")>]
        member val Title:String = null with get,set

        ///<summary>
        ///The case description.
        ///</summary>
        [<ApiMember(Description="The case description.")>]
        member val Description:String = null with get,set

        ///<summary>
        ///The case status id.
        ///</summary>
        [<ApiMember(Description="The case status id.")>]
        member val CaseStatusId:Int32 = new Int32() with get,set

        ///<summary>
        ///If the case type id.
        ///</summary>
        [<ApiMember(Description="If the case type id.")>]
        member val CaseTypeId:Int32 = new Int32() with get,set

        ///<summary>
        ///If the case area id.
        ///</summary>
        [<ApiMember(Description="If the case area id.")>]
        member val CaseAreaId:Int32 = new Int32() with get,set

        ///<summary>
        ///The case created by.
        ///</summary>
        [<ApiMember(Description="The case created by.")>]
        member val CreatedBy:String = null with get,set

        ///<summary>
        ///The case updated by.
        ///</summary>
        [<ApiMember(Description="The case updated by.")>]
        member val UpdatedBy:String = null with get,set

        ///<summary>
        ///The case solved by.
        ///</summary>
        [<ApiMember(Description="The case solved by.")>]
        member val SolvedBy:String = null with get,set

        ///<summary>
        ///If case updated date.
        ///</summary>
        [<ApiMember(Description="If case updated date.")>]
        member val Updated:DateTime = new DateTime() with get,set

        ///<summary>
        ///If case created date.
        ///</summary>
        [<ApiMember(Description="If case created date.")>]
        member val Created:DateTime = new DateTime() with get,set

        ///<summary>
        ///Who owns the support case.
        ///</summary>
        [<ApiMember(Description="Who owns the support case.")>]
        member val CaseOwner:String = null with get,set

        ///<summary>
        ///The case status information.
        ///</summary>
        [<ApiMember(Description="The case status information.")>]
        member val CaseStatus:SupportCaseStatusResponse = null with get,set

        ///<summary>
        ///The case type information.
        ///</summary>
        [<ApiMember(Description="The case type information.")>]
        member val CaseType:SupportCaseTypeResponse = null with get,set

        ///<summary>
        ///The case area information.
        ///</summary>
        [<ApiMember(Description="The case area information.")>]
        member val CaseArea:SupportCaseAreaResponse = null with get,set

        ///<summary>
        ///The case comments.
        ///</summary>
        [<ApiMember(Description="The case comments.")>]
        member val Comments:ResizeArray<SupportCaseCommentsResponse> = new ResizeArray<SupportCaseCommentsResponse>() with get,set

        ///<summary>
        ///The case attachments.
        ///</summary>
        [<ApiMember(Description="The case attachments.")>]
        member val Attachments:ResizeArray<SupportCaseAttachmentResponse> = new ResizeArray<SupportCaseAttachmentResponse>() with get,set

        ///<summary>
        ///The case status options to select from.
        ///</summary>
        [<ApiMember(Description="The case status options to select from.")>]
        member val CaseStatusOptions:ResizeArray<SupportCaseStatusResponse> = new ResizeArray<SupportCaseStatusResponse>() with get,set

        ///<summary>
        ///The case type  options to select from.
        ///</summary>
        [<ApiMember(Description="The case type  options to select from.")>]
        member val CaseTypeOptions:ResizeArray<SupportCaseTypeResponse> = new ResizeArray<SupportCaseTypeResponse>() with get,set

        ///<summary>
        ///The case area  options to select from.
        ///</summary>
        [<ApiMember(Description="The case area  options to select from.")>]
        member val CaseAreaOptions:ResizeArray<SupportCaseAreaResponse> = new ResizeArray<SupportCaseAreaResponse>() with get,set

    [<ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)>]
    [<ApiResponse(Description="You have too low privilegies to call this service", StatusCode=403)>]
    [<ValidateRequest(Validator="IsAuthenticated")>]
    [<AllowNullLiteral>]
    type SuperAdminUpdateSupportCase() = 
        ///<summary>
        ///Enter the company id, if blank company id and you are an admin, your company id will be used.
        ///</summary>
        [<ApiMember(Description="Enter the company id, if blank company id and you are an admin, your company id will be used.", IsRequired=true)>]
        member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set

        ///<summary>
        ///The support case id
        ///</summary>
        [<ApiMember(Description="The support case id", ParameterType="path")>]
        member val Id:Int32 = new Int32() with get,set

        ///<summary>
        ///The case title.
        ///</summary>
        [<ApiMember(Description="The case title.")>]
        member val Title:String = null with get,set

        ///<summary>
        ///The case description.
        ///</summary>
        [<ApiMember(Description="The case description.")>]
        member val Description:String = null with get,set

        ///<summary>
        ///If the case type id.
        ///</summary>
        [<ApiMember(Description="If the case type id.")>]
        member val CaseTypeId:Nullable<Int32> = new Nullable<Int32>() with get,set

        ///<summary>
        ///If the case area id.
        ///</summary>
        [<ApiMember(Description="If the case area id.")>]
        member val CaseAreaId:Nullable<Int32> = new Nullable<Int32>() with get,set

F# SuperAdminUpdateSupportCase DTOs

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

HTTP + OTHER

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

PUT /superadmin/support/cases/{Id} HTTP/1.1 
Host: testapi.bokamera.se 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"CompanyId":"00000000-0000-0000-0000-000000000000","Id":0,"Title":"String","Description":"String","CaseTypeId":0,"CaseAreaId":0}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"Id":0,"Title":"String","Description":"String","CaseStatusId":0,"CaseTypeId":0,"CaseAreaId":0,"CreatedBy":"String","UpdatedBy":"String","SolvedBy":"String","CaseOwner":"String","CaseStatus":{"Id":0,"Name":"String","Description":"String","Icon":"String","Color":"String"},"CaseType":{"Id":0,"Name":"String","Description":"String"},"CaseArea":{"Id":0,"Name":"String","Description":"String"},"Comments":[{"SupportCaseId":0,"Id":0,"Comment":"String","CreatedBy":"String"}],"Attachments":[{"Id":0,"FileUrl":"String"}],"CaseStatusOptions":[{"Id":0,"Name":"String","Description":"String","Icon":"String","Color":"String"}],"CaseTypeOptions":[{"Id":0,"Name":"String","Description":"String"}],"CaseAreaOptions":[{"Id":0,"Name":"String","Description":"String"}]}