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

# Set a product's status

> Sets a product's status to draft, active, unlisted or archived, from any other, with the version it was read at: a product saved since then is refused, and setting the status it already has changes nothing.



## OpenAPI

````yaml /openapi/en.json put /api/v1/orgs/{orgId}/catalog/products/{productId}/status
openapi: 3.1.0
info:
  title: Ready for Commerce API
  version: 1.0.0
  description: >-
    The reference of every operation of the Ready for Commerce API. Every
    operation is in beta until launch.
servers:
  - url: https://app.readyforcommerce.com
security:
  - apiKey: []
tags:
  - name: Credentials
    description: >-
      The credential that calls: its organization, its permissions, its limits
      and the calls it may still make.
  - name: Organization
    description: 'The organization''s settings: its name, slug and currency.'
  - name: Billing
    description: >-
      The organization's subscription and each module's bill and cap, and this
      month's usage against its free allowance.
  - name: Record types
    description: >-
      The kinds of record the credential may import or export, with each one's
      fields and options.
  - name: Imports
    description: >-
      Bring CSV or Excel files in: upload or fetch a file, inspect and check it,
      then start the import and read its results.
  - name: Files
    description: An uploaded file's status, until it is ready or rejected.
  - name: Exports
    description: Export the records a filter matches to CSV or Excel files, kept 14 days.
  - name: Export templates
    description: Saved export setups, by name, to run the same export again.
  - name: Jobs
    description: >-
      Long work runs as a job: follow its state and progress, read its messages,
      download its files or cancel it.
  - name: Search
    description: >-
      Find the organization's records by words, a typo included, grouped by
      kind.
  - name: Version history
    description: >-
      A record's versions, newest first: compare one with another and restore
      the record to it.
  - name: Incidents
    description: >-
      The organization's problems you may see: mark them read or unread, and
      resolve them.
  - name: Notifications
    description: >-
      Your notifications, newest first: mark one read or unread, or all of them
      read.
  - name: Saved views
    description: >-
      A table's search, filters, order and columns saved under a name, yours or
      shared with the organization, and the view each table opens with for you.
  - name: Store connections
    description: >-
      The organization's stores, connected with their pasted keys: list them,
      connect one, reconnect it with new keys or disconnect it.
  - name: Products
    description: >-
      The organization's products with their options, variants and prices: list
      them, read one, create one, change one's content, its prices or its
      status, duplicate one as a draft, or delete one.
paths:
  /api/v1/orgs/{orgId}/catalog/products/{productId}/status:
    put:
      tags:
        - Products
      summary: Set a product's status
      description: >-
        Sets a product's status to draft, active, unlisted or archived, from any
        other, with the version it was read at: a product saved since then is
        refused, and setting the status it already has changes nothing.
      operationId: catalogSetProductStatus
      parameters:
        - schema:
            type: string
            format: uuid
          in: path
          name: orgId
          required: true
        - schema:
            type: string
            format: uuid
          in: path
          name: productId
          required: true
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductStatusUpdateInput'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductSaved'
        default:
          description: >-
            An error, as `application/problem+json`: its `code` says what went
            wrong and `params` holds its values
          content:
            application/problem+json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/Problem'
                  - properties:
                      code:
                        enum:
                          - core.version_conflict
                          - core.bad_request
                          - core.invalid_credential
                          - core.forbidden
                          - core.module_not_enabled
                          - core.module_read_only
                          - core.not_found
                          - core.conflict
                          - core.org_deletion_scheduled
                          - core.payload_too_large
                          - core.unsupported_media_type
                          - core.validation_failed
                          - core.rate_limited
                          - core.surface_disabled
                          - core.internal
                          - core.unavailable
components:
  schemas:
    ProductStatusUpdateInput:
      type: object
      properties:
        status:
          type: string
          enum:
            - draft
            - active
            - unlisted
            - archived
          examples:
            - draft
        expectedVersion:
          type: integer
          minimum: 1
      required:
        - status
        - expectedVersion
    ProductSaved:
      type: object
      properties:
        id:
          type: string
          format: uuid
        title:
          type: string
        slug:
          type: string
        status:
          type: string
          enum:
            - draft
            - active
            - unlisted
            - archived
        condition:
          type: string
          enum:
            - new
            - open_box
            - new_with_defects
            - used
            - used_like_new
            - used_very_good
            - used_good
            - used_acceptable
            - refurbished
            - collectible_like_new
            - collectible_very_good
            - collectible_good
            - collectible_acceptable
            - for_parts_or_not_working
        productType:
          type:
            - string
            - 'null'
        descriptionHtml:
          description: >-
            The product's description in HTML, as it was saved; null when it has
            none.
          type:
            - string
            - 'null'
        metaTitle:
          type:
            - string
            - 'null'
        metaDescription:
          type:
            - string
            - 'null'
        version:
          type: integer
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        createdBy:
          type: object
          properties:
            type:
              type: string
              enum:
                - user
                - import
                - feed
                - integration
                - system
                - check
                - api_key
                - oauth_grant
            id:
              anyOf:
                - type: string
                  format: uuid
                - type: 'null'
          required:
            - type
            - id
          additionalProperties: false
        updatedBy:
          type: object
          properties:
            type:
              type: string
              enum:
                - user
                - import
                - feed
                - integration
                - system
                - check
                - api_key
                - oauth_grant
            id:
              anyOf:
                - type: string
                  format: uuid
                - type: 'null'
          required:
            - type
            - id
          additionalProperties: false
        options:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
              name:
                type: string
              position:
                type: integer
              values:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      format: uuid
                    name:
                      type: string
                    position:
                      type: integer
                  required:
                    - id
                    - name
                    - position
                  additionalProperties: false
            required:
              - id
              - name
              - position
              - values
            additionalProperties: false
        variants:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: uuid
              optionValueIds:
                type: array
                items:
                  type: string
                  format: uuid
              identifiers:
                type: array
                items:
                  type: object
                  properties:
                    type:
                      type: string
                      enum:
                        - sku
                        - gtin
                        - isbn
                        - mpn
                        - custom
                    value:
                      type: string
                    label:
                      type:
                        - string
                        - 'null'
                  required:
                    - type
                    - value
                    - label
                  additionalProperties: false
              currency:
                type: string
                enum:
                  - AED
                  - AFN
                  - ALL
                  - AMD
                  - AOA
                  - ARS
                  - AUD
                  - AWG
                  - AZN
                  - BAM
                  - BBD
                  - BDT
                  - BHD
                  - BIF
                  - BMD
                  - BND
                  - BOB
                  - BOV
                  - BRL
                  - BSD
                  - BTN
                  - BWP
                  - BYN
                  - BZD
                  - CAD
                  - CDF
                  - CHE
                  - CHF
                  - CHW
                  - CLF
                  - CLP
                  - CNY
                  - COP
                  - COU
                  - CRC
                  - CUP
                  - CVE
                  - CZK
                  - DJF
                  - DKK
                  - DOP
                  - DZD
                  - EGP
                  - ERN
                  - ETB
                  - EUR
                  - FJD
                  - FKP
                  - GBP
                  - GEL
                  - GHS
                  - GIP
                  - GMD
                  - GNF
                  - GTQ
                  - GYD
                  - HKD
                  - HNL
                  - HTG
                  - HUF
                  - IDR
                  - ILS
                  - INR
                  - IQD
                  - IRR
                  - ISK
                  - JMD
                  - JOD
                  - JPY
                  - KES
                  - KGS
                  - KHR
                  - KMF
                  - KPW
                  - KRW
                  - KWD
                  - KYD
                  - KZT
                  - LAK
                  - LBP
                  - LKR
                  - LRD
                  - LSL
                  - LYD
                  - MAD
                  - MDL
                  - MGA
                  - MKD
                  - MMK
                  - MNT
                  - MOP
                  - MRU
                  - MUR
                  - MVR
                  - MWK
                  - MXN
                  - MXV
                  - MYR
                  - MZN
                  - NAD
                  - NGN
                  - NIO
                  - NOK
                  - NPR
                  - NZD
                  - OMR
                  - PAB
                  - PEN
                  - PGK
                  - PHP
                  - PKR
                  - PLN
                  - PYG
                  - QAR
                  - RON
                  - RSD
                  - RUB
                  - RWF
                  - SAR
                  - SBD
                  - SCR
                  - SDG
                  - SEK
                  - SGD
                  - SHP
                  - SLE
                  - SOS
                  - SRD
                  - SSP
                  - STN
                  - SVC
                  - SYP
                  - SZL
                  - THB
                  - TJS
                  - TMT
                  - TND
                  - TOP
                  - TRY
                  - TTD
                  - TWD
                  - TZS
                  - UAH
                  - UGX
                  - USD
                  - USN
                  - UYI
                  - UYU
                  - UYW
                  - UZS
                  - VED
                  - VES
                  - VND
                  - VUV
                  - WST
                  - XAD
                  - XAF
                  - XCD
                  - XCG
                  - XOF
                  - XPF
                  - YER
                  - ZAR
                  - ZMW
                  - ZWG
              price:
                type:
                  - string
                  - 'null'
              compareAt:
                type:
                  - string
                  - 'null'
              map:
                type:
                  - string
                  - 'null'
              msrp:
                type:
                  - string
                  - 'null'
              onHandCost:
                type:
                  - string
                  - 'null'
              supplierCost:
                type:
                  - string
                  - 'null'
              fallbackCost:
                type:
                  - string
                  - 'null'
              productWeight:
                anyOf:
                  - type: object
                    properties:
                      value:
                        type: number
                        minimum: 0
                      unit:
                        type: string
                        enum:
                          - g
                          - kg
                          - oz
                          - lb
                          - ct
                    required:
                      - value
                      - unit
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  The product's own weight, a value with its unit (g, kg, oz,
                  lb, ct); a value of 0 is saved as none.
              productLength:
                anyOf:
                  - type: object
                    properties:
                      value:
                        type: number
                        minimum: 0
                      unit:
                        type: string
                        enum:
                          - mm
                          - cm
                          - in
                          - yd
                    required:
                      - value
                      - unit
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  The product's own length, a value with its unit (mm, cm, in,
                  yd); a value of 0 is saved as none.
              productWidth:
                anyOf:
                  - type: object
                    properties:
                      value:
                        type: number
                        minimum: 0
                      unit:
                        type: string
                        enum:
                          - mm
                          - cm
                          - in
                          - yd
                    required:
                      - value
                      - unit
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  The product's own width, a value with its unit (mm, cm, in,
                  yd); a value of 0 is saved as none.
              productHeight:
                anyOf:
                  - type: object
                    properties:
                      value:
                        type: number
                        minimum: 0
                      unit:
                        type: string
                        enum:
                          - mm
                          - cm
                          - in
                          - yd
                    required:
                      - value
                      - unit
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  The product's own height, a value with its unit (mm, cm, in,
                  yd); a value of 0 is saved as none.
              shippingWeight:
                anyOf:
                  - type: object
                    properties:
                      value:
                        type: number
                        minimum: 0
                      unit:
                        type: string
                        enum:
                          - g
                          - kg
                          - oz
                          - lb
                          - ct
                    required:
                      - value
                      - unit
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  The weight it ships with, packed, a value with its unit (g,
                  kg, oz, lb, ct); a value of 0 is saved as none.
              shippingLength:
                anyOf:
                  - type: object
                    properties:
                      value:
                        type: number
                        minimum: 0
                      unit:
                        type: string
                        enum:
                          - mm
                          - cm
                          - in
                          - yd
                    required:
                      - value
                      - unit
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  The length of its package, a value with its unit (mm, cm, in,
                  yd); a value of 0 is saved as none.
              shippingWidth:
                anyOf:
                  - type: object
                    properties:
                      value:
                        type: number
                        minimum: 0
                      unit:
                        type: string
                        enum:
                          - mm
                          - cm
                          - in
                          - yd
                    required:
                      - value
                      - unit
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  The width of its package, a value with its unit (mm, cm, in,
                  yd); a value of 0 is saved as none.
              shippingHeight:
                anyOf:
                  - type: object
                    properties:
                      value:
                        type: number
                        minimum: 0
                      unit:
                        type: string
                        enum:
                          - mm
                          - cm
                          - in
                          - yd
                    required:
                      - value
                      - unit
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  The height of its package, a value with its unit (mm, cm, in,
                  yd); a value of 0 is saved as none.
              countryOfOrigin:
                description: >-
                  The country it is made in, as its two-letter ISO 3166-1 code
                  such as MX.
                type:
                  - string
                  - 'null'
              hsCode:
                description: Its Harmonized System customs code, its 6 to 13 digits alone.
                type:
                  - string
                  - 'null'
              trackInventory:
                type: boolean
                description: >-
                  Whether its stock is tracked; a variant no longer tracked has
                  none of its three stocks.
              onHandStock:
                anyOf:
                  - type: integer
                    minimum: 0
                    maximum: 2147483647
                  - type: 'null'
                description: >-
                  The stock on hand, as the stores report it, for a tracked
                  variant only.
              supplierStock:
                anyOf:
                  - type: integer
                    minimum: 0
                    maximum: 2147483647
                  - type: 'null'
                description: >-
                  The stock at its supplier, as the supplier's feed reports it,
                  for a tracked variant only.
              fallbackStock:
                anyOf:
                  - type: integer
                    minimum: 0
                    maximum: 2147483647
                    description: >-
                      The stock it falls back on when it has none on hand or at
                      its supplier, for a tracked variant only; one tracked
                      without it has 0.
                  - type: 'null'
              createdBy:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                      - user
                      - import
                      - feed
                      - integration
                      - system
                      - check
                      - api_key
                      - oauth_grant
                  id:
                    anyOf:
                      - type: string
                        format: uuid
                      - type: 'null'
                required:
                  - type
                  - id
                additionalProperties: false
              updatedBy:
                type: object
                properties:
                  type:
                    type: string
                    enum:
                      - user
                      - import
                      - feed
                      - integration
                      - system
                      - check
                      - api_key
                      - oauth_grant
                  id:
                    anyOf:
                      - type: string
                        format: uuid
                      - type: 'null'
                required:
                  - type
                  - id
                additionalProperties: false
            required:
              - id
              - optionValueIds
              - identifiers
              - currency
              - price
              - compareAt
              - map
              - msrp
              - onHandCost
              - supplierCost
              - fallbackCost
              - productWeight
              - productLength
              - productWidth
              - productHeight
              - shippingWeight
              - shippingLength
              - shippingWidth
              - shippingHeight
              - countryOfOrigin
              - hsCode
              - trackInventory
              - onHandStock
              - supplierStock
              - fallbackStock
              - createdBy
              - updatedBy
            additionalProperties: false
        warnings:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                enum:
                  - catalog.part_number_similar
                  - catalog.compare_below_price
                  - catalog.price_below_cost
                  - catalog.price_below_map
                  - catalog.price_above_msrp
                  - catalog.map_above_msrp
                  - catalog.cost_above_map
                  - catalog.cost_above_msrp
              params:
                type: object
                propertyNames:
                  type: string
                additionalProperties:
                  type:
                    - string
                    - number
            required:
              - code
              - params
            additionalProperties: false
      required:
        - id
        - title
        - slug
        - status
        - condition
        - productType
        - descriptionHtml
        - metaTitle
        - metaDescription
        - version
        - createdAt
        - updatedAt
        - createdBy
        - updatedBy
        - options
        - variants
        - warnings
      additionalProperties: false
    Problem:
      type: object
      properties:
        type:
          type: string
          pattern: ^urn:rfc:problem:[\s\S]{0,}\.[\s\S]{0,}$
        status:
          type: integer
        title:
          type: string
        code:
          type: string
          pattern: ^[\s\S]{0,}\.[\s\S]{0,}$
        params:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
        requestId:
          type: string
        errors:
          type: array
          items:
            type: object
            properties:
              location:
                type: string
              pointer:
                type: string
              code:
                type: string
              params:
                type: object
                propertyNames:
                  type: string
                additionalProperties: {}
            required:
              - location
              - pointer
              - code
            additionalProperties: false
      required:
        - type
        - status
        - code
        - requestId
      additionalProperties: false
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: >-
        An organization's API key, sent on every call as `Authorization: Bearer
        <key>`. A person of the organization creates it in the app, in
        **Settings › API and connections › API keys**.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.