Under Armour Webhooks API

Event-driven webhook subscriptions

OpenAPI Specification

under-armour-webhooks-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: MapMyFitness Devices Webhooks API
  description: The MapMyFitness API (Under Armour Connected Fitness API) provides RESTful access to fitness data including workouts, routes, user profiles, heart rate zones, fitness devices, and webhooks. The platform powers MapMyFitness, MapMyRun, MapMyRide, and MapMyWalk and supports over 400 partner apps and devices. Authentication uses OAuth 2.0.
  version: 7.1.0
  contact:
    name: Under Armour Developer Support
    url: https://developer.mapmyfitness.com/
  termsOfService: https://developer.mapmyfitness.com/Terms_Of_Service/
servers:
- url: https://api.ua.com
  description: Under Armour Connected Fitness API
tags:
- name: Webhooks
  description: Event-driven webhook subscriptions
paths:
  /v7.1/webhook/:
    get:
      operationId: listWebhooks
      summary: List Webhooks
      description: Retrieves webhook subscriptions for the authenticated application.
      tags:
      - Webhooks
      responses:
        '200':
          description: List of webhook subscriptions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookCollection'
        '401':
          description: Authentication required
      security:
      - oauth2:
        - write
    post:
      operationId: createWebhook
      summary: Create Webhook
      description: Creates a new webhook subscription for fitness events.
      tags:
      - Webhooks
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebhookCreate'
      responses:
        '201':
          description: Webhook created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Webhook'
        '400':
          description: Invalid request body
        '401':
          description: Authentication required
      security:
      - oauth2:
        - write
  /v7.1/webhook/{id}/:
    delete:
      operationId: deleteWebhook
      summary: Delete Webhook
      description: Deletes a webhook subscription.
      tags:
      - Webhooks
      parameters:
      - name: id
        in: path
        required: true
        description: Webhook ID
        schema:
          type: string
      responses:
        '204':
          description: Webhook deleted successfully
        '401':
          description: Authentication required
        '404':
          description: Webhook not found
      security:
      - oauth2:
        - write
components:
  schemas:
    WebhookCreate:
      type: object
      required:
      - callback_url
      - event_type
      properties:
        callback_url:
          type: string
          format: uri
          description: URL to send webhook events to
        event_type:
          type: string
          description: Event type — e.g., workout.create, workout.update, workout.delete
        shared_secret:
          type: string
          description: Shared secret for HMAC verification
    Webhook:
      type: object
      properties:
        id:
          type: string
          description: Webhook ID
        callback_url:
          type: string
          format: uri
          description: URL to send webhook events to
        event_type:
          type: string
          description: Event type to subscribe to
        shared_secret:
          type: string
          description: Secret for verifying webhook payloads
    WebhookCollection:
      type: object
      properties:
        _embedded:
          type: object
          properties:
            webhooks:
              type: array
              items:
                $ref: '#/components/schemas/Webhook'
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0 authentication
      flows:
        authorizationCode:
          authorizationUrl: https://www.mapmyfitness.com/v7.1/oauth2/authorize/
          tokenUrl: https://api.ua.com/v7.1/oauth2/access_token/
          scopes:
            read: Read access to fitness data
            write: Write access to fitness data
externalDocs:
  description: MapMyFitness API Documentation
  url: https://developer.mapmyfitness.com/docs/