> For the complete documentation index, see [llms.txt](https://api-docs.urbanpiper.com/downstream/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://api-docs.urbanpiper.com/downstream/api/readme.md).

# Introduction

The UrbanPiper API is organized around [REST](https://en.wikipedia.org/wiki/Representational_state_transfer). This document lists the API endpoints that can be consumed by a merchant’s backend system like a PoS or ERP system.

While referencing these docs, please keep the following points in mind:

1. Please drop in a mail to our <pos.support@urbanpiper.com> or reach out to your point-of-contact at UrbanPiper to flag any issue(s).
2. We try our best to keep this doc in sync with our development pace, but at times a gap creeps in. Should you believe something is missing in the doc, feel free to let us know.
3. Request parameters that are <mark style="color:red;">`required`</mark> colour-coded with red. This doesn’t mean that the *non-required* parameters be ignored. If the <mark style="color:red;">`required`</mark> parameters are not passed, the request will fail.
4. During the development & testing phase, you should ideally be using the *sandbox* environment. The request base URL is [https://pos-int.urbanpiper.com](https://pos-int.urbanpiper.com/).
5. The API requests should be made with the [HTTPS](https://en.wikipedia.org/wiki/HTTPS) scheme.
6. A maximum of **3 retry attempts** to our system are allowed if an error is received for any API requests.
7. It is expected any third party system consuming the webhook data must send the response considering the below timeout constraint put on our system. If we don't get the response within the below timeout constraint, the orders will fail to reach the POS system.

{% hint style="info" %}
Please note the below with respect to connection and read timeouts for all the webhook requests:

**Connection Timeout - 3 seconds**.\
**Read Timeout - 5 seconds**.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://api-docs.urbanpiper.com/downstream/api/readme.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
