Integration Centric Profiles

An Integration Centric Profile defines the Remote Server integrations a user is expected to add and connect during integration-centric onboarding.

Use this to automate setup guidance for users who need access to multiple business systems without sending long manual instructions. Common scenarios include ongoing access to systems such as SharePoint, bridging Google, Microsoft, and Box environments after M&A activity, and migrations where users connect legacy EFSS accounts during transition work.

List Integration Centric Profiles

SDK Method

integration_centric_profile.List()

Return Values

Returns a *integration_centric_profile.Iter and an error. Range over All() to receive files_sdk.IntegrationCentricProfile values and errors. Check each loop error before using its resource. Next() and Err() remain supported.

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"
    integration_centric_profile "github.com/Files-com/files-sdk-go/v3/integrationcentricprofile"
)

integrationCentricProfileIterator, err := integration_centric_profile.List(files_sdk.IntegrationCentricProfileListParams{})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}

for integrationCentricProfile, err := range integrationCentricProfileIterator.All() {
    if err != nil {
        var respErr files_sdk.ResponseError
        if errors.As(err, &respErr) {
            fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
        } else {
            fmt.Printf("Request failed: %v\n", err)
        }
        return
    }
    fmt.Println(integrationCentricProfile)
}

Show Integration Centric Profile

SDK Method

integration_centric_profile.Find()

Return Values

Returns a files_sdk.IntegrationCentricProfile value and an error.

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.

IntegrationCentricProfileFindParams Fields

FieldDescription
Id
int64
Required
Integration Centric Profile ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    integration_centric_profile "github.com/Files-com/files-sdk-go/v3/integrationcentricprofile"
)

integrationCentricProfile, err := integration_centric_profile.Find(files_sdk.IntegrationCentricProfileFindParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}
fmt.Println(integrationCentricProfile)

Create Integration Centric Profile

SDK Method

integration_centric_profile.Create()

Return Values

Returns a files_sdk.IntegrationCentricProfile value and an error.

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.

IntegrationCentricProfileCreateParams Fields

FieldDefaultDescription
Name
string
Required
Profile name
ExpectedRemoteServers
array(object)
Required
Remote Server integrations the user is expected to add and connect. Each entry requires server_type and may include a display name.
WorkspaceId
int64
0Workspace ID
UseForAllUsers
boolean
falseWhether this profile applies to all users in the Workspace by default

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    integration_centric_profile "github.com/Files-com/files-sdk-go/v3/integrationcentricprofile"
)

integrationCentricProfile, err := integration_centric_profile.Create(files_sdk.IntegrationCentricProfileCreateParams{
  Name: "Business Systems Onboarding",
  ExpectedRemoteServers: []map[string]interface{}{map[string]interface{}{"server_type": "dropbox", "name": "Dropbox"}},
})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}
fmt.Println(integrationCentricProfile)

Update Integration Centric Profile

SDK Method

integration_centric_profile.Update()

Return Values

Returns a files_sdk.IntegrationCentricProfile value and an error.

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.

IntegrationCentricProfileUpdateParams Fields

FieldDescription
Id
int64
Required
Integration Centric Profile ID.
Name
string
Profile name
WorkspaceId
int64
Workspace ID
ExpectedRemoteServers
array(object)
Remote Server integrations the user is expected to add and connect. Each entry requires server_type and may include a display name.
UseForAllUsers
boolean
Whether this profile applies to all users in the Workspace by default

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    integration_centric_profile "github.com/Files-com/files-sdk-go/v3/integrationcentricprofile"
)

integrationCentricProfile, err := integration_centric_profile.Update(files_sdk.IntegrationCentricProfileUpdateParams{
  Id: 1,
  Name: "Business Systems Onboarding",
})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}
fmt.Println(integrationCentricProfile)

Delete Integration Centric Profile

SDK Method

integration_centric_profile.Delete()

Return Values

Returns an error, or nil on success.

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.

IntegrationCentricProfileDeleteParams Fields

FieldDescription
Id
int64
Required
Integration Centric Profile ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    integration_centric_profile "github.com/Files-com/files-sdk-go/v3/integrationcentricprofile"
)

err := integration_centric_profile.Delete(files_sdk.IntegrationCentricProfileDeleteParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}

The IntegrationCentricProfile Object

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

AttributeDescription
Id
int64
Integration Centric Profile ID
Name
string
Profile name
WorkspaceId
int64
Workspace ID
UseForAllUsers
boolean
Whether this profile applies to all users in the Workspace by default
ExpectedRemoteServers
array(object)
Remote Server integrations the user is expected to add and connect. Each entry requires server_type and may include a display name.

expected_remote_servers

Remote Server integrations the user is expected to add and connect. Each entry requires server_type and may include a display name. Names are trimmed. Blank names are omitted. Each server_type/name pair must be unique. Name comparisons ignore letter case.

Value typeDescription
array of objectsRemote Server integrations the user is expected to add and connect. Each entry requires server_type and may include a display name. Names are trimmed. Blank names are omitted. Each server_type/name pair must be unique. Name comparisons ignore letter case. At least 1 item.

Example expected_remote_servers

[
  {
    "server_type": "dropbox",
    "name": "Dropbox"
  }
]