npm package: @one-view/pd-oneview-cs-chat-ticket-types
Description: chat ticket plugin for case-management-agent service into 1vu integration
Latest version: 0.0.25


FORMAT: 1A
VERSION: 1.0.0
HOST: https://api.pd-oneview.net/cs-chat-ticket

# pd-oneview-cs-chat-ticket

chat ticket plugin for case-management-agent service into 1vu integration




## Agent Info [/v1/info]
agent information

+ Attributes (AgentInfo)

### Get agent information [GET]

+ Request

    + Headers

            Authorization: bearer token

+ Response 200 (application/json)
    + Attributes (array[Ticket])

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)

## Agent Tickets [/v1/tickets]

agent assigned tickets

+ Attributes (array[Ticket])

### Get agent tickets [GET]

+ Request

    + Headers

            Authorization: bearer token

+ Response 200 (application/json)
    + Attributes (array[Ticket])

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)

## Agent Online Status [/v1/online]
update agent status as online to begin receive ticket

### Get agent to online [PUT]

+ Request

    + Headers

            Authorization: bearer token

+ Response 200 (application/json)
    + Attributes (AgentStatusInfo)

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)

## Agent Offline Status [/v1/offline]
update agent status as offline to stop receiving ticket

### Set agent to offline [PUT]

+ Request

    + Headers

            Authorization: bearer token

+ Response 200 (application/json)
    + Attributes (AgentStatusInfo)

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)

## Update agent status v1 [/v1/status]
update agent status

### Update agent status [PUT]

+ Request

    + Headers

            Authorization: bearer token

+ Attributes (UpdateAgentStatusParam)

+ Response 200 (application/json)
    + Attributes (AgentStatusInfo)

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)

## Room Management [/v1/rooms/{roomID}]

chat room management.

+ Parameters
    + roomID (required, string, `888bd869-9398-40de-9c61-3238d6208cf5`)

### Close Room [DELETE]

+ Request

    + Headers

            Authorization: bearer token

+ Response 200 (application/json)

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)

## update picked time [/v1/tickets/{ticketID}/pickedTime]

update ticket picket time

+ Parameters
    + ticketID (required, string, `888bd869-9398-40de-9c61-3238d6208cf5`)

### update picked time [PUT]

+ Request

    + Headers
            Authorization: bearer token
            X-Agent-ID: agent@foodpanda.com

+ Response 200 (application/json)

+ Response 400 (application/json)
    + Attributes (Error_400)

+ Response 403 (application/json)
    + Attributes (Error_403)

+ Response 404 (application/json)
    + Attributes (Error_404)

+ Response 500 (application/json)
    + Attributes (Error)
# Data Structures

## int32 (number)
## int64 (number)

## `error_object` (object)
+ status (string) - HTTP status code for this problem, expressed as a string value
+ title (string) - short, human-readable unique summary of the problem (not localized)

## `Error` (object)
+ errors (array[error_object])

## `Error_401` (object)
+ errors (array)
    + error_object
        + `status`: `401` (string)
        + `title`: `not authorize` (string)

## `Error_404` (object)
+ errors (array)
    + error_object
        + `status`: `404` (string)
        + `title`: `not found` (string)

## `Error_403` (object)
+ errors (array)
    + error_object
        + `status`: `403` (string)
        + `title`: `forbidden` (string)

## `Error_400` (object)
+ errors (array)
    + error_object
        + `status`: `400` (string)
        + `title`: `bad request` (string)

## `Error_500` (object)
+ errors (array)
    + error_object
        + `status`: `500` (string)
        + `title`: `internal server error` (string)

## AgentInfo
+ id                : `f4b8f8e5-365a-4ed1-a122-0f4ba1afef44` (string, required) - agent id
+ name              : `somename` (string) - agent name
+ status            : `online` (string) - agent status
+ statusAlias       : `online` (string) - agent status alias
+ lastLoginTime     : `2012-12-11 08:52:31 +0000 UTC` (string) - time at which agent login last time
+ updatedAt         : `2012-12-11 08:52:31 +0000 UTC` (string) - time at which agent status updated
+ agentTimeInStatus : 1572499999 (int64) - duration of current agent status

## AgentStatusInfo
+ id                : `f4b8f8e5-365a-4ed1-a122-0f4ba1afef44` (string) - agent id
+ status            : `online` (string) - agent status

## Ticket
+ id                    : `f4b8f8e5-365a-4ed1-a122-0f4ba1afef44` (string, required) - ticket id
+ content               (object) - ticket contents
+ metadata              (Metadata) - ticket metadata, this metadata only showing particular metadata to agent
+ customer              (Customer) - customer which ticket created for

## Metadata
+ ccr                       : `delivery - wrong address` (string) - costumer contact reason
+ roomId                    : `token` (string) - chat room id
+ orderId                   : `sdw-srr`(string) - order id
+ pickedTimestamp           : 1572499999 (int64) - time of this ticket picked
+ assignedTimestamp         : 1572499999 (int64) - time of this ticket is assigned
+ autoCloseWarningTimestamp : 1572499999 (int64) - time of this ticket should be notified to be closed
+ autoCloseTimestamp        : 1572499999 (int64) - time of this ticket is going to be closed
+ currentTimestamp          : 1572499999 (int64) - current server time for reference
+ entityId                  : `FP_SG` (string) - Global EntityId
+ isChatRoomClosed          : true (boolean) - flag of the chat room status
+ language                  : `eng` (string) - ticket language

## Customer
+ id                   : '989899854090030232934sdfdsdf32dd4sdfdsddffdummycustomerid2' (string) - customer id
+ firstName            : 'hugo' (string) - customer first name
+ lastName             : 'dan' (string) - customer last name
+ name                 : 'hugo dan' (string) - customer fullname

## TicketStatus (enum)
+ CREATED
+ WORKFLOW_PENDING
+ WORKFLOW_DONE
+ ASSIGNED
+ REASSIGNED
+ ESCALATED
+ CLOSED
+ CHAT_CLOSED
+ UPDATE_FIELD
+ REFUND_CREATED
+ ERROR

## AgentStatusList
+ data (array[string], fixed-type, required) - List of agent status

## UpdateAgentStatusParam
+ status (string, required) - new status