Marketfront API
The Marketfront API provides RESTful endpoints for building custom food ordering experiences. Use these APIs for complete control over the user interface and ordering workflow.
API Structure
The API is organized into two categories:
Core APIs
Essential endpoints required for any integration:
| Endpoint | Purpose | Notes |
|---|---|---|
| Stores | Find stores by location with optional search | Get available stores primarily based on location |
| CatalogSets | Get store menus | Cache aggressively (immutable) |
| Orders | Validate and place orders | No caching |
| Payments | Payment handling | See shared guide |
Helper APIs
Optional convenience endpoints that simplify common operations:
| Endpoint | Purpose |
|---|---|
| Cart Helpers | Stateless cart add/remove/update |
Simpler Alternative
Most integrations don't need full API access. The Marketfront SDK provides a complete, pre-built ordering experience that can be integrated in minutes.
Base URLs
| Environment | Base URL |
|---|---|
| Sandbox | https://api-sandbox.gett-tech.com/v1 |
| Production | https://api.gett-tech.com/v1 |
Authentication
All requests require your API key in the Authorization header:
curl -X POST https://api.gett-tech.com/v1/stores \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"location": {"address": "123 Main St, NYC"}}'
Caching Strategy
| Data Type | Strategy | Why |
|---|---|---|
| Store results | Never cache | Store status changes constantly |
| CatalogSets | Cache aggressively | Immutable - use ETags for validation |
| Validation tokens | Expire in 15 min | Security and price accuracy |
Documentation
Getting Started
- Getting Started — Setup and first API call
Core
- Stores — Find stores
- CatalogSets — Browse menus
- Orders — Checkout flow
Helpers
- Cart Management — Stateless cart operations
Shared Guides
- Payments — Payment options and Card-on-File
Reference
- API Reference — Auto-generated endpoint documentation
- Types — Data model definitions
HTTP Status Codes
| Status | Description |
|---|---|
200 OK | Request succeeded |
304 Not Modified | Cached data is still valid (CatalogSets) |
400 Bad Request | Invalid request parameters |
401 Unauthorized | Missing or invalid authentication |
404 Not Found | Resource not found |
409 Conflict | Conflict (e.g., token already used) |
429 Too Many Requests | Rate limit exceeded |
500 Internal Server Error | Server error |
Rate Limits
| Endpoint Type | Limit |
|---|---|
| Read operations | 1000/min |
| Write operations | 100/min |
| Stores | 60/min |
When rate limited, you'll receive a 429 response with a Retry-After header.