Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »



On This Page

Overview

Shared items are those available to the account but not owned by it. Excluding shared items is useful when multiple accounts are being migrated, ensuring duplicate content is not created on the receiving platform. When the filter is set on a job, SkySync will only transfer items that are owned by the account the job is running as. The appropriate permissions will need to be applied to the item once it is transferred (either through permission migration or manual permission mapping) for other accounts to have access to the item on the destination.

SkySync only detects the folder as shared if the connection owner is not the owner of the shared folder. SkySync does not track ownership of content excluded by filter-shared.


Filter Using REST API

By default, shared content is included in transfers. To exclude it, use the shared or filter_shared type as a rule for either the source or destination. No other attribute values are needed.

{
	...
	"transfer": {
		...
		"filter": {
			"source": [{
					"action": "exclude",
					"rules": [{
							"type": "shared"
						}
					],
					"type": "filter_rule"
				}
			]
		}
	}
	...
}


Example

As the Source Connection Admin, I want to impersonate a user and transfer all their content to their destination account. Along with their content, I want to ensure the Source user's folder that has been shared with other users transfers and keeps those shared settings with the same users on the destination. However, content that was shared with the source user, I want to exclude to prevent duplication on the destination. 

Notes:

  • Destination exclude:filter_shared is being ignored in this scenario because this is a copy job

  • If transfer type was changed to "sync", the destination exclude:filter_shared would be applied

  • Assumes email accounts on both the source and destination match

{
  "name":"Copy Source to Destination - Impersonate JSmith",
  "kind": "transfer",
  "transfer": {
      "audit_level": "trace",
      "transfer_type": "copy",
      "permissions": "add",
      "preserve_owners": "true",
      "delete_propagation": "ignore_both",
        "source": {
          "connection": { "id": "{{connection_id_source}}" },
          "target": { "path": "/" },
          "impersonate_as": { "email": "jsmith@abcd.com" }
        },
        "destination": {
          "connection": { "id": "{{connection_id_destination}}" },
          "target": { "path": "/Documents/BackupSource/" },
          "impersonate_as": { "email": "jsmith@abcd.com" }
        },
   "account_map": {
         "map_by": {
             "email": true
  },
   "type": "account_map"
  },
       "filter":{
         "source":[
            {
               "action":"exclude",
               "rules":[
                  {
                     "type":"filter_shared"
                  }
               ],
               "type":"filter_rule"
            }
         ],
         "destination":[
            {
               "action":"exclude",
               "rules":[
                  {
                     "type":"filter_shared"
                  }
               ],
               "type":"filter_rule"
            }
         ]
       }   
  },
  "schedule": { 
  	"mode": "manual"
  	}
}

  • No labels