# Menu Push

Now that you have a detailed understanding of the components of the menu lets understand how you can push one with all the components to the aggregator. There are two approaches to get the menu pushed to the aggregators through our system:

1. Use our menu API to push the menu from your system to our system and then *publish* the menu from Atlas to the applicable aggregators.
2. Configuring the menu directly through Atlas and then publishing the same through it to the aggregators.

As you would be able to understand, the first way is a better approach in pushing the menu. However, this too can be implemented in two ways based on your choice:

* Pass only the bare minimum requirements of the menu to our system through API. This would not include the attributes used for beautification of the menu but will only include the elements which are indispensable. The beautification part can be done through Atlas and then the entire menu can be published from there.
* Consume all the attributes of the menu and send the menu in all completeness through the API. The publish can then be done from Atlas to all the aggregators. Please note, this might require you to develop new features on your side as some of the attributes might not be present in your system.

Once the menu is successfully pushed through the menu API, it will be processed asynchronously in our system. The result of the processing of the menu will be available through the menu push callback.

A second way is a manual approach and the control of the menu will be directly from Atlas. This could be an approach where you cannot prioritise a menu integration immediately but at the same time have merchants waiting to go live through the integration.

The details for the API is present in the [API document](/downstream/api/endpoints/menu/add-update-menu.md) which you can refer for implementation. While you start, do put the status of this API in the Gamma dashboard to *In-Progress* and change it to *To-be-verified* once the same is tested and implemented on your side.

#### Menu Push API

![Menu Push Feature Update in Gamma](/files/R6CDWj3IdQ6aD9tdDRgY)

#### Menu Push Callback

![Menu Push Callback Feature Update in Gamma](/files/wXvbegEmmTOKGafxxsQ0)


---

# Agent Instructions: 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:

```
GET https://api-docs.urbanpiper.com/downstream/menu/menu-push.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
