naftiko: 1.0.0-alpha2 info: label: Rainbow Application Portal API — Applications description: 'Rainbow Application Portal API — Applications. 4 operations. Lead operation: List Applications. Self-contained Naftiko capability covering one Rainbow business surface.' tags: - Rainbow - Applications created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: RAINBOW_API_KEY: RAINBOW_API_KEY capability: consumes: - type: http namespace: application-applications baseUri: https://openrainbow.com/api/rainbow description: Rainbow Application Portal API — Applications business capability. Self-contained, no shared references. resources: - name: applications-v1.0-applications path: /applications/v1.0/applications operations: - name: listapplications method: GET description: List Applications outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: Maximum number of applications to return - name: offset in: query type: integer description: Pagination offset - name: createapplication method: POST description: Create Application outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: applications-v1.0-applications-appId path: /applications/v1.0/applications/{appId} operations: - name: getapplication method: GET description: Get Application outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: appId in: path type: string description: Unique identifier of the application required: true - name: deleteapplication method: DELETE description: Delete Application outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: appId in: path type: string description: Unique identifier of the application required: true authentication: type: bearer token: '{{env.RAINBOW_API_KEY}}' exposes: - type: rest namespace: application-applications-rest port: 8080 description: REST adapter for Rainbow Application Portal API — Applications. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/applications/v1-0/applications name: applications-v1-0-applications description: REST surface for applications-v1.0-applications. operations: - method: GET name: listapplications description: List Applications call: application-applications.listapplications with: limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - method: POST name: createapplication description: Create Application call: application-applications.createapplication with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/applications/v1-0/applications/{appid} name: applications-v1-0-applications-appid description: REST surface for applications-v1.0-applications-appId. operations: - method: GET name: getapplication description: Get Application call: application-applications.getapplication with: appId: rest.appId outputParameters: - type: object mapping: $. - method: DELETE name: deleteapplication description: Delete Application call: application-applications.deleteapplication with: appId: rest.appId outputParameters: - type: object mapping: $. - type: mcp namespace: application-applications-mcp port: 9090 transport: http description: MCP adapter for Rainbow Application Portal API — Applications. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-applications description: List Applications hints: readOnly: true destructive: false idempotent: true call: application-applications.listapplications with: limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: create-application description: Create Application hints: readOnly: false destructive: false idempotent: false call: application-applications.createapplication with: body: tools.body outputParameters: - type: object mapping: $. - name: get-application description: Get Application hints: readOnly: true destructive: false idempotent: true call: application-applications.getapplication with: appId: tools.appId outputParameters: - type: object mapping: $. - name: delete-application description: Delete Application hints: readOnly: false destructive: true idempotent: true call: application-applications.deleteapplication with: appId: tools.appId outputParameters: - type: object mapping: $.