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

# Create Product

> Create a new product.



## OpenAPI

````yaml /openapi/salesforge-publicapi.json post /workspaces/{workspaceID}/products
openapi: 3.1.0
info:
  description: Get mailboxes associated with the workspace.
  termsOfService: https://www.salesforge.ai/terms
  title: Salesforge API
  version: '2.0'
servers:
  - url: api.salesforge.ai/public/v2
security:
  - ApiKeyAuth: []
externalDocs:
  description: ''
  url: ''
paths:
  /workspaces/{workspaceID}/products:
    post:
      tags:
        - products
      summary: Create Product
      description: Create a new product.
      parameters:
        - description: Workspace ID
          in: path
          name: workspaceID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/api.CreateProductRequest'
              summary: request
              description: Request body
        description: Request body
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.ProductResponse'
          description: Created product
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errors.Error'
          description: Internal Server Error
      security:
        - ApiKeyAuth: []
components:
  schemas:
    api.CreateProductRequest:
      properties:
        product:
          $ref: '#/components/schemas/api.ProductRequest'
        translation:
          items:
            $ref: '#/components/schemas/api.ProductRequest'
          type: array
          uniqueItems: false
      type: object
    api.ProductResponse:
      properties:
        id:
          type: string
        internalName:
          type: string
        translations:
          items:
            $ref: '#/components/schemas/api.ProductTranslationResponse'
          type: array
          uniqueItems: false
      type: object
    errors.Error:
      allOf:
        - $ref: '#/components/schemas/data'
      properties:
        data: {}
        message:
          type: string
      type: object
    api.ProductRequest:
      properties:
        costOfInaction:
          type: string
        idealCustomerProfile:
          type: string
        industry:
          type: string
        internalName:
          type: string
        language:
          $ref: '#/components/schemas/models.Language'
        name:
          type: string
        pain:
          type: string
        proofPoints:
          type: string
        solution:
          type: string
      type: object
    api.ProductTranslationResponse:
      properties:
        costOfInaction:
          type: string
        idealCustomerProfile:
          type: string
        industry:
          type: string
        language:
          $ref: '#/components/schemas/models.Language'
        name:
          type: string
        pain:
          type: string
        proofPoints:
          type: string
        solution:
          type: string
      type: object
    data:
      properties:
        data:
          items:
            $ref: '#/components/schemas/api.WebhookResponse'
          type: array
      type: object
    models.Language:
      enum:
        - russian
        - ukrainian
        - finnish
        - american_english
        - british_english
        - french
        - spanish
        - polish
        - romanian
        - german
        - lithuanian
        - dutch
        - latvian
        - italian
        - czech
        - hungarian
        - japanese
        - brazilian_portugese
        - swedish
        - danish
        - norwegian
        - estonian
      type: string
      x-enum-varnames:
        - LanguageRussian
        - LanguageUkrainian
        - LanguageFinnish
        - LanguageAmericanEnglish
        - LanguageBritishEnglish
        - LanguageFrench
        - LanguageSpanish
        - LanguagePolish
        - LanguageRomanian
        - LanguageGerman
        - LanguageLithuanian
        - LanguageDutch
        - LanguageLatvian
        - LanguageItalian
        - LanguageCzech
        - LanguageHungarian
        - LanguageJapanese
        - LanguageBrazilianPortugese
        - LanguageSwedish
        - LanguageDanish
        - LanguageNorwegian
        - LanguageEstonian
    api.WebhookResponse:
      properties:
        id:
          type: string
        name:
          type: string
        sentCount:
          type: integer
        sequenceId:
          type: string
        type:
          $ref: '#/components/schemas/webhooks.WebhookType'
        url:
          type: string
      type: object
    webhooks.WebhookType:
      enum:
        - email_sent
        - email_opened
        - link_clicked
        - email_replied
        - linkedin_replied
        - contact_unsubscribed
        - email_bounced
        - positive_reply
        - negative_reply
        - label_changed
        - dnc_added
        - email_sent
        - email_opened
        - link_clicked
        - email_replied
        - linkedin_replied
        - contact_unsubscribed
        - email_bounced
        - positive_reply
        - negative_reply
        - label_changed
      type: string
      x-enum-varnames:
        - WebhookTypeEmailSent
        - WebhookTypeEmailOpened
        - WebhookTypeLinkClicked
        - WebhookTypeEmailReplied
        - WebhookTypeLinkedinReplied
        - WebhookTypeContactUnsubscribed
        - WebhookTypeEmailBounced
        - WebhookTypePositiveReply
        - WebhookTypeNegativeReply
        - WebhookTypeLabelChanged
        - WebhookTypeDNCAdded
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: Authorization
      type: apiKey

````