GitHub Connector for CData Sync

Build 22.0.8462
  • GitHub
    • Establishing a Connection
    • Advanced Features
      • SSL Configuration
      • Firewall and Proxy
    • Data Model
      • Views
        • Branches
        • CommitComments
        • Commits
        • Forks
        • IssueComments
        • Issues
        • Labels
        • LicenseConditions
        • LicenseLimitations
        • LicensePermissions
        • Licenses
        • Milestones
        • Organizations
        • ProjectColumns
        • Projects
        • PullRequestReviews
        • PullRequests
        • ReleaseAssets
        • Releases
        • Repositories
        • Topics
        • Users
        • Watchers
    • Connection String Options
      • Connection
        • RepositoryName
        • UserLogin
      • OAuth
        • OAuthClientId
        • OAuthClientSecret
      • SSL
        • SSLServerCert
      • Firewall
        • FirewallType
        • FirewallServer
        • FirewallPort
        • FirewallUser
        • FirewallPassword
      • Proxy
        • ProxyAutoDetect
        • ProxyServer
        • ProxyPort
        • ProxyAuthScheme
        • ProxyUser
        • ProxyPassword
        • ProxySSLType
        • ProxyExceptions
      • Logging
        • LogModules
      • Schema
        • Location
        • BrowsableSchemas
        • Tables
        • Views
      • Miscellaneous
        • MaxPointsPerCall
        • MaxRows
        • Other
        • PseudoColumns
        • Timeout
        • UserDefinedViews

GitHub Connector for CData Sync

Overview

The CData Sync App provides a straightforward way to continuously pipeline your GitHub data to any database, data lake, or data warehouse, making it easily available for Analytics, Reporting, AI, and Machine Learning.

The GitHub connector can be used from the CData Sync application to pull data from GitHub and move it to any of the supported destinations.

GitHub Connector for CData Sync

Establishing a Connection

Create a connection to GitHub by navigating to the Connections page in the Sync App application and selecting the corresponding icon in the Add Connections panel. If the GitHub icon is not available, click the Add More icon to download and install the GitHub connector from the CData site.

Required properties are listed under the Settings tab. The Advanced tab lists connection properties that are not typically required.

Connecting to GitHub

GitHub supports OAuth authentication only. AuthScheme must be set to OAuth in all OAuth flows.

Web Applications

When connecting via a Web application, you need to register a custom OAuth application with GitHub. You can then use the Sync App to get and manage the OAuth token values. See Creating a Custom OAuth App for more information.

Get an OAuth Access Token

Set the following connection properties to obtain the OAuthAccessToken:

  • OAuthClientId: Set this to the client Id in your application settings.
  • OAuthClientSecret: Set this to the client secret in your application settings.

Then call stored procedures to complete the OAuth exchange:

  1. Call the GetOAuthAuthorizationURL stored procedure. Set the AuthMode input to WEB and the CallbackURL to the Redirect URI you specified in your application settings. The stored procedure returns the URL to the OAuth endpoint.
  2. Navigate to the URL that the stored procedure returned in Step 1. Log in and authorize the web application. You are redirected back to the callback URL.
  3. Call the GetOAuthAccessToken stored procedure. Set the AuthMode input to WEB. Set the Verifier input to the code parameter in the query string of the redirect URI.

After you have obtained the access and refresh tokens, you can connect to data and refresh the OAuth access token automatically.

Automatic Refresh of the OAuth Access Token

To have the Sync App automatically refresh the OAuth access token, set the following on the first data connection.

  • InitiateOAuth: Set this to REFRESH.
  • OAuthClientId: Set this to the client Id in your application settings.
  • OAuthClientSecret: Set this to the client secret in your application settings.
  • OAuthAccessToken: Set this to the access token returned by GetOAuthAccessToken.
  • OAuthSettingsLocation: Set this to the path where you want the Sync App to save the OAuth values, which persist across connections.

On subsequent data connections, set the following:

  • InitiateOAuth
  • OAuthSettingsLocation
  • UserLogin (optional);
  • RepositoryName (optional);

GitHub Connector for CData Sync

Advanced Features

This section details a selection of advanced features of the GitHub Sync App.

User Defined Views

The Sync App allows you to define virtual tables, called user defined views, whose contents are decided by a pre-configured query. These views are useful when you cannot directly control queries being issued to the drivers. See User Defined Views for an overview of creating and configuring custom views.

SSL Configuration

Use SSL Configuration to adjust how Sync App handles TLS/SSL certificate negotiations. You can choose from various certificate formats; see the SSLServerCert property under "Connection String Options" for more information.

Firewall and Proxy

Configure the Sync App for compliance with Firewall and Proxy, including Windows proxies and HTTP proxies. You can also set up tunnel connections.

Query Processing

The Sync App offloads as much of the SELECT statement processing as possible to GitHub and then processes the rest of the query in memory (client-side).

See Query Processing for more information.

Logging

See Logging for an overview of configuration settings that can be used to refine CData logging. For basic logging, you only need to set two connection properties, but there are numerous features that support more refined logging, where you can select subsets of information to be logged using the LogModules connection property.

GitHub Connector for CData Sync

SSL Configuration

Customizing the SSL Configuration

By default, the Sync App attempts to negotiate SSL/TLS by checking the server's certificate against the system's trusted certificate store.

To specify another certificate, see the SSLServerCert property for the available formats to do so.

GitHub Connector for CData Sync

Firewall and Proxy

Connecting Through a Firewall or Proxy

HTTP Proxies

To connect through the Windows system proxy, you do not need to set any additional connection properties. To connect to other proxies, set ProxyAutoDetect to false.

In addition, to authenticate to an HTTP proxy, set ProxyAuthScheme, ProxyUser, and ProxyPassword, in addition to ProxyServer and ProxyPort.

Other Proxies

Set the following properties:

  • To use a proxy-based firewall, set FirewallType, FirewallServer, and FirewallPort.
  • To tunnel the connection, set FirewallType to TUNNEL.
  • To authenticate, specify FirewallUser and FirewallPassword.
  • To authenticate to a SOCKS proxy, additionally set FirewallType to SOCKS5.

GitHub Connector for CData Sync

Data Model

The CData Sync App models entities in the GitHub API as views and stored procedures. These are defined in schema files, which are simple, text-based configuration files.

API limitations and requirements are documented in this section. You can use the SupportEnhancedSQL feature, set by default, to circumvent most of these limitations.

Views

Views describes the available views. Views are statically defined to model Repositories, Commits, Projects, and more.

Stored Procedures

Stored Procedures are function-like interfaces to the data source. They can be used to search, update, and modify information in the data source.

GitHub Connector for CData Sync

Views

Views are composed of columns and pseudo columns. Views are similar to tables in the way that data is represented; however, views do not support updates. Entities that are represented as views are typically read-only entities. Often, a stored procedure is available to update the data if such functionality is applicable to the data source.

Queries can be executed against a view as if it were a normal table, and the data that comes back is similar in that regard.

Dynamic views, such as queries exposed as views, and views for looking up specific combinations of project_team work items are supported.

GitHub Connector for CData Sync Views

Name Description
Branches Lists information about branches in a repository.
CommitComments Lists information about comments which were made on a specific commit.
Commits Lists information about commits done in a repository .
Forks Lists information about forks of a repository.
IssueComments Lists information about comments which were made on a specific issue.
Issues Lists all project issues.
Labels Lists information about the different labels you can apply on an issue.
LicenseConditions The conditions set by the license.
LicenseLimitations The limitations set by the license.
LicensePermissions The permissions set by the license.
Licenses Lists the open source licenses.
Milestones Lists information about milestones in a repository.
Organizations Lists information about about the organizations of the logged in user.
ProjectColumns Lists information about project columns.
Projects Lists information about projects.
PullRequestReviews Lists information about pull request reviews in a repository.
PullRequests Lists information about pull requests in a repository.
ReleaseAssets List of releases assets which are dependent on a release.
Releases Lists information about the different releases of a repository.
Repositories Lists information about a user's repository.
Topics A list of applied repository-topic associations for this repository.
Users Lists information about GitHub users.
Watchers A list of users watching the repository.

GitHub Connector for CData Sync

Branches

Lists information about branches in a repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin and RepositoryName support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM Branches WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the branch.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
Name String The branch name.
Prefix String The branch prefix.

GitHub Connector for CData Sync

CommitComments

Lists information about comments which were made on a specific commit.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin and RepositoryName support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM CommitComments WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the commit comment.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
CommitId String Identifies the commit associated with the comment, if the commit exists.
Author String The username of the actor who authored the comment.
AuthorAssociation String Author's association with the subject of the comment.
Body String Identifies the comment body.
BodyHTML String The body rendered to HTML.
BodyText String The body rendered to text.
CreatedAt Datetime Identifies the date and time when the object was created.
CreatedViaEmail Boolean Check if this comment was created via an email reply.
Editor String The username of the actor who edited the comment.
IncludesCreatedEdit Boolean Check if this comment was edited and includes an edit with the creation data.
IsMinimized Boolean Returns whether or not a comment has been minimized.
LastEditedAt Datetime The moment the editor made the last edit.
MinimizedReason String Returns why the comment was minimized.
Path String Identifies the file path associated with the comment.
Position Int Identifies the line position associated with the comment.
PublishedAt Datetime Identifies when the comment was published at.
ResourcePath String The HTTP path permalink for this commit comment.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
Url String The HTTP URL permalink for this commit comment.
ViewerCanDelete Boolean Check if the current viewer can delete this object.
ViewerCanMinimize Boolean Check if the current viewer can minimize this object.
ViewerCanReact Boolean Can user react to this subject.
ViewerCanUpdate Boolean Check if the current viewer can update this object.
ViewerDidAuthor Boolean Did the viewer author this comment.

GitHub Connector for CData Sync

Commits

Lists information about commits done in a repository .

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, BranchName and RepositoryName support the following operator: =
  • CommittedDate supports the following operators: =,>=,>,<,<=
For example, the following queries are processed server side:
SELECT * FROM Commits WHERE RepositoryName = 'MyRepo'

SELECT * FROM Commits WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

SELECT * FROM Commits WHERE BranchName = 'master'

SELECT * FROM Commits WHERE RepositoryName = 'MyRepo' AND CommittedDate >= '2017-12-18 09:02:22.0' AND CommittedDate <= '2018-01-11 15:00:08.0'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the commit.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
BranchName [KEY] String The name of the branch.
Additions Int The number of additions in this commit.
AuthorEmail String The email of the commit author.
AuthorUserLogin String The GitHub user corresponding to the email field. Null if no such user exists.
AuthoredByCommitter Boolean Check if the committer and the author match.
AuthoredDate Datetime The datetime when this commit was authored.
CommitResourcePath String The HTTP path for this Git object.
CommitUrl String The HTTP URL for this Git object.
CommittedDate Datetime The datetime when this commit was committed.
CommittedViaWeb Boolean Check if committed via GitHub web UI.
CommitterEmail String The email of the committer.
CommitterUserLogin String The GitHub user corresponding to the email field. Null if no such user exists.
Deletions Int The number of deletions in this commit.
Message String The Git commit message.
MessageBody String The Git commit message body.
MessageBodyHTML String The commit message body rendered to HTML.
MessageHeadline String The Git commit message headline.
MessageHeadlineHTML String The commit message headline rendered to HTML.
OnBehalfOf String The organization's login name this commit was made on behalf of.
PushedDate Datetime The datetime when this commit was pushed.
ResourcePath String The HTTP path for this commit.
Signature String ASCII-armored signature header from object.
SignatureEmail String Email used to sign this object.
SignatureIsValid Boolean True if the signature is valid and verified by GitHub.
SignaturePayload String Payload for GPG signing object. Raw ODB object without the signature header.
SignatureSigner String GitHub user's login name corresponding to the email signing this commit.
SignatureState String The state of this signature. VALID if signature is valid and verified by GitHub, otherwise represents reason why signature is considered invalid.
WasSignedByGitHub Boolean True if the signature was made with GitHub's signing key.
StatusState String The combined commit status.
StatusCheckRollupState String Check and Status rollup combined status state for this commit.
TarballUrl String Returns a URL to download a tarball archive for a repository. Note: For private repositories, these links are temporary and expire after five minutes.
TreeResourcePath String The HTTP path for the tree of this commit.
TreeUrl String The HTTP URL for the tree of this commit.
Url String The HTTP URL for this commit.
ViewerCanSubscribe Boolean Check if the viewer is able to change their subscription status for the repository.
ViewerSubscription String Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.
ZipballUrl String Returns a URL to download a zipball archive for a repository. Note: For private repositories, these links are temporary and expire after five minutes.

GitHub Connector for CData Sync

Forks

Lists information about forks of a repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, and IsLocked support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM Forks WHERE IsLocked=true

Columns

Name Type OrderBySupport Description
Id [KEY] String The fork ID.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
Name String True The name of the fork.
Description String The fork description.
DescriptionHTML String The fork HTML description.
CreatedAt Datetime True The creation date of the fork.
UpdatedAt Datetime True The date when the fork was last updated.
PushedAt Datetime True The date the fork was first pushed.
IsLocked Boolean Whether the fork is locked.
Url String The HTTP URL for this fork.
MirrorUrl String The mirror URL of the fork.

GitHub Connector for CData Sync

IssueComments

Lists information about comments which were made on a specific issue.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, and IssueNumber support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM IssueComments WHERE RepositoryName = 'MyRepo'

SELECT * FROM IssueComments WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

SELECT * FROM IssueComments WHERE IssueNumber = 5 AND RepositoryName = 'MyRepo'

Columns

Name Type OrderBySupport Description
Id [KEY] String The issue comment Id.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
IssueNumber Integer Identifies the issue number associated with the comment.
Author String The username of the actor who authored the comment.
AuthorAssociation String Author's association with the subject of the comment.
Body String The body as Markdown.
BodyHTML String The body rendered to HTML.
BodyText String The body rendered to text.
CreatedAt Datetime Identifies the date and time when the object was created.
CreatedViaEmail Boolean Check if this comment was created via an email reply.
DatabaseId Int Identifies the primary key from the database.
Editor String The username of the actor who edited the comment.
IncludesCreatedEdit Boolean Check if this comment was edited and includes an edit with the creation data.
IsMinimized Boolean Returns whether or not a comment has been minimized.
LastEditedAt Datetime The moment the editor made the last edit.
MinimizedReason String Returns why the comment was minimized.
PublishedAt Datetime Identifies when the comment was published at.
PullRequestId String Returns the Id of the pull request associated with the comment, if this comment was made on a pull request.
ResourcePath String The HTTP path for this issue comment.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
Url String The HTTP URL for this issue comment.
ViewerCanDelete Boolean Check if the current viewer can delete this object.
ViewerCanMinimize Boolean Check if the current viewer can minimize this object.
ViewerCanReact Boolean Can user react to this subject.
ViewerCanUpdate Boolean Check if the current viewer can update this object.
ViewerDidAuthor Boolean Did the viewer author this comment.

GitHub Connector for CData Sync

Issues

Lists all project issues.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin and State support the following operator: =
  • RepositoryName and Author support the following operators: =,!=
  • ClosedAt, CreatedAt, and UpdatedAt support the following operators: =,>,>=,<,<=
The following queries are processed server side.
SELECT * FROM Issues WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

SELECT * FROM Issues WHERE RepositoryName = 'test' AND UpdatedAt >= '2018-05-10 11:11:38.0'

Columns

Name Type OrderBySupport Description
Id [KEY] String The Issue ID.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
ActiveLockReason String Reason that the conversation was locked.
Author String The username of the actor who authored the comment.
AuthorAssociation String Author's association with the subject of the comment.
Body String Identifies the body of the issue.
BodyHTML String The body rendered to HTML.
BodyText String Identifies the body of the issue rendered to text.
Closed Boolean True if the object is closed (definition of closed may depend on type).
ClosedAt Datetime Identifies the date and time when the object was closed.
CreatedAt Datetime True Identifies the date and time when the object was created.
CreatedViaEmail Boolean Check if this comment was created via an email reply.
DatabaseId Int Identifies the primary key from the database.
Editor String The username of the actor who edited the comment.
IncludesCreatedEdit Boolean Check if this comment was edited and includes an edit with the creation data.
LastEditedAt Datetime The moment the editor made the last edit.
Locked Boolean True if the object is locked.
MilestoneId String Identifies the milestone associated with the issue.
Number Int Identifies the issue number.
PublishedAt Datetime Identifies when the comment was published at.
ResourcePath String The HTTP path for this issue.
State String Identifies the state of the issue.

The allowed values are open, closed.

Title String Identifies the issue title.
UpdatedAt Datetime True Identifies the date and time when the object was last updated.
Url String The HTTP URL for this issue.
ViewerCanReact Boolean Can user react to this subject.
ViewerCanSubscribe Boolean Check if the viewer is able to change their subscription status for the repository.
ViewerCanUpdate Boolean Check if the current viewer can update this object.
ViewerDidAuthor Boolean Did the viewer author this comment.
ViewerSubscription String Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.

Name Type Description
Comments Integer You can search by the number of comments.
Interactions Integer You can filter issues by the number of interactions.
Reactions Integer You can filter issues by the number of reactions.
Mentions String You can find issues that mention a certain user.
Assignee String You can find find issues and pull requests that are assigned to a certain user.

GitHub Connector for CData Sync

Labels

Lists information about the different labels you can apply on an issue.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, and Name support the following operator: =
For example, the following queries are processed server side.
SELECT * FROM Labels WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

SELECT * FROM Labels WHERE Name = 'duplicate'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the label.
RepositoryName String The name of the repository.
UserLogin String The login name of the user.
Color String Identifies the label color.
CreatedAt Datetime True Identifies the date and time when the label was created.
Description String A brief description of this label.
IsDefault Boolean Indicates whether or not this is a default label.
Name String True Identifies the label name.
ResourcePath String The HTTP path for this label.
UpdatedAt Datetime Identifies the date and time when the label was last updated.
Url String The HTTP URL for this label.

GitHub Connector for CData Sync

LicenseConditions

The conditions set by the license.

Table-Specific Information

Select

You must specify the LicenseKey when executing a SELECT query against this table.

  • LicenseKey supports the following operator: =

SELECT * FROM LicenseConditions WHERE LicenseKey = 'mit'

Columns

Name Type OrderBySupport Description
Key [KEY] String The machine-readable condition key.
LicenseKey String The lowercased SPDX ID of the license.
Description String A description of the condition.
Label String The human-readable condition label.

GitHub Connector for CData Sync

LicenseLimitations

The limitations set by the license.

Table-Specific Information

Select

You must specify the LicenseKey when executing a SELECT query against this table.

  • LicenseKey supports the following operator: =

SELECT * FROM LicenseLimitations WHERE LicenseKey = 'mit'

Columns

Name Type OrderBySupport Description
Key [KEY] String The machine-readable limitation key.
LicenseKey String The lowercased SPDX ID of the license.
Description String A description of the limitation.
Label String The human-readable limitation label.

GitHub Connector for CData Sync

LicensePermissions

The permissions set by the license.

Table-Specific Information

Select

You must specify the LicenseKey when executing a SELECT query against this table.

  • LicenseKey supports the following operator: =

SELECT * FROM LicensePermissions WHERE LicenseKey = 'mit'

Columns

Name Type OrderBySupport Description
Key [KEY] String The machine-readable permission key.
LicenseKey String The lowercased SPDX ID of the license.
Description String A description of the permission.
Label String The human-readable permission label.

GitHub Connector for CData Sync

Licenses

Lists the open source licenses.

Table-Specific Information

Select

  • Key supports the following operator: =

SELECT * FROM Licenses

SELECT * FROM Licenses WHERE Key = 'mit'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the license.
Key String The lowercased SPDX ID of the license.
Body String The full text of the license.
Description String A human-readable description of the license.
Featured Boolean Whether the license should be featured.
Hidden Boolean Whether the license should be displayed in license pickers.
Implementation String Instructions on how to implement the license.
Name String The license full name specified by https://spdx.org/licenses.
Nickname String Customary short name if applicable (e.g, GPLv3).
PseudoLicense Boolean Whether the license is a pseudo-license placeholder (e.g., other, no-license).
SpdxId String Short identifier specified by https://spdx.org/licenses.
Url String URL to the license on https://choosealicense.com.

GitHub Connector for CData Sync

Milestones

Lists information about milestones in a repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, Number, and State support the following operator: =
For example, the following queries are executed server side:
SELECT * FROM Milestones WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'
   
SELECT * FROM Milestones WHERE State = 'all'

SELECT * FROM Milestones WHERE Number = 1

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the milestone.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
Closed Boolean True if the object is closed (definition of closed may depend on type)
ClosedAt Datetime Identifies the date and time when the object was closed.
CreatedAt Datetime True Identifies the date and time when the object was created.
Description String Identifies the description of the milestone.
DueOn Datetime True Identifies the due date of the milestone.
Number Integer True Identifies the number of the milestone.
ResourcePath String The HTTP path for this milestone.
State String Identifies the state of the milestone.

The allowed values are OPEN, CLOSED.

Title String Identifies the title of the milestone.
UpdatedAt Datetime True Identifies the date and time when the object was last updated.
Url String The HTTP URL for this milestone.
ProgressPercentage Float Progress Percentage for this milestone.

GitHub Connector for CData Sync

Organizations

Lists information about about the organizations of the logged in user.

View-Specific Information

By default this view will only return information about the organizations of the logged in user.

Columns

Name Type OrderBySupport Description
Id [KEY] String The id of the organization.
AnyPinnableItems Boolean Determine if this repository owner has any items that can be pinned to their profile. Arguments type (PinnableItemType) Filter to only a particular kind of pinnable item.
AvatarUrl String A URL pointing to the organization's public avatar. Arguments size (Int) The size of the resulting square image.
CreatedAt Datetime Identifies the date and time when the object was created.
DatabaseId Int Identifies the primary key from the database.
Description String The organization's public profile description.
DescriptionHTML String The organization's public profile description rendered to HTML.
Email String The organization's public email.
IpAllowListEnabledSetting String The setting value for whether the organization has an IP allow list enabled.
IsVerified Boolean Whether the organization has verified its profile email and website.
Location String The organization's public profile location.
Login String The organization's login name.
Name String The organization's public profile name.
NewTeamResourcePath String The HTTP path creating a new team.
NewTeamUrl String The HTTP URL creating a new team.
OrganizationBillingEmail String The billing email for the organization.
PinnedItemsRemaining Int Returns how many more items this profile owner can pin to their profile.
ProjectsResourcePath String The HTTP path listing organization's projects.
ProjectsUrl String The HTTP URL listing organization's projects.
RequiresTwoFactorAuthentication Boolean When true the organization requires all members, billing managers, and outside collaborators to enable two-factor authentication.
ResourcePath String The HTTP path for this organization.
TeamsResourcePath String The HTTP path listing organization's teams.
TeamsUrl String The HTTP URL listing organization's teams.
TwitterUsername String The organization's Twitter username.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
Url String The HTTP URL for this organization.
ViewerCanAdminister Boolean Organization is adminable by the viewer.
ViewerCanChangePinnedItems Boolean Can the viewer pin repositories and gists to the profile?
ViewerCanCreateProjects Boolean Can the current viewer create new projects on this owner?
ViewerCanCreateRepositories Boolean Viewer can create repositories on this organization.
ViewerCanCreateTeams Boolean Viewer can create teams on this organization.
ViewerIsAMember Boolean Viewer is an active member of this organization.
WebsiteUrl String The organization's public profile URL.

GitHub Connector for CData Sync

ProjectColumns

Lists information about project columns.

Table-Specific Information

Select

  • UserLogin, RepositoryName, and ProjectNumber support the following operator: =

You can specify the ProjectNumber column to list all columns for a specific project.

SELECT * FROM ProjectColumns WHERE RepositoryName = 'test' AND ProjectNumber = '108'
  

Columns

Name Type OrderBySupport Description
Id [KEY] String The project column ID.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
ProjectNumber Integer The number of the project that contains this column.
Name String The project column's name.
Purpose String The semantic purpose of the column.
ResourcePath String The HTTP path for this project column.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
Url String The HTTP URL for this project column

GitHub Connector for CData Sync

Projects

Lists information about projects.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, Number, and State support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM Projects WHERE UserLogin = 'MyUserLogin' AND RepositoryName = 'MyRepo'

SELECT * FROM Projects WHERE Number=2

SELECT * FROM Projects WHERE State = 'all'

Columns

Name Type OrderBySupport Description
Id [KEY] String The project ID.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
Body String The project's description body.
BodyHTML String The projects description body rendered to HTML.
Closed Boolean true if the object is closed (definition of closed may depend on type).
ClosedAt Datetime Identifies the date and time when the object was closed.
CreatedAt Datetime True Identifies the date and time when the object was created.
Creator String The actor's login name who originally created the project.
Name String True The project's name.
Number Integer The project's number.
ResourcePath String The HTTP path for this project.
State String Whether the project is open or closed.

The allowed values are OPEN, CLOSED.

UpdatedAt Datetime True Identifies the date and time when the object was last updated.
Url String The HTTP URL for this project.
ViewerCanUpdate Boolean Check if the current viewer can update this object.

GitHub Connector for CData Sync

PullRequestReviews

Lists information about pull request reviews in a repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, PullRequestNumber, Author, and State support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM PullRequestReviews WHERE RepositoryName = 'test'

SELECT * FROM PullRequestReviews WHERE RepositoryName = 'test' AND Author = 'testaccount71'

SELECT * FROM PullRequestReviews WHERE RepositoryName='test' AND State IN ('PENDING','DISMISSED')

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the pull request review.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
PullRequestNumber Integer Identifies the pull request associated with this pull request review.
Body String Identifies the pull request review body.
BodyHTML String The body rendered to HTML.
BodyText String The body of this review rendered as plain text.
CreatedAt Datetime Identifies the date and time when the object was created.
CreatedViaEmail Boolean Check if this comment was created via an email reply.
IncludesCreatedEdit Boolean Check if this comment was edited and includes an edit with the creation data.
LastEditedAt Datetime The moment the editor made the last edit.
PublishedAt Datetime Identifies when the comment was published at.
Author String The actor's username login who authored the comment.
ResourcePath String The HTTP path permalink for this PullRequestReview.
CommitId String Identifies the commit associated with this pull request review.
State String Identifies the current state of the pull request review.

The allowed values are PENDING, COMMENTED, APPROVED, CHANGES_REQUESTED, DISMISSED.

SubmittedAt Datetime Identifies when the Pull Request Review was submitted.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
Url String The HTTP URL permalink for this PullRequestReview.
ViewerCanDelete Boolean Check if the current viewer can delete this object.
ViewerCanReact Boolean Can user react to this subject.
ViewerCanUpdate Boolean Check if the current viewer can update this object.
ViewerDidAuthor Boolean Did the viewer author this comment.

GitHub Connector for CData Sync

PullRequests

Lists information about pull requests in a repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, BaseRefName, HeadRefName, Number, and State support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM PullRequests WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

SELECT * FROM PullRequests WHERE Number = 8
  
SELECT * FROM PullRequests WHERE State = 'all'

SELECT * FROM PullRequests WHERE BaseRefName = 'newbranch'

SELECT * FROM PullRequests WHERE HeadRefName = 'master'

SELECT * FROM PullRequests WHERE RepositoryName='MyRepo' AND State IN ('OPEN','MERGED')

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the pull request.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
ActiveLockReason String Reason that the conversation was locked.
Additions Int The number of additions in this pull request.
Author String The actor's login name who authored the comment.
AuthorAssociation String Author's association with the subject of the comment.
BaseRefPrefix String Identifies the prefix of the base Ref associated with the pull request.
BaseRefName String Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted.
BaseRefOid String Identifies the OID of the base ref associated with the pull request, even if the ref has been deleted.
Body String The body as Markdown.
BodyHTML String The body rendered to HTML.
BodyText String The body rendered to text.
ChangedFiles Int The number of changed files in this pull request.
ChecksResourcePath String The HTTP path for the checks of this pull request.
ChecksUrl String The HTTP URL for the checks of this pull request.
Closed Boolean true if the pull request is closed.
ClosedAt Datetime Identifies the date and time when the object was closed.
CreatedAt Datetime True Identifies the date and time when the object was created.
CreatedViaEmail Boolean Check if this comment was created via an email reply.
DatabaseId Int Identifies the primary key from the database.
Deletions Int The number of deletions in this pull request.
Editor String The actor's login name who edited this pull request's body.
HeadRefPrefix String Identifies the prefix of the head Ref associated with the pull request.
HeadRefName String Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted.
HeadRefOid String Identifies the OID of the head ref associated with the pull request, even if the ref has been deleted.
HeadRepositoryOwner String The owner's login name of the repository associated with this pull request's head Ref.
IncludesCreatedEdit Boolean Check if this comment was edited and includes an edit with the creation data.
IsCrossRepository Boolean The head and base repositories are different.
IsDraft Boolean Identifies if the pull request is a draft.
LastEditedAt Datetime The moment the editor made the last edit.
Locked Boolean true if the pull request is locked.
MaintainerCanModify Boolean Indicates whether maintainers can modify the pull request.
MergeCommitId String The commit ID that was created when this pull request was merged.
Mergeable String Whether or not the pull request can be merged based on the existence of merge conflicts.
Merged Boolean Whether or not the pull request was merged.
MergedAt Datetime The date and time that the pull request was merged.
MergedBy String The actor's login name who merged the pull request.
MilestoneId String Identifies the milestone's ID associated with the pull request.
Number Integer Identifies the pull request number.
Permalink String The permalink to the pull request.
PotentialMergeCommitId String The commit ID that GitHub automatically generated to test if this pull request could be merged. This field will not return a value if the pull request is merged, or if the test merge commit is still being generated. See the mergeable field for more details on the mergeability of the pull request.
PublishedAt Datetime Identifies when the comment was published at.
ResourcePath String The HTTP path for this pull request.
RevertResourcePath String The HTTP path for reverting this pull request.
RevertUrl String The HTTP URL for reverting this pull request.
ReviewDecision String The current status of this pull request with respect to code review.
State String Identifies the state of the pull request.

The allowed values are OPEN, CLOSED, MERGED.

Title String Identifies the pull request title.
UpdatedAt Datetime True Identifies the date and time when the object was last updated.
Url String The HTTP URL for this pull request.
ViewerCanApplySuggestion Boolean Whether or not the viewer can apply suggestion.
ViewerCanReact Boolean Can user react to this subject.
ViewerCanSubscribe Boolean Check if the viewer is able to change their subscription status for the repository.
ViewerCanUpdate Boolean Check if the current viewer can update this object.
ViewerDidAuthor Boolean Did the viewer author this comment.
ViewerSubscription String Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.

GitHub Connector for CData Sync

ReleaseAssets

List of releases assets which are dependent on a release.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, ReleaseTagName, and Name support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM ReleaseAssets WHERE RepositoryName = 'test'

SELECT * FROM ReleaseAssets WHERE RepositoryName = 'test' AND ReleaseTagName = 'value8888'

SELECT * FROM ReleaseAssets WHERE RepositoryName = 'test' AND Name = 'hola21.zip'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the asset.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
ReleaseTagName String The ID of the release that the asset is associated with.
ContentType String The asset's content-type.
CreatedAt Datetime Identifies the date and time when the object was created.
DownloadCount Int The number of times this asset was downloaded.
DownloadUrl String Identifies the URL where you can download the release asset via the browser.
Name String Identifies the title of the release asset.
Size Int The size (in bytes) of the asset.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
UploadedBy String The user login name that performed the upload.
Url String Identifies the URL of the release asset.

GitHub Connector for CData Sync

Releases

Lists information about the different releases of a repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin value.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, RepositoryName, and TagName support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM Releases

SELECT * FROM Releases WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

SELECT * FROM Releases WHERE RepositoryName = 'test' AND TagName = 'value8888'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the release.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
Author String The author's login name of the release.
CreatedAt Datetime True Identifies the date and time when the object was created.
Description String The description of the release.
DescriptionHTML String The description of this release rendered to HTML.
IsDraft Boolean Whether or not the release is a draft.
IsPrerelease Boolean Whether or not the release is a prerelease.
Name String True The title of the release.
PublishedAt Datetime Identifies the date and time when the release was created.
ResourcePath String The HTTP path for this issue.
ShortDescriptionHTML String A description of the release, rendered to HTML without any links in it. Arguments limit (Int) How many characters to return. The default value is 200.
TagName String The name of the release's Git tag.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
Url String The HTTP URL for this issue.

GitHub Connector for CData Sync

Repositories

Lists information about a user's repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin, IsArchived, IsFork, IsMirror, and IsPrivate support the following operator: =
  • Name, LicenseKey, and LanguageName support the following operators: =,!=
  • CreatedAt, PushedAt, and ForkCountsupport the following operators: =,>,>=,<,<=
For example, the following queries are processed server side:
SELECT * FROM Repositories WHERE UserLogin = 'MyUser'

SELECT * FROM Repositories WHERE Name = 'aName'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the repository.
UserLogin String The login name of the user.
OwnerLogin String The repository's owner username to login.
OwnerId String The repository's owner ID.
Name String The name of the repository.
Description String The description of the repository.
Url String The HTTP URL for this repository.
CreatedAt Datetime Identifies the date and time when the object was created.
UpdatedAt Datetime True Identifies the date and time when the object was last updated.
PushedAt Datetime Identifies when the repository was last pushed to.
DeleteBranchOnMerge Bool Whether or not branches are automatically deleted when merged in this repository.
DescriptionHTML String The description of the repository rendered to HTML.
DiskUsage Integer The number of kilobytes this repository occupies on disk.
ForkCount Integer Returns how many forks there are of this repository in the whole network.
LicenseKey String The key of the license associated with the repository.
HasIssuesEnabled Bool Indicates if the repository has issues feature enabled.
HasProjectsEnabled Bool Indicates if the repository has the Projects feature enabled.
HasWikiEnabled Bool Indicates if the repository has wiki feature enabled.
HomepageUrl String The repository's URL.
IsArchived Bool Indicates if the repository is unmaintained.
IsDisabled Bool Returns whether or not this repository disabled.
IsFork Bool Identifies if the repository is a fork.
IsLocked Bool Indicates if the repository has been locked or not.
IsMirror Bool Identifies if the repository is a mirror.
IsPrivate Bool Identifies if the repository is private.
IsTemplate Bool Identifies if the repository is a template that can be used to generate new repositories.
MergeCommitAllowed Bool Whether or not PRs are merged with a merge commit on this repository.
ParentId String The repository parent ID, if this is a fork.
TemplateRepositoryId String The ID of the repository from which this repository was generated, if any.
LockReason String The reason the repository has been locked.

The allowed values are BILLING, MIGRATING, MOVING, RENAME.

MirrorUrl String The repository's original mirror URL.
OpenGraphImageUrl String The image used to represent this repository in Open Graph data.
LanguageId String The ID of the current primary language.
LanguageName String The name defined for the current language.
LanguageColor String The color defined for the current language.
ProjectsResourcePath String The HTTP path listing the repository's projects.
ProjectsUrl String The HTTP URL listing the repository's projects.
SSHUrl String The SSH URL to clone this repository.
RebaseMergeAllowed Bool Whether or not rebase-merging is enabled on this repository.
ResourcePath String The HTTP path for this repository.
ShortDescriptionHTML String A description of the repository, rendered to HTML without any links in it.
ViewerPermission String The users permission level on the repository. Will return null if authenticated as an GitHub App.

The allowed values are ADMIN, MAINTAIN, READ, TRIAGE, WRITE.

ViewerSubscription String Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.

The allowed values are IGNORED, SUBSCRIBED, UNSUBSCRIBED.

SquashMergeAllowed Bool Whether or not squash-merging is enabled on this repository.
UsesCustomOpenGraphImage Bool Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar.
ViewerCanAdminister Bool Indicates whether the viewer has admin permissions on this repository.
ViewerCanCreateProjects Bool Can the current viewer create new projects on this owner.
ViewerCanSubscribe Bool Check if the viewer is able to change their subscription status for the repository.
ViewerCanUpdateTopics Bool Indicates whether the viewer can update the topics of this repository.
ViewerHasStarred Bool Returns a boolean indicating whether the viewing user has starred this starrable.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.

Name Type Description
Topic String You can find all of the repositories that are classified with a particular topic.
Topics Integer You can search repositories by the number of topics that have been applied to them.
Stars Integer You can search repositories based on the number of stars a repository has.
Followers Integer You can filter repositories based on the number of followers that they have.
Size Integer You can filter repositories based on their sizes (in kilobytes).

GitHub Connector for CData Sync

Topics

A list of applied repository-topic associations for this repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin and RepositoryName support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM Topics WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

Columns

Name Type OrderBySupport Description
Id [KEY] String The id of the topic.
UserLogin String The login name of the user.
RepositoryName String The name of the repository.
Name String The topic's name.
ViewerHasStarred Bool Returns a boolean indicating whether the viewing user has starred this starrable.
URL String The HTTP URL for this repository-topic.
ResourcePath String The HTTP path for this repository-topic.

GitHub Connector for CData Sync

Users

Lists information about GitHub users.

View-Specific Information

Select

By default view will return information about all the registered users in GitHub. Note: This can be quite slow since GitHub has more than 20 million registered users.

If you specify the Login column, this view will only return information about the specified user.

The Sync App uses the GitHub API to process search criteria that refer to UserLogin. The Sync App processes other filters client-side within the Sync App. For example, the following queries are processed server side. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refers to other columns will cause an error.

  • Login and Location support the following operator: =,!=
  • CreatedAt supports the following operators: =,>,>=,<,<=

SELECT * FROM Users WHERE Login = 'MyUser'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the user.
Login String The username used to login.
AnyPinnableItems Boolean Determine if this repository owner has any items that can be pinned to their profile. Arguments type (PinnableItemType) Filter to only a particular kind of pinnable item.
AvatarUrl String A URL pointing to the user's public avatar. Arguments size (Int) The size of the resulting square image.
Bio String The user's public profile bio.
BioHTML String The user's public profile bio as HTML.
Company String The user's public profile company.
CompanyHTML String The user's public profile company as HTML.
CreatedAt Datetime Identifies the date and time when the object was created.
DatabaseId Int Identifies the primary key from the database.
Email String The user's publicly visible profile email.
IsBountyHunter Boolean Whether or not this user is a participant in the GitHub Security Bug Bounty.
IsCampusExpert Boolean Whether or not this user is a participant in the GitHub Campus Experts Program.
IsDeveloperProgramMember Boolean Whether or not this user is a GitHub Developer Program member.
IsEmployee Boolean Whether or not this user is a GitHub employee.
IsHireable Boolean Whether or not the user has marked themselves as for hire.
IsSiteAdmin Boolean Whether or not this user is a site administrator.
IsViewer Boolean Whether or not this user is the viewing user.
Location String The user's public profile location.
Name String The user's public profile name.
PinnedItemsRemaining Int Returns how many more items this profile owner can pin to their profile.
ProjectsResourcePath String The HTTP path listing user's projects.
ProjectsUrl String The HTTP URL listing user's projects.
ResourcePath String The HTTP path for this user.
TwitterUsername String The user's Twitter username.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
Url String The HTTP URL for this user.
ViewerCanChangePinnedItems Boolean Can the viewer pin repositories and gists to the profile?.
ViewerCanCreateProjects Boolean Can the current viewer create new projects on this owner.
ViewerCanFollow Boolean Whether or not the viewer is able to follow the user.
ViewerIsFollowing Boolean Whether or not this user is followed by the viewer.
WebsiteUrl String A URL pointing to the user's public website/blog.

Pseudo-Columns

Pseudo column fields are used in the WHERE clause of SELECT statements and offer a more granular control over the tuples that are returned from the data source.

Name Type Description
Repositories Integer You can filter users based on the number of repositories they own.
Language String You can search for users based on the languages of repositories they own.
Followers Integer You can filter users based on the number of followers that they have.

GitHub Connector for CData Sync

Watchers

A list of users watching the repository.

View-Specific Information

You must specify the UserLogin when executing a SELECT query against this view. You can specify the values in the WHERE clause or as connection properties. A value specified in the WHERE clause takes precedence over the connection property.

If you do not specify a UserLogin value, the Sync App will use the login name of the authenticated user.

Select

The Sync App uses the GitHub API to restrict results to the specified UserLogin and RepositoryName values.

The Sync App processes other filters client-side within the Sync App. You can turn off the client-side execution of the query by setting SupportEnhancedSQL to false in which case any search criteria that refer to other columns will cause an error.

  • UserLogin and RepositoryName support the following operator: =
For example, the following queries are processed server side:
SELECT * FROM Watchers WHERE RepositoryName = 'MyRepo'

SELECT * FROM Watchers WHERE UserLogin = 'MyUser' AND RepositoryName = 'MyRepo'

Columns

Name Type OrderBySupport Description
Id [KEY] String The ID of the user.
UserLogin String The login name of the user.
RepositoryName [KEY] String The name of the repository.
Name String The user's public profile name.
Company String The user's public profile company.
CompanyHTML String The user's public profile company as HTML.
CreatedAt Datetime Identifies the date and time when the object was created.
Email String The user's publicly visible profile email.
IsBountyHunter Bool Whether or not this user is a participant in the GitHub Security Bug Bounty.
IsCampusExpert Bool Whether or not this user is a participant in the GitHub Campus Experts Program.
IsDeveloperProgramMember Bool Whether or not this user is a GitHub Developer Program member.
IsEmployee Bool Whether or not this user is a GitHub employee.
IsHireable Bool Whether or not the user has marked themselves as for hire.
IsSiteAdmin Bool Whether or not this user is a site administrator.
IsViewer Bool Whether or not this user is the viewing user.
Location String The user's public profile location.
PinnedItemsRemaining Integer Returns how many more items this profile owner can pin to their profile.
ProjectsUrl String The HTTP URL listing user's projects.
ResourcePath String The HTTP path for this user.
TwitterUsername String The user's Twitter username.
UpdatedAt Datetime Identifies the date and time when the object was last updated.
URL String The HTTP URL for this user.
ViewerCanChangePinnedItems Bool Can the viewer pin repositories and gists to the profile?.
ViewerCanCreateProjects Bool Can the current viewer create new projects on this owner.
ViewerCanFollow Bool Whether or not the viewer is able to follow the user.
ViewerIsFollowing Bool Whether or not this user is followed by the viewer.
WebsiteUrl String A URL pointing to the user's public website/blog.

GitHub Connector for CData Sync

Connection String Options

The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider. Click the links for further details.

For more information on establishing a connection, see Establishing a Connection.

Connection


PropertyDescription
RepositoryNameRestrict query results by the repository name.
UserLoginRestrict query results by UserLogin.

OAuth


PropertyDescription
OAuthClientIdThe client Id assigned when you register your application with an OAuth authorization server.
OAuthClientSecretThe client secret assigned when you register your application with an OAuth authorization server.

SSL


PropertyDescription
SSLServerCertThe certificate to be accepted from the server when connecting using TLS/SSL.

Firewall


PropertyDescription
FirewallTypeThe protocol used by a proxy-based firewall.
FirewallServerThe name or IP address of a proxy-based firewall.
FirewallPortThe TCP port for a proxy-based firewall.
FirewallUserThe user name to use to authenticate with a proxy-based firewall.
FirewallPasswordA password used to authenticate to a proxy-based firewall.

Proxy


PropertyDescription
ProxyAutoDetectThis indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.
ProxyServerThe hostname or IP address of a proxy to route HTTP traffic through.
ProxyPortThe TCP port the ProxyServer proxy is running on.
ProxyAuthSchemeThe authentication type to use to authenticate to the ProxyServer proxy.
ProxyUserA user name to be used to authenticate to the ProxyServer proxy.
ProxyPasswordA password to be used to authenticate to the ProxyServer proxy.
ProxySSLTypeThe SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .

Logging


PropertyDescription
LogModulesCore modules to be included in the log file.

Schema


PropertyDescription
LocationA path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemasThis property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
TablesThis property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
ViewsRestricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.

Miscellaneous


PropertyDescription
MaxPointsPerCallSpecifies how many points a call will cost.
MaxRowsLimits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.
OtherThese hidden properties are used only in specific use cases.
PseudoColumnsThis property indicates whether or not to include pseudo columns as columns to the table.
TimeoutThe value in seconds until the timeout error is thrown, canceling the operation.
UserDefinedViewsA filepath pointing to the JSON configuration file containing your custom views.
GitHub Connector for CData Sync

Connection

This section provides a complete list of the Connection properties you can configure in the connection string for this provider.


PropertyDescription
RepositoryNameRestrict query results by the repository name.
UserLoginRestrict query results by UserLogin.
GitHub Connector for CData Sync

RepositoryName

Restrict query results by the repository name.

Remarks

Optional when creating a new connection. However, this table is required to query some tables.

Where RepositoryName is required, you must also specify UserLogin.

GitHub Connector for CData Sync

UserLogin

Restrict query results by UserLogin.

Remarks

You can set this connection property to restrict query results by UserLogin.

This property is optional when creating a connection; you can also specify the UserLogin pseudo column in your query to override the value set in the connection. The driver uses the currently authenticated user's UserLogin if one is not explicitly specified as a connection property or as a criteria.

GitHub Connector for CData Sync

OAuth

This section provides a complete list of the OAuth properties you can configure in the connection string for this provider.


PropertyDescription
OAuthClientIdThe client Id assigned when you register your application with an OAuth authorization server.
OAuthClientSecretThe client secret assigned when you register your application with an OAuth authorization server.
GitHub Connector for CData Sync

OAuthClientId

The client Id assigned when you register your application with an OAuth authorization server.

Remarks

As part of registering an OAuth application, you will receive the OAuthClientId value, sometimes also called a consumer key, and a client secret, the OAuthClientSecret.

GitHub Connector for CData Sync

OAuthClientSecret

The client secret assigned when you register your application with an OAuth authorization server.

Remarks

As part of registering an OAuth application, you will receive the OAuthClientId, also called a consumer key. You will also receive a client secret, also called a consumer secret. Set the client secret in the OAuthClientSecret property.

GitHub Connector for CData Sync

SSL

This section provides a complete list of the SSL properties you can configure in the connection string for this provider.


PropertyDescription
SSLServerCertThe certificate to be accepted from the server when connecting using TLS/SSL.
GitHub Connector for CData Sync

SSLServerCert

The certificate to be accepted from the server when connecting using TLS/SSL.

Remarks

If using a TLS/SSL connection, this property can be used to specify the TLS/SSL certificate to be accepted from the server. Any other certificate that is not trusted by the machine is rejected.

This property can take the following forms:

Description Example
A full PEM Certificate (example shortened for brevity) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
A path to a local file containing the certificate C:\cert.cer
The public key (example shortened for brevity) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
The MD5 Thumbprint (hex values can also be either space or colon separated) ecadbdda5a1529c58a1e9e09828d70e4
The SHA1 Thumbprint (hex values can also be either space or colon separated) 34a929226ae0819f2ec14b4a3d904f801cbb150d

If not specified, any certificate trusted by the machine is accepted.

Use '*' to signify to accept all certificates. Note that this is not recommended due to security concerns.

GitHub Connector for CData Sync

Firewall

This section provides a complete list of the Firewall properties you can configure in the connection string for this provider.


PropertyDescription
FirewallTypeThe protocol used by a proxy-based firewall.
FirewallServerThe name or IP address of a proxy-based firewall.
FirewallPortThe TCP port for a proxy-based firewall.
FirewallUserThe user name to use to authenticate with a proxy-based firewall.
FirewallPasswordA password used to authenticate to a proxy-based firewall.
GitHub Connector for CData Sync

FirewallType

The protocol used by a proxy-based firewall.

Remarks

This property specifies the protocol that the Sync App will use to tunnel traffic through the FirewallServer proxy. Note that by default, the Sync App connects to the system proxy; to disable this behavior and connect to one of the following proxy types, set ProxyAutoDetect to false.

Type Default Port Description
TUNNEL 80 When this is set, the Sync App opens a connection to GitHub and traffic flows back and forth through the proxy.
SOCKS4 1080 When this is set, the Sync App sends data through the SOCKS 4 proxy specified by FirewallServer and FirewallPort and passes the FirewallUser value to the proxy, which determines if the connection request should be granted.
SOCKS5 1080 When this is set, the Sync App sends data through the SOCKS 5 proxy specified by FirewallServer and FirewallPort. If your proxy requires authentication, set FirewallUser and FirewallPassword to credentials the proxy recognizes.

To connect to HTTP proxies, use ProxyServer and ProxyPort. To authenticate to HTTP proxies, use ProxyAuthScheme, ProxyUser, and ProxyPassword.

GitHub Connector for CData Sync

FirewallServer

The name or IP address of a proxy-based firewall.

Remarks

This property specifies the IP address, DNS name, or host name of a proxy allowing traversal of a firewall. The protocol is specified by FirewallType: Use FirewallServer with this property to connect through SOCKS or do tunneling. Use ProxyServer to connect to an HTTP proxy.

Note that the Sync App uses the system proxy by default. To use a different proxy, set ProxyAutoDetect to false.

GitHub Connector for CData Sync

FirewallPort

The TCP port for a proxy-based firewall.

Remarks

This specifies the TCP port for a proxy allowing traversal of a firewall. Use FirewallServer to specify the name or IP address. Specify the protocol with FirewallType.

GitHub Connector for CData Sync

FirewallUser

The user name to use to authenticate with a proxy-based firewall.

Remarks

The FirewallUser and FirewallPassword properties are used to authenticate against the proxy specified in FirewallServer and FirewallPort, following the authentication method specified in FirewallType.

GitHub Connector for CData Sync

FirewallPassword

A password used to authenticate to a proxy-based firewall.

Remarks

This property is passed to the proxy specified by FirewallServer and FirewallPort, following the authentication method specified by FirewallType.

GitHub Connector for CData Sync

Proxy

This section provides a complete list of the Proxy properties you can configure in the connection string for this provider.


PropertyDescription
ProxyAutoDetectThis indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.
ProxyServerThe hostname or IP address of a proxy to route HTTP traffic through.
ProxyPortThe TCP port the ProxyServer proxy is running on.
ProxyAuthSchemeThe authentication type to use to authenticate to the ProxyServer proxy.
ProxyUserA user name to be used to authenticate to the ProxyServer proxy.
ProxyPasswordA password to be used to authenticate to the ProxyServer proxy.
ProxySSLTypeThe SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .
GitHub Connector for CData Sync

ProxyAutoDetect

This indicates whether to use the system proxy settings or not. This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.

Remarks

This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.

To connect to an HTTP proxy, see ProxyServer. For other proxies, such as SOCKS or tunneling, see FirewallType.

GitHub Connector for CData Sync

ProxyServer

The hostname or IP address of a proxy to route HTTP traffic through.

Remarks

The hostname or IP address of a proxy to route HTTP traffic through. The Sync App can use the HTTP, Windows (NTLM), or Kerberos authentication types to authenticate to an HTTP proxy.

If you need to connect through a SOCKS proxy or tunnel the connection, see FirewallType.

By default, the Sync App uses the system proxy. If you need to use another proxy, set ProxyAutoDetect to false.

GitHub Connector for CData Sync

ProxyPort

The TCP port the ProxyServer proxy is running on.

Remarks

The port the HTTP proxy is running on that you want to redirect HTTP traffic through. Specify the HTTP proxy in ProxyServer. For other proxy types, see FirewallType.

GitHub Connector for CData Sync

ProxyAuthScheme

The authentication type to use to authenticate to the ProxyServer proxy.

Remarks

This value specifies the authentication type to use to authenticate to the HTTP proxy specified by ProxyServer and ProxyPort.

Note that the Sync App will use the system proxy settings by default, without further configuration needed; if you want to connect to another proxy, you will need to set ProxyAutoDetect to false, in addition to ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.

The authentication type can be one of the following:

  • BASIC: The Sync App performs HTTP BASIC authentication.
  • DIGEST: The Sync App performs HTTP DIGEST authentication.
  • NEGOTIATE: The Sync App retrieves an NTLM or Kerberos token based on the applicable protocol for authentication.
  • PROPRIETARY: The Sync App does not generate an NTLM or Kerberos token. You must supply this token in the Authorization header of the HTTP request.

If you need to use another authentication type, such as SOCKS 5 authentication, see FirewallType.

GitHub Connector for CData Sync

ProxyUser

A user name to be used to authenticate to the ProxyServer proxy.

Remarks

The ProxyUser and ProxyPassword options are used to connect and authenticate against the HTTP proxy specified in ProxyServer.

You can select one of the available authentication types in ProxyAuthScheme. If you are using HTTP authentication, set this to the user name of a user recognized by the HTTP proxy. If you are using Windows or Kerberos authentication, set this property to a user name in one of the following formats:

user@domain
domain\user

GitHub Connector for CData Sync

ProxyPassword

A password to be used to authenticate to the ProxyServer proxy.

Remarks

This property is used to authenticate to an HTTP proxy server that supports NTLM (Windows), Kerberos, or HTTP authentication. To specify the HTTP proxy, you can set ProxyServer and ProxyPort. To specify the authentication type, set ProxyAuthScheme.

If you are using HTTP authentication, additionally set ProxyUser and ProxyPassword to HTTP proxy.

If you are using NTLM authentication, set ProxyUser and ProxyPassword to your Windows password. You may also need these to complete Kerberos authentication.

For SOCKS 5 authentication or tunneling, see FirewallType.

By default, the Sync App uses the system proxy. If you want to connect to another proxy, set ProxyAutoDetect to false.

GitHub Connector for CData Sync

ProxySSLType

The SSL type to use when connecting to the ProxyServer proxy.

Remarks

This property determines when to use SSL for the connection to an HTTP proxy specified by ProxyServer. This value can be AUTO, ALWAYS, NEVER, or TUNNEL. The applicable values are the following:

AUTODefault setting. If the URL is an HTTPS URL, the Sync App will use the TUNNEL option. If the URL is an HTTP URL, the component will use the NEVER option.
ALWAYSThe connection is always SSL enabled.
NEVERThe connection is not SSL enabled.
TUNNELThe connection is through a tunneling proxy. The proxy server opens a connection to the remote host and traffic flows back and forth through the proxy.

GitHub Connector for CData Sync

ProxyExceptions

A semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .

Remarks

The ProxyServer is used for all addresses, except for addresses defined in this property. Use semicolons to separate entries.

Note that the Sync App uses the system proxy settings by default, without further configuration needed; if you want to explicitly configure proxy exceptions for this connection, you need to set ProxyAutoDetect = false, and configure ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.

GitHub Connector for CData Sync

Logging

This section provides a complete list of the Logging properties you can configure in the connection string for this provider.


PropertyDescription
LogModulesCore modules to be included in the log file.
GitHub Connector for CData Sync

LogModules

Core modules to be included in the log file.

Remarks

Only the modules specified (separated by ';') will be included in the log file. By default all modules are included.

See the Logging page for an overview.

GitHub Connector for CData Sync

Schema

This section provides a complete list of the Schema properties you can configure in the connection string for this provider.


PropertyDescription
LocationA path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemasThis property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
TablesThis property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
ViewsRestricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.
GitHub Connector for CData Sync

Location

A path to the directory that contains the schema files defining tables, views, and stored procedures.

Remarks

The path to a directory which contains the schema files for the Sync App (.rsd files for tables and views, .rsb files for stored procedures). The folder location can be a relative path from the location of the executable. The Location property is only needed if you want to customize definitions (for example, change a column name, ignore a column, and so on) or extend the data model with new tables, views, or stored procedures.

If left unspecified, the default location is "%APPDATA%\\CData\\GitHub Data Provider\\Schema" with %APPDATA% being set to the user's configuration directory:

GitHub Connector for CData Sync

BrowsableSchemas

This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Remarks

Listing the schemas from databases can be expensive. Providing a list of schemas in the connection string improves the performance.

GitHub Connector for CData Sync

Tables

This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.

Remarks

Listing the tables from some databases can be expensive. Providing a list of tables in the connection string improves the performance of the Sync App.

This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.

Specify the tables you want in a comma-separated list. Each table should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.

GitHub Connector for CData Sync

Views

Restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.

Remarks

Listing the views from some databases can be expensive. Providing a list of views in the connection string improves the performance of the Sync App.

This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.

Specify the views you want in a comma-separated list. Each view should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.

GitHub Connector for CData Sync

Miscellaneous

This section provides a complete list of the Miscellaneous properties you can configure in the connection string for this provider.


PropertyDescription
MaxPointsPerCallSpecifies how many points a call will cost.
MaxRowsLimits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.
OtherThese hidden properties are used only in specific use cases.
PseudoColumnsThis property indicates whether or not to include pseudo columns as columns to the table.
TimeoutThe value in seconds until the timeout error is thrown, canceling the operation.
UserDefinedViewsA filepath pointing to the JSON configuration file containing your custom views.
GitHub Connector for CData Sync

MaxPointsPerCall

Specifies how many points a call will cost.

Remarks

The GraphQL API v4 rate limit is 5,000 points per hour.

GitHub Connector for CData Sync

MaxRows

Limits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.

Remarks

Limits the number of rows returned rows when no aggregation or group by is used in the query. This helps avoid performance issues at design time.

GitHub Connector for CData Sync

Other

These hidden properties are used only in specific use cases.

Remarks

The properties listed below are available for specific use cases. Normal driver use cases and functionality should not require these properties.

Specify multiple properties in a semicolon-separated list.

Integration and Formatting

DefaultColumnSizeSets the default length of string fields when the data source does not provide column length in the metadata. The default value is 2000.
ConvertDateTimeToGMTDetermines whether to convert date-time values to GMT, instead of the local time of the machine.
RecordToFile=filenameRecords the underlying socket data transfer to the specified file.

GitHub Connector for CData Sync

PseudoColumns

This property indicates whether or not to include pseudo columns as columns to the table.

Remarks

This setting is particularly helpful in Entity Framework, which does not allow you to set a value for a pseudo column unless it is a table column. The value of this connection setting is of the format "Table1=Column1, Table1=Column2, Table2=Column3". You can use the "*" character to include all tables and all columns; for example, "*=*".

GitHub Connector for CData Sync

Timeout

The value in seconds until the timeout error is thrown, canceling the operation.

Remarks

If Timeout = 0, operations do not time out. The operations run until they complete successfully or until they encounter an error condition.

If Timeout expires and the operation is not yet complete, the Sync App throws an exception.

GitHub Connector for CData Sync

UserDefinedViews

A filepath pointing to the JSON configuration file containing your custom views.

Remarks

User Defined Views are defined in a JSON-formatted configuration file called UserDefinedViews.json. The Sync App automatically detects the views specified in this file.

You can also have multiple view definitions and control them using the UserDefinedViews connection property. When you use this property, only the specified views are seen by the Sync App.

This User Defined View configuration file is formatted as follows:

  • Each root element defines the name of a view.
  • Each root element contains a child element, called query, which contains the custom SQL query for the view.

For example:

{
	"MyView": {
		"query": "SELECT * FROM Users WHERE MyColumn = 'value'"
	},
	"MyView2": {
		"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
	}
}
Use the UserDefinedViews connection property to specify the location of your JSON configuration file. For example:
"UserDefinedViews", "C:\\Users\\yourusername\\Desktop\\tmp\\UserDefinedViews.json"

Copyright (c) 2023 CData Software, Inc. - All rights reserved.
Build 22.0.8462