Listing Management API Reference For Flipkart Marketplace

The Listing API is used to create and manage product offerings on Flipkart. The Listing API has the following entities:

  • Listing: A listing is the fundamental sellable unit in the Flipkart Marketplace.
  • Package: A package refers to the physical attributes of the listing.
  • Location: Refers to your fulfillment locations. This is not applicable if you are planning to manage inventory via Flipkart.

POST /listings/v3

Summary:
Create product listings in Flipkart’s Marketplace.
Description:

This call creates new listings against the specified SKUs. If the SKU already exists in the system, then this call will overwrite the listing information associated with it. The rules for listing a product in the marketplace are subject to change, so it is recommended to handle errors explicitly. It is also recommended to call upon the validate API (to be announced) prior to making this call.

In addition to the authorization header, which is required for all Flipkart REST API calls, the following table includes additional headers required by this call:

Header Description Required Allowed Values
Content-Type The MIME type of the body of the request. Must be JSON. Yes application/json; charset=utf-8
Input:
☰ Toggle

Payload Model

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
{
    "<sku>": {
        "product_id": "<product-id>",
        "price": {
            "mrp": 0,
            "selling_price": 0,
            "currency": "INR"
        },
        "tax": {
            "hsn": "<harmonized-system-nomenclature>",
            "tax_code" : "<tax-code to determine goods>"
        },
        "listing_status": "ACTIVE|INACTIVE",
        "shipping_fees": {
            "local": 0,
            "zonal": 0,
            "national": 0,
            "currency": "INR"
        },
        "fulfillment_profile": "NON_FBF|FBF_LITE|FBF|FBF_AND_FBF_LITE|FBF_AND_NON_FBF",
        "fulfillment": {
            "dispatch_sla": 1,
            "shipping_provider": "FLIPKART|SELLER|FLIPKART_SELLER",
            "procurement_type": "REGULAR|EXPRESS|INTERNATIONAL|MADE_TO_ORDER|DOMESTIC"
        },
        "packages": [
            {
                "name": "<package-identifier>",
                "dimensions": {
                    "length": 1,
                    "breadth": 1,
                    "height": 1
                },
                "weight": 1,
                "description": "",
                "handling": {
                    "fragile": true
                },
                "notional_value": {
                    "amount": 1,
                    "unit": "PERCENTAGE|<CURRENCY>"
                }
            }
        ],
        "locations": [
            {
                "id": "<location-id>",
                "status": "ENABLED|DISABLED",
                "inventory": 0
            }
        ],
        "address_label": {
            "manufacturer_details": [
                "<address_of_manufacturer>"
            ],
            "importer_details": [
                "<address_of_importer>"
            ],
            "packer_details": [
                "<address_of_packer>"
            ],
            "countries_of_origin": [
                "<iso_alpha2_code_of_country_of_origin>"
            ]
        },
        "dating_label": {
            "mfg_date": "<Manufacturing date of the product in linux EPOCH (Seconds)>",
            "shelf_life": "<Shelf life of the product in Seconds>"
        }
    }
}

Request field descriptions

The payload is a map of SKU identifiers to their corresponding CreateListingRequest. Max batch size allowed is “10”. The fields of the CreateListingRequest are described in the table below.

Field Type Occurrence Description
product_id String Mandatory This is the product’s identifier in the Flipkart Marketplace. Length Range -> 13 to 16 characters.
price.mrp Non-negative Integer Mandatory The maximum retail price for the product
price.sellingPrice Non-negative Integer Mandatory Your selling price for the product
tax.hsn String Mandatory The Harmonized System Nomenclature for the product used to determine applicable tax rate
tax.tax_code String Mandatory Flipkart’s tax code which decides the goods and services tax for the listing. Each tax_code internally maps to a Goods Services Tax (GST). Eg, tax_code GST_0 maps to 0% tax and GST_APPAREL maps to GST of apparels according to the final cart value. All tax-codes are available at MyListings page.
listing_status Enumeration Mandatory Controls the listing’s visibility in the marketplace. Values can be ACTIVE, INACTIVE.
shipping_fees.local Non-negative Integer Conditional Delivery charge you want charge a buyer in the same city for listings which are not Flipkart Assured
shipping_fees.zonal Non-negative Integer Conditional Delivery charge you want charge a buyer outside your zone for listings which are not Flipkart Assured
shipping_fees.national Non-negative Integer Conditional Delivery charge you want charge a buyer outside your zone for listings which are not Flipkart Assured
fulfillment_profile Enumeration Mandatory Fulfillment method for the listing
fulfillment.dispatch_sla None-negative Integer Conditional Time required to keep the product ready for dispatch
fulfillment.shipping_provider Enumeration Mandatory Information on who will ship the item to the customer
fulfillment.procurement_type Enumeration Mandatory Information on how the inventory is procured by the seller to fulfill an order
packages Array Conditional The physical package configuration of the lot.
packages[].name String Mandatory Your identifier for the package. Max length: 64
packages[].dimensions Dimension Conditional The dimension of the package
packages[].dimensions.length Non-negative Decimal Mandatory The length of the package in centimeters.
packages[].dimensions.breadth Non-negative Decimal Mandatory The breadth of the package in centimeters.
packages[].dimensions.height Non-negative Decimal Mandatory The height of the package in centimeters.
packages[].weight Non-negative Decimal Conditional The weight of the package. It is mandatory to specify it in case dimensions are defined.
packages[].description String Conditional The description of the package. It can be used to display additional information to the customer on the product page. Max length: 4000
packages[].handling Handling Conditional Handling information to be transmitted to the configured logistics provider.
packages[].handling.fragile Boolean Conditional Signals that the package contains fragile items.
packages[].notional_value NotionalValue Conditional The part-value of the package. It is mandatory to define it if the lot has multiple packages.
packages[].notional_value.amount Non-negative Integer Mandatory The value amount.
packages[].notional_value.unit Enumeration Mandatory The unit of the amount.
locations Array Mandatory Your selling locations for this listing.
locations[].id String Mandatory The location ID obtained via the Onboarding API.
locations[].status Enumeration Mandatory Controls the fulfillment of the product at this location. If disabled, then orders will not be fulfilled from this location.
locations[].inventory Non-negative Integer Mandatory The number of items you have in stock.
address_label.manufacturer_details Array Mandatory Name and address of the manufacturer
address_label.importer_details Array Conditional Name and address of the importer if the product is being imported. Mandatory if country of origin is not (IN)India.
address_label.packer_details Array Mandatory Where manufacturer is not the packer, name and address of packer
address_label.countries_of_origin Array Mandatory ISO-2 code of the Country of Origin or manufacturing or country of assembly in case of imported products (Eg: IN for India, US for United States Of America)
dating_label.mfg_date Positive Integer Conditional Date in EPOCH (seconds) on which the product was manufactured or prepacked or imported. For products where day is not available, please put the manufacturing date as 1st of the month. Eg, 01/01/2018 converted to EPOCH (1514745000) for a product manufactured in Jan 2018.
dating_label.shelf_life Positive Integer Conditional Duration (in seconds) from the date of manufacturing beyond which the product shall not have the quality attributes normally expected by the consumers and the commodity should not be regarded as marketable. Maximum allowed value is 155520000 seconds (60 months)
Output:
☰ Toggle

Response Headers

Header Meaning
Content-Type application/json; charset=utf-8

Status Codes

This call may return the HTTP status codes defined in the table below.

Status Interpretation
200 Success. Individual SKUs may have failed. The status field has to be tested to determine the actual result.
400 Bad Request
500 Internal Server Error

Payload Model

  1. 200 OK
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
{
    "sku": {
        "status": "success|failure|warning",
        "errors": [
            {
                "severity": "ERROR|WARNING",
                "code": "<code>",
                "description": "<description>"
            }
        ],
        "attribute_errors": [
            {
                "severity": "ERROR|WARNING",
                "code": "<code>",
                "description": "<description>",
                "attribute": "<attribute>",
                "path": "<path-to-attribute>"
            }
        ]
    }
}
  1. 400 Bad Request
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
  1. 500 Bad Request
1
2
3
4
5
6
7
8
9
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>"
        }
    ]
}

Response field descriptions

The response is a map of SKU identifiers to their corresponding CreateListingResponse objects. The fields of the CreateListingResponse are defined in the table below.

Field Type Occurrence Description
status Enumeration Mandatory Indicates the status of the request.
errors Array Conditional Indicates errors encountered while processing the request, if any.
errors[].severity Enumeration Mandatory The severity of the error. Warnings may require no further action.
errors[].code Integer Mandatory The error code.
errors[].description String Mandatory The error description.
attribute_errors Array Conditional Indicates validation errors tied to a specified request attribute.
attribute_errors[].severity Enumeration Mandatory The severity of the error. Warnings may require no further action.
attribute_errors[].code Integer Mandatory The error code.
attribute_errors[].description String Mandatory The error description.
attribute_errors[].path String Mandatory The JSON path to the attribute.

POST /listings/v3/update

Summary:
Update product listings in Flipkart’s Marketplace.
Description:

This call updates listings against the specified SKUs. If the SKU doesn’t exist in the system, then an error will be returned against the SKU. The values that the listing attributes can take can change with time and selling constructs. It is recommended to explicitly handle errors and warnings returned by this API.

In addition to the authorization header, which is required for all Flipkart REST API calls, the following table includes additional headers required by this call:

Header Description Required Allowed Values
Content-Type The MIME type of the body of the request. Must be JSON. Yes application/json; charset=utf-8
Input:
☰ Toggle

Payload Model

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
{
    "<sku>": {
        "product_id": "<product-id>",
        "price": {
            "mrp": 0,
            "selling_price": 0,
            "currency": "INR"
        },
        "tax": {
            "hsn": "<harmonized-system-nomenclature>",
            "tax_code" : "<tax-code to determine goods-service-tax>"
        },
        "listing_status": "ACTIVE|INACTIVE",
        "shipping_fees": {
            "local": 0,
            "zonal": 0,
            "national": 0,
            "currency": "INR"
        },
        "fulfillment_profile": "NON_FBF|FBF_LITE|FBF|FBF_AND_FBF_LITE|FBF_AND_NON_FBF",
        "fulfillment": {
            "dispatch_sla": 1,
            "shipping_provider": "FLIPKART|SELLER|FLIPKART_SELLER",
            "procurement_type": "REGULAR|EXPRESS|INTERNATIONAL|MADE_TO_ORDER|DOMESTIC"
        },
        "packages": [
            {
                "id": "<flipkart-system-id>",
                "name": "<package-identifier>",
                "dimensions": {
                    "length": 1,
                    "breadth": 1,
                    "height": 1
                },
                "weight": 1,
                "description": "",
                "handling": {
                    "fragile": true
                },
                "notional_value": {
                    "amount": 1,
                    "unit": "PERCENTAGE|<CURRENCY>"
                }
            }
        ],
        "locations": [
            {
                "id": "<location-id>",
                "status": "ENABLED|DISABLED",
                "inventory": 0
            }
        ],
        "address_label": {
            "manufacturer_details": [
                "<address_of_manufacturer>"
            ],
            "importer_details": [
                "<address_of_importer>"
            ],
            "packer_details": [
                "<address_of_packer>"
            ],
            "countries_of_origin": [
                "<iso_alpha2_code_of_country_of_origin>"
            ]
        },
        "dating_label": {
            "mfg_date": "<Manufacturing date of the product in linux EPOCH (Seconds)>",
            "shelf_life": "<Shelf life of the product in Seconds>"
        },
        "archived_status": "ARCHIVED|NONE"
    }
}

Request field descriptions

The payload is a map of SKU identifiers to their corresponding UpdateListingRequest. Max batch size allowed is “10”. The fields of the UpdateListingRequest are described in the table below.

Field Type Occurrence Description
product_id String Mandatory This is the product’s identifier in the Flipkart Marketplace. Length Range -> 13 to 16 characters.
price.mrp Non-negative Integer Mandatory The maximum retail price for the product
price.sellingPrice Positive Integer Mandatory Your selling price for the product
tax.hsn String Mandatory The Harmonized System Nomenclature for the product used to determine applicable tax rate
tax.tax_code String Mandatory Flipkart’s tax code which decides the goods and services tax for the listing. Each tax_code internally maps to a Goods Services Tax (GST). Eg, tax_code GST_0 maps to 0% tax and GST_APPAREL maps to GST of apparels according to the final cart value. All tax-codes are available at MyListings page.
listing_status Enumeration Mandatory Controls the listing’s visibility in the marketplace. Values can be ACTIVE, INACTIVE.
shipping_fees.local Non-negative Integer Conditional Delivery charge you want charge a buyer in the same city for listings which are not Flipkart Assured
shipping_fees.zonal Non-negative Integer Conditional Delivery charge you want charge a buyer outside your zone for listings which are not Flipkart Assured
shipping_fees.national Non-negative Integer Conditional Delivery charge you want charge a buyer outside your zone for listings which are not Flipkart Assured
fulfillment_profile Enumeration Mandatory Fulfillment method for the listing
fulfillment.dispatch_sla None-negative Integer Conditional Time required to keep the product ready for dispatch
fulfillment.shipping_provider Enumeration Mandatory Information on who will ship the item to the customer
fulfillment.procurement_type Enumeration Mandatory Information on how the inventory is procured by the seller to fulfill an order
packages Array Conditional The physical package configuration of the lot.
packages[].id String Mandatory Flipkart system identifier for the package.
packages[].name String Mandatory Your identifier for the package. Max length: 64
packages[].dimensions Dimension Conditional The dimension of the package
packages[].dimensions.length Non-negative Decimal Mandatory The length of the package in centimeters.
packages[].dimensions.breadth Non-negative Decimal Mandatory The breadth of the package in centimeters.
packages[].dimensions.height Non-negative Decimal Mandatory The height of the package in centimeters.
packages[].weight Non-negative Decimal Conditional The weight of the package. It is mandatory to specify it in case dimensions are defined.
packages[].description String Conditional The description of the package. It can be used to display additional information to the customer on the product page. Max length: 4000
packages[].handling Handling Conditional Handling information to be transmitted to the configured logistics provider.
packages[].handling.fragile Boolean Conditional Signals that the package contains fragile items.
packages[].notional_value NotionalValue Conditional The part-value of the package. It is mandatory to define it if the lot has multiple packages.
packages[].notional_value.amount Non-negative Integer Mandatory The value amount.
packages[].notional_value.unit Enumeration Mandatory The unit of the amount.
locations Array Mandatory Your selling locations for this listing.
locations[].id String Mandatory The location ID obtained via the Onboarding API.
locations[].status Enumeration Mandatory Controls the fulfillment of the product at this location. If disabled, then orders will not be fulfilled from this location.
locations[].inventory Non-negative Integer Mandatory The available inventory at this location.
address_label.manufacturer_details Array Mandatory Name and address of the manufacturer
address_label.importer_details Array Conditional Name and address of the importer if the product is being imported. Mandatory if country of origin is not (IN)India.
address_label.packer_details Array Mandatory Where manufacturer is not the packer, name and address of the packer
address_label.countries_of_origin Array Mandatory ISO-2 code of the Country of Origin or manufacturing or country of assembly in case of imported products (Eg: IN for India, US for United States Of America)
dating_label.mfg_date Positive Integer Conditional Date in EPOCH (seconds) on which the product was manufactured or prepacked or imported. For products where day is not available, please put the manufacturing date as 1st of the month. Eg, 01/01/2018 converted to EPOCH (1514745000) for a product manufactured in Jan 2018.
dating_label.shelf_life Positive Integer Conditional Duration (in seconds) from the date of manufacturing beyond which the product shall not have the quality attributes normally expected by the consumers and the commodity should not be regarded as marketable. Maximum allowed value is 155520000 seconds (60 months)
archived_status Enumeration Optional To Archive listing, value -> ARCHIVED or NONE
Output:
☰ Toggle

Response Headers

Header Meaning
Content-Type application/json; charset=utf-8

Status Codes

This call may return the HTTP status codes defined in the table below.

Status Interpretation
200 Success. Individual SKUs may have failed. The status field has to be tested to determine the actual result.
400 Bad Request
500 Internal Server Error

Payload Model

  1. 200 OK
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
{
    "sku": {
        "status": "success|failure|warning",
        "errors": [
            {
                "severity": "ERROR|WARNING",
                "code": "<code>",
                "description": "<description>"
            }
        ],
        "attribute_errors": [
            {
                "severity": "ERROR|WARNING",
                "code": "<code>",
                "description": "<description>",
                "attribute": "<attribute>",
                "path": "<path-to-attribute>"
            }
        ]
    }
}
  1. 400 Bad Request
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
  1. 500 Bad Request
1
2
3
4
5
6
7
8
9
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>"
        }
    ]
}

Response field descriptions

The response is a map of SKU identifiers to their corresponding UpdateListingResponse objects. The fields of the UpdateListingResponse are defined in the table below.

Field Type Occurrence Description
status Enumeration Mandatory Indicates the status of the request.
errors Array Conditional Indicates errors encountered while processing the request, if any.
errors[].severity Enumeration Mandatory The severity of the error. Warnings may require no further action.
errors[].code Integer Mandatory The error code.
errors[].description String Mandatory The error description.
attribute_errors Array Conditional Indicates validation errors tied to a specified request attribute.
attribute_errors[].severity Enumeration Mandatory The severity of the error. Warnings may require no further action.
attribute_errors[].code Integer Mandatory The error code.
attribute_errors[].description String Mandatory The error description.
attribute_errors[].path String Mandatory The JSON path to the attribute.

GET /listings/v3/{sku-ids}

Summary:
Retrieve the information listed against the provided SKU Ids.
Description:

This call fetches the information listed against the specified SKUs. If the SKU does not exist in the system, then it will be identified in the unavailable field in the response.

The authorization header is mandatory to access this API along with all other Flipkart Seller APIs.

Input:
☰ Toggle

Request parameter descriptions

Parameter Type Occurrence Description
sku-ids String Mandatory Comma-separated list of SKU Ids. Maximum per call: 10.
Output:
☰ Toggle

Response Headers

Header Meaning
Content-Type application/json; charset=utf-8

Status Codes

This call may return the HTTP status codes defined in the table below.

Status Interpretation
200 Success.
400 Bad Request
500 Internal Server Error

Payload Model

  1. 200 OK
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
{
    "available": {
        "sku": {
            "listing_id": "<flipkart-system-identifier>",
            "product_id": "<flipkart-product-identifier>",
            "price": {
                "mrp": 0,
                "flipkart_selling_price": 0,
                "currency": "INR"
            },
            "tax": {
                "hsn": "<hsn-code>",
                "tax_code" : "<tax-code>"
            },
            "listing_status": "ACTIVE|INACTIVE",
            "shipping_fees": {
                "local": 0,
                "zonal": 0,
                "national": 0,
                "currency": "INR"
            },
            "marketplace": "FLIPKART",
            "fulfillment_profile": "NON_FBF|FBF_LITE|FBF|FBF_AND_FBF_LITE|FBF_AND_NON_FBF",
            "fulfillment": {
                "dispatch_sla": 1,
                "shipping_provider": "FLIPKART|SELLER|FLIPKART_SELLER",
                "forbid_shipping": "NATIONAL|ZONAL|LOCAL",
                "procurement_type": "REGULAR|EXPRESS|INTERNATIONAL|MADE_TO_ORDER|DOMESTIC"
            },
            "packages": [
                {
                    "id": "<flipkart-system-identifier>",
                    "name": "<name>",
                    "dimensions": {
                        "length": 1,
                        "breadth": 1,
                        "height": 1
                    },
                    "weight": 1,
                    "description": "<description>",
                    "handling": {
                        "fragile": true
                    },
                    "notional_value": {
                        "amount": 1,
                        "unit": "PERCENTAGE|<CURRENCY>"
                    }
                }
            ],
            "locations": [
                {
                    "id": "<location-id>",
                    "status": "ENABLED|DISABLED",
                    "inventory": 0
                }
            ],
            "address_label": {
                "manufacturer_details": [
                    "<address_of_manufacturer>"
                ],
                "importer_details": [
                    "<address_of_importer>"
                ],
                "packer_details": [
                    "<address_of_packer>"
                ],
                "countries_of_origin": [
                    "<iso_alpha2_code_of_country_of_origin>"
                ]
            },
            "dating_label": {
                "mfg_date": "<Manufacturing date of the product in linux EPOCH (Seconds)>",
                "shelf_life": "<Shelf life of the product in Seconds>",
                "expiry_date": "<Expiry date of the product in linux EPOCH (Seconds)>"
            },
            "archived_status": "ARCHIVED|NONE"
        },
        "orders_to_be_fulfilled": 0
    },
    "unavailable": [
        "<sku1>",
        "<sku2>"
    ],
    "invalid": [
        "<sku>"
    ]
}
  1. 400 Bad Request
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
  1. 500 Bad Request
1
2
3
4
5
6
7
8
9
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>"
        }
    ]
}

Response field descriptions

Field Type Occurrence Description
available Map Conditional Holds the listing information for the requested SKU Ids.
unavailable List Conditional The list of SKU Ids for which listing information could not be retrieved.
invalid List Conditional The list of SKU Ids which are invalid according to the contracts’ specifications.

POST /listings/v3/update/price

Summary:
Update product listings’ price.
Description:

This call updates listing’s price against the specified SKUs. If the SKU doesn’t exist in the system, then an error will be returned against the SKU. The values that the listing attributes can take can change with time and selling constructs. It is recommended to explicitly handle errors and warnings returned by this API.

In addition to the authorization header, which is required for all Flipkart REST API calls, the following table includes additional headers required by this call:

Header Description Required Allowed Values
Content-Type The MIME type of the body of the request. Must be JSON. Yes application/json; charset=utf-8
Input:
☰ Toggle

Payload Model

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "<sku>": {
        "product_id": "<product_id>",
        "price": {
            "mrp": 0,
            "selling_price": 0,
            "currency": "INR"
        }
    }
}

Request field descriptions

The payload is a map of SKU identifiers to their corresponding update price request. Max batch size allowed is “10”. The fields of the update price request are described in the table below.

Field Type Occurrence Description
product_id String Mandatory This is the product’s identifier in the Flipkart Marketplace. Length Range -> 13 to 16 characters.
price.mrp Non-negative Integer Mandatory The maximum retail price for the product
price.sellingPrice Positive Integer Mandatory Your selling price for the product
price.currency Enumeration Mandatory Currency represents the symbol of country currency
Output:
☰ Toggle

Response Headers

Header Meaning
Content-Type application/json; charset=utf-8

Status Codes

This call may return the HTTP status codes defined in the table below.

Status Interpretation
200 Success. IndividualSKUs may have failed. The status field has to be tested to determine the actual result.
400 Bad Request
500 Internal ServerError

Payload Model

  1. 200 OK
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
{
    "sku": {
        "status": "success|failure|warning",
        "errors": [
            {
                "severity": "ERROR|WARNING",
                "code": "<code>",
                "description": "<description>"
            }
        ],
        "attribute_errors": [
            {
                "severity": "ERROR|WARNING",
                "code": "<code>",
                "description": "<description>",
                "attribute": "<attribute>",
                "path": "<path-to-attribute>"
            }
        ]
    }
}
  1. 400 Bad Request
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
  1. 500 Bad Request
1
2
3
4
5
6
7
8
9
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>"
        }
    ]
}

Response field descriptions

The response is a map of SKU identifiers to their corresponding update listing response objects. The fields of the update listing response are defined in the table below.

Field Type Occurrence Description
status Enumeration Mandatory Indicates the status of the request.
errors Array Conditional Indicates errors encountered while processing the request, if any.
errors[].severity Enumeration Mandatory The severity of the error. Warnings may require no further action.
errors[].code Integer Mandatory The error code.
errors[].description String Mandatory The error description.
attribute_errors Array Conditional Indicates validation errors tied to a specified request attribute.
attribute_errors[].severity Enumeration Mandatory The severity of the error. Warnings may require no further action.
attribute_errors[].code Integer Mandatory The error code.
attribute_errors[].description String Mandatory The error description.
attribute_errors[].path String Mandatory The JSON path to the attribute.

POST /listings/v3/update/inventory

Summary:
Update product listing’s inventory.
Description:

This call updates listing’s inventory against the specified SKUs. If the SKU doesn’t exist in the system, then an error will be returned against the SKU. The values that the listing attributes can take can change with time and selling constructs. It is recommended to explicitly handle errors and warnings returned by this API.

In addition to the authorization header, which is required for all Flipkart REST API calls, the following table includes additional headers required by this call:

Header Description Required Allowed Values
Content-Type The MIME type of the body of the request. Must be JSON. Yes application/json; charset=utf-8
Input:
☰ Toggle

Payload Model

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
{
    "<sku>": {
        "product_id": "<product_id>",
        "locations": [
            {
                "id": "<location-id>",
                "inventory": 0
            }
        ]
    }
}

Request field descriptions

The payload is a map of SKU identifiers to their corresponding update inventory request. Max batch size allowed is “10”. The fields of the update inventory request are described in the table below.

Field Type Occurrence Description
product_id String Mandatory This is the product’s identifier in the Flipkart Marketplace. Length Range -> 13 to 16 characters.
locations Array Mandatory Your selling locations for this listing.
locations[].id String Mandatory The location ID obtained via the Onboarding API.
locations[].inventory Non-negative Integer Mandatory The available inventory at this location.
Output:
☰ Toggle

Response Headers

Header Meaning
Content-Type application/json; charset=utf-8

Status Codes

This call may return the HTTP status codes defined in the table below.

Status Interpretation
200 Success. IndividualSKUs may have failed. The status field has to be tested to determine the actual result.
400 Bad Request
500 Internal ServerError

Payload Model

  1. 200 OK
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
{
    "sku": {
        "status": "success|failure|warning",
        "errors": [
            {
                "severity": "ERROR|WARNING",
                "code": "<code>",
                "description": "<description>"
            }
        ],
        "attribute_errors": [
            {
                "severity": "ERROR|WARNING",
                "code": "<code>",
                "description": "<description>",
                "attribute": "<attribute>",
                "path": "<path-to-attribute>"
            }
        ]
    }
}
  1. 400 Bad Request
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
  1. 500 Bad Request
1
2
3
4
5
6
7
8
9
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>"
        }
    ]
}

Response field descriptions

The response is a map of SKU identifiers to their corresponding update listing response objects. The fields of the update listing response are defined in the table below.

Field Type Occurrence Description
status Enumeration Mandatory Indicates the status of the request.
errors Array Conditional Indicates errors encountered while processing the request, if any.
errors[].severity Enumeration Mandatory The severity of the error. Warnings may require no further action.
errors[].code Integer Mandatory The error code.
errors[].description String Mandatory The error description.
attribute_errors Array Conditional Indicates validation errors tied to a specified request attribute.
attribute_errors[].severity Enumeration Mandatory The severity of the error. Warnings may require no further action.
attribute_errors[].code Integer Mandatory The error code.
attribute_errors[].description String Mandatory The error description.
attribute_errors[].path String Mandatory The JSON path to the attribute.

POST /listings/v3/search

Summary:
Listing Search
Description:

It lets the seller/partner to fetch all of the seller’s listings along with FSN and SKU in a batch of 500.

Header Description Required Allowed Values
Content-Type The MIME type of the body of the request. Must be JSON. Yes application/json; charset=utf-8
Input:
☰ Toggle

Payload Model

1
2
3
4
5
6
{
   "filters": {
       "listing_status": "ACTIVE/INACTIVE"
   },
   "page_id": "encypted_page_id / null without double quotes"
}

Request field descriptions

Payload can contain listing_status and page_id. One can pass ACTIVE/INACTIVE in the listing_status or don’t pass the listing_status field for fetching all the listings. page_id can be null or next_page_id from previous response. Provide null as the page_id when retrieving the first page. For subsequent pages, use the next_page_id from the previous response as the page_id, but only if has_more field is true.

Output:
☰ Toggle

Response Headers

Header Meaning
Content-Type application/json; charset=utf-8

Status Codes

This call may return the HTTP status codes defined in the table below.

Status Interpretation
200 Success.
400 Bad Request
500 Internal ServerError

Payload Model

  1. 200 OK
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
   "next_page_id": "AAAASbmqpzzYL4xOFBusBgggUaR+KyCGVsSKW02qGQFVCzd6x8fCOroDJMTipWDrxRx9dU9qPyyVTGCESOzm9P54QgvISrabWB9Zi7zTUl4ZF9xxYGVYOAo=",
   "has_more": true,
   "listings": [
       {
           "listing_id": "LSTIRNDHUFTRNDMZRWFENDU2H",
           "product_id": "IRNDHUFTRNDMZRWF",
           "sku_id": "HD 1920/29"
       },
       {
           "listing_id": "LSTECKDAWKDZWHZBGCSCH4AVV",
           "product_id": "ECKDAWKDZWHZBGCS",
           "sku_id": "TS W 18 G"
       },
       {
           "listing_id": "LSTEKTDYCZCMDJQQHNCD3G7JS",
           "product_id": "EKTDYCZCMDJQQHNC",
           "sku_id": "IJ 4608"
       },
       {
           "listing_id": "LSTHSTDFYSPAQZNCHCUG8AMBD",
           "product_id": "HSTDFYSPAQZNCHCU",
           "sku_id": "MIT 864"
       },
       {
           "listing_id": "LSTHBLD34U3HE3WVDHSIDQCZ0",
           "product_id": "HBLD34U3HE3WVDHS",
           "sku_id": "NLGB1"
       }
   ]
}
  1. 400 Bad Request
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
  1. 500 Bad Request
1
2
3
4
5
6
7
8
9
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>"
        }
    ]
}

Response field descriptions

The response is listing details and next page details.

Field Type Occurrence Description
next_page_id String Mandatory Contains the encrypted next page id.
has_more Boolean Mandatory Shows whether next page contains more listing or not
listings Object[] Mandatory This contains the listings details
listings.listing_id String Mandatory Listing id
listings.product_id String Mandatory Product id
listings.sku_id String Mandatory SKU Id