Partner Channel Templates

A PartnerChannelTemplate defines reusable Partner Channel configuration that can be applied to Partners.

Route path patterns can be fixed paths shared by all assigned Partners, or include {{partner_name}} to expand to a single folder name. Slashes in Partner names become pipes (|). Leading and trailing whitespace, percent signs, and null bytes are percent-encoded. Names consisting of . or .. become %2E or %2E%2E. For example, a Partner named "Acme " uses the folder "Acme%20", while "Acme%20" uses "Acme%2520". These percent sequences are literal folder-name characters, not URL encoding to decode. The expanded route must point to an existing folder in the same Workspace.

List Partner Channel Templates

SDK Method

partnerchanneltemplate.List()

Return Object

[]*PartnerChannelTemplate

Authorization Requirement

Requires a Site-Wide API key, or a User API key or session from a Site Administrator or a Workspace Administrator for the relevant workspace.

Additional Arguments

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    partner_channel_template "github.com/Files-com/files-sdk-go/v3/partnerchanneltemplate"
)

partnerChannelTemplateIterator, err := partner_channel_template.List(files_sdk.PartnerChannelTemplateListParams{})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

for partnerChannelTemplateIterator.Next() {
    partnerChannelTemplate := partnerChannelTemplateIterator.partnerChannelTemplate()
}
err = partnerChannelTemplateIterator.Err()
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Show Partner Channel Template

SDK Method

partnerchanneltemplate.Find()

Return Object

PartnerChannelTemplate

Authorization Requirement

Requires a Site-Wide API key, or a User API key or session from a Site Administrator or a Workspace Administrator for the relevant workspace.

PartnerChannelTemplateFindParams Fields

FieldDescription
Id
int64
Required
Partner Channel Template ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    partner_channel_template "github.com/Files-com/files-sdk-go/v3/partnerchanneltemplate"
)

partnerChannelTemplate, err := partner_channel_template.Find(files_sdk.PartnerChannelTemplateFindParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Create Partner Channel Template

SDK Method

partnerchanneltemplate.Create()

Return Object

PartnerChannelTemplate

Authorization Requirement

Requires a Site-Wide API key, or a User API key or session from a Site Administrator or a Workspace Administrator for the relevant workspace.

PartnerChannelTemplateCreateParams Fields

FieldDefaultDescription
Direction
string
"two_way"Channel directions. two_way enables both directions, to_partner enables outgoing downloads, and from_partner enables incoming uploads.
Possible values: two_way, to_partner, from_partner
UseChannelRoot
boolean
falseUse the Channel folder directly for a one-way exchange. Defaults to false. Cannot be changed after creation. Folder name overrides must be blank when enabled, and the Template must remain one-way.
FromPartnerFolderName
string
Optional Channel-level from-Partner folder name override.
FromPartnerManagedFolderPaths
array(string)
Managed folder paths inside the from-Partner folder.
FromPartnerRoutePathPattern
string
Optional route path pattern for files uploaded by the Partner. Supports {{partner_name}}.
ToPartnerFolderName
string
Optional Channel-level to-Partner folder name override.
ToPartnerManagedFolderPaths
array(string)
Managed folder paths inside the to-Partner folder.
ToPartnerRoutePathPattern
string
Optional route path pattern for files delivered to the Partner. Supports {{partner_name}}.
Name
string
Required
The name of the Partner Channel Template.
Path
string
Required
Channel path relative to the Partner root folder.
WorkspaceId
int64
0ID of the Workspace associated with this Partner Channel Template.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    partner_channel_template "github.com/Files-com/files-sdk-go/v3/partnerchanneltemplate"
)

partnerChannelTemplate, err := partner_channel_template.Create(files_sdk.PartnerChannelTemplateCreateParams{
  Name: "Claims Template",
  Path: "claims/medical"
})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Update Partner Channel Template

SDK Method

partnerchanneltemplate.Update()

Return Object

PartnerChannelTemplate

Authorization Requirement

Requires a Site-Wide API key, or a User API key or session from a Site Administrator or a Workspace Administrator for the relevant workspace.

PartnerChannelTemplateUpdateParams Fields

FieldDescription
Id
int64
Required
Partner Channel Template ID.
Direction
string
Channel directions. two_way enables both directions, to_partner enables outgoing downloads, and from_partner enables incoming uploads.
Possible values: two_way, to_partner, from_partner
UseChannelRoot
boolean
Use the Channel folder directly for a one-way exchange. Defaults to false. Cannot be changed after creation. Folder name overrides must be blank when enabled, and the Template must remain one-way.
FromPartnerFolderName
string
Optional Channel-level from-Partner folder name override.
FromPartnerManagedFolderPaths
array(string)
Managed folder paths inside the from-Partner folder.
FromPartnerRoutePathPattern
string
Optional route path pattern for files uploaded by the Partner. Supports {{partner_name}}.
ToPartnerFolderName
string
Optional Channel-level to-Partner folder name override.
ToPartnerManagedFolderPaths
array(string)
Managed folder paths inside the to-Partner folder.
ToPartnerRoutePathPattern
string
Optional route path pattern for files delivered to the Partner. Supports {{partner_name}}.
Name
string
The name of the Partner Channel Template.
Path
string
Channel path relative to the Partner root folder.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    partner_channel_template "github.com/Files-com/files-sdk-go/v3/partnerchanneltemplate"
)

partnerChannelTemplate, err := partner_channel_template.Update(files_sdk.PartnerChannelTemplateUpdateParams{
  Id: 1,
  Direction: "two_way"
})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

Delete Partner Channel Template

SDK Method

partnerchanneltemplate.Delete()

Return Object

No return value.

Authorization Requirement

Requires a Site-Wide API key, or a User API key or session from a Site Administrator or a Workspace Administrator for the relevant workspace.

PartnerChannelTemplateDeleteParams Fields

FieldDescription
Id
int64
Required
Partner Channel Template ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    partner_channel_template "github.com/Files-com/files-sdk-go/v3/partnerchanneltemplate"
)

err := partner_channel_template.Delete(files_sdk.PartnerChannelTemplateDeleteParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Println("Response Error Occurred (" + respErr.Type + "): " + respErr.ErrorMessage)
    } else {
        fmt.Printf("Unexpected Error: %s\n", err.Error())
    }
}

The PartnerChannelTemplate Object

Some of the methods above return a PartnerChannelTemplate object. The attributes of this object are listed below.

AttributeDescription
Id
int64
The unique ID of the Partner Channel Template.
WorkspaceId
int64
ID of the Workspace associated with this Partner Channel Template.
Direction
string
Channel directions. two_way enables both directions, to_partner enables outgoing downloads, and from_partner enables incoming uploads.
Possible values: two_way, to_partner, from_partner
UseChannelRoot
boolean
Use the Channel folder directly for a one-way exchange. Defaults to false. Cannot be changed after creation. Folder name overrides must be blank when enabled, and the Template must remain one-way.
Name
string
The name of the Partner Channel Template.
Path
string
Channel path relative to the Partner root folder. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
ToPartnerFolderName
string
Optional Channel-level to-Partner folder name override.
FromPartnerFolderName
string
Optional Channel-level from-Partner folder name override.
FromPartnerRoutePathPattern
string
Optional route path pattern for files uploaded by the Partner. Supports {{partner_name}}.
ToPartnerRoutePathPattern
string
Optional route path pattern for files delivered to the Partner. Supports {{partner_name}}.
ToPartnerManagedFolderPaths
array(string)
Managed folder paths inside the to-Partner folder.
FromPartnerManagedFolderPaths
array(string)
Managed folder paths inside the from-Partner folder.
EffectiveToPartnerFolderName
string
Resolved to-Partner subfolder name. Null when the direction is disabled or uses the Channel folder directly.
EffectiveFromPartnerFolderName
string
Resolved from-Partner subfolder name. Null when the direction is disabled or uses the Channel folder directly.