TripPin Tutorial

This multi-part tutorial covers the creation of a new data source extension for Power Query. The tutorial is meant to be done sequentially—each lesson builds on the connector created in previous lessons, incrementally adding new capabilities to your connector.

This tutorial uses a public OData service (TripPin) as a reference source. Although this lesson requires the use of the M engine's OData functions, subsequent lessons will use Web.Contents, making it applicable to (most) REST APIs.


The following applications will be used throughout this tutorial:

It's strongly suggested that you review:


You can also start trace logging of your work at any time by enabling diagnostics, which is described later on in this tutorial. More information: Enabling diagnostics


Part Lesson Details
1 OData Create a simple Data Connector over an OData service
2 Rest Connect to a REST API that returns a JSON response
3 Nav Tables Provide a navigation experience for your source
4 Data Source Paths How credentials are identified for your data source
5 Paging Read with a paged response from a web service
6 Enforcing Schema Enforce table structure and column data types
7 Advanced Schema Dynamically enforce table structure using M types and external metadata
8 Diagnostics Add detailed tracing to the connector
9 Test Connection Implement a TestConnection handler to enable refresh through the gateway
10 Basic query Folding Implement basic query folding handlers