|
1 | 1 | --- |
2 | | -title: Building Custom Applications with Microsoft Planetary Computer Pro |
3 | | -description: "Learn the basics of how to connect Microsoft Planetary Computer Pro (Planetary Computer Pro) to applications or build your application on top of Planetary Computer Pro's API services." |
| 2 | +title: Connect and build applications with your data |
| 3 | +description: "Learn how to connect to Microsoft Planetary Computer Pro from the built-in Explorer, desktop GIS applications, or custom applications using REST APIs." |
4 | 4 | author: prasadko |
5 | 5 | ms.author: prasadkomma |
6 | 6 | ms.service: planetary-computer-pro |
7 | 7 | ms.topic: concept-article #Don't change. |
8 | 8 | ms.date: 04/29/2025 |
9 | 9 |
|
10 | | -#customer intent: As a developer, I want to understand how to build applications that integrate with Microsoft Planetary Computer Pro so that I can create solutions leveraging geospatial data at scale. |
| 10 | +#customer intent: As a user, I want to understand how to connect to and use my geospatial data in Microsoft Planetary Computer Pro so that I can choose the right tool for my needs. |
11 | 11 | ms.custom: |
12 | 12 | - build-2025 |
13 | 13 | --- |
14 | 14 |
|
15 | | -# Building applications with Microsoft Planetary Computer Pro |
| 15 | +# Connect and build applications with your data |
16 | 16 |
|
17 | | -Microsoft Planetary Computer Pro offers multiple ways to access, analyze, and visualize large-scale geospatial datasets—from no-code browser experiences to fully custom application development. This article provides an overview of the application development options available with Planetary Computer Pro and guides you to the right approach for your needs. |
| 17 | +Microsoft Planetary Computer Pro provides multiple ways to connect to your geospatial data—whether you want to explore it visually, integrate it with desktop GIS tools, or build custom applications. This article helps you choose the right integration approach for your needs. |
| 18 | + |
| 19 | +## Choose your integration approach |
| 20 | + |
| 21 | +[  ](media/connect-and-build-diagram.png#lightbox) |
| 22 | + |
| 23 | +Select the approach that best fits your use case: |
| 24 | + |
| 25 | +| Use case | Recommended approach | Get started | |
| 26 | +|----------|---------------------|-------------| |
| 27 | +| [**Explore and visualize data**](#built-in-explorer) | Use the built-in Explorer web application | [Use the Explorer](./use-explorer.md) | |
| 28 | +| [**Desktop GIS with ArcGIS Pro**](#desktop-gis-applications) | Connect ArcGIS Pro directly to GeoCatalog | [Configure ArcGIS Pro](./create-connection-arc-gis-pro.md) | |
| 29 | +| [**Desktop GIS with QGIS**](#desktop-gis-applications) | Connect QGIS to GeoCatalog via STAC | [Configure QGIS](./configure-qgis.md) | |
| 30 | +| [**Build a custom web application**](#custom-applications-with-rest-apis) | Browser-based app with JavaScript/TypeScript using MSAL.js | [Build a web application](./build-web-application.md) | |
| 31 | +| **Batch processing on Azure** | Run processing jobs with Azure Batch and managed identity | [Use Azure Batch](./azure-batch.md) | |
| 32 | +| **Backend/server-side integration** | Python applications using managed identity or service principal | [Configure application authentication](./application-authentication.md) | |
18 | 33 |
|
19 | 34 | ## Prerequisites |
20 | 35 |
|
21 | 36 | - An Azure account and subscription. [Create an account for free](https://azure.microsoft.com/pricing/purchase-options/azure-account?cid=msft_learn). |
22 | 37 | - Access to a Microsoft Planetary Computer Pro [GeoCatalog resource](./deploy-geocatalog-resource.md). |
23 | 38 |
|
24 | | -## Application integration approaches |
| 39 | +## Integration options |
25 | 40 |
|
26 | | -Planetary Computer Pro supports multiple integration approaches depending on your application's requirements. You can build applications that access Planetary Computer Pro's data and services in several ways: |
27 | | - |
28 | | -[  ](media/build-apps-diagram.png#lightbox) |
29 | | - |
30 | | -### No code: Built-in Explorer |
| 41 | +### Built-in Explorer |
31 | 42 |
|
32 | 43 | The fastest way to get started is with the built-in **Explorer** web application. Explorer allows you to visualize and interact with geospatial data directly in your browser—no coding required. |
33 | 44 |
|
34 | | -By using Explorer, you can: |
| 45 | +With Explorer, you can: |
35 | 46 | - Browse collections and view items on an interactive map |
36 | 47 | - Apply filters and mosaic definitions to refine your data |
37 | 48 | - Generate code samples for Python integration |
38 | 49 | - Create collection thumbnails |
39 | 50 |
|
40 | 51 | Once your data is [configured for visualization](./collection-configuration-concept.md), you can [use the Explorer](./use-explorer.md) immediately. Explorer is ideal for data exploration, quick visualization, and sharing insights with stakeholders. |
41 | 52 |
|
42 | | -By using [the API services](#custom-development-rest-apis), you can also integrate data in Planetary Computer Pro with Microsoft applications such as [Fabric](/fabric) and [Microsoft Foundry](/azure/ai-foundry/what-is-azure-ai-foundry). |
43 | | - |
44 | 53 | ### Desktop GIS applications |
45 | 54 |
|
46 | 55 | For geospatial professionals who prefer working with desktop GIS tools, Planetary Computer Pro integrates with industry-standard applications: |
47 | 56 |
|
48 | | -**ArcGIS Pro** — Planetary Computer Pro integrates directly with ESRI ArcGIS Pro, providing a seamless workflow for GIS professionals. By connecting Planetary Computer Pro data directly to ArcGIS Pro, users can: |
| 57 | +**ArcGIS Pro** — Connect Planetary Computer Pro data directly to ESRI ArcGIS Pro to access and analyze cloud-hosted geospatial datasets, use advanced visualization and analysis capabilities, and integrate cloud-based data with local projects. For more information, see [Configure ArcGIS Pro to access a GeoCatalog](./create-connection-arc-gis-pro.md). |
49 | 58 |
|
50 | | -- Access and analyze large-scale, cloud-hosted geospatial datasets without complex data transfers. |
51 | | -- Use ArcGIS Pro's advanced visualization, editing, and analysis capabilities on authoritative data from Planetary Computer Pro. |
52 | | -- Streamline collaboration by combining enterprise GIS workflows with the latest planetary-scale datasets. |
53 | | -- Accelerate decision-making by integrating cloud-based data with local projects, enabling richer insights and more informed outcomes. |
| 59 | +**QGIS** — The open-source QGIS desktop application connects via the STAC API for browsing and visualization. QGIS enables direct interaction with STAC collections, so you can visualize, analyze, and style data on the fly. For more information, see [Configure QGIS to access a GeoCatalog resource](./configure-qgis.md). |
54 | 60 |
|
55 | | -For more information, see [Configure ArcGIS Pro to access a GeoCatalog](./create-connection-arc-gis-pro.md). |
| 61 | +### Custom applications with REST APIs |
56 | 62 |
|
57 | | -**QGIS**: The open-source QGIS desktop application connects via the STAC API for browsing and visualization. QGIS enables direct interaction with STAC collections, so you can visualize, analyze, and style data on the fly. For more information, see [Configure QGIS to access a GeoCatalog resource](./configure-qgis.md). |
58 | | - |
59 | | -### Custom development: REST APIs |
60 | | - |
61 | | -For full control over your application's functionality, integrate directly with Planetary Computer Pro's REST APIs. By using these APIs, you can build custom web applications, backend services, and automated pipelines. |
| 63 | +For full control over your application's functionality, integrate directly with Planetary Computer Pro's REST APIs. You can build custom web applications, backend services, and automated pipelines. |
62 | 64 |
|
63 | 65 | | API Name | Description | |
64 | 66 | |---------------|----------------------------------------------------------------------------------------------| |
65 | | -| STAC API | Search, discover, and access geospatial data using the SpatioTemporal Asset Catalog (STAC) specification. | |
| 67 | +| STAC API | Search, discover, and access geospatial data using the SpatioTemporal Asset Catalog (STAC) specification. | |
66 | 68 | | Tiler API | Serve map tiles and imagery for visualization in web maps and GIS apps. | |
67 | 69 | | SAS API | Generate secure, time-limited access tokens for sharing geospatial data. | |
68 | | -| Ingestion API | Ingest and transform new geospatial datasets into the GeoCatalog. | |
| 70 | +| Ingestion API | Ingest and transform new geospatial datasets into the GeoCatalog. | |
69 | 71 |
|
70 | | -These APIs support [standard authentication through Microsoft Entra ID](/entra/architecture/guide-for-independent-software-developers), enabling secure access to your resources. To integrate your application, use [application authentication](./application-authentication.md). Once you register your app with Microsoft Entra, it can securely use the APIs to access all data inside a GeoCatalog. |
| 72 | +These APIs support [standard authentication through Microsoft Entra ID](/entra/architecture/guide-for-independent-software-developers), enabling secure access to your resources. For a complete walkthrough of building a browser-based application, see [Build a web application with Microsoft Planetary Computer Pro](./build-web-application.md). |
71 | 73 |
|
72 | | -For a complete walkthrough of building a browser-based application that uses these APIs, see [Build a web application with Microsoft Planetary Computer Pro](./build-web-application.md). |
| 74 | +You can also integrate data in Planetary Computer Pro with Microsoft applications such as [Fabric](/fabric) and [Azure AI Foundry](/azure/ai-foundry/what-is-azure-ai-foundry). |
73 | 75 |
|
74 | 76 | The [REST API is detailed in the API reference](/rest/api/planetarycomputer). |
75 | 77 |
|
76 | | -## Authentication and authorization |
77 | | - |
78 | | -All applications that interact with Planetary Computer Pro must authenticate properly by using Microsoft Entra ID. |
| 78 | +## Authentication |
79 | 79 |
|
80 | | -### Authentication options and recommendations |
| 80 | +All integrations with Planetary Computer Pro require authentication through Microsoft Entra ID. The recommended authentication method depends on where your application runs: |
81 | 81 |
|
82 | | -| Application Hosting Environment | Access Type Required | Recommended Identity Type | Explanation | |
83 | | -| :------------------------------ | :------------------- | :------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------- | |
84 | | -| **Running on Azure** (VM, App Service, Functions, Container Apps, etc.) | App-Only (Application acts as itself) | Managed Identity (User-assigned recommended) | **Security & Manageability:** Eliminates the need to store and manage credentials (secrets or certificates) in code or configuration. Azure handles credential rotation automatically. User-assigned is preferred for sharing across multiple resources. | |
85 | | -| **Running on Azure** (VM, App Service, Functions, Container Apps, etc.) | Delegated (Application acts on behalf of a user) | Managed Identity (User-assigned recommended) | **Leverages Azure Integration:** Combines the security benefits of Managed Identity for the application itself with standard user authentication flows. Simplifies infrastructure setup within Azure. | |
86 | | -| **Running Outside Azure** (On-premises, other cloud, developer machine) | App-Only (Application acts as itself) | Service Principal | **Standard for External Apps:** The established method for non-Azure applications to authenticate with Microsoft Entra ID. Requires managing credentials (secrets or certificates) securely. | |
87 | | -| **Running Outside Azure** (On-premises, other cloud, developer machine) | Delegated (Application acts on behalf of a user) | Service Principal | **Standard for External Apps:** Enables standard OAuth 2.0 flows for user sign-in and consent for applications outside Azure, using the application's registered identity in Entra ID. | |
88 | | -| **Running Outside Azure (Alternative)** | App-Only or Delegated | Managed Identity | **Brings Azure Benefits:** By hosting the application in an Azure compute service (like a VM or Container App), it can use the enhanced security and manageability of Managed Identities, avoiding credential management even though the *origin* might be considered non-Azure. | |
| 82 | +- **Applications on Azure** — Use managed identities for credential-free authentication with automatic token management. |
| 83 | +- **Applications outside Azure** — Register a service principal in Microsoft Entra ID and manage credentials securely. |
89 | 84 |
|
90 | | -For detailed authentication guidance, see [Set up application authentication for Planetary Computer Pro](./application-authentication.md). |
91 | | - |
92 | | -## Choose your integration path |
93 | | - |
94 | | -Select the approach that best fits your use case: |
95 | | - |
96 | | -| Use case | Recommended approach | Get started | |
97 | | -|----------|---------------------|-------------| |
98 | | -| **Explore data without coding** | Use the built-in Explorer web application | [Use the Explorer](./use-explorer.md) | |
99 | | -| **Build a custom web application** | Browser-based app with JavaScript or TypeScript using MSAL.js | [Build a web application](./build-web-application.md) | |
100 | | -| **Desktop GIS with ArcGIS Pro** | Connect ArcGIS Pro directly to GeoCatalog | [Configure ArcGIS Pro](./create-connection-arc-gis-pro.md) | |
101 | | -| **Desktop GIS with QGIS** | Connect QGIS to GeoCatalog via STAC | [Configure QGIS](./configure-qgis.md) | |
102 | | -| **Batch processing on Azure** | Run processing jobs with Azure Batch and managed identity | [Use Azure Batch](./azure-batch.md) | |
103 | | -| **Backend/server-side integration** | Python applications using managed identity or service principal | [Configure application authentication](./application-authentication.md) | |
| 85 | +For step-by-step guidance on configuring authentication, including RBAC role assignments and token acquisition, see [Configure application authentication for Planetary Computer Pro](./application-authentication.md). |
104 | 86 |
|
105 | 87 | ## Related content |
106 | 88 |
|
| 89 | +- [Configure application authentication for Planetary Computer Pro](./application-authentication.md) |
107 | 90 | - [Build a web application with Microsoft Planetary Computer Pro](./build-web-application.md) |
108 | 91 | - [Use Azure Batch with Microsoft Planetary Computer Pro](./azure-batch.md) |
109 | | -- [Connect ArcGIS Pro to Microsoft Planetary Computer Pro](./create-connection-arc-gis-pro.md) |
| 92 | +- [Configure ArcGIS Pro to access a GeoCatalog](./create-connection-arc-gis-pro.md) |
110 | 93 | - [Configure QGIS to access a GeoCatalog resource](./configure-qgis.md) |
111 | 94 | - [Manage access to Microsoft Planetary Computer Pro](./manage-access.md) |
112 | 95 | - [Microsoft Planetary Computer Pro REST API reference](/rest/api/planetarycomputer) |
0 commit comments