openapi: 3.1.0 info: title: Fourthwall Collections API description: 'Representative OpenAPI description of Fourthwall''s public creator commerce APIs. Fourthwall exposes two HTTP surfaces: a public Storefront API (authenticated with a storefront token) for building headless shops, and a Platform / Open API (authenticated with a shop API key via HTTP Basic Auth, or OAuth 2.0 for multi-shop apps) for managing orders, products, collections, promotions, gifting, memberships, and webhooks. This document is a faithful, representative subset for cataloging; consult https://docs.fourthwall.com for the complete, authoritative reference.' termsOfService: https://fourthwall.com/terms-of-service contact: name: Fourthwall url: https://fourthwall.com version: v1 servers: - url: https://storefront-api.fourthwall.com description: Storefront API (public storefront token) - url: https://api.fourthwall.com description: Platform / Open API (shop API key or OAuth) tags: - name: Collections paths: /open-api/v1.0/collections: get: operationId: getCollections tags: - Collections summary: Get all collections security: - basicAuth: [] - oauth: - offer_read responses: '200': description: A list of collections. content: application/json: schema: type: array items: $ref: '#/components/schemas/Collection' post: operationId: createCollection tags: - Collections summary: Create a new collection security: - basicAuth: [] - oauth: - offer_write requestBody: required: true content: application/json: schema: type: object responses: '200': description: The created collection. content: application/json: schema: $ref: '#/components/schemas/Collection' /open-api/v1.0/collections/{collectionIdOrSlug}: get: operationId: getCollectionByIdOrSlug tags: - Collections summary: Get collection by ID or slug security: - basicAuth: [] - oauth: - offer_read parameters: - name: collectionIdOrSlug in: path required: true schema: type: string responses: '200': description: The collection. content: application/json: schema: $ref: '#/components/schemas/Collection' /open-api/v1.0/collections/{collectionId}/products: get: operationId: getCollectionProducts tags: - Collections summary: Get products in a collection security: - basicAuth: [] - oauth: - offer_read parameters: - name: collectionId in: path required: true schema: type: string responses: '200': description: Products in the collection. content: application/json: schema: type: array items: $ref: '#/components/schemas/Product' put: operationId: setCollectionProducts tags: - Collections summary: Set collection products security: - basicAuth: [] - oauth: - offer_write parameters: - name: collectionId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: type: object responses: '200': description: Updated. components: schemas: Collection: type: object properties: id: type: string name: type: string slug: type: string description: type: string Variant: type: object properties: id: type: string name: type: string sku: type: string price: $ref: '#/components/schemas/Money' Product: type: object description: A Fourthwall product (offer). properties: id: type: string name: type: string slug: type: string description: type: string state: type: string variants: type: array items: $ref: '#/components/schemas/Variant' Money: type: object properties: value: type: number currency: type: string securitySchemes: storefrontToken: type: apiKey in: query name: storefront_token description: Public storefront token obtained from Settings > For Developers, passed as the storefront_token query parameter on Storefront API requests. basicAuth: type: http scheme: basic description: Shop API key used with HTTP Basic Authentication against the Platform (Open) API. oauth: type: oauth2 description: OAuth 2.0 for multi-shop platform apps. flows: authorizationCode: authorizationUrl: https://auth.fourthwall.com/auth/realms/Fourthwall/protocol/openid-connect/auth tokenUrl: https://api.fourthwall.com/open-api/v1.0/platform/token scopes: order_read: Read orders order_write: Write orders and fulfillments offer_read: Read products, collections, and gifting offer_write: Write products, collections, and gifting promotions_read: Read promotions promotions_write: Write promotions giveaway_read: Read giveaways giveaway_write: Write giveaways memberships_read: Read memberships memberships_write: Write memberships webhook_read: Read webhooks webhook_write: Write webhooks donation_read: Read donations shop_read: Read shop information