The CData Sync App provides a straightforward way to continuously pipeline your Microsoft SharePoint data to any database, data lake, or data warehouse, making it easily available for Analytics, Reporting, AI, and Machine Learning.
The Microsoft SharePoint connector can be used from the CData Sync application to pull data from Microsoft SharePoint and move it to any of the supported destinations.
The Sync App supports all versions of Microsoft SharePoint that support the SOAP API. This includes: Windows SharePoint Services 3.0, SharePoint Server 2007+ (2010, 2013, etc.), and SharePoint Online. The Sync App models the custom lists of your SharePoint site as bidirectional tables; when you connect, the Sync App retrieves the metadata for these tables by calling SharePoint Web services. Supported authentication schemes are NTLM, Basic, Digest, Forms, Kerberos, SSO, STS (security token services), and SharePoint authentication cookies.
For required properties, see the Settings tab.
For connection properties that are not typically required, see the Advanced tab.
Setting URL:
Microsoft SharePoint works with all Lists and Documents in the global Microsoft Sharepoint site, or all Lists and Documents at individual sites.
To work with all Lists and Documents in the global Microsoft Sharepoint site, set the URL connection property to your Site Collection URL. For example:
https://teams.contoso.com
To work with all Lists and Documents at an individual site, set the URL connection property to your individual site URL. For example:
https://teams.contoso.com/TeamA
The following sections describe how to set the appropriate authentication properties for your working environment. For information about how to create a custom OAuth application (required for use with AzureAD in a Web application; optional for AzureAD access via a Desktop application or a Headless Server), see Creating a Custom OAuth Application.
Set SharePointEdition to "SharePoint Online" and set the User and Password to the credentials you use to log onto SharePoint, for example, the credentials to your Microsoft Online Services account.
Microsoft SharePoint online supports a number of cloud-based architectures, each of which supports a different set of authentication schemes:
If the user account domain is different from the domain configured with the identity provider, set SSODomain to the latter. This property may be required for any SSO.
Your organization may require Admin Consent when authorizing a new AzureAD application for your Azure Tenant. In all AzureAD flows, any initial installation and use of an AzureAD application requires that an administrator approve the application for their Azure Tenant. For details, see Creating a Custom OAuth Application.
Set the AuthScheme to ADFS. You must set the following connection properties:
AuthScheme=ADFS;User=ADFSUserName;Password=ADFSPassword;URL='http://sharepointserver/mysite';
Set the AuthScheme to Okta. The following connection properties are used to connect to Okta:
Example connection string:
AuthScheme=Okta;User=oktaUserName;Password=oktaPassword;URL='http://sharepointserver/mysite';
Set the AuthScheme to OneLogin. The following connection properties are used to connect to OneLogin:
Example connection string:
AuthScheme=OneLogin;User=OneLoginUserName;Password=OneLoginPassword;URL='http://sharepointserver/mysite';
Set the AuthScheme to PingFederate. The following connection properties are used to connect to PingFederate:
Example connection string:
AuthScheme=PingFederate;User=PingFederateUserName;Password=PingFederatePassword;URL='http://sharepointserver/mysite';
If you are running Microsoft SharePoint on an Azure VM, you can leverage Azure Managed Service Identity (MSI) credentials to connect:
The MSI credentials are automatically obtained for authentication.
Set the AuthScheme to OAUTHJWT. The following connection properties are used to connect to Microsoft SharePoint:
Set the AuthScheme to SharePointOAuth. The following connection properties are used to connect to SharePointOAuth:
Example connection string:
SharePointEdition='SharepointOnline';URL=https://rssbuscrm.sharepoint.com;Schema=REST;AuthScheme=SharepointOAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=11111111-1111-1111-1111-111111111111;OAuthClientSecret=1111111111111/11111111111111/11111111111111=;This AuthScheme works with the custom OAuth application. To generate credentials from a custom OAuth application, see Creating a Custom OAuth Application.
Microsoft SharePoint REST API is supported both on Sharepoint OnPremise and on Sharepoint Online. To connect using the REST API set Schema to REST.
The property SharePointEdition may be used to define the edition of Sharepoint.
SharePoint Online uses OAuth standard to authenticate. Follow the steps under "Authenticating to SharePoint Online" in Establishing a Connection for more information.
Follow the steps under "Authenticating to SharePoint On Premises" in Establishing a Connection for more information.
To authenticate to Microsoft SharePoint with Kerberos, set AuthScheme to NEGOTIATE.
Authenticating to Microsoft SharePoint via Kerberos requires you to define authentication properties and to choose how Kerberos should retrieve authentication tickets.
The Sync App provides three ways to retrieve the required Kerberos ticket, depending on whether or not the KRB5CCNAME and/or KerberosKeytabFile variables exist in your environment.
MIT Kerberos Credential Cache File
This option enables you to use the MIT Kerberos Ticket Manager or kinit command to get tickets. With this option there is no need to set the User or Password connection properties.
This option requires that KRB5CCNAME has been created in your system.
To enable ticket retrieval via MIT Cerberos Credential Cache Files:
If the ticket is successfully obtained, the ticket information appears in Kerberos Ticket Manager and is stored in the credential cache file.
The Sync App uses the cache file to obtain the Kerberos ticket to connect to Microsoft SharePoint.
Note: If you would prefer not to edit KRB5CCNAME, you can use the KerberosTicketCache property to set the file path manually. After this is set, the Sync App uses the specified cache file to obtain the Kerberos ticket to connect to Microsoft SharePoint.
Keytab File
If your environment lacks the KRB5CCNAME environment variable, you can retrieve a Kerberos ticket using a Keytab File.
To use this method, set the User property to the desired username, and set the KerberosKeytabFile property to a file path pointing to the keytab file associated with the user.
User and Password
If your environment lacks the KRB5CCNAME environment variable and the KerberosKeytabFile property has not been set, you can retrieve a ticket using a user and password combination.
To use this method, set the User and Password properties to the user/password combination that you use to authenticate with Microsoft SharePoint.
To enable this kind of cross-realm authentication, set the KerberosRealm and KerberosKDC properties to the values required for user authentication. Also, set the KerberosServiceRealm and KerberosServiceKDC properties to the values required to obtain the service ticket.
To make it easier to access data in advanced integrations, use the following connection properties to control column name identifiers and other aspects of data access:
This section details a selection of advanced features of the Microsoft SharePoint Sync App.
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.
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.
Configure the Sync App for compliance with Firewall and Proxy, including Windows proxies and HTTP proxies. You can also set up tunnel connections.
The Sync App offloads as much of the SELECT statement processing as possible to Microsoft SharePoint and then processes the rest of the query in memory (client-side).
See Query Processing for more information.
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.
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.
The Microsoft SharePoint Sync App also supports setting client certificates. Set the following to connect using a client certificate.
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.
Set the following properties:
The CData Sync App models Microsoft SharePoint entities in relational Tables, Views, and Stored Procedures. The table definitions are dynamically obtained based on your Microsoft SharePoint site. Any changes you make, such as adding a custom field or changing a field's data type, are automatically reflected when you connect.
The Sync App sets defaults to facilitate the maximum number of integrations; however, the following connection properties allow a greater granularity of customization, which is useful in advanced integrations:
The Sync App can expose custom lists from Microsoft SharePoint that are not mentioned in the Tables. The data model illustrates a sample of what your SharePoint site might look like. The actual data model will be obtained dynamically based on your user credentials and SharePoint site.
Typically, entities that cannot be modified are represented as Views, or read-only tables. You can also access custom views of a list as relational views.
To get data from a custom view of a list, you can set the ViewID pseudo column in the WHERE clause.
SELECT * FROM ListName WHERE ViewID='ID of the view'You can get the ID of the view from the Views list. You must specify the List pseudo column to get a list of views for that list. For instance:
SELECT * FROM Views WHERE List ='ListName'
The Sync App models the data in Microsoft SharePoint as a list of tables in a relational database that can be queried using standard SQL statements.
Name | Description |
Attachments | Reads or deletes attachments to the specified item on the specified list. |
Groups | Creates, updates, deletes, and queries Groups from SharePoint. |
Roles | Creates, updates, deletes, and queries Roles from SharePoint. |
Users | Updates, deletes, and queries Users from SharePoint. |
Views | Creates, updates, deletes, and queries the available lists in SharePoint. |
Reads or deletes attachments to the specified item on the specified list.
List and ItemId are required to return Attachments.
Call the AddAttachments stored procedure to add new attachments to a list item.
Name | Type | ReadOnly | Description |
Url [KEY] | String | True |
Description of the term set. |
List | String | True |
The internal name of the list to retrieve attachments from. |
ListDisplayName | String | True |
The display name of the list to retrieve attachments from. |
ItemID | String | True |
The Id of the item on the list to retrieve attachments from. |
Name | String | True |
The name of the attachment on the item. |
Creates, updates, deletes, and queries Groups from SharePoint.
The Name, DefaultLogin, and OwnerLogin columns are required to insert to this table.
To use the UserName pseudo column, you must set the value to the LoginName of the user. You can obtain the LoginName by querying the Users table.
Name | Type | ReadOnly | Description |
Name# [KEY] | String | False |
The name of the group. |
Description# | String | False |
A description of the group. |
OwnerLogin# | String | False |
The user name of the owner of the group. This value should be in the format DOMAIN\\username. |
OwnerType# | String | False |
The type of owner. User or group. |
DefaultLogin# | String | False |
The user name of the default user for the group. This value should be in the format DOMAIN\\username. |
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 |
UserName | String |
The logical name of the user to return groups for. Specify this value on the SELECT statement to return only groups the specified User is in. |
Creates, updates, deletes, and queries Roles from SharePoint.
To use the UserName pseudo column, you must set the value to the LoginName of the user. You can obtain the LoginName by querying the Users table.
To insert a Role, at a minimum the Name is required:
INSERT INTO Roles (Name) VALUES ('My Role')
Name | Type | ReadOnly | Description |
Name# [KEY] | String | False |
The name of the role. |
Description# | String | False |
A description of the role. |
Permissions# | Long | False |
A long representing the permissions for the role. |
RoleType | String | True |
The type of role. |
IsHidden | Boolean | True |
A boolean indicating if the role is hidden. |
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 |
UserName | String |
The login name of the user to return roles for. Specify this value on a SELECT statement to return only roles assigned to the specified user. |
GroupName | String |
The name of the group to return roles for. Specify this value on a SELECT statement to return only roles assigned to the specified group. |
Updates, deletes, and queries Users from SharePoint.
Retrieves all users created for the SharePoint Account:
SELECT * FROM Users
You can retrieve Users that belong to a specific Group. In this case specify the Group Name:
SELECT * FROM Users WHERE [Group] = "GroupName"
Or you can retrieve Users that have a specific Role. In this case specify the Role Name:
SELECT * FROM Users WHERE [Role] = "RoleName"
Name | Type | ReadOnly | Description |
ID | String | True |
The Id of the user. |
LoginName# [KEY] | String | False |
The login name of the user. |
Name# | String | False |
The name of the user. |
Email# | String | False |
The email address of the user. |
IsInDomainGroup | Boolean | True |
A boolean indicating if the user is in the domain group. |
IsSiteAdmin | Boolean | True |
A boolean indicating if the user is a site admin. |
Notes# | String | False |
Optional notes concerning the user. |
SecurityId | String | True |
The security Id (SID) for the user. |
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 |
Group | String |
The group you are adding a user to and selecting or deleting the user from. This is an input-only value and you must specify either Group or Role for inserts and selects, but you can optionally specify deletions. |
Role | String |
The role you are adding a user to and selecting or deleting the user from. This is an input-only value and you must specify either Group or Role for inserts and selects, but but you can optionally specify deletions. |
Creates, updates, deletes, and queries the available lists in SharePoint.
Views is a special table. It may be used to get, update, insert, and delete views from a specified List.
SELECT * FROM Views WHERE List = 'MyListName'
The List, Name, Type, and Fields columns are required to insert to this table.
Name | Type | ReadOnly | Description |
ID [KEY] | String | True |
The Id of the view. |
List | String | True |
The list the view is associated with. A list must be specified when performing SELECT statements if the Id is not specified. |
ViewID | String | True |
The Id of the view. May only be unique for the specific list. |
Name | String | False |
The name of the view. |
Type | String | False |
The type of view. This must have a value on inserts and updates. The allowed values are CALENDAR, GRID, HTML. The default value is HTML. |
Fields | String | False |
A comma-separated list of the fields associated with the view. This is space-sensitive. |
IsDefault | Boolean | False |
A boolean indicating if the view is the default view for the list. |
Query | String | False |
A query for the view. |
Views are similar to tables in the way that data is represented; however, views are read-only.
Queries can be executed against a view as if it were a normal table.
Name | Description |
FileVersions | Lists the versions of files available on SharePoint. |
GetValidTerms | Gets a list of valid terms for the specified column on the specified table. |
Lists | Lists the available lists in SharePoint. |
Permissions | The permissions for a site or list. Note: If ItemId is empty, set the ObjectType to List or web (an ObjectName must be specified when the ObjectType is list). If not, you must specify the ObjectName along with the ItemID. |
Subsites | Lists the available subsites. |
Lists the versions of files available on SharePoint.
Library and File must be specified to return results from this view.
Name | Type | Description |
ID [KEY] | String | The Id of the version. |
Comments | String | Comments about the particular version. |
CreateBy | String | The username of the SharePoint user who modified this version of the file. |
Date | Datetime | When the file was modified. |
Size | String | The size of this version of the file. |
Url | String | The URL to this version of the file. |
Library | String | The library name on SharePoint you are listing versions from. A library must be specified to retrieve the versions for a file.
The default value is Shared Documents. |
File | String | The name of the file on SharePoint to list versions for. You must specify a file to retrieve the versions for a file. |
Gets a list of valid terms for the specified column on the specified table.
GetValidTerms is a special view. It may be used to get valid terms for a Taxonomy or Managed Metadata column of a given list. To use the view, supply both the name of the table and the column for which you are looking to get valid terms. For example:
SELECT * FROM GetValidTerms WHERE List = 'MyListName' AND ColumnName = 'MyManagedMetadataColumn'
Name | Type | Description |
ID [KEY] | String | The identifier of the term. |
TermLabelValue | String | The label of the term. |
Description | String | Description of the term set. |
NameInRequestedLang | String | The name of the term set in the language requested by the client. |
IsOpen | Boolean | A Boolean indicating if the term set is open. |
Deprecated | Boolean | A Boolean indicating if the term is deprecated. |
InternalId | String | An internal identifier for the term. |
TermSetContact | String | The term set contact. |
ContainerDesc | String | The container node for the description. |
SingleTermLabelDesc | String | This fully describes a single term label. |
IsDefaultLabel | Boolean | True if the term label is the default term label. |
BelongsTo | String | This item describes a term set to which a term belongs. |
IsTaggingAvailable | Boolean | If the term set is available for tagging, this value is true. |
TermPath | String | Term path of the term with term labels. |
TermpathoftermwithIds | String | Term path of term with identifiers. |
ChildTerms | String | A string value that indicates a custom sort order for the child terms of the term identified by PertainingToTerm. |
HasChildTerms | Boolean | True if the term has child terms. |
PertainingToTerm | String | An identifier of the term that this term set information is pertaining to. |
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 |
List | String | The name of the list to get valid terms for. |
ColumnName | String | The name of the column to get valid terms for. |
LocaleId | String | The locale Id for the term. Defaults to 1033. |
Lists the available lists in SharePoint.
Lists can be used to list the tables in SharePoint. This will only return actual lists in SharePoint and not any special tables associated with the Sync App.
The following columns can be used in the WHERE clause: Title and BaseTemplate.
Name | Type | Description |
ID [KEY] | String | The Id of the list. |
Title | String | The title of the list. This column may be used in the WHERE clause and may be used with a wild card (*) character. |
Description | String | A description for the list. |
BaseTemplate | String | Indicates the type of template used to create the list. This column may be used in the WHERE clause. |
Version | Double | The version of the list. |
Url | String | The default URL of the list. |
EmailAlias | String | The email alias of the list. |
ImageUrl | String | The image URL of the list. |
ItemCount | Integer | The number of items in the list. |
Item_Deleted | Datetime | The last time an item was deleted from this list. |
Item_Modified | Datetime | The last time an item was modified from this list. |
SendToUrl | String | The send-to URL of the list. |
Created | Datetime | The time when the list was created. |
AllowDeletion | String | Whether items can be deleted. |
AllowMultiResponses | Boolean | A Boolean indicating if multiple responses are enabled for the survey. |
Direction | String | A string that contains LTR if the reading order is left-to-right, RTL if it is right-to-left, or None. |
EnableAssignedToEmail | Boolean | A Boolean indicating if assigned-to emails are enabled. Only applies to issues lists. |
EnableAttachments | Boolean | A Boolean indicating if attachments may be added to items in the list. Does not apply to document libraries. |
EnableModeration | Boolean | A Boolean indicating if content approval is enabled for the list. |
EnableVersioning | Boolean | A Boolean indicating if versioning is enabled for the list. |
Hidden | Boolean | A Boolean indicating if the list is hidden so that it does not appear on the Documents and Lists page, Quick Launch bar, Modify Site Content page, or Add Column page as an option for lookup fields. |
MultipleDataList | Boolean | A Boolean indicating if a meeting-workspace site contains data for multiple meeting instances within the site. |
Ordered | Boolean | A Boolean indicating if items in the list can be sorted on the Edit View page. |
Showuser | Boolean | A Boolean indicating if the names of users are shown in the results of the survey. |
The permissions for a site or list. Note: If ItemId is empty, set the ObjectType to List or web (an ObjectName must be specified when the ObjectType is list). If not, you must specify the ObjectName along with the ItemID.
Name | Type | Description |
MemberID [KEY] | String | The Id of the permission. |
Mask | Long | A 32-bit integer in 0x00000000 format that represents a Microsoft.SharePoint.SPRights value and defines the permission. Use the pipe symbol ('|') in C# or Or in Microsoft Visual Basic to delimit values when creating a custom permission mask that combines permissions. |
MemberIsUser | Bool | Indicate whether it is the permission for user. |
MemberGlobal | Bool | Indicate whether it is the permission for group. |
RoleName | String | A string that contains the name of the site group, the name of the cross-site group, or the user name (DOMAIN\User_Alias) of the user to whom the permission applies. |
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 |
ObjectName | String | A string that contains the name of the list or site. |
ObjectType | String | A string that specifies either List or Web. |
ItemID | String | Id of the item. |
Lists the available subsites.
Name | Type | Description |
Title | String | The name of the subsite. |
Url | String | The url of the subsite. |
The CData Sync App models Microsoft SharePoint entities in relational Tables, Views, and Stored Procedures. The table definitions are dynamically obtained based on your Microsoft SharePoint site. Any changes you make, such as adding a custom field or changing a field's data type, are automatically reflected when you connect.
Since tables are generated dynamically, documentation on specific tables is not available.
Views are tables that cannot be modified. Typically, read-only data are shown as views.
Since the REST API is OData based, server side filters, are done using OData standard. So the driver takes the most of the server filtering, by reading the metadata file and determing which filters can be done on the server.
NOTE: When executing "SELECT *" queries, the Microsoft SharePoint REST API response, does not return all the available fields. So to avoid too many null values, the provider will select all the columns explicitly using the
$select filter. However, the provider will do this only if the $select filter's length is not bigger than 1500, to avoid an error from Microsoft SharePoint REST API regarding the URL length. This is a limitation of the Microsoft SharePoint REST API, so in these cases,
the only way to see the actual value of some columns, is to explicitly select them in your query.
Views are similar to tables in the way that data is represented; however, views are read-only.
Queries can be executed against a view as if it were a normal table.
Name | Description |
Attachments | Reads attachments for the specified item on the specified list. |
Files | Query the available files on your sharepoint site. |
Groups | Query the available groups on your sharepoint site. |
Lists | Query the available lists on your sharepoint site. |
RoleAssignmentMember | Get Web RoleAssignments member. |
RoleAssignments | Get Web RoleAssignments. |
RoleDefinitionBindings | Get Web Role definition binding. |
Roles | Query the roles your users can have. |
Subsites | This lists the available subsites. |
Users | Query the available users on your sharepoint site. |
Reads attachments for the specified item on the specified list.
Note: List and ItemId are required to return Attachments.
List can be fetched from the Lists view(Title column).
SELECT * FROM Attachments WHERE List = 'TestApp' AND ItemID = 1
Name | Type | References | Description |
Id [KEY] | String | The Id of the attachment on the item. | |
Updated | Datetime | The updated date of the attachment to the item. | |
FileName | String | The FileName of the attachment to the item. | |
ServerRelativePath_DecodedUrl | String | The ServerRelativePath DecodedUrl of the attachment to the item. | |
FileNameAsPath_DecodedUrl | String | The FileNameAsPath DecodedUrl of the attachment to the item. | |
ServerRelativeUrl | String | The ServerRelativeUrl of the attachment to the item. | |
List | String | The internal name of the list to retrieve attachments from. | |
ItemID | String | The Id of the item on the list to retrieve attachments from. |
Query the available files on your sharepoint site.
Name | Type | References | Description |
Id [KEY] | String | ||
CreatedBy_Id | String | ||
CreatedBy_Name | String | ||
CreatedBy_Puid | String | ||
ETag | String | ||
LastModifiedBy_Id | String | ||
LastModifiedBy_Name | String | ||
LastModifiedBy_Puid | String | ||
Name | String | ||
Size | Int | ||
TimeCreated | Datetime | ||
TimeLastModified | Datetime | ||
Url | String |
Query the available groups on your sharepoint site.
SELECT * FROM Groups
Name | Type | References | Description |
Id [KEY] | Int | The Group Id. | |
AllowMembersEditMembership | Bool | ||
AllowRequestToJoinLeave | Bool | ||
AutoAcceptRequestToJoinLeave | Bool | ||
CanCurrentUserEditMembership | Bool | ||
CanCurrentUserManageGroup | Bool | ||
CanCurrentUserViewMembership | Bool | ||
Description | String | ||
OnlyAllowMembersViewMembership | Bool | ||
OwnerTitle | String | ||
RequestToJoinLeaveEmailSetting | String | ||
LinkedOwner | String | ||
LinkedUsers | String |
Query the available lists on your sharepoint site.
Name | Type | References | Description |
HasUniqueRoleAssignments [KEY] | Bool | ||
LinkedFirstUniqueAncestorSecurableObject | String | ||
LinkedRoleAssignments | String | ||
ServerRelativeUrl | String | The relative URL of the file based on the URL for the server. This column is available when the URL is a subsite. | |
Id [KEY] | String | ||
AllowContentTypes | Bool | ||
AllowDeletion | Bool | ||
BaseTemplate | Int | ||
BaseType | Int | ||
BrowserFileHandling | Int | ||
ContentTypesEnabled | Bool | ||
CrawlNonDefaultViews | Bool | ||
Created | Datetime | ||
CurrentChangeToken_StringValue | String | ||
CustomActionElements_Items | String | ||
DataSource_Properties | String | ||
DefaultContentApprovalWorkflowId | String | ||
DefaultDisplayFormUrl | String | ||
DefaultEditFormUrl | String | ||
DefaultItemOpenUseListSetting | Bool | ||
DefaultNewFormUrl | String | ||
DefaultViewPath_DecodedUrl | String | ||
DefaultViewUrl | String | ||
Description | String | ||
Direction | String | ||
DisableGridEditing | Bool | ||
DocumentTemplateUrl | String | ||
DraftVersionVisibility | Int | ||
EffectiveBasePermissions_High | Long | ||
EffectiveBasePermissions_Low | Long | ||
EffectiveBasePermissionsForUI_High | Long | ||
EffectiveBasePermissionsForUI_Low | Long | ||
EnableAssignToEmail | Bool | ||
EnableAttachments | Bool | ||
EnableFolderCreation | Bool | ||
EnableMinorVersions | Bool | ||
EnableModeration | Bool | ||
EnableRequestSignOff | Bool | ||
EnableVersioning | Bool | ||
EntityTypeName | String | ||
ExcludeFromOfflineClient | Bool | ||
ExemptFromBlockDownloadOfNonViewableFiles | Bool | ||
FileSavePostProcessingEnabled | Bool | ||
ForceCheckout | Bool | ||
HasExternalDataSource | Bool | ||
Hidden | Bool | ||
ImagePath_DecodedUrl | String | ||
ImageUrl | String | ||
IrmEnabled | Bool | ||
IrmExpire | Bool | ||
IrmReject | Bool | ||
IsApplicationList | Bool | ||
IsCatalog | Bool | ||
IsEnterpriseGalleryLibrary | Bool | ||
IsPrivate | Bool | ||
IsSiteAssetsLibrary | Bool | ||
IsSystemList | Bool | ||
ItemCount | Int | ||
LastItemDeletedDate | Datetime | ||
LastItemModifiedDate | Datetime | ||
LastItemUserModifiedDate | Datetime | ||
ListExperienceOptions | Int | ||
ListItemEntityTypeFullName | String | ||
MajorVersionLimit | Int | ||
MajorWithMinorVersionsLimit | Int | ||
MultipleDataList | Bool | ||
NoCrawl | Bool | ||
OnQuickLaunch | Bool | ||
PageRenderType | Int | ||
ParentWebPath_DecodedUrl | String | ||
ParentWebUrl | String | ||
ParserDisabled | Bool | ||
ReadSecurity | Int | ||
SchemaXml | String | ||
ServerTemplateCanCreateFolders | Bool | ||
TemplateFeatureId | String | ||
Title | String | ||
ValidationFormula | String | ||
ValidationMessage | String | ||
WriteSecurity | Int | ||
LinkedContentTypes | String | ||
LinkedCreatablesInfo | String | ||
LinkedDefaultView | String | ||
LinkedDescriptionResource | String | ||
LinkedEventReceivers | String | ||
LinkedFields | String | ||
LinkedForms | String | ||
LinkedInformationRightsManagementSettings | String | ||
LinkedItems | String | ||
LinkedParentWeb | String | ||
LinkedRootFolder | String | ||
LinkedSubscriptions | String | ||
LinkedTitleResource | String | ||
LinkedUserCustomActions | String | ||
LinkedViews | String | ||
LinkedWorkflowAssociations | String |
Get Web RoleAssignments member.
Note: PrincipalId is required to return RoleAssignmentMember.
SELECT * FROM RoleAssignmentMember WHERE PrincipalId = 3 SELECT * FROM RoleAssignmentMember WHERE List = 'TestApp' AND PrincipalId = 3 SELECT * FROM RoleAssignmentMember WHERE PrincipalId = 5 AND list = 'KatsunariMatsumoto' AND ItemId = '3'
Name | Type | References | Description |
ID [KEY] | String | The ID of the role assigned member. | |
Updated | Datetime | The updated date for role assigned member. | |
IsHiddenInUI | Boolean | A boolean indicating if the assigned role member is hidden in UI. | |
LoginName | String | The login name of the role assigned member. | |
Title | String | The title of the role assigned member. | |
AllowMembersEditMembership | Boolean | A boolean indicating whether to allow members edit membership. | |
AllowRequestToJoinLeave | Boolean | A boolean indicating whether to allow request to join leave. | |
AutoAcceptRequestToJoinLeave | Boolean | A boolean indicating whether to auto accept request to join leave. | |
Description | String | The description of the role assigned member. | |
OnlyAllowMembersViewMembership | Boolean | A boolean indicating whether to only allow members view membership. | |
OwnerTitle | String | The owner title of the role assigned member. | |
RequestToJoinLeaveEmailSetting | String | The request to join leave email setting of the role assigned member. | |
PrincipalId | String |
RoleAssignments.PrincipalId | The Principal Id. |
List | String |
Lists.Title | The internal name of the list to retrieve role assigned member from. |
ItemId | String | List item id for role assignment. |
Get Web RoleAssignments.
SELECT * FROM RoleAssignments WHERE List = 'TestApp' SELECT * FROM RoleAssignments WHERE PrincipalId = 5 AND list = 'KatsunariMatsumoto' AND ItemId = '3'
Name | Type | References | Description |
ID [KEY] | String | The ID of the role assigned. | |
PrincipalId | Long | The Principal ID for role assigned. | |
Updated | Datetime | The updated date for role assigned. | |
List | String |
Lists.Title | The internal name of the list to retrieve role assigned from. |
ItemId | String | List item id for role assignment. |
Get Web Role definition binding.
NOTE: PrincipalId is required to return RoleDefinitionBindings.
SELECT * FROM RoleDefinitionBindings WHERE PrincipalId = 3 SELECT * FROM RoleDefinitionBindings WHERE List = 'TestApp' AND PrincipalId = 3 SELECT * FROM RoleDefinitionBindings WHERE PrincipalId = 5 AND list = 'KatsunariMatsumoto' AND ItemId = '3'
Name | Type | References | Description |
ID [KEY] | String | The ID of the role assigned member. | |
BasePermissions_High | Int64 | The base permissions high. | |
BasePermissions_Low | Int64 | The base permissions low. | |
Description | String | The description. | |
Hidden | Boolean | A boolean indicating if it is hidden. | |
Name | String | The name. | |
Order | Int | The order. | |
RoleTypeKind | Int | The role type kind. | |
PrincipalId | String |
RoleAssignments.PrincipalId | The Principal Id. |
List | String |
Lists.Title | The internal name of the list to retrieve role assigned member from. |
ItemId | String | List item id for role defintion. |
Query the roles your users can have.
Name | Type | References | Description |
Id [KEY] | Int | ||
BasePermissions_High | Long | ||
BasePermissions_Low | Long | ||
Description | String | ||
Hidden | Bool | ||
Name | String | ||
Order | Int | ||
RoleTypeKind | Int |
This lists the available subsites.
SELECT * FROM Subsites
Name | Type | References | Description |
Id [KEY] | String | The Id of the subsite. | |
AllowRssFeeds | Boolean | The AllowRssFeeds of the subsite. | |
AlternateCssUrl | String | The AlternateCssUrl of the subsite. | |
AppInstanceId | String | The AppInstanceId of the subsite. | |
ClassicWelcomePage | String | The ClassicWelcomePage of the subsite. | |
Configuration | Int | The Configuration of the subsite. | |
Created | Datetime | The Created of the subsite. | |
CurrentChangeToken_StringValue | String | The CurrentChangeToken_StringValue of the subsite. | |
CustomMasterUrl | String | The CustomMasterUrl of the subsite. | |
Description | String | The Description of the subsite. | |
DesignPackageId | String | The DesignPackageId of the subsite. | |
DocumentLibraryCalloutOfficeWebAppPreviewersDisabled | Boolean | The DocumentLibraryCalloutOfficeWebAppPreviewersDisabled of the subsite. | |
EnableMinimalDownload | Boolean | The EnableMinimalDownload of the subsite. | |
FooterEmphasis | Int | The FooterEmphasis of the subsite. | |
FooterEnabled | Boolean | The FooterEnabled of the subsite. | |
FooterLayout | Int | The FooterLayout of the subsite. | |
HeaderEmphasis | Int | The HeaderEmphasis of the subsite. | |
HeaderLayout | Int | The HeaderLayout of the subsite. | |
HideTitleInHeader | Boolean | The HideTitleInHeader of the subsite. | |
HorizontalQuickLaunch | Boolean | The HorizontalQuickLaunch of the subsite. | |
IsHomepageModernized | Boolean | The IsHomepageModernized of the subsite. | |
IsMultilingual | Boolean | The IsMultilingual of the subsite. | |
IsRevertHomepageLinkHidden | Boolean | The IsRevertHomepageLinkHidden of the subsite. | |
KeepFieldUserResources | Boolean | The KeepFieldUserResources of the subsite. | |
Language | Int | The Language of the subsite. | |
LastItemModifiedDate | Datetime | The LastItemModifiedDate of the subsite. | |
LastItemUserModifiedDate | Datetime | The LastItemUserModifiedDate of the subsite. | |
LogoAlignment | Int | The LogoAlignment of the subsite. | |
MasterUrl | String | The MasterUrl of the subsite. | |
MegaMenuEnabled | Boolean | The MegaMenuEnabled of the subsite. | |
NavAudienceTargetingEnabled | Boolean | The NavAudienceTargetingEnabled of the subsite. | |
NoCrawl | Boolean | The NoCrawl of the subsite. | |
ObjectCacheEnabled | Boolean | The ObjectCacheEnabled of the subsite. | |
OverwriteTranslationsOnChange | Boolean | The OverwriteTranslationsOnChange of the subsite. | |
ResourcePath_DecodedUrl | String | The ResourcePath_DecodedUrl of the subsite. | |
QuickLaunchEnabled | Boolean | The QuickLaunchEnabled of the subsite. | |
RecycleBinEnabled | Boolean | The RecycleBinEnabled of the subsite. | |
SearchScope | Int | The SearchScope of the subsite. | |
ServerRelativeUrl | String | The ServerRelativeUrl of the subsite. | |
SiteLogoUrl | String | The SiteLogoUrl of the subsite. | |
SyndicationEnabled | Boolean | The SyndicationEnabled of the subsite. | |
TenantAdminMembersCanShare | Int | The TenantAdminMembersCanShare of the subsite. | |
Title | String | The Title of the subsite. | |
TreeViewEnabled | Boolean | The TreeViewEnabled of the subsite. | |
UIVersion | Int | The UIVersion of the subsite. | |
UIVersionConfigurationEnabled | Boolean | The UIVersionConfigurationEnabled of the subsite. | |
Url | String | The Url of the subsite. | |
WebTemplate | String | The WebTemplate of the subsite. | |
WelcomePage | String | The WelcomePage of the subsite. |
Query the available users on your sharepoint site.
SELECT * FROM Users // Fetch all the Users SELECT * FROM Users WHERE GroupId = 5 // Fetch a user for a particular Group
Name | Type | References | Description |
AadObjectId_NameId | String | ||
AadObjectId_NameIdIssuer | String | ||
String | |||
Expiration | String | ||
IsEmailAuthenticationGuestUser | Bool | ||
IsShareByEmailGuestUser | Bool | ||
IsSiteAdmin | Bool | ||
UserId_NameId | String | ||
UserId_NameIdIssuer | String | ||
UserPrincipalName | String | ||
LinkedAlerts | String | ||
LinkedGroups | String | ||
LoginName | String | The login name of the user. | |
Title | String | The Title of the user. | |
IsHiddenInUI | Boolean | A boolean indicating if the user is hidden in UI. | |
GroupId | Int | The group id the user is added to. |
The Sync App maps types from the data source to the corresponding data type available in the schema. The table below documents these mappings.
Microsoft SharePoint | CData Schema |
Choice (menu) | string |
Currency | float |
Date and Time | datetime |
Hyperlink or Picture | string |
Lookup | string |
Multiple lines of text | string |
Number | float |
Person or Group | string |
Single line of text | string |
Task Outcome | string |
Yes/No | bool |
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.
Property | Description |
AuthScheme | The scheme used for authenticating to SharePoint. |
URL | The base URL for the site. |
SharePointEdition | The edition of SharePoint being used. Set either SharePoint Online or SharePoint On-Premise. |
User | The SharePoint user account used to authenticate. |
Password | The password used to authenticate the user. |
Property | Description |
AzureTenant | The Microsoft Online tenant being used to access data. If not specified, your default tenant is used. |
AzureEnvironment | The Azure Environment to use when establishing a connection. |
Property | Description |
SSOLoginURL | The identity provider's login URL. |
SSODomain | The domain of the user when using single sign-on (SSO). |
SSOProperties | Additional properties required to connect to the identity provider in a semicolon-separated list. |
Property | Description |
OAuthClientId | The client Id assigned when you register your application with an OAuth authorization server. |
OAuthClientSecret | The client secret assigned when you register your application with an OAuth authorization server. |
Scope | The scope used for the OAuth flow to access data from the Application. |
State | Optional value for representing extra OAuth state information. |
OAuthGrantType | The grant type for the OAuth flow. |
Property | Description |
OAuthJWTCert | The JWT Certificate store. |
OAuthJWTCertType | The type of key store containing the JWT Certificate. |
OAuthJWTCertPassword | The password for the OAuth JWT certificate. |
OAuthJWTIssuer | The issuer of the Java Web Token. |
Property | Description |
KerberosKDC | The Kerberos Key Distribution Center (KDC) service used to authenticate the user. |
KerberosRealm | The Kerberos Realm used to authenticate the user. |
KerberosSPN | The service principal name (SPN) for the Kerberos Domain Controller. |
KerberosKeytabFile | The Keytab file containing your pairs of Kerberos principals and encrypted keys. |
KerberosServiceRealm | The Kerberos realm of the service. |
KerberosServiceKDC | The Kerberos KDC of the service. |
KerberosTicketCache | The full file path to an MIT Kerberos credential cache file. |
Property | Description |
SSLClientCert | The TLS/SSL client certificate store for SSL Client Authentication (2-way SSL). |
SSLClientCertType | The type of key store containing the TLS/SSL client certificate. |
SSLClientCertPassword | The password for the TLS/SSL client certificate. |
SSLClientCertSubject | The subject of the TLS/SSL client certificate. |
SSLServerCert | The certificate to be accepted from the server when connecting using TLS/SSL. |
Property | Description |
FirewallType | The protocol used by a proxy-based firewall. |
FirewallServer | The name or IP address of a proxy-based firewall. |
FirewallPort | The TCP port for a proxy-based firewall. |
FirewallUser | The user name to use to authenticate with a proxy-based firewall. |
FirewallPassword | A password used to authenticate to a proxy-based firewall. |
Property | Description |
ProxyAutoDetect | This indicates whether to use the system proxy settings or not. |
ProxyServer | The hostname or IP address of a proxy to route HTTP traffic through. |
ProxyPort | The TCP port the ProxyServer proxy is running on. |
ProxyAuthScheme | The authentication type to use to authenticate to the ProxyServer proxy. |
ProxyUser | A user name to be used to authenticate to the ProxyServer proxy. |
ProxyPassword | A password to be used to authenticate to the ProxyServer proxy. |
ProxySSLType | The SSL type to use when connecting to the ProxyServer proxy. |
ProxyExceptions | A semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer . |
Property | Description |
LogModules | Core modules to be included in the log file. |
Property | Description |
Location | A path to the directory that contains the schema files defining tables, views, and stored procedures. |
BrowsableSchemas | This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC. |
Tables | This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC. |
Views | Restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC. |
Schema | The type of schema to use. |
Property | Description |
CalculatedDataType | The data type to be used for calculated fields. |
ContinueOnError | Indicates whether or not to continue updating items in a batch after an error. |
CreateIDColumns | Indicates whether or not to create supplemental ID columns for SharePoint columns that use values from information stored in other Lists. |
DisableFilterLimit | Microsoft SharePoint natively supports listing up to 5000 records as they appear in your list filter. Enable this property to pull more than 5000 records from the list filter at the cost of additional performance overhead. |
FolderOption | An option to determine how to display folders in results. Enter either FilesOnly, FilesAndFolders, Recursive, or RecursiveAll. |
IncludeLookupColumns | This option controls whether the driver returns the lookup columns defined on a table. |
MaxRows | Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses. |
Other | These hidden properties are used only in specific use cases. |
Pagesize | The maximum number of results to return per page from Microsoft SharePoint. |
PseudoColumns | This property indicates whether or not to include pseudo columns as columns to the table. |
ShowHiddenColumns | Boolean determining if hidden columns should be shown or not. If false, all hidden columns will be removed from the column listing. |
ShowPredefinedColumns | Boolean determining if predefined columns should be shown or not. If false, all columns derived from a base type will be removed from the column listing. |
ShowVersionViews | Indicate whether to display the view of list versions. Such as ListA_Versions. |
STSURL | The URL of the security token service (STS) when using single sign-on (SSO). |
Timeout | The value in seconds until the timeout error is thrown, canceling the operation. |
UseDisplayNames | Boolean determining if the display names for the columns should be used instead of the API names. |
UseEntityTypeName | Boolean determining if the table name should be EntityTypeName instead of the title in the REST schema. |
UseNTLMV1 | Determines whether the driver will attempt to connect with NTLMv1 or NTLMv2 (default). |
UserDefinedViews | A filepath pointing to the JSON configuration file containing your custom views. |
UseSimpleNames | Boolean determining if simple names should be used for tables and columns. |