33 lines
1.2 KiB
Markdown
33 lines
1.2 KiB
Markdown
# 17 Promotions API 1.0.0 Audit
|
|
|
|
Source checked: "Uber Eats Marketplace Promotions API (1.0.0)" shared by you.
|
|
|
|
## Implemented Now (Dedicated Wrapper Namespace)
|
|
|
|
- Create Promotion:
|
|
- `POST /api/v1/uber/delivery-promotions/stores/{storeId}`
|
|
- upstream: `/v1/delivery/stores/{store_id}/promotion`
|
|
- Revoke Promotion:
|
|
- `POST /api/v1/uber/delivery-promotions/{promotionId}/revoke`
|
|
- upstream: `/v1/delivery/promotions/{promotion_id}/revoke`
|
|
- Get Promotion:
|
|
- `GET /api/v1/uber/delivery-promotions/{promotionId}`
|
|
- upstream: `/v1/delivery/promotions/{promotion_id}`
|
|
- Get Promotions:
|
|
- `GET /api/v1/uber/delivery-promotions/stores/{storeId}`
|
|
- upstream: `/v1/delivery/stores/{store_id}/promotions`
|
|
|
|
## Validation Added
|
|
|
|
- `user_group` enum: `ALL_CUSTOMERS | FIRST_TIME_CUSTOMERS`
|
|
- promotions list `state` enum:
|
|
- `active`, `pending`, `completed`, `revoked`, `expired`, `deleted`
|
|
- required top-level create payload fields enforced
|
|
|
|
## Pending
|
|
|
|
- Strict schema unions for each promotion type object variant:
|
|
- flat_off, free_item, bogo, percent_off, menu_item, free_delivery
|
|
- typed handling for `time_range` object query form when full exact query contract is shared
|
|
|