CLI for interacting with and preparing data for the Tilesets API
Project description
tilesets-cli
CLI for interacting with and preparing data for Mapbox Tilesets API.
Contributing
CONTRIBUTING.md includes information about release processes & running tests. :raised_hands:
Installation
pip install mapbox-tilesets
Requirements
- Python >= 3.6 (can be installed via virtualenv)
- Recommended: virtualenv / virtualenvwrapper
Mapbox Access Tokens
In order to use the tilesets endpoints, you need a Mapbox Access Token with tilesets:write
and tilesets:read
scopes. This is a secret token, so do not share it publicly!
You can either pass the Mapbox access token to each command with the --token
flag or export it as an environment variable. Acceptable values are:
MAPBOX_ACCESS_TOKEN
MapboxAccessToken
Set the environment variable with export
export MAPBOX_ACCESS_TOKEN=my.token
Commands
- Tileset Sources
- Recipes
- Tilesets
add-source
tilesets add-source <username> <id> <file>
Flags:
--no-validation
[optional]: do not validate source data locally before uploading
Usage
# single file
tilesets add-source <username> <id> ./file.geojson
# multiple files
tilesets add-source <username> <id> file-1.geojson file-4.geojson
# directory of files
tilesets add-source <username> <id> ./path/to/multiple/files/
Reading from a directory will not distinguish between GeoJSON files and non GeoJSON files. All source files will be run through our validator unless you pass the --no-validation
flag.
validate-source
tilesets validate-source <path>
Validates a line delimited GeoJSON source file locally. Example error output:
Invalid line delimited geojson.
view-source
tilesets view-source <username> <id>
Get information for a tileset source, such as number of files, the size in bytes, and the ID in mapbox:// protocol format.
list-sources
tilesets list-sources <username>
List all tileset sources from a particular account. Response is an array of sources.
delete-source
tilesets delete-source
Permanently delete a tileset source and all of its files. This is not a recoverable action!
view-recipe
Prints the Recipe JSON to stdout.
tilesets view-recipe <tileset_id>
validate-recipe
Validates a Recipe JSON document.
tilesets validate-recipe /path/to/recipe.json
Example recipe.json
:
{
"version": 1,
"layers": {
"trees": {
"source": "mapbox://tileset-source/{username}/trees-data",
"minzoom": 4,
"maxzoom": 8
}
}
}
See more details about the recipe spec here. See recipe examples here.
Example error output:
{
"errors": [
"Unknown top-level key \"potato\"."
],
"valid": false
}
update-recipe
Update the Recipe JSON for a tileset. Performs a server-side validation of the new document.
tilesets update-recipe <tileset_id> /path/to/recipe.json
create
Creates a brand new, empty tileset with a recipe passed in from your local filesystem.
tilesets create <tileset_id> --recipe /path/to/recipe.json --name "My neat tileset"
Flags:
--recipe
or-r
[required]: path to your Recipe JSON document--name
or-n
[required]: human-readable name of your tileset. (If your tileset_id is user.my_amazing_tileset, you might want yourname
field to be "My Amazing Tileset".)--description
or-d
: description of your tileset--privacy
or-p
: Set the privacy of the tileset. Allowed values areprivate
andpublic
. If not provided, will default to your plan level on Mapbox.com. Pay-As-You-Go plans only support public maps.
publish
Queues a tiling job using the recipe provided. Use to publish a new tileset or update an existing one. Returns a job ID for progress tracking.
tilesets publish <tileset_id>
status
View the status of a tileset. This includes how many jobs are queued, processing, and complete.
tilesets status <tileset_id>
job
Retrieve a single job for a tileset.
tilesets job <tileset_id> <job_id>
What is a job? Each time you generate or regenerate your output tileset via the publish
command (whether that's a new recipe or new source data), a single job is created that processes your data. A tileset can have many jobs, each with a unique identifier. When you publish a tileset, the HTTP response includes the unique job identifier that corresponds to the most recent job. To read more about HTTP design, see this documentation.
jobs
Check all jobs associated with a tileset. You can filter jobs by a particular stage
- processing, queued, success, or failed.
tilesets jobs <tileset_id> --stage=processing
- --stage: Filter by the stage of jobs. (Optional.)
list
List all tilesets for an account. Just lists tileset IDs by default. Use the --verbose
option for more information.
tilesets list <username>
- --verbose: will list out the entire response object from the API
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mapbox-tilesets-1.0.1.dev0.tar.gz
.
File metadata
- Download URL: mapbox-tilesets-1.0.1.dev0.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa611dc63940162821cdbe2c9c9ea67419aa619aae7dd0fa8c7a679a6d68adec |
|
MD5 | 5eb556ad798eb612076d6196bf27fb3a |
|
BLAKE2b-256 | e6001361aa5a42ab08c6b000d74d8b626575a0455962e67cb622f3b61e4a3759 |
File details
Details for the file mapbox_tilesets-1.0.1.dev0-py3-none-any.whl
.
File metadata
- Download URL: mapbox_tilesets-1.0.1.dev0-py3-none-any.whl
- Upload date:
- Size: 9.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.6.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 069822a1ec976b6412899fbce4e0e340aa4027400f2ecea7e9eb1a0465b50e1b |
|
MD5 | 0a8602bf6a02f6ffc96418512159f44b |
|
BLAKE2b-256 | 5cbe11d852e7128cac8de4f3b800dabc433c6bf2f07477a4dc755e6acab0d799 |