naftiko: 1.0.0-alpha2 info: label: Reddit Data API — Users description: 'Reddit Data API — Users. 4 operations. Lead operation: Get User Profile. Self-contained Naftiko capability covering one Reddit business surface.' tags: - Reddit - Users created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: REDDIT_API_KEY: REDDIT_API_KEY capability: consumes: - type: http namespace: data-users baseUri: https://oauth.reddit.com description: Reddit Data API — Users business capability. Self-contained, no shared references. resources: - name: user-username-about path: /user/{username}/about operations: - name: getuserabout method: GET description: Get User Profile outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: username in: path type: string description: The username of the user to look up. required: true - name: user-username-comments path: /user/{username}/comments operations: - name: getusercomments method: GET description: Get User Comments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: username in: path type: string description: The username to get comments for. required: true - name: sort in: query type: string description: The sorting method. - name: user-username-submitted path: /user/{username}/submitted operations: - name: getusersubmitted method: GET description: Get User Submissions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: username in: path type: string description: The username to get submissions for. required: true - name: sort in: query type: string description: The sorting method. - name: user-username-trophies path: /user/{username}/trophies operations: - name: getusertrophies method: GET description: Get User Trophies outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: username in: path type: string description: The username to get trophies for. required: true authentication: type: bearer token: '{{env.REDDIT_API_KEY}}' exposes: - type: rest namespace: data-users-rest port: 8080 description: REST adapter for Reddit Data API — Users. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/user/{username}/about name: user-username-about description: REST surface for user-username-about. operations: - method: GET name: getuserabout description: Get User Profile call: data-users.getuserabout with: username: rest.username outputParameters: - type: object mapping: $. - path: /v1/user/{username}/comments name: user-username-comments description: REST surface for user-username-comments. operations: - method: GET name: getusercomments description: Get User Comments call: data-users.getusercomments with: username: rest.username sort: rest.sort outputParameters: - type: object mapping: $. - path: /v1/user/{username}/submitted name: user-username-submitted description: REST surface for user-username-submitted. operations: - method: GET name: getusersubmitted description: Get User Submissions call: data-users.getusersubmitted with: username: rest.username sort: rest.sort outputParameters: - type: object mapping: $. - path: /v1/user/{username}/trophies name: user-username-trophies description: REST surface for user-username-trophies. operations: - method: GET name: getusertrophies description: Get User Trophies call: data-users.getusertrophies with: username: rest.username outputParameters: - type: object mapping: $. - type: mcp namespace: data-users-mcp port: 9090 transport: http description: MCP adapter for Reddit Data API — Users. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-user-profile description: Get User Profile hints: readOnly: true destructive: false idempotent: true call: data-users.getuserabout with: username: tools.username outputParameters: - type: object mapping: $. - name: get-user-comments description: Get User Comments hints: readOnly: true destructive: false idempotent: true call: data-users.getusercomments with: username: tools.username sort: tools.sort outputParameters: - type: object mapping: $. - name: get-user-submissions description: Get User Submissions hints: readOnly: true destructive: false idempotent: true call: data-users.getusersubmitted with: username: tools.username sort: tools.sort outputParameters: - type: object mapping: $. - name: get-user-trophies description: Get User Trophies hints: readOnly: true destructive: false idempotent: true call: data-users.getusertrophies with: username: tools.username outputParameters: - type: object mapping: $.