Listing Management API Reference For HyperLocal 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/hyperlocal

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

This call creates new hyperlocal 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

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.

Output:
☰ Toggle

Response Headers

Status Codes

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

Payload Model

 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
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
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.

POST /listings/v3/hyperlocal/update

Summary:
Update product listings in Flipkart’s HyperLocal 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

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.

Output:
☰ Toggle

Response Headers

Status Codes

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

Payload Model

 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
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
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.

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

Output:
☰ Toggle

Response Headers

Status Codes

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

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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
{
    "available": {
        "sku": {
            "listing_id": "<flipkart-system-identifier>",
            "product_id": "<flipkart-product-identifier>",
            "product_title": "<product_title>",
            "product_url": "<product_url>",
            "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
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
1
2
3
4
5
6
7
8
9
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>"
        }
    ]
}

Response field descriptions

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

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.

Output:
☰ Toggle

Response Headers

Status Codes

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

Payload Model

 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
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
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.

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

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.

Output:
☰ Toggle

Response Headers

Status Codes

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

Payload Model

 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
 2
 3
 4
 5
 6
 7
 8
 9
10
{
    "errors": [
        {
            "severity": "ERROR|WARNING",
            "code": "<code>",
            "description": "<description>",
            "path": "<path-to-failed-json-node>"
        }
    ]
}
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.