github.com/grokify/go-ringcentral-client@v0.3.31/codegen/specs-engagedigital_v3.0.0/openapi-spec_agent-status.json (about) 1 { 2 "openapi":"3.0.0", 3 "info":{ 4 "description":"", 5 "version":"1.0", 6 "title":"Engage Digital API", 7 "termsOfService":"https://developer.ringcentral.com" 8 }, 9 "tags":[ 10 { 11 "name":"Agent Status" 12 } 13 ], 14 "paths":{ 15 "/status":{ 16 "get":{ 17 "tags":[ 18 "Agent Status" 19 ], 20 "summary":"Get all connected agents status", 21 "operationId":"getAllAgentStatus", 22 "description":"This method get all currently connected agents & their status.\n\nAuthorization: only users that have the right to monitor the task view.", 23 "responses":{ 24 "200":{ 25 "description":"Success", 26 "content":{ 27 "application/json":{ 28 "schema":{ 29 "type":"array", 30 "items":{ 31 "$ref":"#/components/schemas/AgentStatus" 32 } 33 } 34 } 35 } 36 } 37 } 38 } 39 }, 40 "/status/{agentId}":{ 41 "get":{ 42 "tags":[ 43 "Agent Status" 44 ], 45 "summary":"Get a connected agent status", 46 "operationId":"getAgentStatus", 47 "description":"This method get the status of a connected agent. Returns a 404 if the user does not exist (not_found) or if he’s not connected (disconnected).\n\nAuthorization: only users that have the right to monitor the task view.", 48 "parameters":[ 49 { 50 "name":"agentId", 51 "in":"path", 52 "required":true, 53 "schema":{ 54 "type":"string" 55 } 56 } 57 ], 58 "responses":{ 59 "200":{ 60 "description":"Success", 61 "content":{ 62 "application/json":{ 63 "schema":{ 64 "$ref":"#/components/schemas/AgentStatus" 65 } 66 } 67 } 68 } 69 } 70 }, 71 "put":{ 72 "tags":[ 73 "Agent Status" 74 ], 75 "summary":"Changing an agent's status", 76 "operationId":"changeAgentStatus", 77 "description":"This method updates an agent's availability. Can be used to set either channels statuses OR custom status. If both parameters are provided, ignores custom status.The status parameter **MUST** be either “away” or “available”.\n\nAuthorization: only users that have the right to monitor the task view.", 78 "parameters":[ 79 { 80 "name":"agentId", 81 "in":"path", 82 "required":true, 83 "schema":{ 84 "type":"string" 85 } 86 }, 87 { 88 "name":"status", 89 "in":"query", 90 "required":false, 91 "description":"A hash of channel_id => availability (must contain all channels).", 92 "schema":{ 93 "type":"string" 94 } 95 }, 96 { 97 "name":"custom_status_id", 98 "in":"query", 99 "required":false, 100 "description":"id of presence status (optional)", 101 "schema":{ 102 "type":"string" 103 } 104 } 105 ], 106 "responses":{ 107 "200":{ 108 "description":"Success", 109 "content":{ 110 "application/json":{ 111 "schema":{ 112 "$ref":"#/components/schemas/AgentStatus" 113 } 114 } 115 } 116 } 117 } 118 } 119 } 120 }, 121 "servers":[ 122 { 123 "url":"https://DOMAIN.api.engagement.dimelo.com/1.0" 124 } 125 ], 126 "components":{ 127 "securitySchemes":{ 128 "bearerAuth":{ 129 "type":"http", 130 "scheme":"bearer" 131 } 132 }, 133 "schemas":{ 134 "GetAllAgentStatusResponse":{ 135 "properties":{ 136 "count":{ 137 "type":"integer", 138 "format":"int32" 139 }, 140 "limit":{ 141 "type":"integer", 142 "format":"int32" 143 }, 144 "offset":{ 145 "type":"integer", 146 "format":"int32" 147 }, 148 "records":{ 149 "type":"array", 150 "items":{ 151 "$ref":"#/components/schemas/AgentStatus" 152 } 153 } 154 } 155 }, 156 "AgentStatus":{ 157 "properties":{ 158 "agent_id":{ 159 "type":"string" 160 }, 161 "channels":{ 162 "type":"array", 163 "items":{ 164 "$ref":"#/components/schemas/AgentStatusChannel" 165 } 166 }, 167 "custom_status":{ 168 "$ref":"#/components/schemas/AgentCustomStatus" 169 } 170 } 171 }, 172 "AgentStatusChannel":{ 173 "properties":{ 174 "id":{ 175 "type":"string" 176 }, 177 "name":{ 178 "type":"string" 179 }, 180 "status":{ 181 "type":"string" 182 }, 183 "busyness":{ 184 "type":"string", 185 "enum":[ 186 "unoccupied","ok","busy","full" 187 ] 188 } 189 } 190 }, 191 "AgentCustomStatus":{ 192 "description":"The \"custom_status\" attribute represent the custom \"away\" status selected, it can either be:\n* 1. null — The agent is available or in the generic \"Away\" status\n2. { \"id\":\"5582b1f4776562af9b000008\" } — The id of the custom status", 193 "properties":{ 194 "id":{ 195 "type":"string" 196 } 197 } 198 } 199 } 200 } 201 }