Skip to main content

Instacart Connect APIs

You can use the Instacart Connect APIs to add Instacart capabilities to your branded e-commerce site. These REST-based APIs use predictable, resource-oriented URLs, and standard HTTP methods, response codes, and authentication.

For more information about authenticating and making your first API call, see Get an access token.

Servers

When you sign up for Instacart Connect, you are assigned two servers: one for development and one for production. You can verify the status of the servers on the Status page. You need to sign in to view this page.

Authentication

The Connect APIs use OAuth 2.0 to authenticate requests and authorize access to resources.

For more information, see Authentication.

Secure communication

For enhanced data privacy and security, all Instacart Connect API communications use HTTPS. When making a request, be sure to specify https in the URL, along with the domain of your Instacart server and your desired endpoint.

The following example shows how to structure your request URL:

https://<instacart_domain>/v2/<endpoint>

If you specify http instead of https in the URL, the request fails.

Request headers

HTTP request headers provide contextual information about your API request. For example, you can use headers to specify your preferred response format or provide a secure string for request authentication. Some headers and values are required, while others are optional or required only under certain conditions. For more information, see Request headers.

Rate limiting

Instacart Connect implements rate limits on the number of requests per second for security purposes. The rate limits are set at a level that supports the volume of legitimate requests while restricting the potential for denial of service attacks. Instacart Connect monitors request rates to ensure that rate limits remain effective.

If your site receives a 429 Too many requests error, the number of requests per second has exceeded the rate limit threshold. Try again later. If your site repeatedly receives 429 errors, contact your Instacart representative to discuss your options.

Example languages

The endpoint topics include sample requests in the following languages:

  • cURL
  • Java
  • Python
  • Go

If you need examples in another language, discuss your needs with an Instacart Connect representative.

Data formats

Instacart Connect supports various data types as defined in the OpenAPI Specification.

Integer data

Unless otherwise stated, all integer fields support the int64 format. To ensure that your application can successfully process integer data, you should always interpret integer generally to represent any non-fractional, non-decimal number.

String data

Unless otherwise stated, all string fields use UTF-8 encoding and do not enforce any length limits.

Backward compatibility

As the Instacart Connect product evolves and improves, we may make changes to the APIs to take advantage of new capabilities and improvements. All changes made to APIs maintain backward compatibility. Any new fields are optional and can be ignored if you want the APIs to continue to function as is.

Deprecation policy

From time to time, the Instacart Connect team deprecates fields, endpoints, services, or other items. We will announce the deprecation in the changelog and mark the item in the documentation. Deprecated items remain supported for a minimum of six months but might be removed in the future.