Wahoo Fitness · Capability

Wahoo Cloud API — Users

Authenticated user profile capability for the Wahoo Cloud API. Read and update the calling user's profile (name, birth, gender, height, weight).

Wahoo Cloud API — Users is a Naftiko capability published by Wahoo Fitness, one of 7 capabilities the APIs.io network indexes for this provider. It bundles 2 operations across the GET and PUT methods rooted at /v1/user.

The capability includes 1 read-only operation and 1 state-changing operation. Lead operation: Get the authenticated Wahoo user. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Wahoo, Users, and Fitness.

Run with Naftiko WahooUsersFitness

What You Can Do

GET
Getuser — Get the authenticated user.
/v1/user
PUT
Updateuser — Update the authenticated user.
/v1/user

MCP Tools

wahoo-get-user

Get the authenticated Wahoo user.

read-only idempotent
wahoo-update-user

Update the authenticated Wahoo user.

idempotent

Capability Spec

cloud-users.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Wahoo Cloud API — Users
  description: >-
    Authenticated user profile capability for the Wahoo Cloud API.
    Read and update the calling user's profile (name, birth, gender,
    height, weight).
  tags:
    - Wahoo
    - Users
    - Fitness
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
  - namespace: env
    keys:
      WAHOO_ACCESS_TOKEN: WAHOO_ACCESS_TOKEN
capability:
  consumes:
    - type: http
      namespace: cloud-users
      baseUri: https://api.wahooligan.com
      description: Wahoo Cloud Users surface — self-contained OAuth bearer client.
      resources:
        - name: v1-user
          path: /v1/user
          operations:
            - name: getUser
              method: GET
              description: Get the authenticated user.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
            - name: updateUser
              method: PUT
              description: Update the authenticated user.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: body
                  in: body
                  type: object
                  description: Profile fields to update.
                  required: true
      authentication:
        type: bearer
        value: '{{env.WAHOO_ACCESS_TOKEN}}'
        placement: header
  exposes:
    - type: rest
      namespace: cloud-users-rest
      port: 8080
      description: REST adapter for Wahoo Cloud Users.
      resources:
        - path: /v1/user
          name: v1-user
          description: REST surface for v1-user.
          operations:
            - method: GET
              name: getUser
              description: Get the authenticated user.
              call: cloud-users.getUser
              outputParameters:
                - type: object
                  mapping: $.
            - method: PUT
              name: updateUser
              description: Update the authenticated user.
              call: cloud-users.updateUser
              with:
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
    - type: mcp
      namespace: cloud-users-mcp
      port: 9090
      transport: http
      description: MCP adapter for Wahoo Cloud Users.
      tools:
        - name: wahoo-get-user
          description: Get the authenticated Wahoo user.
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: cloud-users.getUser
          outputParameters:
            - type: object
              mapping: $.
        - name: wahoo-update-user
          description: Update the authenticated Wahoo user.
          hints:
            readOnly: false
            destructive: false
            idempotent: true
          call: cloud-users.updateUser
          with:
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.