quantaroute-geocoding 1.0.2__tar.gz → 1.0.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of quantaroute-geocoding might be problematic. Click here for more details.
- {quantaroute_geocoding-1.0.2/quantaroute_geocoding.egg-info → quantaroute_geocoding-1.0.4}/PKG-INFO +164 -10
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/README.md +161 -7
- quantaroute_geocoding-1.0.4/examples/README.md +85 -0
- quantaroute_geocoding-1.0.4/examples/basic_usage.py +158 -0
- quantaroute_geocoding-1.0.4/examples/batch_location_lookup.py +193 -0
- quantaroute_geocoding-1.0.4/examples/location_lookup_demo.py +214 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/pyproject.toml +3 -3
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding/__init__.py +3 -1
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding/cli.py +138 -2
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding/client.py +112 -1
- quantaroute_geocoding-1.0.4/quantaroute_geocoding/location_lookup.py +293 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4/quantaroute_geocoding.egg-info}/PKG-INFO +164 -10
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding.egg-info/SOURCES.txt +5 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/setup.py +2 -2
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/LICENSE +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/MANIFEST.in +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding/csv_processor.py +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding/exceptions.py +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding/offline.py +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding.egg-info/dependency_links.txt +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding.egg-info/entry_points.txt +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding.egg-info/requires.txt +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/quantaroute_geocoding.egg-info/top_level.txt +0 -0
- {quantaroute_geocoding-1.0.2 → quantaroute_geocoding-1.0.4}/setup.cfg +0 -0
{quantaroute_geocoding-1.0.2/quantaroute_geocoding.egg-info → quantaroute_geocoding-1.0.4}/PKG-INFO
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: quantaroute-geocoding
|
|
3
|
-
Version: 1.0.
|
|
4
|
-
Summary: Python SDK for QuantaRoute Geocoding API with offline DigiPin processing
|
|
3
|
+
Version: 1.0.4
|
|
4
|
+
Summary: Revolutionary Python SDK for QuantaRoute Geocoding API with Location Lookup and offline DigiPin processing
|
|
5
5
|
Home-page: https://github.com/quantaroute/quantaroute-geocoding-python
|
|
6
6
|
Author: QuantaRoute
|
|
7
7
|
Author-email: QuantaRoute <support@quantaroute.com>
|
|
@@ -10,7 +10,7 @@ Project-URL: Homepage, https://quantaroute.com
|
|
|
10
10
|
Project-URL: Documentation, https://api.quantaroute.com/v1/digipin/docs
|
|
11
11
|
Project-URL: Repository, https://github.com/quantaroute/quantaroute-geocoding-python
|
|
12
12
|
Project-URL: Bug Tracker, https://github.com/quantaroute/quantaroute-geocoding-python/issues
|
|
13
|
-
Keywords: geocoding,digipin,gis,location,india,address,coordinates
|
|
13
|
+
Keywords: geocoding,digipin,gis,location,india,address,coordinates,administrative-boundaries,pincode,postal-lookup,location-intelligence
|
|
14
14
|
Classifier: Development Status :: 4 - Beta
|
|
15
15
|
Classifier: Intended Audience :: Developers
|
|
16
16
|
Classifier: License :: OSI Approved :: MIT License
|
|
@@ -44,10 +44,18 @@ Dynamic: requires-python
|
|
|
44
44
|
|
|
45
45
|
# QuantaRoute Geocoding Python SDK
|
|
46
46
|
|
|
47
|
-
A
|
|
47
|
+
A **revolutionary** Python library for geocoding addresses to DigiPin codes with **groundbreaking Location Lookup API** and offline processing capabilities.
|
|
48
48
|
|
|
49
|
-
## Features
|
|
49
|
+
## 🚀 Revolutionary Features
|
|
50
50
|
|
|
51
|
+
### 🎯 **NEW: Location Lookup API** - *Service that even government doesn't provide!*
|
|
52
|
+
- 🗺️ **Administrative Boundary Lookup**: Get state, division, locality, pincode from coordinates
|
|
53
|
+
- 📍 **36,000+ Postal Boundaries**: Complete coverage across India
|
|
54
|
+
- ⚡ **Sub-100ms Response**: Cached responses with database fallback
|
|
55
|
+
- 🎯 **Government-Level Precision**: Accuracy that official services don't offer
|
|
56
|
+
- 🔄 **Batch Processing**: Up to 100 locations per request
|
|
57
|
+
|
|
58
|
+
### 🌟 **Core Features**
|
|
51
59
|
- 🌐 **Online API Integration**: Full access to QuantaRoute Geocoding API
|
|
52
60
|
- 🔌 **Offline Processing**: Process coordinates ↔ DigiPin without internet
|
|
53
61
|
- 📊 **CSV Bulk Processing**: Handle large datasets efficiently
|
|
@@ -70,14 +78,39 @@ pip install digipin
|
|
|
70
78
|
|
|
71
79
|
## Quick Start
|
|
72
80
|
|
|
73
|
-
###
|
|
81
|
+
### 🚀 **NEW: Revolutionary Location Lookup API**
|
|
74
82
|
|
|
75
83
|
```python
|
|
76
|
-
from quantaroute_geocoding import QuantaRouteClient
|
|
84
|
+
from quantaroute_geocoding import QuantaRouteClient, LocationLookupClient
|
|
77
85
|
|
|
78
86
|
# Initialize client
|
|
79
87
|
client = QuantaRouteClient(api_key="your-api-key")
|
|
80
88
|
|
|
89
|
+
# 🚀 REVOLUTIONARY: Get administrative boundaries from coordinates
|
|
90
|
+
result = client.lookup_location_from_coordinates(28.6139, 77.2090)
|
|
91
|
+
print(f"Pincode: {result['pincode']}") # 110001
|
|
92
|
+
print(f"Office: {result['office_name']}") # New Delhi GPO
|
|
93
|
+
print(f"Division: {result['division']}") # New Delhi GPO
|
|
94
|
+
print(f"Circle: {result['circle']}") # Delhi
|
|
95
|
+
print(f"DigiPin: {result['digipin']}") # 39J-438-TJC7
|
|
96
|
+
print(f"Response Time: {result['response_time_ms']}ms") # <100ms
|
|
97
|
+
|
|
98
|
+
# 🚀 REVOLUTIONARY: Get boundaries from DigiPin
|
|
99
|
+
result = client.lookup_location_from_digipin("39J-438-TJC7")
|
|
100
|
+
print(f"Pincode: {result['administrative_info']['pincode']}")
|
|
101
|
+
print(f"State: {result['administrative_info']['state']}")
|
|
102
|
+
print(f"Division: {result['administrative_info']['division']}")
|
|
103
|
+
print(f"Locality: {result['administrative_info']['locality']}")
|
|
104
|
+
|
|
105
|
+
# 📊 Get live statistics (36,000+ boundaries)
|
|
106
|
+
stats = client.get_location_statistics()
|
|
107
|
+
print(f"Total Boundaries: {stats['total_boundaries']:,}")
|
|
108
|
+
print(f"Total States: {stats['total_states']}")
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### 🌟 **Traditional Geocoding API**
|
|
112
|
+
|
|
113
|
+
```python
|
|
81
114
|
# Geocode an address
|
|
82
115
|
result = client.geocode("India Gate, New Delhi, India")
|
|
83
116
|
print(f"DigiPin: {result['digipin']}")
|
|
@@ -141,9 +174,25 @@ result = processor_offline.process_coordinates_to_digipin_csv(
|
|
|
141
174
|
|
|
142
175
|
## Command Line Interface
|
|
143
176
|
|
|
144
|
-
The package includes a
|
|
177
|
+
The package includes a **revolutionary** CLI with Location Lookup capabilities:
|
|
145
178
|
|
|
146
|
-
###
|
|
179
|
+
### 🚀 **NEW: Revolutionary Location Lookup Commands**
|
|
180
|
+
|
|
181
|
+
```bash
|
|
182
|
+
# Get administrative boundaries from coordinates
|
|
183
|
+
quantaroute-geocode location-lookup 28.6139 77.2090 --api-key your-key
|
|
184
|
+
|
|
185
|
+
# Get boundaries from DigiPin
|
|
186
|
+
quantaroute-geocode location-from-digipin "39J-438-TJC7" --api-key your-key
|
|
187
|
+
|
|
188
|
+
# Get live statistics (36,000+ boundaries)
|
|
189
|
+
quantaroute-geocode location-stats --api-key your-key
|
|
190
|
+
|
|
191
|
+
# Batch location lookup from CSV (coming soon)
|
|
192
|
+
quantaroute-geocode location-lookup-csv coordinates.csv boundaries.csv --api-key your-key
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
### 🌟 **Traditional Geocoding Commands**
|
|
147
196
|
|
|
148
197
|
```bash
|
|
149
198
|
# Using API
|
|
@@ -215,6 +264,77 @@ digipin
|
|
|
215
264
|
39J-49J-4867
|
|
216
265
|
```
|
|
217
266
|
|
|
267
|
+
## 🚀 Revolutionary Location Lookup API
|
|
268
|
+
|
|
269
|
+
### Dedicated Location Lookup Client
|
|
270
|
+
|
|
271
|
+
```python
|
|
272
|
+
from quantaroute_geocoding import LocationLookupClient
|
|
273
|
+
|
|
274
|
+
# Initialize dedicated location client
|
|
275
|
+
location_client = LocationLookupClient(api_key="your-api-key")
|
|
276
|
+
|
|
277
|
+
# Single coordinate lookup
|
|
278
|
+
result = location_client.lookup_coordinates(28.6139, 77.2090)
|
|
279
|
+
print(f"📮 Pincode: {result['pincode']}")
|
|
280
|
+
print(f"🏢 Office: {result['office_name']}")
|
|
281
|
+
print(f"🏛️ Division: {result['division']}")
|
|
282
|
+
print(f"⚡ Response Time: {result['response_time_ms']}ms")
|
|
283
|
+
|
|
284
|
+
# DigiPin to boundaries
|
|
285
|
+
result = location_client.lookup_digipin("39J-438-TJC7")
|
|
286
|
+
print(f"Administrative boundaries: {result}")
|
|
287
|
+
|
|
288
|
+
# Batch processing (up to 100 locations)
|
|
289
|
+
locations = [
|
|
290
|
+
{"latitude": 28.6139, "longitude": 77.2090},
|
|
291
|
+
{"latitude": 19.0760, "longitude": 72.8777},
|
|
292
|
+
{"digipin": "39J-438-TJC7"}
|
|
293
|
+
]
|
|
294
|
+
results = location_client.batch_lookup(locations)
|
|
295
|
+
print(f"Processed {len(results['results'])} locations")
|
|
296
|
+
|
|
297
|
+
# Live statistics
|
|
298
|
+
stats = location_client.get_statistics()
|
|
299
|
+
print(f"🗺️ Total Boundaries: {stats['total_boundaries']:,}")
|
|
300
|
+
print(f"⚡ Cache Size: {stats['cache_size']}")
|
|
301
|
+
|
|
302
|
+
# Coverage information
|
|
303
|
+
coverage = location_client.get_coverage_info()
|
|
304
|
+
print(f"Service capabilities: {coverage}")
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
### Location Lookup Output Format
|
|
308
|
+
|
|
309
|
+
```json
|
|
310
|
+
{
|
|
311
|
+
"pincode": "110001",
|
|
312
|
+
"office_name": "New Delhi GPO",
|
|
313
|
+
"division": "New Delhi GPO",
|
|
314
|
+
"region": "",
|
|
315
|
+
"circle": "Delhi",
|
|
316
|
+
"coordinates": {
|
|
317
|
+
"latitude": 28.6139,
|
|
318
|
+
"longitude": 77.2090
|
|
319
|
+
},
|
|
320
|
+
"digipin": "39J-438-TJC7",
|
|
321
|
+
"cached": true,
|
|
322
|
+
"response_time_ms": 45
|
|
323
|
+
}
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
### Why This is Revolutionary
|
|
327
|
+
|
|
328
|
+
🎯 **Government-Level Precision**: Access to administrative boundaries that even government APIs don't provide at this level of detail and accessibility.
|
|
329
|
+
|
|
330
|
+
📍 **36,000+ Boundaries**: Complete coverage of Indian postal boundaries with sub-district level precision.
|
|
331
|
+
|
|
332
|
+
⚡ **Performance**: Sub-100ms cached responses, <500ms database queries.
|
|
333
|
+
|
|
334
|
+
🔄 **Batch Processing**: Process up to 100 locations in a single API call.
|
|
335
|
+
|
|
336
|
+
✨ **Unique Value**: The only service providing this level of administrative boundary lookup precision for India.
|
|
337
|
+
|
|
218
338
|
## Advanced Features
|
|
219
339
|
|
|
220
340
|
### Webhook Management
|
|
@@ -332,17 +452,51 @@ except APIError as e:
|
|
|
332
452
|
|
|
333
453
|
## API Limits
|
|
334
454
|
|
|
455
|
+
### Traditional Geocoding API
|
|
456
|
+
|
|
335
457
|
| Tier | Requests/Minute | Monthly Limit | Batch Size |
|
|
336
458
|
|------|----------------|---------------|------------|
|
|
337
459
|
| Free | 10 | 1,000 | 50 |
|
|
338
460
|
| Paid | 100 | 10,000 | 100 |
|
|
339
461
|
| Enterprise | 1,000 | Unlimited | 100 |
|
|
340
462
|
|
|
463
|
+
### 🚀 Revolutionary Location Lookup API
|
|
464
|
+
|
|
465
|
+
| Tier | Requests/Minute | Monthly Limit | Batch Size | Boundaries |
|
|
466
|
+
|------|----------------|---------------|------------|------------|
|
|
467
|
+
| Free | 20 | 2,000 | 50 | 36,000+ |
|
|
468
|
+
| Paid | 200 | 20,000 | 100 | 36,000+ |
|
|
469
|
+
| Enterprise | 2,000 | Unlimited | 100 | 36,000+ |
|
|
470
|
+
|
|
471
|
+
**Performance Guarantees:**
|
|
472
|
+
- ⚡ Cached responses: <100ms
|
|
473
|
+
- 🔍 Database queries: <500ms
|
|
474
|
+
- 📊 Batch processing: <50ms per location
|
|
475
|
+
- 🎯 99.9% uptime SLA (Enterprise)
|
|
476
|
+
|
|
341
477
|
## Support
|
|
342
478
|
|
|
343
479
|
- 📧 Email: support@quantaroute.com
|
|
344
480
|
- 🌐 Website: https://quantaroute.com
|
|
345
|
-
- 📖 API
|
|
481
|
+
- 📖 Traditional API Docs: https://api.quantaroute.com/v1/digipin/docs
|
|
482
|
+
- 🚀 **NEW: Location Lookup API**: https://api.quantaroute.com/v1/location
|
|
483
|
+
- 📊 **Live Statistics**: https://api.quantaroute.com/v1/location/stats
|
|
484
|
+
|
|
485
|
+
### 🚀 What Makes This Revolutionary?
|
|
486
|
+
|
|
487
|
+
**QuantaRoute's Location Lookup API is the first and only service to provide:**
|
|
488
|
+
|
|
489
|
+
✨ **Government-Level Precision**: Administrative boundary data that even government APIs don't provide at this level of detail and accessibility.
|
|
490
|
+
|
|
491
|
+
📍 **Complete Coverage**: 36,000+ postal boundaries across India with sub-district precision.
|
|
492
|
+
|
|
493
|
+
⚡ **Blazing Performance**: Sub-100ms cached responses, guaranteed <500ms database queries.
|
|
494
|
+
|
|
495
|
+
🎯 **Unique Value Proposition**: The only service providing this level of administrative boundary lookup precision for India.
|
|
496
|
+
|
|
497
|
+
🔄 **Developer-Friendly**: Simple APIs, comprehensive SDKs, and excellent documentation.
|
|
498
|
+
|
|
499
|
+
**Ready to revolutionize your location intelligence applications?**
|
|
346
500
|
|
|
347
501
|
## License
|
|
348
502
|
|
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
# QuantaRoute Geocoding Python SDK
|
|
2
2
|
|
|
3
|
-
A
|
|
3
|
+
A **revolutionary** Python library for geocoding addresses to DigiPin codes with **groundbreaking Location Lookup API** and offline processing capabilities.
|
|
4
4
|
|
|
5
|
-
## Features
|
|
5
|
+
## 🚀 Revolutionary Features
|
|
6
6
|
|
|
7
|
+
### 🎯 **NEW: Location Lookup API** - *Service that even government doesn't provide!*
|
|
8
|
+
- 🗺️ **Administrative Boundary Lookup**: Get state, division, locality, pincode from coordinates
|
|
9
|
+
- 📍 **36,000+ Postal Boundaries**: Complete coverage across India
|
|
10
|
+
- ⚡ **Sub-100ms Response**: Cached responses with database fallback
|
|
11
|
+
- 🎯 **Government-Level Precision**: Accuracy that official services don't offer
|
|
12
|
+
- 🔄 **Batch Processing**: Up to 100 locations per request
|
|
13
|
+
|
|
14
|
+
### 🌟 **Core Features**
|
|
7
15
|
- 🌐 **Online API Integration**: Full access to QuantaRoute Geocoding API
|
|
8
16
|
- 🔌 **Offline Processing**: Process coordinates ↔ DigiPin without internet
|
|
9
17
|
- 📊 **CSV Bulk Processing**: Handle large datasets efficiently
|
|
@@ -26,14 +34,39 @@ pip install digipin
|
|
|
26
34
|
|
|
27
35
|
## Quick Start
|
|
28
36
|
|
|
29
|
-
###
|
|
37
|
+
### 🚀 **NEW: Revolutionary Location Lookup API**
|
|
30
38
|
|
|
31
39
|
```python
|
|
32
|
-
from quantaroute_geocoding import QuantaRouteClient
|
|
40
|
+
from quantaroute_geocoding import QuantaRouteClient, LocationLookupClient
|
|
33
41
|
|
|
34
42
|
# Initialize client
|
|
35
43
|
client = QuantaRouteClient(api_key="your-api-key")
|
|
36
44
|
|
|
45
|
+
# 🚀 REVOLUTIONARY: Get administrative boundaries from coordinates
|
|
46
|
+
result = client.lookup_location_from_coordinates(28.6139, 77.2090)
|
|
47
|
+
print(f"Pincode: {result['pincode']}") # 110001
|
|
48
|
+
print(f"Office: {result['office_name']}") # New Delhi GPO
|
|
49
|
+
print(f"Division: {result['division']}") # New Delhi GPO
|
|
50
|
+
print(f"Circle: {result['circle']}") # Delhi
|
|
51
|
+
print(f"DigiPin: {result['digipin']}") # 39J-438-TJC7
|
|
52
|
+
print(f"Response Time: {result['response_time_ms']}ms") # <100ms
|
|
53
|
+
|
|
54
|
+
# 🚀 REVOLUTIONARY: Get boundaries from DigiPin
|
|
55
|
+
result = client.lookup_location_from_digipin("39J-438-TJC7")
|
|
56
|
+
print(f"Pincode: {result['administrative_info']['pincode']}")
|
|
57
|
+
print(f"State: {result['administrative_info']['state']}")
|
|
58
|
+
print(f"Division: {result['administrative_info']['division']}")
|
|
59
|
+
print(f"Locality: {result['administrative_info']['locality']}")
|
|
60
|
+
|
|
61
|
+
# 📊 Get live statistics (36,000+ boundaries)
|
|
62
|
+
stats = client.get_location_statistics()
|
|
63
|
+
print(f"Total Boundaries: {stats['total_boundaries']:,}")
|
|
64
|
+
print(f"Total States: {stats['total_states']}")
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### 🌟 **Traditional Geocoding API**
|
|
68
|
+
|
|
69
|
+
```python
|
|
37
70
|
# Geocode an address
|
|
38
71
|
result = client.geocode("India Gate, New Delhi, India")
|
|
39
72
|
print(f"DigiPin: {result['digipin']}")
|
|
@@ -97,9 +130,25 @@ result = processor_offline.process_coordinates_to_digipin_csv(
|
|
|
97
130
|
|
|
98
131
|
## Command Line Interface
|
|
99
132
|
|
|
100
|
-
The package includes a
|
|
133
|
+
The package includes a **revolutionary** CLI with Location Lookup capabilities:
|
|
101
134
|
|
|
102
|
-
###
|
|
135
|
+
### 🚀 **NEW: Revolutionary Location Lookup Commands**
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
# Get administrative boundaries from coordinates
|
|
139
|
+
quantaroute-geocode location-lookup 28.6139 77.2090 --api-key your-key
|
|
140
|
+
|
|
141
|
+
# Get boundaries from DigiPin
|
|
142
|
+
quantaroute-geocode location-from-digipin "39J-438-TJC7" --api-key your-key
|
|
143
|
+
|
|
144
|
+
# Get live statistics (36,000+ boundaries)
|
|
145
|
+
quantaroute-geocode location-stats --api-key your-key
|
|
146
|
+
|
|
147
|
+
# Batch location lookup from CSV (coming soon)
|
|
148
|
+
quantaroute-geocode location-lookup-csv coordinates.csv boundaries.csv --api-key your-key
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### 🌟 **Traditional Geocoding Commands**
|
|
103
152
|
|
|
104
153
|
```bash
|
|
105
154
|
# Using API
|
|
@@ -171,6 +220,77 @@ digipin
|
|
|
171
220
|
39J-49J-4867
|
|
172
221
|
```
|
|
173
222
|
|
|
223
|
+
## 🚀 Revolutionary Location Lookup API
|
|
224
|
+
|
|
225
|
+
### Dedicated Location Lookup Client
|
|
226
|
+
|
|
227
|
+
```python
|
|
228
|
+
from quantaroute_geocoding import LocationLookupClient
|
|
229
|
+
|
|
230
|
+
# Initialize dedicated location client
|
|
231
|
+
location_client = LocationLookupClient(api_key="your-api-key")
|
|
232
|
+
|
|
233
|
+
# Single coordinate lookup
|
|
234
|
+
result = location_client.lookup_coordinates(28.6139, 77.2090)
|
|
235
|
+
print(f"📮 Pincode: {result['pincode']}")
|
|
236
|
+
print(f"🏢 Office: {result['office_name']}")
|
|
237
|
+
print(f"🏛️ Division: {result['division']}")
|
|
238
|
+
print(f"⚡ Response Time: {result['response_time_ms']}ms")
|
|
239
|
+
|
|
240
|
+
# DigiPin to boundaries
|
|
241
|
+
result = location_client.lookup_digipin("39J-438-TJC7")
|
|
242
|
+
print(f"Administrative boundaries: {result}")
|
|
243
|
+
|
|
244
|
+
# Batch processing (up to 100 locations)
|
|
245
|
+
locations = [
|
|
246
|
+
{"latitude": 28.6139, "longitude": 77.2090},
|
|
247
|
+
{"latitude": 19.0760, "longitude": 72.8777},
|
|
248
|
+
{"digipin": "39J-438-TJC7"}
|
|
249
|
+
]
|
|
250
|
+
results = location_client.batch_lookup(locations)
|
|
251
|
+
print(f"Processed {len(results['results'])} locations")
|
|
252
|
+
|
|
253
|
+
# Live statistics
|
|
254
|
+
stats = location_client.get_statistics()
|
|
255
|
+
print(f"🗺️ Total Boundaries: {stats['total_boundaries']:,}")
|
|
256
|
+
print(f"⚡ Cache Size: {stats['cache_size']}")
|
|
257
|
+
|
|
258
|
+
# Coverage information
|
|
259
|
+
coverage = location_client.get_coverage_info()
|
|
260
|
+
print(f"Service capabilities: {coverage}")
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
### Location Lookup Output Format
|
|
264
|
+
|
|
265
|
+
```json
|
|
266
|
+
{
|
|
267
|
+
"pincode": "110001",
|
|
268
|
+
"office_name": "New Delhi GPO",
|
|
269
|
+
"division": "New Delhi GPO",
|
|
270
|
+
"region": "",
|
|
271
|
+
"circle": "Delhi",
|
|
272
|
+
"coordinates": {
|
|
273
|
+
"latitude": 28.6139,
|
|
274
|
+
"longitude": 77.2090
|
|
275
|
+
},
|
|
276
|
+
"digipin": "39J-438-TJC7",
|
|
277
|
+
"cached": true,
|
|
278
|
+
"response_time_ms": 45
|
|
279
|
+
}
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
### Why This is Revolutionary
|
|
283
|
+
|
|
284
|
+
🎯 **Government-Level Precision**: Access to administrative boundaries that even government APIs don't provide at this level of detail and accessibility.
|
|
285
|
+
|
|
286
|
+
📍 **36,000+ Boundaries**: Complete coverage of Indian postal boundaries with sub-district level precision.
|
|
287
|
+
|
|
288
|
+
⚡ **Performance**: Sub-100ms cached responses, <500ms database queries.
|
|
289
|
+
|
|
290
|
+
🔄 **Batch Processing**: Process up to 100 locations in a single API call.
|
|
291
|
+
|
|
292
|
+
✨ **Unique Value**: The only service providing this level of administrative boundary lookup precision for India.
|
|
293
|
+
|
|
174
294
|
## Advanced Features
|
|
175
295
|
|
|
176
296
|
### Webhook Management
|
|
@@ -288,17 +408,51 @@ except APIError as e:
|
|
|
288
408
|
|
|
289
409
|
## API Limits
|
|
290
410
|
|
|
411
|
+
### Traditional Geocoding API
|
|
412
|
+
|
|
291
413
|
| Tier | Requests/Minute | Monthly Limit | Batch Size |
|
|
292
414
|
|------|----------------|---------------|------------|
|
|
293
415
|
| Free | 10 | 1,000 | 50 |
|
|
294
416
|
| Paid | 100 | 10,000 | 100 |
|
|
295
417
|
| Enterprise | 1,000 | Unlimited | 100 |
|
|
296
418
|
|
|
419
|
+
### 🚀 Revolutionary Location Lookup API
|
|
420
|
+
|
|
421
|
+
| Tier | Requests/Minute | Monthly Limit | Batch Size | Boundaries |
|
|
422
|
+
|------|----------------|---------------|------------|------------|
|
|
423
|
+
| Free | 20 | 2,000 | 50 | 36,000+ |
|
|
424
|
+
| Paid | 200 | 20,000 | 100 | 36,000+ |
|
|
425
|
+
| Enterprise | 2,000 | Unlimited | 100 | 36,000+ |
|
|
426
|
+
|
|
427
|
+
**Performance Guarantees:**
|
|
428
|
+
- ⚡ Cached responses: <100ms
|
|
429
|
+
- 🔍 Database queries: <500ms
|
|
430
|
+
- 📊 Batch processing: <50ms per location
|
|
431
|
+
- 🎯 99.9% uptime SLA (Enterprise)
|
|
432
|
+
|
|
297
433
|
## Support
|
|
298
434
|
|
|
299
435
|
- 📧 Email: support@quantaroute.com
|
|
300
436
|
- 🌐 Website: https://quantaroute.com
|
|
301
|
-
- 📖 API
|
|
437
|
+
- 📖 Traditional API Docs: https://api.quantaroute.com/v1/digipin/docs
|
|
438
|
+
- 🚀 **NEW: Location Lookup API**: https://api.quantaroute.com/v1/location
|
|
439
|
+
- 📊 **Live Statistics**: https://api.quantaroute.com/v1/location/stats
|
|
440
|
+
|
|
441
|
+
### 🚀 What Makes This Revolutionary?
|
|
442
|
+
|
|
443
|
+
**QuantaRoute's Location Lookup API is the first and only service to provide:**
|
|
444
|
+
|
|
445
|
+
✨ **Government-Level Precision**: Administrative boundary data that even government APIs don't provide at this level of detail and accessibility.
|
|
446
|
+
|
|
447
|
+
📍 **Complete Coverage**: 36,000+ postal boundaries across India with sub-district precision.
|
|
448
|
+
|
|
449
|
+
⚡ **Blazing Performance**: Sub-100ms cached responses, guaranteed <500ms database queries.
|
|
450
|
+
|
|
451
|
+
🎯 **Unique Value Proposition**: The only service providing this level of administrative boundary lookup precision for India.
|
|
452
|
+
|
|
453
|
+
🔄 **Developer-Friendly**: Simple APIs, comprehensive SDKs, and excellent documentation.
|
|
454
|
+
|
|
455
|
+
**Ready to revolutionize your location intelligence applications?**
|
|
302
456
|
|
|
303
457
|
## License
|
|
304
458
|
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
# QuantaRoute Geocoding Examples
|
|
2
|
+
|
|
3
|
+
This directory contains examples demonstrating the revolutionary capabilities of the QuantaRoute Geocoding Python SDK.
|
|
4
|
+
|
|
5
|
+
## 🚀 Revolutionary Location Lookup Examples
|
|
6
|
+
|
|
7
|
+
### `location_lookup_demo.py`
|
|
8
|
+
**Comprehensive demonstration of the groundbreaking Location Lookup API**
|
|
9
|
+
|
|
10
|
+
Features demonstrated:
|
|
11
|
+
- Single coordinate to administrative boundaries
|
|
12
|
+
- DigiPin to administrative boundaries
|
|
13
|
+
- Batch processing multiple locations
|
|
14
|
+
- Live statistics and performance metrics
|
|
15
|
+
- Service coverage information
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
python location_lookup_demo.py
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### `batch_location_lookup.py`
|
|
22
|
+
**Efficient batch processing of coordinates to administrative boundaries**
|
|
23
|
+
|
|
24
|
+
Features:
|
|
25
|
+
- CSV file processing
|
|
26
|
+
- Batch API calls (up to 100 locations)
|
|
27
|
+
- Progress tracking and error handling
|
|
28
|
+
- Sample data generation
|
|
29
|
+
- Performance metrics
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
python batch_location_lookup.py
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## 🌟 Traditional Geocoding Examples
|
|
36
|
+
|
|
37
|
+
*Coming soon - examples for traditional geocoding, DigiPin conversion, and CSV processing*
|
|
38
|
+
|
|
39
|
+
## Setup
|
|
40
|
+
|
|
41
|
+
1. Install the package:
|
|
42
|
+
```bash
|
|
43
|
+
pip install quantaroute-geocoding
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
2. Set your API key:
|
|
47
|
+
```bash
|
|
48
|
+
export QUANTAROUTE_API_KEY="your-api-key"
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
3. Run any example:
|
|
52
|
+
```bash
|
|
53
|
+
python location_lookup_demo.py
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## 🎯 What Makes These Examples Revolutionary?
|
|
57
|
+
|
|
58
|
+
✨ **Government-Level Precision**: See administrative boundary lookup that even government services don't provide
|
|
59
|
+
|
|
60
|
+
📍 **36,000+ Boundaries**: Experience complete coverage across India
|
|
61
|
+
|
|
62
|
+
⚡ **Sub-100ms Performance**: Witness blazing-fast cached responses
|
|
63
|
+
|
|
64
|
+
🔄 **Batch Processing**: Process hundreds of locations efficiently
|
|
65
|
+
|
|
66
|
+
🎯 **Unique Value**: Access precision that no other service offers
|
|
67
|
+
|
|
68
|
+
## Sample Output
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
🚀 REVOLUTIONARY LOCATION LOOKUP RESULT
|
|
72
|
+
==================================================
|
|
73
|
+
📍 Coordinates: 28.6139, 77.209
|
|
74
|
+
📮 Pincode: 110001
|
|
75
|
+
🏢 Office Name: New Delhi GPO
|
|
76
|
+
🏛️ Division: New Delhi GPO
|
|
77
|
+
🌍 Region:
|
|
78
|
+
⭕ Circle: Delhi
|
|
79
|
+
🗺️ DigiPin: 39J-438-TJC7
|
|
80
|
+
⚡ Response Time: 45ms (cached)
|
|
81
|
+
|
|
82
|
+
✨ This precision is not available from government services!
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**Ready to revolutionize your location intelligence applications?**
|