Skip to main content

CLI for interacting with and preparing data for the Tilesets API

Project description

tilesets-cli

Build Status codecov

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

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

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 your name field to be "My Amazing Tileset".)
  • --description or -d: description of your tileset
  • --privacy or -p: Set the privacy of the tileset. Allowed values are private and public. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mapbox-tilesets-1.0.0.dev0.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

mapbox_tilesets-1.0.0.dev0-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file mapbox-tilesets-1.0.0.dev0.tar.gz.

File metadata

  • Download URL: mapbox-tilesets-1.0.0.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.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.7.3

File hashes

Hashes for mapbox-tilesets-1.0.0.dev0.tar.gz
Algorithm Hash digest
SHA256 d17425860c0364fc6fce8a6bf38bbdef986b9d6228f88d57a205b8695c2f4259
MD5 3ad279f55f32efde603d9e83cc88fa51
BLAKE2b-256 f401491815e8041076555a956a6efd1a5df74ea81813a7bf936dc87a97a06380

See more details on using hashes here.

File details

Details for the file mapbox_tilesets-1.0.0.dev0-py3-none-any.whl.

File metadata

  • Download URL: mapbox_tilesets-1.0.0.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.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.44.1 CPython/3.7.3

File hashes

Hashes for mapbox_tilesets-1.0.0.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 a86ad13380f1570b8a6242abf6d306b35b45ca635de3c6f366f565bbcbe6fe9f
MD5 f76bd2524f5bb15b082c2a6a9a11bb08
BLAKE2b-256 c42248da325e5338eb5b309938df27af2b0e519e1a9a02e0c14a9ac61427274c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page