SharePoint

The SharePoint connector provides SQL access to SharePoint services and servers.

Supported versions

This connector supports Windows SharePoint Services 3.0, Microsoft Office SharePoint Server 2007 and above, and SharePoint Online.

Before you begin

Before using the SharePoint connector, do the following tasks:

  • In your Google Cloud project:
    • Ensure that network connectivity is set up. For information about network patterns, see Network connectivity.
    • Grant the roles/connectors.admin IAM role to the user configuring the connector.
    • Grant the following IAM roles to the service account that you want to use for the connector:
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      A service account is a special type of Google account intended to represent a non-human user that needs to authenticate and be authorized to access data in Google APIs. If you don't have a service account, you must create a service account. For more information, see Creating a service account.

    • Enable the following services:
      • secretmanager.googleapis.com (Secret Manager API)
      • connectors.googleapis.com (Connectors API)

      To understand how to enable services, see Enabling services.

    If these services or permissions have not been enabled for your project previously, you are prompted to enable them when configuring the connector.

Configure the connector

Configuring the connector requires you to create a connection to your data source (backend system). A connection is specific to a data source. It means that if you have many data sources, you must create a separate connection for each data source. To create a connection, do the following steps:

  1. In the Cloud console, go to the Integration Connectors > Connections page and then select or create a Google Cloud project.

    Go to the Connections page

  2. Click + Create new to open the Create Connection page.
  3. In the Location section, choose the location for the connection.
    1. Region: Select a location from the drop-down list.

      Supported regions for connectors include:

      For the list of all the supported regions, see Locations.

    2. Click Next.
  4. In the Connection Details section, complete the following:
    1. Connector: Select SharePoint from the drop down list of available Connectors.
    2. Connector version: Select the Connector version from the drop down list of available versions.
    3. In the Connection Name field, enter a name for the Connection instance.

      Connection names must meet the following criteria:

      • Connection names can use letters, numbers, or hyphens.
      • Letters must be lower-case.
      • Connection names must begin with a letter and end with a letter or number.
      • Connection names cannot exceed 49 characters.
    4. Optionally, enter a Description for the connection instance.
    5. Optionally, enable Cloud logging, and then select a log level. By default, the log level is set to Error.
    6. Service Account: Select a service account that has the required roles.
    7. Optionally, configure the Connection node settings:

      • Minimum number of nodes: Enter the minimum number of connection nodes.
      • Maximum number of nodes: Enter the maximum number of connection nodes.

      A node is a unit (or replica) of a connection that processes transactions. More nodes are required to process more transactions for a connection and conversely, fewer nodes are required to process fewer transactions. To understand how the nodes affect your connector pricing, see Pricing for connection nodes. If you don't enter any values, by default the minimum nodes are set to 2 (for better availability) and the maximum nodes are set to 50.

    8. Optionally, click + Add label to add a label to the Connection in the form of a key/value pair.
    9. Click Next.
  5. In the Destinations section, enter details of the remote host (backend system) you want to connect to.
    1. Destination Type: Select a Destination Type. For example, host address is https://xxxxx.sharepoint.com.
      • Select Host address from the list to specify the hostname or IP address of the destination.
      • If you want to establish a private connection to your backend systems, select Endpoint attachment from the list, and then select the required endpoint attachment from the Endpoint Attachment list.

      If you want to establish a public connection to your backend systems with additional security, you can consider configuring static outbound IP addresses for your connections, and then configure your firewall rules to allowlist only the specific static IP addresses.

      To enter additional destinations, click +Add destination.

    2. Click Next.
  6. In the Authentication section, enter the authentication details.
    1. Select an Authentication type and enter the relevant details.

      The following authentication types are supported by the SharePoint connection:

      • Windows credentials. Select this if you use on-premise edition of SharePoint.
      • AzureAD. Select this if you use online edition of SharePoint.
      • OAuth 2.0 client credentials with JWT bearer. Select this if you use OAuth 2.0 client credentials with JWT bearer for authentication.
      • OAuth 2.0 client credentials with client secret. Select this if you use OAuth 2.0 client credentials with client secret for authentication.
    2. To understand how to configure these authentication types, see Configure authentication.

    3. Click Next.
  7. Review: Review your connection and authentication details.
  8. Click Create.

Configure authentication

The SharePoint connector supports the following authentication types:

Windows credentials authentication type

To enable Windows credentials authentication type, you must complete the following steps:
  1. Configure PSC and create an endpoint attachment.
  2. Specify the credentials in Google Cloud.

Configure PSC and create an endpoint attachment

  1. Create an instance group with the IP where SharePoint is hosted.
  2. Create an internal passthrough network load balancer and use the instance group that you created as the backend. The TCP internal load balancer must have the global access enabled.
  3. Publish the load balancer in Private Service Connect. A service attachment is generated after the load balancer is published.
  4. Publish the service and specify the load balancer that you created.
  5. Use the service attachment to create an endpoint attachment.
  6. After you create the endpoint attachment, create a SharePoint connection with the endpoint attachment IP.
  7. For more information about creating an endpoint attachment, see Create an endpoint attachment.

Specify the Windows credentials details in Google Cloud

When you create the connection in Integration Connectors , you must specify the following details:

In the Authentication section, select Windows credentials as the authentication type and then enter the following details:

  • Username: Enter the username.
  • Password: Select the password.
  • Secret version: Enter the secret version.

Windows credentials connection type

The following table lists the sample configuration values for the Windows credentials connection type.
Field name Details
Region us-central1
Connector SharePoint
Connector version 1
Connection Name sharepoint-staging-psc
Service Account SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Minimum number of nodes 2
Maximum number of nodes 50
Destination Type Host address
host 1 http://192.0.2.0
port 1 24
Authentication Windows credentials
Username USER_NAME
Password PASSWORD
Secret Version 1

Azure AD authentication type

To enable Azure AD authentication type, you must complete the following steps:
  1. Register your app and obtain the OAuthClientId and OAuthClientSecret.
  2. Specify the credentials in Google Cloud.
  3. Authorize the connection in Google Cloud.
  4. Add the redirect URL to your app.

Register your app and obtain the OAuthClientId and OAuthClientSecret

To register your app and obtain the OAuthClientId and OAuthClientSecret for your app, do the following:
  1. Log in to the Azure Portal.
  2. In Azure Services, select App Registrations and then New registration.
  3. Enter an application name and select Any Microsoft Entra ID tenant - Multitenant. The following image shows the Register an application page:
  4. After creating the app, navigate to the Certificates & Secrets section, create a client secret for the application, and save the client secret value. The following image shows the Certificates & Secrets page:
  5. In API Permissions, select the required Application permissions and Delegated permissions. For the connection to be active, you must grant the following minimum permissions: Sites.FullControl.All and AllSites.Manage.

    The following table lists the required permissions:

    Delegated permissions Application permissions
    ConsentRequest.Read.All AllSites.FullControl
    ConsentRequest.ReadWrite.All AllSites.Manage
    DelegatedAdminRelationship.Read.All AllSites.Read
    DelegatedAdminRelationship.ReadWrite.All AllSites.Write
    DelegatedPermissionGrant.Read.All EnterpriseResource.Read
    DelegatedPermissionGrant.ReadWrite.All EnterpriseResource.Write
    Files.Read.All MyFiles.Read
    Files.ReadWrite.All MyFiles.Write
    Group.Create Project.Read
    Group.Read.All Project.Write
    Group.ReadWrite.All ProjectWebApp.FullControl
    Sites.FullControl.All ProjectWebAppReporting.Read
    Sites.FullControl.All Sites.FullControl.All
    Sites.Manage.All Sites.Manage.All
    Sites.Read.All Sites.Read.All
    Sites.ReadWrite.All Sites.ReadWrite.All
    Sites.Selected Sites.Search.All
    User.Export.All Sites.Selected
    User.Read TaskStatus.Submit
    User.Read.All TermStore.Read.All
    User.ReadWrite.All TermStore.Read.All
    TermStore.ReadWrite.All
    TermStore.ReadWrite.All
    User.Read.All
    User.Read.All
    User.ReadWrite.All
    User.ReadWrite.All
  6. Save your changes.
  7. If you have selected to use permissions that require admin consent, you can grant them from the current tenant on the API Permissions page. The following image shows the API permissions page:
  8. To add the scope, go to the Expose an API section and add AllSites.Manage, Sites.FullControl.All scopes and select who can control (Admins and users). The following image shows the Expose an API page:
  9. Click Save.

Specify the credentials in Google Cloud

When you create the connection in Integration Connectors , you must specify the following details:

In the Authentication section, select AzureAD as the authentication type and then enter the following details:

  • Client ID: Enter the client ID that is used for requesting access tokens.
  • Scopes: Enter a comma-separated list of desired scopes. For example, Sites.FullControl.All
  • Client secret: Enter the secret that contains the client secret for the connected app that you created.
  • Secret version: Secret version for the secret selected above.
  • Authorization URL: Authorization URL generated when creating the client. Enter the URL in the following format: https://login.microsoftonline.com/<tenant_identifier>/oauth2/v2.0/authorize. For example, https://login.microsoftonline.com/9bxxxxxxxxx8112/oauth2/v2.0/authorize.

Authorize the connection in Google Cloud

  1. In the Connections page, locate the newly created connection.

    The Status for the new connector will be Authorization required.

  2. Click Authorization required.

    This shows the Edit authorization pane.

  3. Copy the Redirect URI value to your external application. For more information, see Add the redirect URL to your app.
  4. Verify the authorization details.
  5. Click Authorize.

    If the authorization is successful, the connection status will be set to Active in the Connections page.

Add the redirect URL to your app

  1. In the Azure portal, click Azure services > App registrations.
  2. Click on your App name.
  3. Click add redirect URI.
  4. Click Add a platform.
  5. In the Web dialog, paste the redirect URI that you copied when you authorized the connection in Google Cloud.

Azure AD connection type

The following table lists the sample configuration values for the Azure AD connection type:
Field name Details
Region us-central1
Connector SharePoint
Connector version 1
Connection Name sharepoint-google-cloud-con
Service Account SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Minimum number of nodes 2
Maximum number of nodes 50
Destination Type Host address
host 1 http://z8**.sharepoint.com
Authentication AzureAD
Client Id CLIENT_ID
Scopes Sites.FullControl.All
Client secret CLIENT_SECRET
Secret Version 1
Authorization URL https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/authorize

OAuth 2.0 - client credentials with JWT bearer authentication type

To enable OAuth 2.0 - client credentials with JWT bearer authentication type, you must complete the following steps:
  1. Create a certificate.
  2. Upload the certificate to Azure portal.
  3. Obtain a private key.
  4. Complete the setup.
  5. Specify the OAuth 2.0 JWT bearer credentials in Google Cloud.

To enable JWT bearer authentication type, you need to create a certificate, upload it to Azure portal, and then obtain a private key.

Create a certificate

  1. Create an empty folder on your computer.
  2. Create a text file in the folder.
  3. Copy the PowerShell script from the Granting access via Azure AD App-Only page and paste it into the text file.
  4. Rename the text file to the following name: Create-SelfSignedCertificate.ps1.
  5. Run Windows PowerShell in the folder.
  6. Go to the directory which contains the text file.
  7. Copy the following command: .\Create-SelfSignedCertificate.ps1 -CommonName "CERTIFICATE_NAME" -StartDate 2022-09-25 -EndDate 2023-10-25

    Enter a unique name for CERTIFICATE_NAME. Change the StartDate to the current date and the EndDate to a date of your choice.

  8. Paste the copied command with your changes to Windows PowerShell and then press Enter.

    Windows PowerShell prompts to Enter the password to protect the Private Key. Make sure to save the password for later use.

    Windows PowerShell creates two files: MyCertificate.pfx and MyCertificate.cer.

Upload the certificate to Azure portal

  1. Sign in to Azure Portal and register a new application by specifying the following details:
    • Name: enter a name for the application.
    • Supported account types: select Accounts in this organizational directory only (Account name only - Single tenant).
  2. Go to API Permissions > Add permission > Request API permissions > SharePoint.
  3. Select Application permissions and then add your required permissions.
  4. Select Grant admin consent and then select Yes.
  5. After creating the app, navigate to the Certificates & Secrets section.
  6. Select Upload Certificate and then upload your CER certificate from your computer. After the upload finishes, select Add.

    Don't add client secrets in the app as it interferes with the certificate-based authentication flow.

  7. Go to Manifest, find KeyCredentials and then copy the customKeyIdentifier as the Thumbprint. You will use this later. You've now registered the app and linked the certificate.

Obtain a private key

You can obtain a private key by converting the PFX file to a PEM file using OpenSSL.

  1. From the command prompt, go to the folder with your PFX file and run the following command: openssl pkcs12 -in MyCertificate.pfx -out MyCertificate.pem -nodes
  2. Enter the PFX password which you used in the certificate creation process.
  3. Open the PEM file in a text editor and copy the following section of the private key:
    -----BEGIN PRIVATE KEY----- 
    
    -----END PRIVATE KEY----- 
    

Complete the setup

  1. Copy the Client ID and Tenant ID from the newly registered app in the Azure portal.
  2. Sign in with SharePoint List Service Principal authentication with the following credentials:
    • Client ID
    • Tenant ID
    • Private key
    • Thumbprint (private key password)

Specify the OAuth 2.0 JWT bearer credentials in Google Cloud

When you create the connection in Integration Connectors , you must specify the following details:

In the Authentication section, select OAuth 2.0 client credentials with JWT bearer as the authentication type and then enter the following details:

  • Client ID: Enter the client ID that is used for requesting access tokens. This is the consumer key generated when you registered the app in the Azure portal.
  • Private key: Select the Secret Manager secret containing the contents of the private key file in PEM format. The private key should match the public key/certificate provided to Connector.
  • Secret version: Secret version for the secret selected above.
  • Private Key Password: Select the Secret Manager Secret containing the password (paraphrase) of the private key file.
  • Secret version: Secret version for the secret selected above.
  • Azure Tenant: The Microsoft Online tenant being used to access data.

JWT Bearer Certificate connection type

The following table lists the sample configuration values for the OAuth 2.0 JWT Bearer Certificate connection type.
Field name Details
Region europe-west1
Connector SharePoint
Connector version 1
Connection Name sharepoint-jwt-certificate
Service Account SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Minimum number of nodes 2
Maximum number of nodes 50
Destination Type Host address
host 1 http://z8**.sharepoint.com
port 1 ****
Authentication OAuth 2.0-Client credentials with JWT bearer
OAuth Client ID CLIENT_ID
Private Key KEY
Secret Version 1
Private Key Password PASSWORD
Secret Version 1
Azure Tenant AZURE_TENANT_ID

OAuth 2.0 - client secret connection type

To enable the OAuth 2.0 client secret connection type, you must complete the following steps:

  1. Register the add-in.
  2. Grant permissions to the add-in.
  3. Specify the OAuth 2.0 client credentials in Google Cloud
  4. Re-authorization for authorization code

Register the add-in

  1. Navigate to the Register Add-In page using the following url: https://<SITE_NAME>.SharePoint.com/_layouts/15/appregnew.aspx.
  2. In the App Information section, generate the client ID and client secret.
  3. Specify values for Title, App Domain, and Redirect URI.
  4. Click Create.The add-in is registered, and the SharePoint App displays the created information.

Grant permissions to the add-in

  1. Navigate to the SharePoint site using the following url: https://<SITE_NAME>-admin.sharepoint.com/_layouts/15/appinv.aspx. You are redirected to the Grant Permission page.
  2. In the App Id field, enter the client ID which you generated earlier, and click Lookup. The values for Title, App Domain, and Redirect URL are populated.
  3. Enter the following permission request in XML format:
    <AppPermissionRequests AllowAppOnlyPolicy="true">
    <AppPermissionRequest Scope="http://sharepoint/content/tenant" Right="FullControl"/>
    </AppPermissionRequests>
      
  4. Click Create. The Sharepoint App displays a permission consent dialog.
  5. Click Trust It.

Specify the OAuth 2.0 client credentials in Google Cloud

When you create the connection in Integration Connectors , you must specify the following details:

In the Authentication section, select OAuth 2.0 client credentials with client secret as the authentication type and then enter the following details:

  • Client ID: Enter the client ID provided by connector for the app you created.
  • Client Secret: Select the Secret Manager secret containing the client secret for the connected app you created.
  • Secret version: Select the version of the client secret.

Re-authorization for authorization code

If you use the Authorization code authentication type and have made any configuration changes in your SharePoint application, you must re-authorize your SharePoint connection. To re-authorize a connection, perform the following steps:

  1. Click on the required connection in the Connections page.

    This opens the connection details page.

  2. Click Edit to edit the connection details.
  3. Verify the OAuth 2.0 - Authorization code details in the Authentication section.

    If required, make the necessary changes.

  4. Click Save. This takes you to the connection details page.
  5. Click Edit authorization in the Authentication section. This shows the Authorize pane.
  6. Click Authorize.

    If the authorization is successful, the connection status will be set to Active in the Connections page.

Client credential connection type

The following table lists the sample configuration values for the OAuth 2.0 client credentials connection type.
Field name Details
Region europe-west1
Connector SharePoint
Connector version 1
Connection Name sharepoint-client-credentials
Service Account SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Minimum number of nodes 2
Maximum number of nodes 50
Destination Type Host address
host 1 http://z8**.sharepoint.com
port 1 ****
Authentication OAuth 2.0-Client credentials with client secret
Client ID CLIENT_ID
Client Secret CLIENT_SECRET
Secret Version 1

Entities, operations, and actions

All the Integration Connectors provide a layer of abstraction for the objects of the connected application. You can access an application's objects only through this abstraction. The abstraction is exposed to you as entities, operations, and actions.

  • Entity: An entity can be thought of as an object, or a collection of properties, in the connected application or service. The definition of an entity differs from a connector to a connector. For example, in a database connector, tables are the entities, in a file server connector, folders are the entities, and in a messaging system connector, queues are the entities.

    However, it is possible that a connector doesn't support or have any entities, in which case the Entities list will be empty.

  • Operation: An operation is the activity that you can perform on an entity. You can perform any of the following operations on an entity:

    Selecting an entity from the available list, generates a list of operations available for the entity. For a detailed description of the operations, see the Connectors task's entity operations. However, if a connector doesn't support any of the entity operations, such unsupported operations aren't listed in the Operations list.

  • Action: An action is a first class function that is made available to the integration through the connector interface. An action lets you make changes to an entity or entities, and vary from connector to connector. Normally, an action will have some input parameters, and an output parameter. However, it is possible that a connector doesn't support any action, in which case the Actions list will be empty.

Actions

This section lists some of the actions supported by the connector. To understand how to configure the actions, see Action examples.

DeleteAttachment action

This action deletes an attachment.

Input parameters of the DeleteAttachment action

Parameter name Data type Required Description
ListTitle String Yes Title of the list item.
ItemId String Yes ID of the list item.
FileName String Yes Name of the file to be deleted from the document library.

To understand how to configure the DeleteAttachment action, see Action examples.

CheckInDocument action

This action lets you check in a document.

Input parameters of the CheckInDocument action

Parameter name Data type Required Description
RelativeURL String Yes Relative URL of the folder.
DocumentName String Yes Name of the file to be checked in.
Comment String No An optional check in message.

To understand how to configure the CheckInDocument action, see Action examples.

CheckOutDocument action

This action lets you check out a file.

Input parameters of the CheckOutDocument action

Parameter name Data type Required Description
RelativeURL String Yes Relative URL of the folder.
DocumentName String Yes Name of the file to be checked out.

To understand how to configure the CheckOutDocument action, see Action examples.

DiscardCheckOutDocument action

This action lets you undo a file check out.

Input parameters of the DiscardCheckOutDocument action

Parameter name Data type Required Description
RelativeURL String Yes Relative URL of the folder.
DocumentName String Yes Name of the file for which the check out has to be undone.

To understand how to configure the DiscardCheckOutDocument action, see Action examples.

CopyDocument action

This action lets you copy a file from one location to another location.

Input parameters of the CopyDocument action

Parameter name Data type Required Description
SourceFileRelativeUrl String Yes Relative URL of the source file.
DestFileRelativeUrl String Yes Relative URL of the destination file.

To understand how to configure the CopyDocument action, see Action examples.

UploadDocument action

This action lets you upload a file.

Input parameters of the UploadDocument action

Parameter name Data type Required Description
FileName String Yes Name of the file to be uploaded.
RelativeUrl String Yes Relative URL of the folder.
Content String No Content to upload as a file.
ContentBytes String No Bytes content (as a Base64 string) to upload as a file. Use this to upload binary data.
HasBytes Boolean No Specifies if the content to be uploaded is binary. The default value is false.

To understand how to configure the UploadDocument action, see Action examples.

DownloadDocument action

This action lets you download a file.

Input parameters of the DownloadDocument action

Parameter name Data type Required Description
RemoteFile String Yes Full URL of the file to download.
Library String Yes Name of the library on the SharePoint server.
HasBytes Boolean No Specifies if the content should be downloaded as bytes. The default value is false.

To understand how to configure the DownloadDocument action, see Action examples.

MoveAttachmentOrDocument action

This action lets you move a file from one folder to another folder.

Input parameters of the MoveAttachmentOrDocument action

Parameter name Data type Required Description
SourceFileURL String Yes URL of the source file that should be moved.
DestinationFolderURL String Yes URL of the destination folder.

To understand how to configure the MoveAttachmentOrDocument action, see Action examples.

CreateFolder action

This action lets you create a folder.

Input parameters of the CreateFolder action

Parameter name Data type Required Description
RelativeURL String Yes Relative URL of the folder.
FolderName String Yes Name of the folder to create.

To understand how to configure the CreateFolder action, see Action examples.

AddAttachments action

This action lets you add an attachment.

Input parameters of the AddAttachments action

Parameter name Data type Required Description
ListTitle String Yes Name of the attachment list.
FileName String Yes Name of the attachment file.
ItemId String Yes ID of the attachment to be added.
Content String Yes Content of the attachment.
ContentBytes String No Bytes content (as a Base64 string) to upload as an attachment. Use this to upload binary data.
HasBytes Boolean No Specifies if the content to be uploaded is binary. The default value is false.

To understand how to configure the AddAttachments action, see Action examples.

DownloadAttachments action

This action lets you download attachments.

Input parameters of the DownloadAttachments action

Parameter name Data type Required Description
RemoteFile String Yes Relative URL of the file.
HasBytes Boolean No Specifies if the content to be downloaded is binary. The default value is false.

To understand how to configure the DownloadAttachments action, see Action examples.

Action examples

This section describes how to perform some of the actions in this connector.

Example - Delete an attachment

This example deletes the specified file.

  1. In the Configure connector task dialog, click Actions.
  2. Select the DeleteAttachment action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "ListTitle": "My lists",
    "ItemId": "1",
    "FileName": "sitepages.txt"
    }
  4. If the action is successful, the DeleteAttachment task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Status": "Success"
    }]

Example - Check in a document

This example checks in a document.

  1. In the Configure connector task dialog, click Actions.
  2. Select the CheckInDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "RelativeURL": "/Shared Documents/TestFolder",
    "DocumentName": "Document.txt",
    "Comment": "Comment test"
    }
  4. If the action is successful, the CheckInDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Status": "Success"
    }]

Example - Check out a file

This example checks out a file.

  1. In the Configure connector task dialog, click Actions.
  2. Select the CheckOutDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "RelativeURL": "/Shared Documents/TestFolder",
    "DocumentName": "Document.txt"
    }
  4. If the action is successful, the CheckOutDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Status": "Success"
    }]

Example - Discard a check out

This example reverts a file check out.

  1. In the Configure connector task dialog, click Actions.
  2. Select the DiscardCheckOutDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "RelativeURL": "/Shared Documents/TestFolder",
    "DocumentName": "Document.docx"
    }
  4. If the action is successful, the DiscardCheckOutDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Status": "Success"
    }]

Example - Copy a file

This example copies a file from one location to another location.

  1. In the Configure connector task dialog, click Actions.
  2. Select the CopyDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "SourceFileRelativeUrl": "/Shared Documents/Document.docx",
    "DestFileRelativeUrl": "/Shared Documents/TestFolder/Document123.docx"
    }
  4. If the action is successful, the CopyDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Status": "Success"
    }]

Example - Upload a text file

This example uploads a text file to the specified location.

  1. In the Configure connector task dialog, click Actions.
  2. Select the UploadDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "FileName": "test.txt",
    "RelativeUrl": "/Shared Documents/TestFolder",
    "Content": "abcd"
    }
  4. If the action is successful, the UploadDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Status": "Success"
    }]

Example - Upload a binary file

This example uploads a binary file to the specified location. When uploading a binary file, specify the content to upload as a Base64 encoded string.

  1. In the Configure connector task dialog, click Actions.
  2. Select the UploadDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "FileName": "test.txt",
    "RelativeUrl": "/Shared Documents/TestFolder",
    "ContentBytes": "SGVsbG8gd29ybGQK",
    "HasBytes": "true"
    }
  4. If the action is successful, the UploadDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Status": "Success"
    }]

Example - Download a file

This example downloads a file.

  1. In the Configure connector task dialog, click Actions.
  2. Select the DownloadDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "RemoteFile": "/TestFolder/test.txt",
    "Library": "Shared Documents"
    }
  4. If the action is successful, the DownloadDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Success": "True",
    "Content": "Test File",
    }]

Example - Download a binary file

This example downloads a binary file.

  1. In the Configure connector task dialog, click Actions.
  2. Select the DownloadDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "RemoteFile": "/TestFolder/test1.png",
    "Library": "Shared Documents"
    "HasBytes": "true"  
    }
  4. If the action is successful, the DownloadDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Success": "True",
    "ContentBytes": "VGVzdCBGaWxl",
    }]

Example - Move an attachment

This example moves an attachment from one location to another location.

  1. In the Configure connector task dialog, click Actions.
  2. Select the MoveAttachmentOrDocument action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "SourceFileURL": "/Shared Documents/test.txt",
    "DestinationFolderURL": "/Shared Documents/TestFolder"
    }
  4. If the action is successful, the MoveAttachmentOrDocument task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Result": "Success"
    }]

Example - Create a folder

This example creates a folder in the specified location.

  1. In the Configure connector task dialog, click Actions.
  2. Select the CreateFolder action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "RelativeURL": "/Shared Documents/TestFolder",
    "FolderName": "TestFolder123"
    }
  4. If the action is successful, the CreateFolder task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Id": "110842b7-2393-4f11-9391-3d75214e9fb8",
    "Status": "Success"
    }]

Example - Add an attachment

This example adds an attachment to the specified list.

  1. In the Configure connector task dialog, click Actions.
  2. Select the AddAttachments action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "ListTitle": "My Lists",
    "FileName": "TestAttachment2",
    "Content": "abcd text",
    "ItemId": "1"
    }
  4. If the action is successful, the AddAttachments task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "RelativeUrl": "/Lists/My lists/Attachments/1/TestAttachment2",
    "Status": "Success"
    }]

Example - Add a binary attachment

This example adds a binary attachment to the specified list.

  1. In the Configure connector task dialog, click Actions.
  2. Select the AddAttachments action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "ListTitle": "My Lists",
    "FileName": "TestAttachment3",
    "ContentBytes": "VGVzdCBGaWxl",
    "HasBytes": "true",  
    "ItemId": "1"
    }
  4. If the action is successful, the AddAttachments task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "RelativeUrl": "/Lists/My lists/Attachments/1/TestAttachment3",
    "Status": "Success"
    }]

Example - Download an attachment

This example downloads an attachment.

  1. In the Configure connector task dialog, click Actions.
  2. Select the DownloadAttachments action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "RemoteFile": "/Shared Documents/Document.txt"
    }
  4. If the action is successful, the DownloadAttachments task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Success": "True",
    "Content": "Test File",
    }]

Example - Download a binary attachment

This example downloads a binary attachment.

  1. In the Configure connector task dialog, click Actions.
  2. Select the DownloadAttachments action, and then click Done.
  3. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "RemoteFile": "/Shared Documents/Document.docx",
    "HasBytes": "true"
    }
  4. If the action is successful, the DownloadAttachments task's connectorOutputPayload response parameter will have a value similar to the following:

    [{
    "Success": "True",
    "ContentBytes": "VGVzdCBGaWxl",
    }]

Entity operation examples

This section shows how to perform some of the entity operations in this connector.

Example - List all files

This example lists all the files in the Files entity.

  1. In the Configure connector task dialog, click Entities.
  2. Select Files from the Entity list.
  3. Select the List operation, and then click Done.
  4. Optionally, in Task Input section of the Connectors task, you can filter your result set by specifying a filter clause. You can also specify multiple filter conditions by using the logic operators.

Example - Get a list

This example gets a list with the specified ID from the My Lists entity.

  1. In the Configure connector task dialog, click Entities.
  2. Select My Lists from the Entity list.
  3. Select the Get operation, and then click Done.
  4. In the Task Input section of the Connectors task, click EntityId and then enter 3 in the Default Value field.

    Here, 3 is a primary key value in the My Lists entity.

Example - Create a record

This example creates a record in the My Lists entity.

  1. In the Configure connector task dialog, click Entities.
  2. Select My Lists from the Entity list.
  3. Select the Create operation, and then click Done.
  4. In the Task Input section of the Connectors task, click connectorInputPayload and then enter a value similar to the following in the Default Value field:
    {
    "AuthorId": 11.0, 
    "BaseName": "3_",
    "Attachments": false,
    "Title": "Created List New"
    }

    If the integration is successful, your connector task's connectorOutputPayload field will have a value similar to the following:

    [{
    "ID": 3.0
    }]

Example - Delete a record

This example deletes the record with the specified ID in the My Lists entity.

  1. In the Configure connector task dialog, click Entities.
  2. Select My Lists from the Entity list.
  3. Select the Delete operation, and then click Done.
  4. In the Task Input section of the Connectors task, click entityId and then enter 2 in the Default Value field.

Use the SharePoint connection in an integration

After you create the connection, it becomes available in both Apigee Integration and Application Integration. You can use the connection in an integration through the Connectors task.

  • To understand how to create and use the Connectors task in Apigee Integration, see Connectors task.
  • To understand how to create and use the Connectors task in Application Integration, see Connectors task.

Get help from the Google Cloud community

You can post your questions and discuss this connector in the Google Cloud community at Cloud Forums.

What's next