> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xtremepush.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List promotions

> Used to get summary information of promotions synced from connected bonus engines.

<br>
The List promotions endpoint can be used to obtain a list of promotions that are stored in Xtremepush from a sync with any bonus engine connected to your project. Promotion sync is done once an hour so there should be no need to query the `list/promotion` endpoint more frequently than that.

You can query with no parameters to see the full list of promotions and all related engines.

## OpenAPI

````json POST /list/promotion
{
  "openapi": "3.1.0",
  "info": {
    "title": "external-api",
    "version": "1"
  },
  "servers": [
    {
      "url": "https://api.eu.xtremepush.com/api/external"
    }
  ],
  "paths": {
    "/list/promotion": {
      "post": {
        "summary": "List promotions",
        "description": "Used to get summary information of promotions synced from connected bonus engines.\n\n<br>\nThe List promotions endpoint can be used to obtain a list of promotions that are stored in Xtremepush from a sync with any bonus engine connected to your project. Promotion sync is done once an hour so there should be no need to query the `list/promotion` endpoint more frequently than that.\n\nYou can query with no parameters to see the full list of promotions and all related engines.",
        "operationId": "promotion-list",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "apptoken"
                ],
                "properties": {
                  "apptoken": {
                    "type": "string",
                    "description": "Your App token"
                  },
                  "limit": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Used with *offset* for pagination"
                  },
                  "offset": {
                    "type": "integer",
                    "format": "int32",
                    "description": "Used with *limit* for pagination"
                  }
                }
              },
              "examples": {
                "Pull promotions for a specific engine": {
                  "value": {
                    "apptoken": "YOUR-APP-TOKEN",
                    "condition": [
                      [
                        "external_system",
                        "=",
                        "tglab"
                      ]
                    ],
                    "select": [
                      "id",
                      "name",
                      "external_id",
                      "external_system"
                    ],
                    "limit": "1",
                    "offset": "2"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "200",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": "true",
                      "default": "true"
                    },
                    "code": {
                      "type": "integer",
                      "example": "200",
                      "default": "0"
                    },
                    "data": {
                      "type": "array",
                      "items": {
                        "type": "object"
                      }
                    }
                  }
                },
                "examples": {
                  "Result": {
                    "value": {
                      "success": "true",
                      "code": "200"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "400",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "success": {
                      "type": "boolean",
                      "example": "false",
                      "default": "true"
                    },
                    "code": {
                      "type": "integer",
                      "example": "400",
                      "default": "0"
                    },
                    "message": {
                      "type": "string",
                      "example": "General error information"
                    },
                    "errors": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "text": {
                            "type": "array",
                            "items": {
                              "type": "string"
                            }
                          }
                        }
                      }
                    }
                  }
                },
                "examples": {
                  "Result": {
                    "value": {
                      "success": "false",
                      "code": "400",
                      "message": "General error information"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "Promotion Methods"
        ]
      }
    }
  }
}
````

