Wodify Memberships API

Membership records, templates, holds, and billing configuration.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/wodify-memberships-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

wodify-memberships-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Wodify Classes Memberships API
  description: 'REST API for the Wodify gym, fitness, and CrossFit box management platform. The API exposes the core Wodify business objects - leads, clients, memberships, classes, programs, services, appointments, workouts, financials, and communications - over HTTPS. The documented base URL is https://api.wodify.com/v1 and every request is authenticated with an `x-api-key` header. Customers using the Wodify Workflows feature already have an API key (Wodify Core > Digital Presence > Web Integrations > API Keys); partners request one through the Wodify Developer Portal.

    Scope note: this document is reconstructed from Wodify''s public API reference (docs.wodify.com) and its published operation catalog (docs.wodify.com/llms.txt). The base URL, the x-api-key auth, and the paths and query parameters for the core collections (clients, classes, workouts, programs, services) were verified directly against the reference; the remaining collection paths follow Wodify''s documented, consistently named REST operations and are modeled from that catalog. Not every documented Wodify operation is enumerated here.'
  version: '1.0'
  contact:
    name: Wodify
    url: https://www.wodify.com
servers:
- url: https://api.wodify.com/v1
  description: Wodify API (production)
security:
- apiKeyAuth: []
tags:
- name: Memberships
  description: Membership records, templates, holds, and billing configuration.
paths:
  /memberships:
    get:
      operationId: getMemberships
      tags:
      - Memberships
      summary: Get memberships
      description: Returns a paged list of memberships.
      parameters:
      - $ref: '#/components/parameters/Sort'
      - $ref: '#/components/parameters/Page'
      - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          $ref: '#/components/responses/ListResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createMembership
      tags:
      - Memberships
      summary: Create membership
      description: Creates a new membership.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Membership'
      responses:
        '200':
          $ref: '#/components/responses/ObjectResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/ValidationError'
  /memberships/{id}:
    parameters:
    - $ref: '#/components/parameters/Id'
    get:
      operationId: getMembership
      tags:
      - Memberships
      summary: Get membership
      description: Retrieves a single membership by ID.
      responses:
        '200':
          $ref: '#/components/responses/ObjectResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateMembership
      tags:
      - Memberships
      summary: Edit membership
      description: Edits an existing membership.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Membership'
      responses:
        '200':
          $ref: '#/components/responses/ObjectResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
    delete:
      operationId: deleteMembership
      tags:
      - Memberships
      summary: Delete membership
      description: Deletes a membership.
      responses:
        '200':
          description: The membership was deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    ValidationError:
      description: The request payload failed validation.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Missing or invalid x-api-key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    ListResponse:
      description: A paged list of resources.
      content:
        application/json:
          schema:
            type: object
            properties:
              data:
                type: array
                items:
                  type: object
                  additionalProperties: true
              page:
                type: integer
              page_size:
                type: integer
    ObjectResponse:
      description: A single resource.
      content:
        application/json:
          schema:
            type: object
            additionalProperties: true
  parameters:
    Page:
      name: page
      in: query
      required: false
      description: Specifies the page of records to be returned. Defaults to 1.
      schema:
        type: integer
        default: 1
    Id:
      name: id
      in: path
      required: true
      description: The unique identifier of the resource.
      schema:
        type: string
    Sort:
      name: sort
      in: query
      required: false
      description: Specifies the order in which the list will be returned.
      schema:
        type: string
    PageSize:
      name: page_size
      in: query
      required: false
      description: Number of records to return per page. Maximum and default are 100.
      schema:
        type: integer
        default: 100
        maximum: 100
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
        message:
          type: string
    Membership:
      type: object
      description: A membership record. Fields are modeled; see the Wodify reference for the authoritative schema.
      properties:
        id:
          type: string
        client_id:
          type: string
        template_id:
          type: string
        name:
          type: string
        start_date:
          type: string
          format: date
        auto_renew:
          type: boolean
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: A valid Wodify API key passed in the `x-api-key` request header. Customers using Wodify Workflows already have a key under Wodify Core > Digital Presence > Web Integrations > API Keys; partners request one via the Wodify Developer Portal.