> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fourthwall.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get product template details

> *Rate limit: 100 requests / 10 seconds per shop. See [Rate limiting](/guides/rate-limiting).*


            Get detailed information about a specific product template.

            This endpoint is public and does not require authentication.
            Returns full product details including variants, customizable areas,
            size guide, and images.
        



## OpenAPI

````yaml GET /open-api/v1.0/product-templates/{productId}
openapi: 3.1.0
info:
  title: Fourthwall APIs
  description: Service used for management of orders, carts, and payments.
  termsOfService: https://fourthwall.com/terms-of-service
  contact:
    name: Backend team
    url: https://fourthwall.com
    email: backend@fourthwall.com
  version: unspecified
servers:
  - url: https://api.fourthwall.com
    description: Production server
security: []
externalDocs:
  description: OpenAPI documentation
  url: https://docs.fourthwall.com
paths:
  /open-api/v1.0/product-templates/{productId}:
    get:
      tags:
        - Product Templates
      summary: Get product template details
      description: >-
        *Rate limit: 100 requests / 10 seconds per shop. See [Rate
        limiting](/guides/rate-limiting).*


                    Get detailed information about a specific product template.

                    This endpoint is public and does not require authentication.
                    Returns full product details including variants, customizable areas,
                    size guide, and images.
                
      operationId: get-product-template
      parameters:
        - name: productId
          in: path
          description: Product template ID
          required: true
          schema:
            type: string
          example: pro_k66ZW4fsRm6c2def3itltA
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/com.fourthwall.openapi.model.ProductTemplateV1
        '404':
          description: >-
            Possible errors: `GENERATOR_ID_NOT_FOUND`,
            `PRODUCT_CATALOG_PRODUCT_ID_NOT_FOUND`
          content:
            application/json:
              examples:
                generator-id-not-found:
                  value:
                    code: GENERATOR_ID_NOT_FOUND
                    id: <generatorid>
                product-catalog-product-id-not-found:
                  value:
                    code: PRODUCT_CATALOG_PRODUCT_ID_NOT_FOUND
                    id: <productid>
        '429':
          description: >-
            Rate limited: 100 requests / 10 seconds per shop (effective limit).


            All applicable limits:

            - `open-api-rate-limiter` — 100 requests / 10 seconds per shop

            - `product-templates-rate-limiter` — 100 requests / 10 seconds per
            client IP
          content:
            application/json:
              examples:
                too-many-requests:
                  value:
                    code: OPEN_API_TOO_MANY_REQUESTS
                    title: Too many requests
                    status: 429
components:
  schemas:
    com.fourthwall.openapi.model.ProductTemplateV1:
      type: object
      description: Detailed product template information
      properties:
        productId:
          type: string
          description: Product template ID
          example: pro_k66ZW4fsRm6c2def3itltA
        slug:
          type: string
          description: URL slug for this product
          example: classic-t-shirt
        name:
          type: string
          description: Product name
          example: Classic T-Shirt
        description:
          type: string
          description: Product description
        category:
          type: string
          description: Product category path
          example: apparel/t-shirts
        brand:
          type: string
          description: Brand name
          example: Bella+Canvas
        productionMethod:
          type: string
          description: >-
            Production method (e.g. DTG, EMBROIDERY, DTFX, KNITTING,
            SUBLIMATION)
          example: DTG
        minimumOrdersNumber:
          type: integer
          format: int32
          description: Minimum orders required to produce this product, if any
          example: 10
        priceFrom:
          $ref: '#/components/schemas/com.fourthwall.openapi.model.MoneyV1'
          description: Lowest available variant price, or null if no variants are available
        priceTo:
          $ref: '#/components/schemas/com.fourthwall.openapi.model.MoneyV1'
          description: >-
            Highest available variant price, or null if no variants are
            available
        colorVariants:
          type: array
          description: Product variants grouped by color
          items:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.ProductTemplateColorVariantV1
        customizableAreas:
          type: array
          description: Customizable areas on the product
          items:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.CustomizableAreaV1
        sizeGuide:
          $ref: '#/components/schemas/com.fourthwall.openapi.model.SizeGuideV1'
          description: Size guide information
        supportsBackendRendering:
          type: boolean
          description: >-
            Whether this product can be rendered by the backend rendering
            pipeline (V3 Instant Designer, excluding KNITWISE). Products where
            this is false may have null regionIds on customizable areas and
            cannot be used with the design pipeline.
          example: true
      required:
        - brand
        - category
        - colorVariants
        - customizableAreas
        - name
        - productId
        - productionMethod
        - slug
        - supportsBackendRendering
      title: Product Template
    com.fourthwall.openapi.model.MoneyV1:
      type: object
      description: Money amount with currency
      properties:
        amount:
          type: number
          description: Amount value
          example: 24.99
        currency:
          type: string
          description: Currency code (ISO 4217)
          example: USD
      required:
        - amount
        - currency
      title: Money
    com.fourthwall.openapi.model.ProductTemplateColorVariantV1:
      type: object
      description: Product variant grouped by color
      properties:
        color:
          $ref: '#/components/schemas/com.fourthwall.openapi.model.ColorV1'
          description: Color information
        photos:
          type: array
          description: Photos for this color variant
          items:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.ProductTemplatePhotoV1
        sizeVariants:
          type: array
          description: Size variants available in this color
          items:
            $ref: >-
              #/components/schemas/com.fourthwall.openapi.model.ProductTemplateSizeVariantV1
        status:
          type: string
          description: >-
            Color variant status (AVAILABLE, DISCONTINUED, OUT_OF_STOCK,
            PARTIALLY_DISCONTINUED, PARTIALLY_OUT_OF_STOCK)
          example: AVAILABLE
        available:
          type: boolean
          description: Whether the color variant is available for order
          example: true
      required:
        - available
        - color
        - photos
        - sizeVariants
        - status
      title: Product Template Color Variant
    com.fourthwall.openapi.model.CustomizableAreaV1:
      type: object
      description: Customizable area on a product
      properties:
        regionId:
          type: string
          description: Region ID used when setting regions on a customization
          example: front
        name:
          type: string
          description: Area name
          example: Front
        type:
          type: string
          description: Area type
          example: print
        available:
          type: boolean
          description: Whether this area is available for customization
          example: true
        productionMethod:
          type: string
          description: Production method for this area (e.g. DTG, EMBROIDERY, SUBLIMATION)
          example: DTG
        supportsBackendRendering:
          type: boolean
          description: >-
            Whether this specific area can be rendered by the backend rendering
            pipeline. Null when no generator region could be resolved for the
            area. Even on a product where supportsBackendRendering is true,
            individual areas may be false (e.g. embroidery areas).
          example: true
        dimensions:
          $ref: '#/components/schemas/com.fourthwall.openapi.model.RegionDimensionsV1'
          description: Region dimensions (pixels, inches, DPI)
        placements:
          type: array
          description: >-
            Named placements (sub-regions) defined within this area, e.g.
            sticker slots on a sticker sheet. Pass a placement's id as
            `placementId` on a design-pipeline region to target a single slot,
            or set `fillAllPlacements` to fill them all with the same artwork.
            Empty when the area has no sub-placements.
          items:
            $ref: '#/components/schemas/com.fourthwall.openapi.model.PlacementV1'
      required:
        - available
        - name
        - placements
        - type
      title: Customizable Area
    com.fourthwall.openapi.model.SizeGuideV1:
      type: object
      description: Size guide information
      properties:
        url:
          type: string
          description: URL to the size guide page
        content:
          type: string
          description: Size guide table as HTML or markdown
      title: Size Guide
    com.fourthwall.openapi.model.ColorV1:
      type: object
      description: Color information
      properties:
        name:
          type: string
          description: Color name
          example: Navy Blue
        hex:
          type: string
          description: Color hex code
          example: '#000080'
      required:
        - hex
        - name
      title: Color
    com.fourthwall.openapi.model.ProductTemplatePhotoV1:
      type: object
      description: Product photo with optional design overlay
      properties:
        url:
          type: string
          description: Photo URL
        designOverlay:
          type: string
          description: Design overlay URL for this photo
      required:
        - url
      title: Product Template Photo
    com.fourthwall.openapi.model.ProductTemplateSizeVariantV1:
      type: object
      description: Size variant within a color variant
      properties:
        variantId:
          type: string
          description: Variant ID
          example: var_abc123
        size:
          type: string
          description: Size name
          example: L
        price:
          $ref: '#/components/schemas/com.fourthwall.openapi.model.MoneyV1'
          description: Variant price
        available:
          type: boolean
          description: Whether this size is available for order
          example: true
      required:
        - available
        - price
        - size
        - variantId
      title: Product Template Size Variant
    com.fourthwall.openapi.model.RegionDimensionsV1:
      type: object
      description: Region dimensions
      properties:
        dpi:
          type: integer
          format: int32
          description: DPI (dots per inch)
          example: 300
        pixelsWidth:
          type: integer
          format: int32
          description: Width in pixels
          example: 4500
        pixelsHeight:
          type: integer
          format: int32
          description: Height in pixels
          example: 5400
        inchesWidth:
          type: number
          description: Width in inches
          example: 15
        inchesHeight:
          type: number
          description: Height in inches
          example: 18
      required:
        - dpi
        - inchesHeight
        - inchesWidth
        - pixelsHeight
        - pixelsWidth
      title: Region Dimensions
    com.fourthwall.openapi.model.PlacementV1:
      type: object
      description: A named sub-region (placement) within a customizable area
      properties:
        id:
          type: string
          description: >-
            Placement ID — pass this as `placementId` on a design-pipeline
            region
          example: stickerSlotOne
        name:
          type: string
          description: Human-readable placement name
          example: Sticker Slot One
      required:
        - id
        - name
      title: Placement

````