PushPress Invitations API
Invitations for members or staff to join the gym on PushPress.
Invitations for members or staff to join the gym on PushPress.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/pushpress-invitations-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: PushPress Platform ApiKeys Invitations API
description: 'The PushPress Platform API lets developers integrate with the PushPress gym and fitness business management platform. It exposes gym members (customers), check-ins (class, appointment, event, and open-facility), appointments, classes and class types, events, plan enrollments, membership plans, company details, staff/member invitations, transactional messaging (email, SMS, push, notifications), API key management, and platform webhook subscriptions for real-time events.
All requests are REST over HTTPS. Every request is authenticated with an API key passed in the `API-KEY` header, and is scoped to a single gym location (company) by the `company-id` header.
Endpoint PATHS and HTTP METHODS in this document are grounded in PushPress''s live public API reference and the official Speakeasy-generated PushPress SDK (`@pushpress/pushpress`, production server `https://api.pushpress.com/v3`). Request and response SCHEMAS are modeled by API Evangelist to a reasonable fidelity and should be verified against the authoritative PushPress OpenAPI before code generation.'
version: '3.0'
contact:
name: PushPress
url: https://www.pushpress.com
x-grounding:
pathsAndMethods: confirmed
schemas: modeled
sources:
- https://ppe.apidocumentation.com/
- https://github.com/PushPress/pushpress-ts
- https://www.npmjs.com/package/@pushpress/pushpress
servers:
- url: https://api.pushpress.com/v3
description: Production
- url: https://api.pushpressstage.com/v3
description: Staging
- url: https://api.pushpressdev.com/v3
description: Development
security:
- api_key: []
tags:
- name: Invitations
description: Invitations for members or staff to join the gym on PushPress.
paths:
/invitations:
get:
operationId: listInvitations
tags:
- Invitations
summary: List invitations
description: Lists outstanding invitations for the company.
responses:
'200':
description: A list of invitations.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Invitation'
'401':
$ref: '#/components/responses/Unauthorized'
post:
operationId: createInvitations
tags:
- Invitations
summary: Create invitations
description: Creates one or more invitations for members or staff to join the gym.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InvitationInput'
responses:
'200':
description: The created invitation(s).
content:
application/json:
schema:
$ref: '#/components/schemas/Invitation'
'401':
$ref: '#/components/responses/Unauthorized'
'422':
$ref: '#/components/responses/ValidationError'
/invitations/{id}:
parameters:
- $ref: '#/components/parameters/Id'
get:
operationId: getInvitation
tags:
- Invitations
summary: Get an invitation
description: Retrieves a single invitation by ID.
responses:
'200':
description: The requested invitation.
content:
application/json:
schema:
$ref: '#/components/schemas/Invitation'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
delete:
operationId: deleteInvitation
tags:
- Invitations
summary: Delete an invitation
description: Deletes (revokes) an invitation.
responses:
'200':
description: Deletion confirmation.
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
schemas:
Error:
type: object
properties:
error:
type: object
properties:
code:
type: string
message:
type: string
InvitationInput:
type: object
properties:
invitations:
type: array
items:
type: object
properties:
email:
type: string
role:
type: string
DeleteResponse:
type: object
properties:
id:
type: string
deleted:
type: boolean
Invitation:
type: object
properties:
id:
type: string
email:
type: string
role:
type: string
status:
type: string
enum:
- pending
- accepted
- expired
createdAt:
type: integer
format: int64
responses:
ValidationError:
description: The request payload failed validation.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: The requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Missing or invalid API key.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
parameters:
Id:
name: id
in: path
required: true
description: The identifier of the resource.
schema:
type: string
securitySchemes:
api_key:
type: apiKey
in: header
name: API-KEY
description: API key issued in the PushPress developer portal, passed in the `API-KEY` request header. Requests are also scoped to a single gym location with a `company-id` header.