Giter Site home page Giter Site logo

carto-auth's Introduction

[DEPRECATED]

Hey! This content applies only to previous CARTO products.

Please check if it's relevant to your use case. On October 2021 we released the current version of our platform. You can learn more and read the latest documentation at docs.carto.com

What is CARTO?

Code Climate Build Status

CARTO is an open, powerful, and intuitive platform for discovering and predicting the key insights underlying the location data in our world.

Empower organizations to optimize operational performance, strategic investments, and everyday decisions with CARTO Engine—our embeddable platform for web and mobile apps—and the new CARTO Builder, a drag and drop analysis tool.

It was built to make it easier for people to tell their stories by providing them with flexible and intuitive ways to create maps and design geospatial applications. CARTO can be installed on your own server and we also offer a hosted service at carto.com.

If you would like to see some live demos, check out our videos on Vimeo. We hope you like it!

Map view Data View

What can I do with CARTO?

With CARTO, you can upload your geospatial data (Shapefiles, GeoJSON, etc) using a web form and then make it public or private.

After it is uploaded, you can visualize it in a dataset or on a map, search it using SQL, and apply map styles using CartoCSS. You can even access it using the CARTO APIs, or export it to a file.

In other words, with CARTO you can make awesome maps and build powerful geospatial applications! Definitely check out the CARTO Platform for interactive examples and code.

Installing

Read the installation guide in CARTO developers documentation

How do I upgrade CARTO?

See UPGRADE for instructions about upgrading CARTO.

For upgrade of Windshaft-CartoDB and CartoDB-SQL-API see the relative documentation.

Developing & Contributing to CARTO

See our contributing doc for how you can improve CARTO, but you will need to sign a Contributor License Agreement (CLA) before making a submission, learn more here.

Testing

Check the testing doc section.

Requirements

CARTO works in any modern browser, but if you want more info:

Chrome Firefox IE Opera Safari
31+ ✔ 38+ ✔ 11+ ✔ 31+ ✔ 8+ ✔

carto-auth's People

Contributors

dependabot[bot] avatar jesus89 avatar raulvr2 avatar vdelacruzb avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

carto-auth's Issues

CARTO DW extension not found for users outside gcp-us-east1 region using OAuth

Context

When authenticating to a CARTO account via OAuth and fetching the CARTO DW client through the get_carto_dw_client method with an account in a different region from the default one, it fails since the CARTO DW connection cannot be found (as it's looking into the wrong tenant), but failing with a misleading error here.

import requests
from carto_auth import CartoAuth

carto_auth = CartoAuth.from_oauth()

url = f"{carto_auth.api_base_url}/v3/connections/carto-dw/token"
headers = carto_auth._api_headers()
response = requests.get(url, headers=headers)
creds = response.json()

creds
{"error": "Connection not found",
 "status": 404,
 "message": "Connection not found",
 "connection_name": "carto_dw",
 "connectionName": "carto_dw"}

Steps to replicate

  1. Create a conda environment from this file env_export.yml.zip
conda create -f env_export.yml
  1. Run the following code and authenticate against a CARTO account in (for example) EU tenant
from carto_auth import CartoAuth
carto_auth = CartoAuth.from_oauth()
carto_dw_client = carto_auth.get_carto_dw_client()
Error: CARTO DW extension not found.
Please, install carto-auth[carto-dw]

Additional comments

From the user perspective, the API base URL would ideally be automatically retrieved when using the from_oauth method. Alternatively, we would throw a better error to the user, maybe something similar to:

image

cc @Jesus89

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.