Cisco Crosswork Collection Service API

The CollectionService API from Cisco Crosswork — 9 operation(s) for collectionservice.

OpenAPI Specification

cisco-crosswork-collectionservice-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Crosswork Collection Service API
  contact:
    name: Crosswork Team, Cisco
    email: support@cisco.com
  license:
    name: Cisco Software License Agreement
    url: http://www.cisco.com/public/sw-license-agreement.html
  version: '4.0'
  description: The collection service API allows an application to control collection jobs across different collection types on a device or a device group within Crosswork. This could be different collect types such as MDT,SNMP,CLI.
  x-provenance:
    method: harvested
    authored_by: Cisco Crosswork
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    note: Published by Cisco. Retrieved unmodified except for this x-provenance block.
    provider_published: true
  x-evidence:
  - type: source
    url: https://github.com/CiscoDevNet/crosswork-openapi-spec/blob/master/NCAHI/4.0APIs/collection_service.swagger.json
  - type: raw
    url: https://raw.githubusercontent.com/CiscoDevNet/crosswork-openapi-spec/master/NCAHI/4.0APIs/collection_service.swagger.json
tags:
- name: CollectionService
paths:
  /crosswork/collection/v1/collectionjob:
    delete:
      summary: 'DeleteCollectionJob API

        DeleteCollectionJob is used to mark an collection job for deletion within collection based on Application Context.

        Collection Service will clean up associated sensor configs on collectors or devices in asynchronously.

        GetCollectionJobSummary can be used to track the progress and phase of the deletion. An Collection Job marked for deletion

        will move from ACTIVE phase to TERMINATING phase , on successful termination , AppContext will be deleted from the

        Collection service, if not CollectionJob will enter TERMINATION_FAILED phase ;Deletion can be tried again from

        TERMINATION_FAILED phase where in it will move to TERMINATING phase.'
      operationId: DeleteCollectionJob
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceDeleteCollectionJobResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceDeleteCollectionJobRequest'
        required: true
    put:
      summary: 'CreateCollectionJob API

        This API allows you to a create an collection job for a devcice set. An application sends a request for list of sensor paths

        where path identified by a YANG model i.e, it could be native YANG path for the device such as

        "Cisco-IOS-XR-infra-statsd-oper:infra-statistics/interfaces/interface/latest/data-rate" where the path identifies the

        device OS type and YANG model on the device or  SNMP YANG path such as "SNMPv2-MIB:SNMPv2-MIB/system/sysName" or

        OID:1.2.3.4 or CLI command such as "show clock" or Trap yang path "snmp-trap-raw-oper:traps/data"or Syslog path or

        GNMI path in addition to cadence for push or poll .

        The cadence that is specified in this request

        can be over written by another application and is open to optimization, if other applications also request the same

        path. CreateCollectionJob does a set of sensor paths configs within collection service based on application context

        on a bunch of devices or a single device group. ApplicationContext is expected to be globally unique.

        An application context could only be associated with one CollectType at a time. Recreation of application context

        in NOT_READY state or TERMINATING or TERMINATION_FAILED phase will result in failure.Collection service tries its

        best meet the lowest common denominator for cadence on a requested path across all services. A collection job''s

        collect type and device set is immutable once it is accepted into the system, on successive create calls, which results.

        in update unless DeleteCollectionJob is done. User is responsible for specifying for proper paths associated with

        collect type.

        - DeviceId: Uuid of Device as specified in DLM

        - DeviceGroup : Device tags as specified in DLM'
      operationId: CreateCollectionJob
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceCreateCollectionJobResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceCreateCollectionJobRequest'
        required: true
  /crosswork/collection/v1/collectionjob/config/query:
    post:
      summary: "GetCollectionJobConfig API\nGetConfiguration\nGetCollectionJobConfig can be used track the configuration request within Collection Service API. It will\nreturn all sensor configuration and device set with their destinations.\n Application context is optional"
      operationId: GetCollectionJobConfig
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceGetCollectionJobConfigResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceGetCollectionJobConfigRequest'
        required: true
  /crosswork/collection/v1/collectionjob/controlstatus/query:
    post:
      summary: 'GetCollectionControlStatusPerDevice API

        Detailed Granular view of each device within a job for control status

        GetCollectionControlStatusPerDevice can be used track a control status within Collection Service API over list of devices a job spans

        over. It indicates control path state on per device per sensor has been successfully setup within helios or not.

        Application context or device id is must  for this API'
      operationId: GetCollectionControlStatusPerDevice
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceGetCollectionControlStatusResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceGetCollectionControlStatusRequest'
        required: true
  /crosswork/collection/v1/collectionjob/count/query:
    post:
      summary: 'Get job count in system,along with list of input count,output count,error count per collection job if

        collection job application context is passed. If application context is not passed , it will return

        over all count of input,output,error in system across all collection jobs.'
      operationId: GetCollectionJobCount
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceGetCollectionJobCountResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceGetCollectionJobCountRequest'
        required: true
  /crosswork/collection/v1/collectionjob/datametrics/query:
    post:
      summary: "GetCollectionDataMetricsPerDevice API\nDetailed Granular view of each device within a job for data metrics\nReturns the data metrics from per device per sensor basis . Only last reported values is retained.\nThe metrics is driven is pushed on a cadence basis in the backend. Its on per device per sensor basis with input metrics from device to collector,\noutput metrics from collector to  destinations.If the collector does not any status , it might be an empty response.\n Application context or device id is must  for this API"
      operationId: GetCollectionDataMetricsPerDevice
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceGetCollectionDataMetricsResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceGetCollectionDataMetricsRequest'
        required: true
  /crosswork/collection/v1/collectionjob/datastatus/query:
    post:
      summary: "GetCollectionDataStatusPerDevice API\nDetailed Granular view of each device within a job for data status\nReturns the data status from per device per sensor basis .  Only last reported values is retained.\nThe status is driven by on change notification in the backend. Its on per device per sensor basis whether collection took place from device to collector,\nwhether write took place from collector to  destinations. If anything failed in input or output, you would see\nerror describing the failure and state.If the collector does not any status , it might be an empty response.\n Application context or device id is must  for this API"
      operationId: GetCollectionDataStatusPerDevice
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceGetCollectionDataStatusResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceGetCollectionDataStatusRequest'
        required: true
  /crosswork/collection/v1/collectionjob/state/query:
    post:
      summary: Returns the overall state of the collection job based on counters.
      operationId: GetCollectionJobState
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceGetCollectionJobLifeCycleStateResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceGetCollectionJobLifeCycleStateRequest'
        required: true
  /crosswork/collection/v1/collectionjob/summary/query:
    post:
      summary: "GetCollectionJobSummary API\nGetCollectionJobSummary can be used track a operational state request within Collection Service API. It indicates current status\ni.e, READY , NOT_READY,FAILED .\nIf the Phase indicates\nTERMINATING or TERMINATION_FAILED no create/update operations can be performed on app context. If phase is\nTERMINATION_FAILED an app could retry to delete an Collection Job again. Once CollectionJob enters  TERMINATING or\nTERMINATION_FAILED phase , status of the Job is no longer relevant.\n Application context is optional"
      operationId: GetCollectionJobSummary
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceGetCollectionJobSummaryResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceGetCollectionJobSummaryRequest'
        required: true
  /crosswork/collection/v1/resource/inuse/query:
    post:
      summary: Returns whether a Resource is in use . Currently supported resource is Destination id. Internal use only
      operationId: GetIsResourceInUse
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/collection_serviceGetIsResourceInUseResponse'
      tags:
      - CollectionService
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/collection_serviceGetIsResourceInUseRequest'
        required: true
components:
  schemas:
    collection_servicePhase:
      type: string
      enum:
      - UNKNOWN_PHASE
      - ACTIVE
      - TERMINATING
      - TERMINATION_FAILED
      - DELETED
      default: UNKNOWN_PHASE
      description: "- ACTIVE: Request is active , Collection  Job associated with app Context may be in any one of the above states\n - TERMINATING: Request is marked for deletion , Collection Job associated with app Context is queued for deletion\n - TERMINATION_FAILED: Request is marked for deletion , Collection Job was failed to be deleted, even in one of the devices.\n - DELETED: Request is successfully deleted from the Collection Service on all devices. This phase will only appear in bus\nnotifications, will not appear in GetJobStatus, as the job will be deleted from DB."
      title: Phase indicates whether Request asscociated with AppContext is Alive or marked for deletion within collection service
    common_collection_dataSensorData:
      type: object
      properties:
        snmp_sensor:
          $ref: '#/components/schemas/common_collection_dataSnmpSensor'
        snmp_yang_sensor:
          $ref: '#/components/schemas/common_collection_dataSnmpYangSensor'
        cli_yang_sensor:
          $ref: '#/components/schemas/common_collection_dataCliYangSensor'
        cli_sensor:
          $ref: '#/components/schemas/common_collection_dataCliSensor'
        mdt_sensor:
          $ref: '#/components/schemas/common_collection_dataMDTSensor'
        trap_sensor:
          $ref: '#/components/schemas/common_collection_dataTrapSensor'
        trap_yang_sensor:
          $ref: '#/components/schemas/common_collection_dataTrapYangSensor'
        gnmi_sensor:
          $ref: '#/components/schemas/common_collection_dataGnmiSensor'
        syslog_sensor:
          $ref: '#/components/schemas/common_collection_dataSyslogSensor'
      title: Sensor Data
    gnmiSubscriptionMode:
      type: string
      enum:
      - TARGET_DEFINED
      - ON_CHANGE
      - SAMPLE
      default: TARGET_DEFINED
      title: 'SubscriptionMode is the mode of the subscription, specifying how the

        target must return values in a subscription.

        Reference: gNMI Specification Section 3.5.1.3'
    common_collection_dataKeyValue:
      type: object
      properties:
        key:
          type: string
        bytes_value:
          type: string
          format: byte
        string_value:
          type: string
        bool_value:
          type: boolean
          format: boolean
        uint32_value:
          type: integer
          format: int64
        uint64_value:
          type: string
          format: uint64
        sint32_value:
          type: integer
          format: int32
        sint64_value:
          type: string
          format: int64
        double_value:
          type: number
          format: double
        float_value:
          type: number
          format: float
      title: Generic Key value message
    collection_serviceGetCollectionDataMetricsResponse:
      type: object
      properties:
        collection_data_metrics_list:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceCollectionDataMetrics'
          title: CollectionJobStatus represents current status of the job
        query_options:
          $ref: '#/components/schemas/collection_serviceQueryOptions'
          title: Pagination and other query options
        result:
          $ref: '#/components/schemas/collection_serviceResult'
          title: Sync Request reply , indicating whether request has accepted or rejected
      title: GetCollectionDataMetricsResponse
    collection_serviceDeviceData:
      type: object
      properties:
        device_id:
          type: string
          title: UUID of device in CW inventory
        host_name:
          type: string
          title: Host name  of device in CW inventory.Optional to populate
      title: Device Data
    collection_serviceGetCollectionJobSummaryResponse:
      type: object
      properties:
        collection_job_status_list:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceCollectionJobStatus'
          title: CollectionJobStatus represents current status of the job
        query_options:
          $ref: '#/components/schemas/collection_serviceQueryOptions'
          title: Pagination and other query options
        result:
          $ref: '#/components/schemas/collection_serviceResult'
          title: Sync Request reply , indicating whether request has accepted or rejected
    collection_serviceGetCollectionJobLifeCycleStateResponse:
      type: object
      properties:
        collection_life_cycle_states:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceCollectionLifeCycleState'
          description: Requested states associated to a collection job unique identifier.
        query_options:
          $ref: '#/components/schemas/collection_serviceQueryOptions'
          description: Pagination and other query options.
        result:
          $ref: '#/components/schemas/collection_serviceResult'
          description: 'Result reply to determine any possible issue with the request or honoring

            it.'
    collection_serviceGetCollectionJobConfigResponse:
      type: object
      properties:
        collection_job_configuration_list:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceCollectionJobConfiguration'
          title: CollectionJobConfiguration contains configuration for device and sensors
        query_options:
          $ref: '#/components/schemas/collection_serviceQueryOptions'
          title: Pagination and other query options
        result:
          $ref: '#/components/schemas/collection_serviceResult'
          title: Sync Request reply , indicating whether request has accepted or rejected
      title: Returns a list of Collection Job Config
    collection_serviceSensorInputConfig:
      type: object
      properties:
        sensor_data:
          $ref: '#/components/schemas/common_collection_dataSensorData'
          title: Path represents sensor
        cadence_in_millisec:
          type: string
          format: uint64
          title: Push or Poll cadence
      description: SensorInputConfig  represents device side collection at some cadence.
    collection_serviceMetrics:
      type: object
      properties:
        key_value_metrics:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceKeyValueMetric'
      title: "Message containing various collection metrics\nFollowing metrics need to be collected\n last_collection_time_msec = 1;\n last_polling_cadence_msec = 2;\n total_collected_bytes_count = 3;\n total_collected_errors_count = 4;\n total_write_errors_count = 5;\n total_collected_msgs_count = 6;\n total_dropped_msgs_count = 7;\n last_device_latency_msec = 8;"
    collection_serviceRequestResult:
      type: string
      enum:
      - UNKNOWN_RESULT
      - REJECTED
      - ACCEPTED
      default: UNKNOWN_RESULT
      description: "- REJECTED: Request has been rejected\n - ACCEPTED: Request has been accepted for processing"
      title: 'Request - reply

        response'
    collection_serviceFilterOperator:
      type: string
      enum:
      - UNKNOWN_OPERATOR
      - OPERATOR_OR
      - OPERATOR_AND
      - OPERATOR_EQ
      - OPERATOR_REGEX
      - OPERATOR_CONTAINS
      default: UNKNOWN_OPERATOR
      description: " - UNKNOWN_OPERATOR: unknown operator\n - OPERATOR_OR: OR operator filter applied across filter list\n - OPERATOR_AND: AND operator filter applied across filter list\n - OPERATOR_EQ: EQUAL operator filter applied across filter list. not supported yet.\n - OPERATOR_REGEX: REGEX operator filter applied across filter list. not supported yet.\n - OPERATOR_CONTAINS: CONTAINS operator filter applied across filter list. supported only for hostname."
    collection_serviceGetCollectionDataStatusResponse:
      type: object
      properties:
        collection_data_status_list:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceCollectionDataStatus'
          title: The input and output collection
        query_options:
          $ref: '#/components/schemas/collection_serviceQueryOptions'
          title: Pagination and other query options
        result:
          $ref: '#/components/schemas/collection_serviceResult'
          title: Result reply
      description: CollectionJobDeviceSetStatus indicates the list of devices for which the job is successfully processed.
    collection_serviceCollectionDataStatus:
      type: object
      properties:
        input_status_list:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceInputStatus'
          title: Status per device per sensor on the input collection side
        output_status_list:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceOutputStatus'
          title: Status per device per destination on the output collection side
      title: 'CollectionJob Data Status from CDG Instances

        ContextId : robot.collector.helios.collection.datastatus'
    collection_serviceCreateCollectionJobResponse:
      type: object
      properties:
        result:
          $ref: '#/components/schemas/collection_serviceResult'
          title: Sync Request reply , indicating whether request has accepted or rejected
    collection_serviceInputStatus:
      type: object
      properties:
        device_data:
          $ref: '#/components/schemas/collection_serviceDeviceData'
          title: Device data
        sensor_data:
          $ref: '#/components/schemas/common_collection_dataSensorData'
          title: Sensor
        collection_status:
          $ref: '#/components/schemas/collection_serviceCollectionStatus'
          title: Input side collection state
      title: Collection input status
    SyslogSensorPRIs:
      type: object
      properties:
        facilities:
          type: array
          items:
            type: integer
            format: int32
          title: Syslog Facility , valid numbers 0 to 23
        severities:
          type: array
          items:
            type: integer
            format: int32
          title: Syslog Severity , valid numbers 0 to 7
      title: 'PRI is combination of Facility code(0-23) and Severity(0-7).

        Empty list will result in all syslog messages getting collected.

        If multiple items are present in the same list type, as long as any one matches, messages would be collected.

        Three digit code that''s a combination of Facility and Severity'
    collection_serviceCollectionJobConfiguration:
      type: object
      properties:
        application_context:
          $ref: '#/components/schemas/collection_serviceApplicationContext'
          description: Unique handle to identify your application's collection job , serves as Key to Object on which CRUD ops are done.
        collection_mode:
          $ref: '#/components/schemas/collection_serviceCollectionMode'
          title: 'Style of collection persistent or non-persistent

            Note Recurrent , Transient jobs are not applicable to any collection that involves device config change'
        job_device_set:
          $ref: '#/components/schemas/collection_serviceJobDeviceSet'
          title: Job DeviceSet reflects a collection of devices or device group
        sensor_input_configs:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceSensorInputConfig'
          description: SensorInputConfig reflects a group of sensors and their cadences.
        sensor_output_configs:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceSensorOutputConfig'
          title: SensorOutputConfig reflects a group of sensors and their destinations
      title: 'CollectionJobConfiguration that encapsulates bunch of sensor configs across devices or one device group with an application

        context'
    collection_serviceFilter:
      type: object
      properties:
        operator:
          $ref: '#/components/schemas/collection_serviceFilterOperator'
          title: the filter logical or conditional operator ex. AND, OR, >, <
        field_list:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceFilterField'
          title: the filter criteria list
      title: Filter
    collection_serviceQueryOptions:
      type: object
      properties:
        page_token:
          type: string
          title: 'Page token to echo back to get next page, if collection_job_device_sets is empty or page token is empty ,

            then there is no more results'
        page_size:
          type: integer
          format: int64
          title: page_size
        filter_list:
          type: array
          items:
            $ref: '#/components/schemas/collection_serviceFilter'
          title: filtering options
        filter_query:
          type: string
          title: Reserved for future use. Not used as of CW 3.1
      title: Query Options
    collection_serviceInputMetrics:
      type: object
      properties:
        device_data:
          $ref: '#/components/schemas/collection_serviceDeviceData'
          title: Device data
        sensor_data:
          $ref: '#/components/schemas/common_collection_dataSensorData'
          title: Sensor
        metrics:
          $ref: '#/components/schemas/collection_serviceMetrics'
          title: Input side metrics
    common_collection_dataTrapYangSensor:
      type: object
      properties:
        path:
          type: string
          title: Example ISIS-MIB:notifications,SNMPv2-MIB:notifications,IF-MIB:notifications
    common_collection_dataSnmpYangSensor:
      type: object
      properties:
        path:
          type: string
          title: Example SNMPv2-MIB:SNMPv2-MIB/system
    common_collection_dataDevicePackage:
      type: object
      properties:
        device_package_name:
          type: string
          title: XDE device package name
        function_name:
          type: string
          title: XDE function name within package
        parameters:
          type: array
          items:
            $ref: '#/components/schemas/common_collection_dataKeyValue'
          title: Parameters for custom device packages
      title: XDE Device package
    collection_serviceGetCollectionJobLifeCycleStateRequest:
      type: object
      properties:
        application_context:
          $ref: '#/components/schemas/collection_serviceApplicationContext'
          description: Unique collection job(s) identifier.
        v_cdg_id:
          type: string
          description: Virtual CDG.
        query_options:
          $ref: '#/components/schemas/collection_serviceQueryOptions'
          description: Pagination and other query options.
      description: 'GetCollectionJobStateRequest encapsulates requests for the lifetime cycle

        state of associated collection jobs.'
    collection_serviceGetCollectionJobSummaryRequest:
      type: object
      properties:
        application_context:
          $ref: '#/components/schemas/collection_serviceApplicationContext'
          description: Unique handle to identify your application's collection job , serves as Key to Object on which CRUD ops are done.
        query_options:
          $ref: '#/components/schemas/collection_serviceQueryOptions'
          title: Query options
      description: 'Will return all collection job operational status summary if device_id is empty for given application context

        or will return on per device basis.'
    collection_serviceJobLifetimeType:
      type: string
      enum:
      - UNKNOWN_TEMPORAL_TYPE
      - APPLICATION_MANAGED
      - CALENDAR_MANAGED
      - AUTO_DELETE_AFTER_N_SAMPLES
      default: UNKNOWN_TEMPORAL_TYPE
      description: "- UNKNOWN_TEMPORAL_TYPE: Invalid Lifetime\n - APPLICATION_MANAGED: Create and Delete of Collection job is managed by Application\n - CALENDAR_MANAGED: Create and Delete of Collection job is managed by Calendaring service tied to a calendar schedule.\nNot Supported as of now.\n - AUTO_DELETE_AFTER_N_SAMPLES: Auto Delete of Collection job after N Collections."
      title: Types of job life times supported
    collection_serviceDeleteCollectionJobResponse:
      type: object
      properties:
        result:
          $ref: '#/components/schemas/collection_serviceResult'
          title: Sync Request reply , indicating whether request has accepted or rejected
    collection_serviceGetCollectionJobCountResponse:
      type: object
      properties:
        job_count:
          type: string
          format: uint64
          title: job count
        input_collection_count:
          type: string
          format: uint64
          title: the number of input sensor collection endpoints for given collection job(s)
        output_collection_count:
          type: string
          format: uint64
          title: the number of output collection endpoints for given collection job(s)
        input_error_collection_count:
          type: string
          format: uint64
          title: the number of input sensor collection endpoints for given collection job(s)
        output_error_collection_count:
          type: string
          format: uint64
          title: the number of output collection endpoints for given collection job(s)
        control_error_count:
          type: string
          format: uint64
          title: the number of output collection endpoints for given collection job(s)
        result:
          $ref: '#/components/schemas/collection_serviceResult'
          title: Result
      title: 'Return a total count of collect jobs and total collection endpoints and errors in the system if no application context

        is provided.  If application context is provided counts are for that collection job'
    common_collection_dataMDTSensor:
      type: object
      properties:
        path:
          type: string
          title: Example Cisco-IOS-XR-infra-statsd-oper:infra-statistics/interfaces/interface/latest/generic-counters
    collection_serviceGetCollectionJobCountRequest:
      type: object
      properties:
        application_context:
          $ref: '#/components/schemas/collection_serviceApplicationContext'
          description: Unique handle to identify your application's collection job , serves as Key to Object on which CRUD ops are done.
    collection_serviceGetIsResourceInUseRequest:
      type: object
      properties:
        destination_id:
          type: string
          title: UUID of destination in crosswork inventory
      title: Request to check whether a resource is in use
    collection_serviceCollectionStatus:
      type: object
      properties:
        state:
          $ref: '#/components/schemas/collection_serviceCollectionState'
          title: Object state
        error:
          $ref: '#/components/schemas/collection_serviceError'
          title: Error if any
        reported_time:
          type: string
          format: uint64
          title: Event time
      title: Operational status of collection
    collection_serviceCreateCollectionJobRequest:
      type: object
      properties:
        collection_job:
          $ref: '#/components/schemas/collection_serviceCollectionJobConfiguration'
          title: CollectionJobConfiguration describing collection job with application context as key
      title: CreateCollectionJobRequest
    collection_serviceConfigurationCommitState:
      type: string
      enum:
      - UNKNOWN_CONFIG_COMMIT_STATE
      - COMMITTED
      - NOT_COMMITTED
      default: UNKNOWN_CONFIG_COMMIT_STATE
      description: "- COMMITTED: Control config for device was successfully converged based on target state\n - NOT_COMMITTED: Control config for device was not successfully converged based on target state"
      titl

# --- truncated at 32 KB (57 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cisco-crosswork/refs/heads/main/openapi/cisco-crosswork-collectionservice-api-openapi.yml