Data Model
The CData Power BI Connector for Instagram models Instagram objects as an easy-to-use SQL database, using tables, views, and stored procedures. These are defined in schema files, which are simple, easy-to-read text files that define the structure and organization of data.
Tables
The Tables section, which details standard SQL tables, and the Views section, which lists read-only SQL tables, contain samples of what you might have access to in your Instagram account.
Commonly used tables include:
| Table | Description |
| InstagramBusinessProfile | Retrieves metadata and configuration details for an Instagram Business profile, such as username, profile picture, bio, and linked Facebook page. This view is foundational for mapping the Instagram presence of a business. |
| InstagramPages | Offers visibility into Facebook Pages linked to an Instagram Business account. This is helpful for verifying page connections and managing cross-platform presence. |
| IGMedia | Represents all media types published via an Instagram business account, including photos, videos, reels, stories, albums, and IGTV. This allows for querying and performance analysis at the media object level. |
| Media | Offers a complete overview of all media objects published on an Instagram Business or Creator account, including images, videos, and carousel posts. It is essential for retrieving metadata such as captions, media types, timestamps, and permalinks. |
| Stories | Offers a filtered view of Instagram Story content linked to a specific account. It includes metadata such as timestamps, viewer counts, and interaction metrics. This view facilitates the extraction of insights and performance analysis for temporary story posts. |
| Comments | Manages and stores Instagram comment interactions, including creating, deleting, and retrieving comments linked to media content. It includes features for moderation and analysis of user engagement. |
| Replies | Stores user-generated replies associated with Instagram media objects, including comments on posts and conversations within threads. It supports both querying existing replies and inserting new ones. |
| MediaInsights | Provides performance insights for any media object published by the account. The metrics include reach, engagement, and interactions across different content types. This view aids in developing data-driven content strategies by revealing how individual posts perform across various user segments. |
| MediaInsightsPost | Provides insights specifically for photo and video posts, while excluding stories and reels. It delivers detailed metrics such as post reach, save counts, and engagement ratios. This tool is intended for evaluating the performance of static content and traditional video posts. |
| MediaInsightsReels | Compiles performance metrics specifically for Instagram Reels. It provides detailed insights, including the number of plays, likes, comments, saves, and shares. This analysis is designed to help you examine engagement trends over time for short-form video content |
| MediaInsightsStory | Provides performance insights for Instagram Stories, analyzing metrics such as reach, exits, replies, and taps forward/backward. This perspective allows for detailed analysis of temporary content. |
| AccountInsights | Aggregates key performance metrics for an Instagram business account, including reach, engagement, and profile activity data. This summary serves as a central view for tracking account-level trends over time. |
| AudienceInsights | Analyzes comprehensive demographic and behavioral data of followers for an Instagram business account, including age, gender, location, and active times. This analysis is crucial for effectively understanding and targeting audience segments. |
| OnlineFollowers | Aggregates hourly breakdowns of when a user's Instagram followers are typically online, helping to identify the best posting times for maximum visibility and engagement. |
| AccountTimeSeriesWithoutBreakdown | Returns time-series metrics without a specific breakdown dimension, making it useful for monitoring aggregated metrics like reach over time. It includes end-time and value pairs for temporal analysis. |
| AccountTimeSeriesFollowType | Provides time-based metrics on follower changes, tracking the fluctuations of follows and unfollows over specific intervals. This view uses follow_type as a breakdown dimension and facilitates time-series analysis for identifying trends. |
| AccountTimeSeriesMediaProductType | Provides chronological data on various media types, such as Posts, Stories, IGTV, shared from an Instagram business account. It helps visualize performance trends over time by using media_product_type as a breakdown dimension and supports time-series metric evaluation. |
| AccountWithoutBreakdown | Summarizes cumulative Instagram performance metrics, including total views and engagements across various content types like posts, stories, and reels. No breakdown is provided, making it suitable for overall metric tracking. |
| AccountFollowType | Captures follower dynamics by reporting the number of new followers, unfollows, and users who deactivated accounts over a defined period. This data is aggregated under the 'follow_type' breakdown and can be used to understand audience growth trends. |
| AccountMediaProductType | Analyzes content performance by media type, including standard posts and IGTV videos, over a chosen time period. Metrics are categorized by media_product_type and offer insights into which formats enhance user engagement. |
Stored Procedures
Stored Procedures are SQL scripts that extend beyond standard CRUD operations. They accept parameters, execute functions, and manage OAuth authentication tokens.
Discovering the Schemas Programmatically
The available System Tables provide programmatic access to schema information as well as other connector metadata, such as the data source's querying capabilities.