Periscope Data Documentation

Connecting to Periscope

First Time Connecting

Connection Definitions

Common Connection Errors

Private Network SSH Tunnels



Getting Started

Keyboard Shortcuts

Charts & Dashboards

Chart Overview

Chart Options

Dashboard Overview

Refresh Mechanics

Organizing Charts

Organizing Dashboards

Table-like Charts

Table Overview

Cohort Grids

Pivot Tables

Graph-like Charts

Overview & General Settings

Chart Types and Settings

Mixing Chart Types

Map Charts

Map Chart Overview


Clusters and Bubbles

Satellite Maps


Other Charts & Customizations

Pie Charts

Image Charts

Chart Annotations

Site Administration

Adding Users

Removing Users

User Types

User Groups

Two-Factor Authentication

Managing User Permissions

Dashboard Permissions

Site Preferences

Query Management

Color Themes

Dashboard Refresh Management

Usage Data

Periscope Cache

Caching Strategies

Querying the Periscope Cache

Cross-Database Joins

CSV Upload

Materializing Views

SQL Formatters

Using SQL Formatters

Composing SQL Formatters

Dollars and Percentages

Time Zone Formatters

Date Aggregation

Date Parts

Basic Filters

Custom Filters

Date Range Filters

Aggregation Filter

Adding, Moving, and Hiding Filters

Advanced Filters

Default Filters


Parent-Child Filters

Matching Filter Values

Time Zone Conversions

Direct Replacement

User Friendly Names


SQL Views

Joining to Views

More SQL Tools

SQL Snippets

Parameterized SQL Snippets

SQL Alerts

Automatic Joins

Version History

Sharing and Embedding

Sharing Dashboards Externally

Email Reports

Easy Embedding

Embed API

Embed API Options

CSV Download

Public CSV URL

Slack API

Slack Linking Reports

Data Management

Adding and Deleting Datasource

Spaces: Data-Level Permissions

Improving Query Throughput

Revoking Table Permissions

Salesforce Datasource

Schema Browser

SSO Integrations




Google Apps

Revoking Select Permissions on Tables

In many cases, tables may contain private information that you do not wish to share with Periscope. Users can quickly revoke Periscope's access to these tables via a REVOKE command run by a database's superuser. The commands will vary slightly depending on the type of SQL database, and the examples on this page assume that the Periscope user has been named 'periscope'.

A quick way to test if the revoke was successful is to try selecting from a particular table in the Periscope editor. An error regarding the table not existing or the Periscope user not having permissions will indicate the revoke was successful.

Revoking MySQL Table Access

In MySQL, select privileges for a particular table can be revoked by a database superuser running a command similar to the following:

REVOKE SELECT ON my_table FROM 'periscope'@* 

For additional reference, please see the MySQL Documentation Page on the Revoke Syntax.

Revoking Postgres Table Access

The Postgres syntax for revoking access is similar to MySQL, but lacks the single quotes and identifiers. The command is similar to what is shown below:

REVOKE SELECT ON my_table FROM periscope

The Postgres Documentation Page on the Revoke Syntax covers the possible alternatives and restrictions for schemas as well.

Revoking Redshift Table Access

The basic Redshift syntax for revoking access is identical to the syntax for Postgres:

REVOKE SELECT ON my_table FROM periscope

The Redshift Documentation Page for the Revoke Syntax also shows the different options when revoking access from a user or group.

Revoking SQL Server Table Access

SQL Server's syntax is also quite similar to Redshift and Postgres. The database name or table name can be specified in the revoke statement.

REVOKE SELECT ON my_table FROM periscope

Documentation depicting other Revoke options can be found on SQL Server's Revoke Page.