# 🦁 Tanzania Tourism API
A production-ready RESTful API delivering comprehensive data on Tanzania's most spectacular tourist destinations — from the sweeping Serengeti plains to the coral gardens of Zanzibar.
Built for deployment on **APILayer** or any API marketplace.
---
## Features
- **15 richly detailed destinations** with descriptions, images, activities, entry fees, and GPS coordinates
- **Full-text search** across names, descriptions, and tags
- **Geo-proximity search** — find destinations near any GPS coordinate
- **Filter by type**: national parks, beaches, mountains, historical sites, cities, islands
- **Filter by region** — Arusha, Zanzibar, Mara, Kilimanjaro, etc.
- **Popularity rankings** and curated featured destinations
- **Random discovery** endpoint
- **API key authentication** with admin key management
- **Rate limiting** (100 req/min on free tier)
- **CORS enabled** for browser access
- **Full Swagger/OpenAPI docs** at `/docs`
---
## Quick Start
### 1. Clone and install
```bash
git clone
github.com
cd tanzania-tourism-api
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
```
### 2. Configure environment
```bash
cp .env.example .env
# Edit .env and set ADMIN_PASSWORD and SECRET_KEY
```
### 3. Run the server
```bash
python run.py
# Server starts at
localhost
```
### 4. Explore the docs
Open **
localhost for interactive Swagger UI.
---
## Authentication
All endpoints (except `/` and `/api-keys/validate`) require an API key.
**Demo key:** `demo-key-tanzania-tourism-2024`
Pass it as:
- Header: `X-API-Key: your-api-key`
- Query param: `?api_key=your-api-key`
---
## API Endpoints
### Root
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/` | API info and endpoint directory |
### Destinations
| Method | Endpoint | Description |
|--------|----------|-------------|
| GE …