Takealot Update an offer API

The Update an offer API from Takealot — 2 operation(s) for update an offer.

OpenAPI Specification

takealot-update-an-offer-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  title: Takealot Seller Create a batch Update an offer API
  description: The Takealot Seller API for Offers represents the initial phase of the Seller API. With this you will be able to manage your offers in an automated and scalable way.  Please ensure you have read the documentation for the Seller API, found at https://sellerportal.takealot.com/api, for an introduction and important information before attempting to use this API.  Please note that none of these requests are authorised if you are trying via the "try it out" button.  You will need to generate an API key and attach an Authorization header to each request in order to be correctly authorised against our API. This information can be found on the Seller Portal - https://seller.takealot.com/api/seller-api.  The below documentation describes each endpoint of the API.
  version: '2.0'
host: seller-api.takealot.com
basePath: /
schemes:
- https
consumes:
- application/json
produces:
- application/json
- text/csv
- application/pdf
- text/html
tags:
- name: Update an offer
paths:
  /v2/offers/offer/{identifier}:
    patch:
      operationId: update_offer_by_identifier_v2
      description: Update an offer by providing an identifier for the offer
      summary: Update An Offer (v2)
      parameters:
      - name: identifier
        in: path
        type: string
        description: Either Takealot's Offer ID, the Barcode or your SKU for the offer. Prepend with ID, BARCODE, or SKU. e.g. ID234, BARCODE3223, SKUDF22. Defaults to Offer ID.
        required: true
      - name: offer
        in: body
        required: true
        schema:
          $ref: '#/definitions/V2OfferSingleUpdate'
      tags:
      - Update an offer
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/V2OfferUpdateSuccessResponse'
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
        '400':
          description: Bad Request Error
          schema:
            type: object
            properties:
              message:
                type: string
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
        '403':
          description: Forbidden Error
          schema:
            type: object
            properties:
              message:
                type: string
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
        '404':
          description: Not Found Error
          schema:
            type: object
            properties:
              message:
                type: string
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
        '500':
          description: Server Error
          schema:
            type: object
            properties:
              message:
                type: string
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
  /v2/offers/offer:
    patch:
      operationId: update_offer_by_identifier_query_v2
      description: Update an offer by providing an identifier for the offer
      summary: Update An Offer (v2)
      parameters:
      - name: identifier
        in: query
        type: string
        description: Either Takealot's Offer ID, the Barcode or your SKU for the offer. Prepend with ID, BARCODE, or SKU. e.g. ID234, BARCODE3223, SKUDF22. Defaults to Offer ID.
        required: true
      - name: offer
        in: body
        required: true
        schema:
          $ref: '#/definitions/V2OfferSingleUpdate'
      tags:
      - Update an offer
      responses:
        '200':
          description: OK
          schema:
            $ref: '#/definitions/V2OfferUpdateSuccessResponse'
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
        '400':
          description: Bad Request Error
          schema:
            type: object
            properties:
              message:
                type: string
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
        '403':
          description: Forbidden Error
          schema:
            type: object
            properties:
              message:
                type: string
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
        '404':
          description: Not Found Error
          schema:
            type: object
            properties:
              message:
                type: string
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
        '500':
          description: Server Error
          schema:
            type: object
            properties:
              message:
                type: string
          headers:
            x-RateLimit-Limit:
              type: integer
            x-RateLimit-Remaining:
              type: integer
            x-RateLimit-Reset:
              type: string
definitions:
  V2OfferUpdateSuccessResponse:
    type: object
    properties:
      offer:
        $ref: '#/definitions/V2Offer'
      validation_errors:
        type: array
        items:
          type: object
          properties:
            message:
              type: string
            code:
              type: string
  V2StockCover:
    type: object
    description: please note that 0 means there is no stock and hence no cover. -1 means there have been no sales units in the past 30 days hence stock cover cannot be determined.
    properties:
      warehouse_id:
        type: integer
      stock_cover_days:
        type: integer
  V2SalesUnits:
    type: object
    properties:
      warehouse_id:
        type: integer
      sales_units:
        type: integer
  V2OfferSingleUpdate:
    type: object
    properties:
      sku:
        type: string
        description: The unique SKU of the offer. Please send us a unique sku whose length is less than 256 characters.
        maxLength: 255
      selling_price:
        type: integer
        description: The price at which the offer will sell for on Takealot (promotion prices will be prioitised). Please ensure you supply us with a positive whole number.
      rrp:
        type: integer
        description: The original price of the offer. Please ensure you supply us with a positive whole number.
      leadtime_days:
        type: integer
        description: The leadtime days of the offer. You can remove leadtime days from your offer by sending through -1.
      leadtime_stock:
        type: array
        description: The leadtime stock of the offer. Please ensure that the merchant_warehouse_id is correct, found at https://seller.takealot.com/api/seller-api/offers and send a positive whole number for the quantity.
        items:
          type: object
          properties:
            merchant_warehouse_id:
              type: integer
            quantity:
              type: integer
      status_action:
        type: string
        description: This allows you to set the status of the offer to 'Disabled by Seller' (by sending through Disable) or 'Buyable' or 'Not Buyable' (by sending through Re-enable), depending on what rules are satisfied.
        enum:
        - Disable
        - Re-enable
  V2Offer:
    type: object
    properties:
      tsin_id:
        type: integer
      offer_id:
        type: integer
      sku:
        type: string
      barcode:
        type: string
      product_label_number:
        type: string
      selling_price:
        type: integer
      rrp:
        type: integer
      leadtime_days:
        type: integer
      leadtime_stock:
        type: array
        items:
          $ref: '#/definitions/V2OfferLeadtimeStock'
      status:
        type: string
      title:
        type: string
      offer_url:
        type: string
      stock_cover:
        type: array
        items:
          $ref: '#/definitions/V2StockCover'
      sales_units:
        type: array
        items:
          $ref: '#/definitions/V2SalesUnits'
      discount:
        type: string
      discount_shown:
        type: boolean
      storage_fee_eligible:
        type: boolean
      date_created:
        type: string
      stock_at_takealot_total:
        type: integer
      total_excess_takealot_stock:
        type: integer
      stock_at_takealot:
        type: array
        items:
          $ref: '#/definitions/V2OfferWarehouseStock'
      stock_on_way:
        type: array
        items:
          $ref: '#/definitions/V2OfferWarehouseStock'
      total_stock_on_way:
        type: integer
      total_stock_cover:
        type: integer
      catalogue_quality_score:
        type: integer
  V2OfferWarehouseStock:
    type: object
    properties:
      warehouse:
        type: object
        properties:
          warehouse_id:
            type: integer
          name:
            type: string
      quantity_available:
        type: integer
  V2OfferLeadtimeStock:
    type: object
    properties:
      merchant_warehouse:
        type: object
        properties:
          warehouse_id:
            type: integer
          name:
            type: string
      quantity_available:
        type: integer