openapi: 3.0.3 info: title: WildApricot Admin Accounts OnlineStore.Products API description: The WildApricot Admin API provides programmatic access to membership management features including contacts, events, event registrations, membership levels, invoices, payments, donations, email campaigns, and store orders. Authentication uses OAuth2 with client credentials or authorization code flow. version: 7.24.0 contact: name: WildApricot Support url: https://gethelp.wildapricot.com/ license: name: Proprietary x-generated-from: documentation servers: - url: https://api.wildapricot.org/v2.2 description: WildApricot Admin API v2.2 tags: - name: OnlineStore.Products paths: /accounts/{accountId}/store/products/{id}: get: operationId: OnlineStoreProducts_GetById summary: WildApricot GET /accounts/{accountId}/store/products/{id} description: '' tags: - OnlineStore.Products parameters: - name: '' in: query required: false description: '' schema: type: string - name: id in: path required: true description: '' schema: type: integer responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Product' '400': description: '' '401': description: '' '429': description: '' security: - OAuth2: - auto /accounts/{accountId}/store/products: get: operationId: OnlineStoreProducts_GetList summary: WildApricot GET /accounts/{accountId}/store/products description: '' tags: - OnlineStore.Products parameters: - name: '' in: query required: false description: '' schema: type: string - name: $skip in: query required: false description: '' schema: type: integer - name: $top in: query required: false description: '' schema: type: integer responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/Product' '400': description: '' '401': description: '' '429': description: '' security: - OAuth2: - auto components: schemas: ProductVariant: type: object required: - id - stock - outOfStock - trackInventory properties: id: type: integer format: int32 productVariantOptionValues: type: array items: $ref: '#/components/schemas/ProductVariantOptionValue' stock: type: integer format: int32 outOfStock: type: boolean trackInventory: type: boolean ProductType: type: string description: '' x-enumNames: - Physical - Digital enum: - PHYSICAL - DIGITAL DigitalProductType: type: string description: '' x-enumNames: - File - Link enum: - FILE - LINK ProductStatus: type: string description: '' x-enumNames: - AdminOnly - Public enum: - ADMINONLY - PUBLIC ProductFile: type: object properties: name: type: string ProductLink: type: object properties: url: type: string code: type: string ProductVariantOptionValue: type: object properties: title: type: string value: type: string ProductOption: type: object properties: title: type: string values: type: array items: type: string Price: type: object required: - regular properties: regular: type: number format: decimal members: type: number format: decimal DigitalProduct: type: object required: - type properties: type: $ref: '#/components/schemas/DigitalProductType' productFile: $ref: '#/components/schemas/ProductFile' productLink: $ref: '#/components/schemas/ProductLink' emailNote: type: string Product: type: object required: - id - status - type - trackInventory - stock - outOfStock - totalStock properties: url: type: string id: type: integer format: int32 title: type: string description: type: string price: $ref: '#/components/schemas/Price' status: $ref: '#/components/schemas/ProductStatus' type: $ref: '#/components/schemas/ProductType' pictures: type: array items: type: string tags: type: array items: type: string trackInventory: type: boolean stock: type: integer format: int32 productOptions: type: array items: $ref: '#/components/schemas/ProductOption' productVariants: type: array items: $ref: '#/components/schemas/ProductVariant' outOfStock: type: boolean totalStock: type: integer format: int32 digitalProduct: $ref: '#/components/schemas/DigitalProduct' created: type: string format: date-time securitySchemes: OAuth2: type: oauth2 description: OAuth2 authentication for WildApricot API flows: clientCredentials: tokenUrl: https://oauth.wildapricot.org/auth/token scopes: auto: Full API access