github.com/grokify/go-ringcentral-client@v0.3.31/codegen/specs-engagedigital_v3.0.0/extra/openapi-spec_topologies.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":"Topologies", 12 "description":"This API allows to list, create, activate, read, modify and delete topologies." 13 } 14 ], 15 "paths":{ 16 "/topologies":{ 17 "get":{ 18 "tags":[ 19 "Topologies" 20 ], 21 "summary":"Getting all topologies", 22 "operationId":"getAllTopologies", 23 "description":"This method renders all topologies ordered by name (in alphabetical order).\n\nAuthorization: only users that have the right to manage topologies", 24 "parameters":[ 25 { 26 "name":"offset", 27 "in":"query", 28 "description":"The record index to start. Default value is 0.", 29 "required":false, 30 "schema":{ 31 "type":"integer", 32 "format":"int32" 33 } 34 }, 35 { 36 "name":"limit", 37 "in":"query", 38 "description":"The max number of records to return. Default value is 30, max value is 150.", 39 "required":false, 40 "schema":{ 41 "type":"integer", 42 "format":"int32" 43 } 44 } 45 ], 46 "responses":{ 47 "200":{ 48 "description":"Success", 49 "content":{ 50 "application/json":{ 51 "schema":{ 52 "$ref":"#/components/schemas/GetAllTopologiesResponse" 53 } 54 } 55 } 56 } 57 } 58 }, 59 "post":{ 60 "tags":[ 61 "Topologies" 62 ], 63 "summary":"Creating a topology", 64 "operationId":"createTopology", 65 "description":"This method creates a topology. In case of success it renders the topology, otherwise, it renders an error (422 HTTP code).\n\nAuthorization: only users that are techteam.", 66 "parameters":[ 67 { 68 "name":"name", 69 "description":"The name of the topology.", 70 "in":"query", 71 "required":true, 72 "schema":{ 73 "type":"string" 74 } 75 }, 76 { 77 "name":"json_config", 78 "description":"The json describing the topology.", 79 "in":"query", 80 "required":false, 81 "schema":{ 82 "type":"string" 83 } 84 } 85 ], 86 "responses":{ 87 "200":{ 88 "description":"Success", 89 "content":{ 90 "application/json":{ 91 "schema":{ 92 "$ref":"#/components/schemas/Topology" 93 } 94 } 95 } 96 }, 97 "403":{ 98 "description":"Forbidden" 99 } 100 } 101 } 102 }, 103 "/topologies/{topologyId}":{ 104 "get":{ 105 "tags":[ 106 "Topologies" 107 ], 108 "summary":"Getting a topology from its id", 109 "operationId":"getTopology", 110 "description":"This method renders a topology from given id.\n\nAuthorization: only users that have the right to manage topologies.", 111 "parameters":[ 112 { 113 "name":"topologyId", 114 "in":"path", 115 "required":true, 116 "schema":{ 117 "type":"string" 118 } 119 } 120 ], 121 "responses":{ 122 "200":{ 123 "description":"Success", 124 "content":{ 125 "application/json":{ 126 "schema":{ 127 "$ref":"#/components/schemas/Topology" 128 } 129 } 130 } 131 } 132 } 133 }, 134 "put":{ 135 "tags":[ 136 "Topologies" 137 ], 138 "summary":"Updating a topology", 139 "operationId":"updateTopology", 140 "description":"This method updates an existing topology from given attributes and renders it in case of success.\n\nAuthorization: only users that have the right to manage topologies.", 141 "parameters":[ 142 { 143 "name":"topologyId", 144 "in":"path", 145 "required":true, 146 "schema":{ 147 "type":"string" 148 } 149 }, 150 { 151 "name":"name", 152 "description":"The name of the topology.", 153 "in":"query", 154 "required":false, 155 "schema":{ 156 "type":"string" 157 } 158 }, 159 { 160 "name":"json_config", 161 "description":"The json describing the topology.", 162 "in":"query", 163 "required":false, 164 "schema":{ 165 "type":"string" 166 } 167 } 168 ], 169 "responses":{ 170 "200":{ 171 "description":"Success", 172 "content":{ 173 "application/json":{ 174 "schema":{ 175 "$ref":"#/components/schemas/Topology" 176 } 177 } 178 } 179 } 180 } 181 }, 182 "delete":{ 183 "tags":[ 184 "Tags" 185 ], 186 "summary":"Deleting a topology", 187 "operationId":"deleteTopology", 188 "description":"This method destroys an existing topology. It renders topology itself. It renders a 404 if id is invalid.\n\nAuthorization: only users that are techteam.", 189 "parameters":[ 190 { 191 "name":"topologyId", 192 "in":"path", 193 "required":true, 194 "schema":{ 195 "type":"string" 196 } 197 } 198 ], 199 "responses":{ 200 "200":{ 201 "description":"Success", 202 "content":{ 203 "application/json":{ 204 "schema":{ 205 "$ref":"#/components/schemas/Topology" 206 } 207 } 208 } 209 } 210 } 211 } 212 }, 213 "/toplogies/{topologyId}/activate":{ 214 "get":{ 215 "tags":[ 216 "Topologies" 217 ], 218 "summary":"Activating a topology", 219 "operationId":"activateTopology", 220 "description":"This method activates an existing topology from given attributes and renders it in case of success.\n\nAuthorization: only users that are techteam.", 221 "parameters":[ 222 { 223 "name":"topologyId", 224 "in":"path", 225 "required":true, 226 "schema":{ 227 "type":"string" 228 } 229 } 230 ], 231 "responses":{ 232 "200":{ 233 "description":"Success", 234 "content":{ 235 "application/json":{ 236 "schema":{ 237 "$ref":"#/components/schemas/Topology" 238 } 239 } 240 } 241 } 242 } 243 } 244 } 245 }, 246 "servers":[ 247 { 248 "url":"https://DOMAIN.api.engagement.dimelo.com/1.0" 249 } 250 ], 251 "components":{ 252 "schemas":{ 253 "GetAllTopologiesResponse":{ 254 "properties":{ 255 "count":{ 256 "type":"integer", 257 "format":"int32" 258 }, 259 "limit":{ 260 "type":"integer", 261 "format":"int32" 262 }, 263 "offset":{ 264 "type":"integer", 265 "format":"int32" 266 }, 267 "records":{ 268 "type":"array", 269 "items":{ 270 "$ref":"#/components/schemas/Topology" 271 } 272 } 273 } 274 }, 275 "Topology":{ 276 "properties":{ 277 "id":{ 278 "type":"string" 279 }, 280 "created_at":{ 281 "type":"string", 282 "format":"date-time" 283 }, 284 "updated_at":{ 285 "type":"string", 286 "format":"date-time" 287 }, 288 "name":{ 289 "type":"string" 290 }, 291 "config":{ 292 "$ref":"#/components/schemas/TopologyConfig" 293 } 294 } 295 }, 296 "TopologyConfig":{ 297 "properties":{ 298 "inputs":{ 299 "$ref":"#/components/schemas/TopologyConfigInputs" 300 }, 301 "steps":{ 302 "type":"array", 303 "items":{ 304 "$ref":"#/components/schemas/TopologyStep" 305 } 306 } 307 } 308 }, 309 "TopologyConfigInputs":{ 310 "properties":{ 311 "inbound":{ 312 "type":"string" 313 }, 314 "transfered":{ 315 "type":"string" 316 } 317 } 318 }, 319 "TopologyStep":{ 320 "properties":{ 321 "links":{ 322 "$ref":"#/components/schemas/TopologyStepLinks" 323 }, 324 "_type":{ 325 "type":"string" 326 }, 327 "label":{ 328 "type":"string" 329 } 330 } 331 }, 332 "TopologyStepLinks":{ 333 "properties":{ 334 "async":{ 335 "type":"string" 336 }, 337 "realtime":{ 338 "type":"string" 339 }, 340 "failure":{ 341 "type":"string" 342 }, 343 "reroute":{ 344 "type":"string" 345 } 346 } 347 } 348 } 349 } 350 }