openapi-directory icon indicating copy to clipboard operation
openapi-directory copied to clipboard

Add "Cisco WebEx Admin API" API

Open tonedef71 opened this issue 2 years ago • 3 comments

Format: Postman Collection Official: YES Url: https://www.postman.com/ciscodevnet/workspace/cisco-devnet-s-public-workspace/collection/30210-beba6b1c-a834-f8a3-951c-29678666d198 Category: telecom Logo:

tonedef71 avatar Nov 24 '21 18:11 tonedef71

openapi: 3.0.3
info:
  title: Webex Admin API
  description: "Cisco Webex includes administration APIs that allow administrators to perform actions such as provisioning a user and managing devices. \n\nBy automating administration, user management and provisioning can be centralized in an existing tool, rather than using the Webex Control Hub. For example, a partner selling multiple Collaboration tools to customers can use these APIs to enable Webex Teams provisioning through a centralized portal.\n\n## What's possible with Admin APIs?\n\nCurrently, administration is focused on User Provisioning. Using these APIs, an admin can:\n\n- Create a user\n- Update a user\n- View license usage of an organization\n- View available roles of an organization\n- Manage Hybrid Services licenses and users\n\nMore information available at:\nhttps://developer.webex.com/docs/api/guides/admin-api\n"
  version: 1.0.0
  contact: {}
servers:
  - url: "https://webexapis.com/v1"
paths:
  /adminAudit/events:
    get:
      tags:
        - AdminAudit Events
      summary: List Admin Audit Events (max)
      description: "List admin audit events in your organization. Several query parameters are available to filter the response.\r\n\r\nLong result sets will be split into pages.\r\n\r\nhttps://developer.webex.com/docs/api/v1/admin-audit-events/list-admin-audit-events"
      operationId: listAdminAuditEventsMax
      parameters:
        - name: orgId
          in: query
          schema:
            type: string
            example: "{{_organization}}"
        - name: from
          in: query
          schema:
            type: string
            example: "{{_yesterday}}"
        - name: to
          in: query
          schema:
            type: string
            example: "{{_now}}"
        - name: max
          in: query
          schema:
            type: string
            example: "5"
      responses:
        "200":
          description: ""
  /deviceConfigurations:
    get:
      tags:
        - DeviceConfigurations
      summary: Get Device Configurations Details (with key)
      description: "Lists all device configurations associated with the given device ID. Administrators can list configurations for all devices within an organization.\r\n\r\nhttps://developer.webex.com/docs/api/v1/device-configurations/list-device-configurations-for-device"
      operationId: getDeviceConfigurationsDetailsWithKey
      parameters:
        - name: deviceId
          in: query
          schema:
            type: string
            example: "{{_device}}"
        - name: key
          in: query
          schema:
            type: string
            example: Audio.Ultrasound.*
      responses:
        "200":
          description: ""
    patch:
      tags:
        - DeviceConfigurations
      summary: Update Device Configurations
      description: "Update device configurations by device ID. Update requests use [JSON Patch](https://tools.ietf.org/html/rfc6902) syntax.\r\n\r\nhttps://developer.webex.com/docs/api/v1/device-configurations/update-device-configurations"
      operationId: updateDeviceConfigurations
      parameters:
        - name: deviceId
          in: query
          schema:
            type: string
            example: "{{_device}}"
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
                properties:
                  op:
                    type: string
                    example: replace
                  path:
                    type: string
                    example: Audio.Ultrasound.MaxVolume/sources/configured/value
                  value:
                    type: number
                    example: 70
              example:
                - op: replace
                  path: Audio.Ultrasound.MaxVolume/sources/configured/value
                  value: 70
            example:
              - op: replace
                path: Audio.Ultrasound.MaxVolume/sources/configured/value
                value: 70
      responses:
        "200":
          description: ""
  /devices:
    get:
      tags:
        - xAPI
      summary: List Devices (with tag)
      description: "Lists all active Webex devices associated with the authenticated user, such as devices activated in personal mode, or devices to which the user is actively paired or using. Administrators can list all devices within an organization.\n\nhttps://developer.webex.com/docs/api/v1/devices/list-devices"
      operationId: listDevicesWithTag1
      parameters:
        - name: tag
          in: query
          schema:
            type: string
            example: "\"postman\""
      responses:
        "200":
          description: ""
  /devices/activationCode:
    post:
      tags:
        - Places
      summary: Create a Device Activation Code
      description: "Generate an activation code for a device in a specific place by placeId. Currently, activation codes may only be generated for shared places--personal mode is not supported.\n\nhttps://developer.webex.com/docs/api/v1/devices/create-a-device-activation-code"
      operationId: createADeviceActivationCode
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                placeId:
                  type: string
                  example: "{{_place}}"
            example:
              placeId: "{{_place}}"
      responses:
        "200":
          description: ""
  "/devices/{_device}":
    get:
      tags:
        - xAPI
      summary: Get Device Details
      description: "Shows details for a device, by ID.\r\nSpecify the device ID in the deviceId parameter in the URI.\r\n\r\nhttps://developer.webex.com/docs/api/v1/devices/get-device-details"
      operationId: getDeviceDetails2
      responses:
        "200":
          description: ""
    delete:
      tags:
        - Devices
      summary: Delete a Device
      description: "Deletes a device, by ID.\r\nSpecify the device ID in the deviceId parameter in the URI.\r\n\r\nhttps://developer.webex.com/docs/api/v1/devices/delete-a-device"
      operationId: deleteADevice
      responses:
        "200":
          description: ""
    parameters:
      - name: _device
        in: path
        required: true
        schema:
          type: string
  /events:
    get:
      tags:
        - Events
      summary: List Events (new messages last hour)
      description: "List events in your organization. Several query parameters are available to filter the response.\nLong result sets will be split into pages.\n\nhttps://developer.webex.com/endpoint-events-get.html"
      operationId: listEventsNewMessagesLastHour
      parameters:
        - name: resource
          in: query
          schema:
            type: string
            example: messages
        - name: type
          in: query
          schema:
            type: string
            example: created
        - name: from
          in: query
          schema:
            type: string
            example: "{{_one_hour_ago}}"
        - name: to
          in: query
          schema:
            type: string
            example: "{{_now}}"
      responses:
        "200":
          description: ""
  "/events/{_event}":
    get:
      tags:
        - Events
      summary: Get Events Details
      description: "Shows details for an event, by event ID.\r\nSpecify the event ID in the eventId parameter in the URI.\r\n\r\nhttps://developer.webex.com/endpoint-events-eventId-get.html"
      operationId: getEventsDetails
      responses:
        "200":
          description: ""
    parameters:
      - name: _event
        in: path
        required: true
        schema:
          type: string
  /licenses:
    get:
      tags:
        - Licenses
      summary: List Licenses
      description: "List all licenses for a given organization. If no orgId is specified, the default is the organization of the authenticated user.\n\nhttps://developer.webex.com/endpoint-licenses-get.html\n\nExample of a response:\n``` json\n{\n  'items' : [ {\n    'id' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\n    'displayName' : 'Spark Calling',\n    'totalUnits' : '42',\n    'consumedUnits' : '8'\n  } ]\n}\n```"
      operationId: listLicenses
      responses:
        "200":
          description: ""
  "/licenses/{_license}":
    get:
      tags:
        - Licenses
      summary: Get License Details
      description: "Shows details for a license, by ID.\r\n\r\nSpecify the license ID in the licenseId parameter in the URI.\r\n\r\nhttps://developer.webex.com/endpoint-licenses-licenseId-get.html\r\n\r\nExample Response:\r\n``` json\r\n{\r\n  'id' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\r\n  'displayName' : 'Spark Calling',\r\n  'totalUnits' : '42',\r\n  'consumedUnits' : \"8'\r\n}\r\n```"
      operationId: getLicenseDetails
      responses:
        "200":
          description: ""
    parameters:
      - name: _license
        in: path
        required: true
        schema:
          type: string
  /organizations:
    get:
      tags:
        - Organizations
      summary: List Organizations
      description: "List all organizations visible by your account.\n\nhttps://developer.webex.com/endpoint-organizations-get.html\n\nExample Response:\n``` json\n{\n  'items' : [ {\n    'id' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\n    'displayName' : 'Acme, Inc.',\n    'created' : '2015-10-18T14:26:16+00:00'\n  } ]\n}\n```"
      operationId: listOrganizations1
      responses:
        "200":
          description: ""
  "/organizations/{_organization}":
    get:
      tags:
        - Organizations
      summary: Get Organization Details
      description: "Shows details for an organization, by ID.\r\n\r\nSpecify the org ID in the orgId parameter in the URI.\r\n\r\nhttps://developer.webex.com/endpoint-organizations-orgId-get.html\r\n\r\nExample Response:\r\n``` json\r\n{\r\n  'id' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\r\n  'displayName' : 'Acme, Inc.',\r\n  'created' : '2015-10-18T14:26:16+00:00'\r\n}\r\n```"
      operationId: getOrganizationDetails
      responses:
        "200":
          description: ""
    parameters:
      - name: _organization
        in: path
        required: true
        schema:
          type: string
  /people:
    get:
      tags:
        - People
      summary: List people (with exact email)
      description: "List people in your organization.\n\nhttps://developer.webex.com/endpoint-people-get.html"
      operationId: listPeopleWithExactEmail
      parameters:
        - name: email
          in: query
          schema:
            type: string
            example: "{{_email}}"
      responses:
        "200":
          description: ""
    post:
      tags:
        - People
      summary: Create a Person (random)
      description: "Create a new user account for a given organization. Only an admin can create a new user account.\n\nhttps://developer.webex.com/endpoint-people-post.html\n\nExample Request:\n``` json\n{\n  'emails' : [ '[email protected]', '[email protected]' ],\n  'displayName' : 'John Andersen',\n  'firstName' : 'John',\n  'lastName' : 'Andersen',\n  'avatar' : 'https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600',\n  'orgId' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\n  'roles' : [ 'Y2lzY29zcGFyazovL3VzL1JPT00vOGNkYzQwYzQtZjA5ZS0zY2JhLThjMjYtZGQwZTcwYWRlY2Iy', 'Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMDZkNzFhNS0wODMzLTRmYTUtYTcyYS1jYzg5YjI1ZWVlMmX' ],\n  'licenses' : [ 'Y2lzY29zcGFyazovL3VzL1JPT00vOGNkYzQwYzQtZjA5ZS0zY2JhLThjMjYtZGQwZTcwYWRlY2Iy', 'Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMDZkNzFhNS0wODMzLTRmYTUtYTcyYS1jYzg5YjI1ZWVlMmX' ]\n}\n\nExample Response:\n{\n  'id' : 'Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mNWIzNjE4Ny1jOGRkLTQ3MjctOGIyZi1mOWM0NDdmMjkwNDY',\n  'emails' : [ '[email protected]', '[email protected]' ],\n  'displayName' : 'John Andersen',\n  'firstName' : 'John',\n  'lastName' : 'Andersen',\n  'avatar' : 'https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600',\n  'orgId' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\n  'roles' : [ 'Y2lzY29zcGFyazovL3VzL1JPT00vOGNkYzQwYzQtZjA5ZS0zY2JhLThjMjYtZGQwZTcwYWRlY2Iy', 'Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMDZkNzFhNS0wODMzLTRmYTUtYTcyYS1jYzg5YjI1ZWVlMmX' ],\n  'licenses' : [ 'Y2lzY29zcGFyazovL3VzL1JPT00vOGNkYzQwYzQtZjA5ZS0zY2JhLThjMjYtZGQwZTcwYWRlY2Iy', 'Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMDZkNzFhNS0wODMzLTRmYTUtYTcyYS1jYzg5YjI1ZWVlMmX' ],\n  'created' : '2015-10-18T14:26:16+00:00',\n  'timezone' : 'America/Denver'\n}\n```"
      operationId: createAPersonRandom1
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                emails:
                  type: array
                  items:
                    type: string
                    example: "{{_random}}@{{_domain}}"
                  example:
                    - "{{_random}}@{{_domain}}"
                firstName:
                  type: string
                  example: User
                lastName:
                  type: string
                  example: FromPostman
            example:
              emails:
                - "{{_random}}@{{_domain}}"
              firstName: User
              lastName: FromPostman
      responses:
        "200":
          description: ""
  /people/me:
    get:
      tags:
        - People
      summary: Get Person Details (me)
      description: "Show the profile for the authenticated user.\n\nhttps://developer.webex.com/endpoint-people-me-get.html"
      operationId: getPersonDetailsMe
      responses:
        "200":
          description: ""
  "/people/{_person}":
    get:
      tags:
        - People
      summary: Get Person Details
      description: "Shows details for a person, by ID.\nSpecify the person ID in the personId parameter in the URI.\n\nhttps://developer.webex.com/endpoint-people-personId-get.html"
      operationId: getPersonDetails1
      responses:
        "200":
          description: person details (Stève)
          headers:
            Cache-Control:
              schema:
                type: string
                example: no-cache
            Content-Encoding:
              schema:
                type: string
                example: gzip
            Content-Length:
              schema:
                type: string
                example: "540"
            Date:
              schema:
                type: string
                example: "Wed, 09 Nov 2016 12:39:38 GMT"
            Server:
              schema:
                type: string
                example: Redacted
            Trackingid:
              schema:
                type: string
                example: NA_e996fd8b-5abe-46f8-867b-a26732771b1e
            Vary:
              schema:
                type: string
                example: Accept-Encoding
            X-Cf-Requestid:
              schema:
                type: string
                example: 512dc7ed-54dd-41f3-4338-2815604cd323
          content:
            application/json:
              schema:
                type: object
                properties:
                  avatar:
                    type: string
                    example: "https://c74213ddaf67eb02dabb-04de5163e3f90393a9f7bb6f7f0967f1.ssl.cf1.rackcdn.com/V1~efa32f72522b5f61176ce069d9163a43~ZOzopPn4Q3edMJrRLI-FMA==~1600"
                  created:
                    type: string
                    example: "2015-12-22T10:36:52.660Z"
                  displayName:
                    type: string
                    example: Stève Sfartz
                  emails:
                    type: array
                    items:
                      type: string
                      example: [email protected]
                    example:
                      - [email protected]
                  firstName:
                    type: string
                    example: Stève
                  id:
                    type: string
                    example: Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wM2ZiZTEwOS0yM2Y2LTQ1OWItODFlNS02YzYxM2JhMWNhZTE
                  lastName:
                    type: string
                    example: Sfartz
                  licenses:
                    type: array
                    items:
                      type: string
                      example: Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvNjVkNDdjMzUtZTc4NS00Y2UzLTljNDQtYTRjNDhlYmU0MmJhOk1TXzA3NTMwNzAxLTlkM2YtNDFmOC04Y2NkLTY4YzY1NmU2ZGMwMQ
                    example:
                      - Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvNjVkNDdjMzUtZTc4NS00Y2UzLTljNDQtYTRjNDhlYmU0MmJhOk1TXzA3NTMwNzAxLTlkM2YtNDFmOC04Y2NkLTY4YzY1NmU2ZGMwMQ
                  orgId:
                    type: string
                    example: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi82NWQ0N2MzNS1lNzg1LTRjZTMtOWM0NC1hNGM0OGViZTQyYmE
                  roles:
                    type: array
                    items:
                      type: string
                      example: Y2lzY29zcGFyazovL3VzL1JPTEUvaWRfZnVsbF9hZG1pbg
                    example:
                      - Y2lzY29zcGFyazovL3VzL1JPTEUvaWRfZnVsbF9hZG1pbg
                  timeZone:
                    type: string
                    example: Europe/Paris
              examples:
                person details (Stève):
                  value:
                    avatar: "https://c74213ddaf67eb02dabb-04de5163e3f90393a9f7bb6f7f0967f1.ssl.cf1.rackcdn.com/V1~efa32f72522b5f61176ce069d9163a43~ZOzopPn4Q3edMJrRLI-FMA==~1600"
                    created: "2015-12-22T10:36:52.660Z"
                    displayName: Stève Sfartz
                    emails:
                      - [email protected]
                    firstName: Stève
                    id: Y2lzY29zcGFyazovL3VzL1BFT1BMRS8wM2ZiZTEwOS0yM2Y2LTQ1OWItODFlNS02YzYxM2JhMWNhZTE
                    lastName: Sfartz
                    licenses:
                      - Y2lzY29zcGFyazovL3VzL0xJQ0VOU0UvNjVkNDdjMzUtZTc4NS00Y2UzLTljNDQtYTRjNDhlYmU0MmJhOk1TXzA3NTMwNzAxLTlkM2YtNDFmOC04Y2NkLTY4YzY1NmU2ZGMwMQ
                    orgId: Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi82NWQ0N2MzNS1lNzg1LTRjZTMtOWM0NC1hNGM0OGViZTQyYmE
                    roles:
                      - Y2lzY29zcGFyazovL3VzL1JPTEUvaWRfZnVsbF9hZG1pbg
                    timeZone: Europe/Paris
    put:
      tags:
        - People
      summary: Update a Person
      description: "Update details for a person, by ID.\r\n\r\nSpecify the person ID in the personId parameter in the URI. Only an admin can update a person details.\r\n\r\nhttps://developer.webex.com/endpoint-people-personId-put.html\r\n\r\nExample Request:\r\n``` json\r\n{\r\n  'emails\" : [ '[email protected]', '[email protected]' ],\r\n  'displayName' : 'John Andersen',\r\n  'firstName' : 'John',\r\n  'lastName' : 'Andersen',\r\n  'avatar' : 'https://1efa7a94ed21783e352-c62266528714497a17239ececf39e9e2.ssl.cf1.rackcdn.com/V1~54c844c89e678e5a7b16a306bc2897b9~wx29yGtlTpilEFlYzqPKag==~1600',\r\n  'orgId' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\r\n  'roles' : [ 'Y2lzY29zcGFyazovL3VzL1JPT00vOGNkYzQwYzQtZjA5ZS0zY2JhLThjMjYtZGQwZTcwYWRlY2Iy', 'Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMDZkNzFhNS0wODMzLTRmYTUtYTcyYS1jYzg5YjI1ZWVlMmX' ],\r\n  'licenses' : [ 'Y2lzY29zcGFyazovL3VzL1JPT00vOGNkYzQwYzQtZjA5ZS0zY2JhLThjMjYtZGQwZTcwYWRlY2Iy', 'Y2lzY29zcGFyazovL3VzL1BFT1BMRS9mMDZkNzFhNS0wODMzLTRmYTUtYTcyYS1jYzg5YjI1ZWVlMmX' ]\r\n}\r\n```"
      operationId: updateAPerson
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                displayName:
                  type: string
                  example: User updated
                emails:
                  type: array
                  items:
                    type: string
                    example: "{{_email}}"
                  example:
                    - "{{_email}}"
                orgId:
                  type: string
                  example: "{{_organization}}"
                roles:
                  type: array
                  items:
                    type: string
                    example: "{{_role}}"
                  example:
                    - "{{_role}}"
            example:
              displayName: User updated
              emails:
                - "{{_email}}"
              orgId: "{{_organization}}"
              roles:
                - "{{_role}}"
      responses:
        "200":
          description: ""
    delete:
      tags:
        - People
      summary: Delete a Person
      description: "Remove a person from the system. Only an admin can remove a person.\n\nSpecify the person ID in the personId parameter in the URI.\n\nhttps://developer.webex.com/endpoint-people-personId-delete.html"
      operationId: deleteAPerson
      responses:
        "200":
          description: ""
    parameters:
      - name: _person
        in: path
        required: true
        schema:
          type: string
  /places:
    get:
      tags:
        - Places
      summary: List Places
      description: "List places.\nUse query parameters to filter the response.\n\nhttps://developer.webex.com/docs/api/v1/places/list-places"
      operationId: listPlaces
      responses:
        "200":
          description: ""
    post:
      tags:
        - Places
      summary: Create a Place
      description: "Create a place.\n\nhttps://developer.webex.com/docs/api/v1/places/create-a-place"
      operationId: createAPlace
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                displayName:
                  type: string
                  example: DevNetZone
                type:
                  type: string
                  example: room_device
            example:
              displayName: DevNetZone
              type: room_device
      responses:
        "200":
          description: ""
  "/places/{_place}":
    get:
      tags:
        - Places
      summary: Get Place Details
      description: "Shows details for a place, by ID.\r\nSpecify the place ID in the placeId parameter in the URI.\r\n\r\nhttps://developer.webex.com/docs/api/v1/places/get-place-details"
      operationId: getPlaceDetails
      responses:
        "200":
          description: ""
    put:
      tags:
        - Places
      summary: Update a Place
      description: "Updates details for a place, by ID.\r\nSpecify the place ID in the placeId parameter in the URI.\r\n\r\nhttps://developer.webex.com/docs/api/v1/places/update-a-place"
      operationId: updateAPlace
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                displayName:
                  type: string
                  example: home
                type:
                  type: string
                  example: room_device
            example:
              displayName: home
              type: room_device
      responses:
        "200":
          description: ""
    delete:
      tags:
        - Places
      summary: Delete a Place
      description: "Deletes a place, by ID. Will also delete all devices associated with the place.\r\nSpecify the place ID in the placeId parameter in the URI.\r\n\r\nhttps://developer.webex.com/docs/api/v1/places/delete-a-place"
      operationId: deleteAPlace
      responses:
        "200":
          description: ""
    parameters:
      - name: _place
        in: path
        required: true
        schema:
          type: string
  /roles:
    get:
      tags:
        - Roles
      summary: List Roles
      description: "List all roles.\n\nhttps://developer.webex.com/endpoint-roles-get.html\n\nExample Response:\n``` json\n{\n  'items' : [ {\n    'id' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\n    'displayName' : 'Full Administrator'\n  } ]\n}\n```"
      operationId: listRoles
      responses:
        "200":
          description: ""
  "/roles/{_role}":
    get:
      tags:
        - Roles
      summary: Get Role Details
      description: "Shows details for a role, by ID.\n\nSpecify the role ID in the roleId parameter in the URI.\n\nhttps://developer.webex.com/endpoint-roles-roleId-get.html\n\nExample Response:\n``` json\n{\n  'id' : 'OTZhYmMyYWEtM2RjYy0xMWU1LWExNTItZmUzNDgxOWNkYzlh',\n  'displayName' : 'Full Administrator'\n}\n```"
      operationId: getRoleDetails
      responses:
        "200":
          description: ""
    parameters:
      - name: _role
        in: path
        required: true
        schema:
          type: string
  /xapi/command/Macros.Macro.Save:
    post:
      tags:
        - xAPI
      summary: Execute Command (macro.save)
      description: Execute Command (macro.save)
      operationId: executeCommandMacroSave
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                arguments:
                  type: object
                  properties:
                    Name:
                      type: string
                      example: postman
                    OverWrite:
                      type: string
                      example: "False"
                body:
                  type: string
                  example: "// This macro was pushed from Postman via Webex Cloud /xapi\nconsole.log('Hello world');\n"
                deviceId:
                  type: string
                  example: "{{_deviceId}}"
            example:
              arguments:
                Name: postman
                OverWrite: "False"
              body: "// This macro was pushed from Postman via Webex Cloud /xapi\nconsole.log('Hello world');\n"
              deviceId: "{{_deviceId}}"
      responses:
        "200":
          description: ""
  /xapi/command/Standby.Deactivate:
    post:
      tags:
        - xAPI
      summary: Execute Command (standby.deactivate)
      description: "Execute a command on the Webex RoomOS Device.\n\nSpecify the command to execute in the commandName parameter in the URI.\n\nSee the xAPI Guide for a description of command expressions.\n\nhttps://developer.webex.com/docs/api/v1/xapi/execute-command"
      operationId: executeCommandStandbyDeactivate
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                deviceId:
                  type: string
                  example: "{{_device}}"
            example:
              deviceId: "{{_device}}"
      responses:
        "200":
          description: ""
  /xapi/command/SystemUnit.WelcomeBanner.Set:
    post:
      tags:
        - xAPI
      summary: Execute Command (welcomebanner.set)
      description: "Execute a command on the Webex RoomOS Device.\n\nSpecify the command to execute in the commandName parameter in the URI.\n\nSee the xAPI Guide for a description of command expressions.\n\nhttps://developer.webex.com/docs/api/v1/xapi/execute-command"
      operationId: executeCommandWelcomebannerSet
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                arguments:
                  type: object
                  properties: {}
                body:
                  type: string
                  example: "****************\nWebex Device\nAuthorized Access Only\n****************"
                deviceId:
                  type: string
                  example: "{{_deviceId}}"
            example:
              arguments: {}
              body: "****************\nWebex Device\nAuthorized Access Only\n****************"
              deviceId: "{{_deviceId}}"
      responses:
        "200":
          description: ""
  /xapi/command/UserInterface.Message.Alert.Display:
    post:
      tags:
        - xAPI
      summary: Execute Command (message.alert)
      description: "Execute a command on the Webex RoomOS Device.\n\nSpecify the command to execute in the commandName parameter in the URI.\n\nSee the xAPI Guide for a description of command expressions.\n\nhttps://developer.webex.com/docs/api/v1/xapi/execute-command"
      operationId: executeCommandMessageAlert
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                arguments:
                  type: object
                  properties:
                    Duration:
                      type: number
                      example: 15
                    Text:
                      type: string
                      example: This is posted from Postman ;-) Change me!
                    Title:
                      type: string
                      example: xAPI Cloud Test
                deviceId:
                  type: string
                  example: "{{_deviceId}}"
            example:
              arguments:
                Duration: 15
                Text: This is posted from Postman ;-) Change me!
                Title: xAPI Cloud Test
              deviceId: "{{_deviceId}}"
      responses:
        "200":
          description: ""
  /xapi/status:
    get:
      tags:
        - xAPI
      summary: Query Status (audio.volume)
      description: "Query the current status of the Webex RoomOS Device.\n\nSpecify the target device in the deviceId parameter in the URI.\n\nThe target device is queried for statuses according to the expression in the name parameter.\n\nSee the xAPI Guide for a description of status expressions.\n\nhttps://developer.webex.com/docs/api/v1/xapi/query-status"
      operationId: queryStatusAudioVolume
      parameters:
        - name: deviceId
          in: query
          schema:
            type: string
            example: "{{_device}}"
        - name: name
          in: query
          schema:
            type: string
            example: Audio.Volume
      responses:
        "200":
          description: ""
tags:
  - name: AdminAudit Events
    description: "Admin Audit Events are available to full administrators for certain events performed in Webex Control Hub.\r\n\r\nAdministrators with accounts created before 2019 will need to log into Webex Control Hub before using this API.\r\n\r\nhttps://developer.webex.com/docs/api/v1/admin-audit-events\r\n"
  - name: DeviceConfigurations
  - name: Devices
    description: "Devices represent cloud-registered Webex RoomOS devices, as well as actively-connected Webex soft clients on mobile or desktop. Devices may be associated with Places.\r\n\r\nSearching and viewing details for your devices requires an auth token with the spark:devices_read scope. Updating or deleting your devices requires an auth token with the spark:devices_write scope. Viewing the list of all devices in an organization requires an administrator auth token with the spark-admin:devices_read scope. Adding, updating, or deleting all devices in an organization requires an administrator auth token with the spark-admin:devices_write scope.\r\n\r\nhttps://developer.webex.com/docs/api/v1/devices"
  - name: Events
    description: "Events are generated when actions take place within Cisco Spark, such as when someone creates or deletes a message. Use the Events API to retrieve events related to your account. Compliance Officers may retrieve events for all users within an organization. See the Compliance Guide for more information.\nhttps://developer.ciscospark.com/docs/api/guides/compliance.html\n\nThe resource endpoints such as /rooms, /messages, /memberships, etc. represent the current state of data in Spark. The /events resource represents the log of state changes which led to the current state of these resources; it details when a resource changed and who made the change.\n\nFor example, when a user posts a message in a room, this will result in a new message, available via the /messages resource. It will also result in a new event, available on the /events resource. If the user then deletes their message, this will result in the message no longer being returned on the /messages resource but it will result in a new event for the message deletion on the /events resource.\n\nEvents are available for the following resources when they are created, updated, or deleted:\n- messages\n- memberships\n\nhttps://developer.ciscospark.com/resource-events.html"
  - name: Licenses
    description: "An allowance for features and services that are provided to users on a Webex Teams services subscription. Cisco and its partners manage the amount of licenses provided to administrators and users. This license resource can be accessed only by an admin.\n\nTo learn about how to allocate Hybrid Services licenses, see the Managing Hybrid Services guide.\n\nhttps://developer.webex.com/resource-licenses.html"
  - name: Organizations
    description: "A set of people in Webex Teams. Organizations may manage other organizations or be managed themselves. This organizations resource can be accessed only by an admin.\n\nhttps://developer.webex.com/resource-organizations.html\n\n"
  - name: People
    description: "People are registered users of Webex Teams. Searching and viewing People requires an auth token with a scope of spark:people_read. Viewing the list of all People in your Organization requires an administrator auth token with spark-admin:people_read scope. Adding, updating, and removing People requires an administrator auth token with the spark-admin:people_write scope.\r\n\r\nTo learn more about managing people in a room see the Memberships API. For information about how to allocate Hybrid Services licenses to people, see the Managing Hybrid Services guide.\r\n\r\nhttps://developer.webex.com/resource-people.html"
  - name: Places
    description: "Places represent where people work, such as conference rooms, meeting spaces, lobbies, and lunch rooms. Devices may be associated with places.\r\n\r\nViewing details for places you have access to requires an auth token with a scope of spark:places_read. Updating or deleting your places requires an auth token with the spark:places_write scope. Viewing the list of all places in an organization requires an administrator auth token with the spark-admin:places_read scope. Adding, updating, or deleting all places in an organization requires an administrator auth token with the spark-admin:places_write scope.\r\n\r\nhttps://developer.webex.com/docs/api/v1/places"
  - name: Roles
    description: "A persona for an authenticated user, corresponding to a set of privileges within an organization. This roles resource can be accessed only by an admin.\n\nhttps://developer.webex.com/resource-roles.html"
  - name: xAPI```

tonedef71 avatar Nov 24 '21 19:11 tonedef71

Thanks - could you give me a hosted link for that OpenAPI definition, then we will be able to keep it up to date?

MikeRalphson avatar Mar 05 '23 11:03 MikeRalphson

Hello Mike:

I do not have the means to host the Open API schema myself, but I can describe to you how to obtain it from online:

[1] A developer account will first need to be created at postman.com https://identity.getpostman.com/signup; this developer account will need to be made public in order to be able to fork a public API. The free Postman account allows a limited number of free Postman API calls per month. Usage limits can be checked through the Postman API https://www.postman.com/postman/workspace/postman-public-workspace/documentation/12959542-c8142d51-e97c-46b6-bd77-52bb66712c9a itself or the resource usage page https://go.postman.co/billing/add-ons/overview.

[2] Once signed in at postman.com https://identity.getpostman.com/login with the developer account, a new API key must be created https://learning.postman.com/docs/developer/intro-api/.

[3] Once you have an API key, you can invoke the Postman to OpenAPI endpoint https://www.postman.com/postman/workspace/postman-public-workspace/documentation/5922408-f21e770c-7d3b-4092-bdd6-288bb1d8d825 with the following cURL command:

curl --location '

https://api.getpostman.com/collections/30210-beba6b1c-a834-f8a3-951c-29678666d198' --header 'x-api-key: <postman API key>'

This cURL command should generate an OpenAPI specification file from the Postman Collection for the Cisco WebEx Admin API https://www.postman.com/ciscodevnet/workspace/cisco-devnet-s-public-workspace/collection/30210-beba6b1c-a834-f8a3-951c-29678666d198?action=share&creator=0 .

This method may be used to obtain an OpenAPI specification from any collection at Postman.com. All that needs to be changed is the collection ID which appears at the end of the endpoint: https://api.getpostman.com/collections/COLLECTION_ID

The collection IDs can be found embedded within the URL for any collection at Postman.com. All the Cisco API collections at Postman.com may be found here https://www.postman.com/ciscodevnet/workspace/cisco-devnet-s-public-workspace/collection/ .

There is also a manual method as well to obtain the OpenAPI specification file (which is good enough for one-offs):

[1] Browse to https://www.postman.com/ciscodevnet/workspace/cisco-devnet-s-public-workspace/collection/30210-beba6b1c-a834-f8a3-951c-29678666d198?ctx=documentation [2] Click the ... button (refer to the screenshot) and select export to create a JSON export file: [image: image.png] [3] From the pop-up dialog box, click the Export button (refer to screenshot): [image: image.png] [4] A file named Webex Admin API.postman_collection.json will be downloaded. [5] Browse to https://kevinswiber.github.io/postman2openapi/ and clear out any existing content in the left text panel (Postman Collection JSON ). [6] Copy and paste the contents of the JSON export file (Webex Admin API.postman_collection.json) into the left text panel. [7] The converted Open API schema will appear in the right text panel ( OpenAPI). [image: image.png] [8] Select and copy the contents from the left text panel into a text editor and save the file to an appropriate name.

Regards. Tony

P.S. Wow, my original post to you was over 15 months ago!

On Sun, Mar 5, 2023 at 6:44 AM Mike Ralphson @.***> wrote:

Thanks - could you give me a hosted link for that OpenAPI definition, then we will be able to keep it up to date?

— Reply to this email directly, view it on GitHub https://github.com/APIs-guru/openapi-directory/issues/927#issuecomment-1455067291, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA6LNLDSPOQX26AET6ARW63W2R4DFANCNFSM5IWX6L4Q . You are receiving this because you authored the thread.Message ID: @.***>

tonedef71 avatar Mar 05 '23 18:03 tonedef71