Managing Availability#

API Reference

The Rappi API enables you to configure the availability of your menu items and your stores, by using the items resource.

The following sections guide you through the process of configuring these options for your integration.

Item Availability#

Configure the availability of your menu items and disable them when they are out of stock, to prevent incoming orders that contain unavailable products.

The Rappi API enables you to configure availability by:

  • Item SKU: This is the SKU you provided for the item to the Rappi when uploading to the menu.
  • Item ID: This is the identifier that Rappi provided you when uploading to the menu.

Setting Availability by SKU#

API Reference

Use the PUT availability/stores/items endpoint to configure the availability of your items by Item SKU.

To configure the availability of your items by Item SKU:

Make a PUT request to the following URL, and add a JSON to the body of the request with the following objects.

URL: https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/token

{COUNTRY_DOMAIN}: This is your Rappi Country Domain. See the list of Country Domains.

This is an example of the JSON in the body of the request:

[
   {
      "store_integration_id":"999",
      "items":{
         "turn_on":[
            "1111",
            "2222",
            "3333"
         ],
         "turn_off":[
            "5555"
         ]
      }
   }
]

Note

The values from this JSON object are not real data. Ensure to replace them with your own data when making API requests. You can add more items to the turn_on and turn_off JSON objects separated by a comma. If you only want to turn on or turn off items in your request, remove the other object from your JSON accordingly.

The system retrieves a JSON response with the confirmation message Items successfully updated.

Setting Availability by Rappi ID#

API Reference

Use the PUT availability/stores/items/rappi endpoint to configure the availability of your items by Item ID.

To configure the availability of your items by Item ID:

Make a PUT request to the following URL, and add a JSON to the body of the request with the following objects.

URL: https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/availability/stores/items/rappi

{COUNTRY_DOMAIN}: This is your Rappi Country Domain. See the list of Country Domains.

This is an example of the JSON in the body of the request:

[
   {
      "store_integration_id":"999",
      "items":{
         "turn_on":[
            1111,
            2222,
            3333
         ],
         "turn_off":[
            5555
         ]
      }
   }
]

Note

The values from this JSON are not real data. Ensure to replace them with your data when making API requests. You can add more items to the turn_on and turn_off JSON objects separated by a comma. If you only want to turn on or turn off items in your request, remove the other object from your JSON accordingly.

The system returns a JSON response with the confirmation status message "Items successfully updated".

Store Availability (asynchronous)#

API Reference

Use the PUT availability/stores endpoint to configure the availability of your stores.

Important

This is an asynchronous method so the operation's result will not come in the response. Using this approach you can receive the updated store status through the STORE_CONNECTIVITY webhook. See Store Connectivity

If an instant response is needed the synchronous endpoint should be use. See Store Availability (synchronous)

To configure the availability of your stores:

Make a PUT request to the following URL, and add a JSON to the body of the request with the following objects.

URL: https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/availability/stores

{COUNTRY_DOMAIN}: This is your Rappi Country Domain. See the list of Country Domains.

This is an example of the JSON in the body of the request:

{
   "turn_on":[
      "2222"
   ],
   "turn_off":[
      "333",
      "444"
   ]
}

Notes

  • The values from this JSON are not real data. Ensure to replace them with your data when making API requests.
  • You can add more items to the turn_on and turn_off JSON objects separated by a comma.
  • If you only want to turn on or turn off items in your request, remove the other object from your JSON accordingly.

The system retrieves a JSON response with the confirmation message "Stores successfully updated".

Store Availability massive (asynchronous)#

API Reference

Use the PUT availability/stores/enable/massive endpoint to configure the availability of your stores.

Important

This is an asynchronous method so the operation's result will not come in the response. Using this approach you can receive the updated store status through the STORE_CONNECTIVITY webhook. See Store Connectivity

It is possible that a store cannot be turn on/off because it is suspended or not published in the Rappi app

To configure the availability of your stores:

Make a PUT request to the following URL, and add a JSON to the body of the request with the following objects.

URL: https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/availability/stores/enable/massive

{COUNTRY_DOMAIN}: This is your Rappi Country Domain. See the list of Country Domains.

This is an example of the JSON in the body of the request:

{
    "stores": [
        {
            "store_id": "12312",
            "is_enabled": true
        },
        {
            "store_id": "12312",
            "is_enabled": false
        }
    ]
}

Store Availability (synchronous)#

API Reference

Use the PUT availability/stores/enable endpoint to configure the availability of your stores.

Important

This is a synchronous method so the operation's result will come in the response.

Keep in mind that the max amount of stores is 300. If you need to send more stores use the async method. See Store Availability (asynchronous)

It is possible that a store cannot be turn on/off because it is suspended or not published in the Rappi app

To configure the availability of your stores:

Make a PUT request to the following URL, and add a JSON to the body of the request with the following objects.

URL: https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/availability/stores/enable

{COUNTRY_DOMAIN}: This is your Rappi Country Domain. See the list of Country Domains.

This is an example of the JSON in the body of the request:

{
    "stores": [
        {
            "store_id": "12312",
            "is_enabled": true
        },
        {
            "store_id": "12312",
            "is_enabled": false
        }
    ]
}
This is an example of the response:

{
    "results":[
        {
            "store_id": 90774,
            "is_enabled": false,
            "operation_result": false,
            "operation_result_type": "suspended",
            "suspended_reason": "suspended due cancelled orders",
            "suspended_at": "2022-04-11T20:23:00.00Z",
            "suspended_time": 60
        }
    ]
}