naftiko: 1.0.0-alpha2 info: label: CAMARA Quality On Demand API — Sessions description: 'CAMARA Quality On Demand API — Sessions. 5 operations. Lead operation: Get QoS session information for a device. Self-contained Naftiko capability covering one Camara business surface.' tags: - Camara - Sessions created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CAMARA_API_KEY: CAMARA_API_KEY capability: consumes: - type: http namespace: camara-sessions baseUri: https://api.example.com/quality-on-demand/v0 description: CAMARA Quality On Demand API — Sessions business capability. Self-contained, no shared references. resources: - name: retrieve-sessions path: /retrieve-sessions operations: - name: retrievesessionsfordevice method: POST description: Get QoS session information for a device outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: sessions path: /sessions operations: - name: createsession method: POST description: Create a new QoS session outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: sessions-sessionId path: /sessions/{sessionId} operations: - name: getsession method: GET description: Get QoS session information outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletesession method: DELETE description: Delete a QoS session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: sessions-sessionId-extend path: /sessions/{sessionId}/extend operations: - name: extendsession method: POST description: Extend the duration of an active session 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.CAMARA_API_KEY}}' exposes: - type: rest namespace: camara-sessions-rest port: 8080 description: REST adapter for CAMARA Quality On Demand API — Sessions. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/retrieve-sessions name: retrieve-sessions description: REST surface for retrieve-sessions. operations: - method: POST name: retrievesessionsfordevice description: Get QoS session information for a device call: camara-sessions.retrievesessionsfordevice with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/sessions name: sessions description: REST surface for sessions. operations: - method: POST name: createsession description: Create a new QoS session call: camara-sessions.createsession with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/sessions/{sessionid} name: sessions-sessionid description: REST surface for sessions-sessionId. operations: - method: GET name: getsession description: Get QoS session information call: camara-sessions.getsession outputParameters: - type: object mapping: $. - method: DELETE name: deletesession description: Delete a QoS session call: camara-sessions.deletesession outputParameters: - type: object mapping: $. - path: /v1/sessions/{sessionid}/extend name: sessions-sessionid-extend description: REST surface for sessions-sessionId-extend. operations: - method: POST name: extendsession description: Extend the duration of an active session call: camara-sessions.extendsession with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: camara-sessions-mcp port: 9090 transport: http description: MCP adapter for CAMARA Quality On Demand API — Sessions. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-qos-session-information-device description: Get QoS session information for a device hints: readOnly: true destructive: false idempotent: false call: camara-sessions.retrievesessionsfordevice with: body: tools.body outputParameters: - type: object mapping: $. - name: create-new-qos-session description: Create a new QoS session hints: readOnly: false destructive: false idempotent: false call: camara-sessions.createsession with: body: tools.body outputParameters: - type: object mapping: $. - name: get-qos-session-information description: Get QoS session information hints: readOnly: true destructive: false idempotent: true call: camara-sessions.getsession outputParameters: - type: object mapping: $. - name: delete-qos-session description: Delete a QoS session hints: readOnly: false destructive: true idempotent: true call: camara-sessions.deletesession outputParameters: - type: object mapping: $. - name: extend-duration-active-session description: Extend the duration of an active session hints: readOnly: false destructive: false idempotent: false call: camara-sessions.extendsession with: body: tools.body outputParameters: - type: object mapping: $.