naftiko: 1.0.0-alpha2 info: label: "1NCE OS \u2014 IoT Integrator Devices" description: "1NCE OS \u2014 IoT Integrator Devices. 22 operations. Lead operation: Get device endpoints. Self-contained\ \ Naftiko capability covering one 1NCE business surface." tags: - 1NCE - IoT - Integrator - Devices created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: ONE_NCE_ACCESS_TOKEN: ONE_NCE_ACCESS_TOKEN capability: consumes: - type: http namespace: os-integrate-devices baseUri: https://api.1nce.com/management-api description: "1NCE OS \u2014 IoT Integrator Devices business capability. Self-contained, no shared references." resources: - name: v1-integrate-devices-endpoints path: /v1/integrate/devices/endpoints operations: - name: get-endpoints method: GET description: Get device endpoints outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-integrate-devices-endpoints-protocol path: /v1/integrate/devices/endpoints/{protocol} operations: - name: get-endpoints method: GET description: Get single device endpoint outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: patch-endpoints method: PATCH description: Patch single device endpoint outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-actions-requests path: /v1/integrate/devices/actions/requests operations: - name: get-requests method: GET description: Get device action requests outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-integrate-devices-actions-requests-active path: /v1/integrate/devices/actions/requests/active operations: - name: get-active method: GET description: Get active device action requests outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-integrate-devices-actions-requests-archived path: /v1/integrate/devices/actions/requests/archived operations: - name: get-archived method: GET description: Get archived device action requests outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-integrate-devices-deviceid-actions-requests path: /v1/integrate/devices/{deviceId}/actions/requests operations: - name: delete-requests method: DELETE description: Cancel all device action requests outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-integrate-devices-actions-requests-requestid path: /v1/integrate/devices/actions/requests/{requestId} operations: - name: delete-requests method: DELETE description: Cancel single device action request outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: get-requests method: GET description: Get single device action request outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-integrate-devices-deviceid-presharedkey path: /v1/integrate/devices/{deviceId}/presharedkey operations: - name: create-presharedkey method: POST description: Create Pre-Shared Device Key outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-presharedkey-jobs path: /v1/integrate/devices/presharedkey/jobs operations: - name: get-jobs method: GET description: Pre-Shared Devices Keys Import Job Status outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: create-jobs method: POST description: Import Pre-Shared Devices Keys outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-deviceid-psk path: /v1/integrate/devices/{deviceId}/psk operations: - name: create-psk method: POST description: Create Pre-Shared Device Key outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-deviceid-psk-protocol path: /v1/integrate/devices/{deviceId}/psk/{protocol} operations: - name: get-psk method: GET description: Get Pre-Shared Device Key outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-integrate-devices-psk-jobs path: /v1/integrate/devices/psk/jobs operations: - name: get-jobs method: GET description: Pre-Shared Devices Keys Import Job Status outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: create-jobs method: POST description: Import Pre-Shared Devices Keys outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-deviceid-actions-lwm2m path: /v1/integrate/devices/{deviceId}/actions/LWM2M operations: - name: create-lwm2m method: POST description: Create Action Request On Specific LwM2M Device. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-actions-lwm2m path: /v1/integrate/devices/actions/LWM2M operations: - name: create-lwm2m method: POST description: Create Action Requests for LwM2M Devices. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-deviceid-actions-coap path: /v1/integrate/devices/{deviceId}/actions/COAP operations: - name: create-coap method: POST description: Create Action Request On Specific CoAP Device. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-actions-coap path: /v1/integrate/devices/actions/COAP operations: - name: create-coap method: POST description: Create Action Requests for CoAP Devices. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-deviceid-actions-udp path: /v1/integrate/devices/{deviceId}/actions/UDP operations: - name: create-udp method: POST description: Create Action Request On Specific UDP Device. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: v1-integrate-devices-actions-udp path: /v1/integrate/devices/actions/UDP operations: - name: create-udp method: POST description: Create Action Requests for UDP Devices. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.ONE_NCE_ACCESS_TOKEN}}' exposes: - type: rest namespace: os-integrate-devices-rest port: 8080 description: "REST adapter for 1NCE OS \u2014 IoT Integrator Devices. One Spectral-compliant resource per consumed operation,\ \ prefixed with /v1." resources: - path: /v1/v1/integrate/devices/endpoints name: v1-integrate-devices-endpoints description: REST surface for v1-integrate-devices-endpoints. operations: - method: GET name: get-endpoints description: Get device endpoints call: os-integrate-devices.get-endpoints with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/endpoints/{protocol} name: v1-integrate-devices-endpoints-protocol description: REST surface for v1-integrate-devices-endpoints-protocol. operations: - method: GET name: get-endpoints description: Get single device endpoint call: os-integrate-devices.get-endpoints with: body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: patch-endpoints description: Patch single device endpoint call: os-integrate-devices.patch-endpoints with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/actions/requests name: v1-integrate-devices-actions-requests description: REST surface for v1-integrate-devices-actions-requests. operations: - method: GET name: get-requests description: Get device action requests call: os-integrate-devices.get-requests with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/actions/requests/active name: v1-integrate-devices-actions-requests-active description: REST surface for v1-integrate-devices-actions-requests-active. operations: - method: GET name: get-active description: Get active device action requests call: os-integrate-devices.get-active with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/actions/requests/archived name: v1-integrate-devices-actions-requests-archived description: REST surface for v1-integrate-devices-actions-requests-archived. operations: - method: GET name: get-archived description: Get archived device action requests call: os-integrate-devices.get-archived with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/{deviceId}/actions/requests name: v1-integrate-devices-deviceid-actions-requests description: REST surface for v1-integrate-devices-deviceid-actions-requests. operations: - method: DELETE name: delete-requests description: Cancel all device action requests call: os-integrate-devices.delete-requests with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/actions/requests/{requestId} name: v1-integrate-devices-actions-requests-requestid description: REST surface for v1-integrate-devices-actions-requests-requestid. operations: - method: DELETE name: delete-requests description: Cancel single device action request call: os-integrate-devices.delete-requests with: body: rest.body outputParameters: - type: object mapping: $. - method: GET name: get-requests description: Get single device action request call: os-integrate-devices.get-requests with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/{deviceId}/presharedkey name: v1-integrate-devices-deviceid-presharedkey description: REST surface for v1-integrate-devices-deviceid-presharedkey. operations: - method: POST name: create-presharedkey description: Create Pre-Shared Device Key call: os-integrate-devices.create-presharedkey with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/presharedkey/jobs name: v1-integrate-devices-presharedkey-jobs description: REST surface for v1-integrate-devices-presharedkey-jobs. operations: - method: GET name: get-jobs description: Pre-Shared Devices Keys Import Job Status call: os-integrate-devices.get-jobs with: body: rest.body outputParameters: - type: object mapping: $. - method: POST name: create-jobs description: Import Pre-Shared Devices Keys call: os-integrate-devices.create-jobs with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/{deviceId}/psk name: v1-integrate-devices-deviceid-psk description: REST surface for v1-integrate-devices-deviceid-psk. operations: - method: POST name: create-psk description: Create Pre-Shared Device Key call: os-integrate-devices.create-psk with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/{deviceId}/psk/{protocol} name: v1-integrate-devices-deviceid-psk-protocol description: REST surface for v1-integrate-devices-deviceid-psk-protocol. operations: - method: GET name: get-psk description: Get Pre-Shared Device Key call: os-integrate-devices.get-psk with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/psk/jobs name: v1-integrate-devices-psk-jobs description: REST surface for v1-integrate-devices-psk-jobs. operations: - method: GET name: get-jobs description: Pre-Shared Devices Keys Import Job Status call: os-integrate-devices.get-jobs with: body: rest.body outputParameters: - type: object mapping: $. - method: POST name: create-jobs description: Import Pre-Shared Devices Keys call: os-integrate-devices.create-jobs with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/{deviceId}/actions/LWM2M name: v1-integrate-devices-deviceid-actions-lwm2m description: REST surface for v1-integrate-devices-deviceid-actions-lwm2m. operations: - method: POST name: create-lwm2m description: Create Action Request On Specific LwM2M Device. call: os-integrate-devices.create-lwm2m with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/actions/LWM2M name: v1-integrate-devices-actions-lwm2m description: REST surface for v1-integrate-devices-actions-lwm2m. operations: - method: POST name: create-lwm2m description: Create Action Requests for LwM2M Devices. call: os-integrate-devices.create-lwm2m with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/{deviceId}/actions/COAP name: v1-integrate-devices-deviceid-actions-coap description: REST surface for v1-integrate-devices-deviceid-actions-coap. operations: - method: POST name: create-coap description: Create Action Request On Specific CoAP Device. call: os-integrate-devices.create-coap with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/actions/COAP name: v1-integrate-devices-actions-coap description: REST surface for v1-integrate-devices-actions-coap. operations: - method: POST name: create-coap description: Create Action Requests for CoAP Devices. call: os-integrate-devices.create-coap with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/{deviceId}/actions/UDP name: v1-integrate-devices-deviceid-actions-udp description: REST surface for v1-integrate-devices-deviceid-actions-udp. operations: - method: POST name: create-udp description: Create Action Request On Specific UDP Device. call: os-integrate-devices.create-udp with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/integrate/devices/actions/UDP name: v1-integrate-devices-actions-udp description: REST surface for v1-integrate-devices-actions-udp. operations: - method: POST name: create-udp description: Create Action Requests for UDP Devices. call: os-integrate-devices.create-udp with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: os-integrate-devices-mcp port: 9090 transport: http description: "MCP adapter for 1NCE OS \u2014 IoT Integrator Devices. One tool per consumed operation, routed inline\ \ through this capability consumes block." tools: - name: 1nce-get-endpoints description: Get device endpoints hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-endpoints with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-get-endpoints description: Get single device endpoint hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-endpoints with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-patch-endpoints description: Patch single device endpoint hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.patch-endpoints with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-get-requests description: Get device action requests hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-requests with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-get-active description: Get active device action requests hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-active with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-get-archived description: Get archived device action requests hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-archived with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-delete-requests description: Cancel all device action requests hints: readOnly: false destructive: true idempotent: true call: os-integrate-devices.delete-requests with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-delete-requests description: Cancel single device action request hints: readOnly: false destructive: true idempotent: true call: os-integrate-devices.delete-requests with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-get-requests description: Get single device action request hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-requests with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-presharedkey description: Create Pre-Shared Device Key hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-presharedkey with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-get-jobs description: Pre-Shared Devices Keys Import Job Status hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-jobs with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-jobs description: Import Pre-Shared Devices Keys hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-jobs with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-psk description: Create Pre-Shared Device Key hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-psk with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-get-psk description: Get Pre-Shared Device Key hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-psk with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-get-jobs description: Pre-Shared Devices Keys Import Job Status hints: readOnly: true destructive: false idempotent: true call: os-integrate-devices.get-jobs with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-jobs description: Import Pre-Shared Devices Keys hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-jobs with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-lwm2m description: Create Action Request On Specific LwM2M Device. hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-lwm2m with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-lwm2m description: Create Action Requests for LwM2M Devices. hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-lwm2m with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-coap description: Create Action Request On Specific CoAP Device. hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-coap with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-coap description: Create Action Requests for CoAP Devices. hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-coap with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-udp description: Create Action Request On Specific UDP Device. hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-udp with: body: tools.body outputParameters: - type: object mapping: $. - name: 1nce-create-udp description: Create Action Requests for UDP Devices. hints: readOnly: false destructive: false idempotent: false call: os-integrate-devices.create-udp with: body: tools.body outputParameters: - type: object mapping: $.