Upload CLF measurements
Submit measurements in CLF3 format.
Uploading measurements from CLF3 file
POST https://opencellid.org/measure/uploadClfSend a multipart/form-data request containing your API key and a measurement file.
Form fields
| Name | Type | Required | Description |
|---|---|---|---|
key | string | Yes | Your OpenCellID API key. |
datafile | file | Yes | Measurement file, up to 2 MB. Split larger uploads into multiple files. |
File contents
CLF version 3.0 file (to be sent in datafile parameter) of the following format:
//mcc+mnc;cellid;lac;rnc;lat;lon;ratio;data;rfu
26202;07812;03101;0;45.894375;31.51312;0;City Square;0Columns are semicolon separated and have the following strict order:
mcc+mnc, lac, cellid, rnc, lat, lon, ratio, data, rfu
There is no header in CLF3 files. Therefore the columns must be provided in the order given above and all values must be there.
You can add comments to CLF3 files.
Comments in CLF3 start with // and extend to the end of the physical line.
Supported columns:
| Name | Type | Required | Description |
|---|---|---|---|
mcc+mnc | string | Yes | Mobile country code and mobile network code |
lac | integer | Yes | Local area code |
cellid | integer | Yes | Cell tower id |
rnc | integer | Yes | Radio network controller; provide "0", (zero, without the quotation marks) or an empty string in case there is no rnc value. |
lat | double | Yes | Latitude |
lon | double | Yes | Longitude |
ratio | integer | No | Accuracy of the cell coordinates. Use -1 for the exact position. |
data | string | No | Short cell description |
rfu | string | No | Not really used; use 0 if unknown |
Example request
Save your measurements as measurements.clf and replace YOUR_API_KEY with your key.
curl "https://opencellid.org/measure/uploadClf" \
-F "key=YOUR_API_KEY" \
-F "[email protected];type=text/plain"Response
HTTP 200:
0,OKTime needed for processing newly uploaded measurements
After uploading new measurements to the OpenCellID community servers they are added to our waiting queues and processed in the background. We aim the real-time processing, but maximum time depends on traffic on OpenCellID servers. Current throughput of our servers is around 15000 measurements per second.
Measurements are processed in 3 steps:
- parsing and filtering raw data
- updating measurement statistics and storing measurements in the database
- updating existing cell towers information or adding new cell towers to the database
Our waiting queues for cell towers and for measurements are independent, so you can see your measurements in the OpenCellID database but related cell towers might be not updated yet. This means that if you upload a measurement of a cell tower that was not in the database before and the waiting queue for cell towers has some data to process, you have to expect some times (usually few minutes) until the queue delivers the newly uploaded cell tower information.
