Partners

A Partner is a first-class entity that cleanly represents an external organization, enables delegated administration, and enforces strict boundaries.

List Partners

Endpoint

GET/partners

Return Object

Partner[]

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Additional Arguments

Example Request

curl https://app.files.com/api/rest/v1/partners.json \
  -H 'X-FilesAPI-Key: YOUR_API_KEY'

Example Response

[
  {
    "allow_bypassing_2fa_policies": false,
    "allowed_ips": "10.0.0.0/8\n127.0.0.1",
    "allow_credential_changes": false,
    "allow_providing_gpg_keys": false,
    "allow_user_creation": false,
    "cc_emails_to_responsible_party": false,
    "id": 1,
    "ai_assistant_personality_id": 1,
    "workspace_id": 1,
    "name": "Acme Corp",
    "notes": "This is a note about the partner.",
    "partner_admin_ids": [
      1,
      2,
      3
    ],
    "partner_channel_template_id": 1,
    "partnership_role": "host",
    "responsible_group_id": 1,
    "responsible_user_id": 1,
    "root_folder": "/AcmeCorp",
    "show_partner_channel_home_page": false,
    "tags": "example",
    "user_ids": [
      1,
      2,
      3
    ]
  }
]

Show Partner

Endpoint

GET/partners/{id}

Return Object

Partner

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Request Parameters

ParameterDescription
id
int64
Required
Partner ID.

Example Request

curl https://app.files.com/api/rest/v1/partners/{id}.json \
  -H 'X-FilesAPI-Key: YOUR_API_KEY'

Example Response

{
  "allow_bypassing_2fa_policies": false,
  "allowed_ips": "10.0.0.0/8\n127.0.0.1",
  "allow_credential_changes": false,
  "allow_providing_gpg_keys": false,
  "allow_user_creation": false,
  "cc_emails_to_responsible_party": false,
  "id": 1,
  "ai_assistant_personality_id": 1,
  "workspace_id": 1,
  "name": "Acme Corp",
  "notes": "This is a note about the partner.",
  "partner_admin_ids": [
    1,
    2,
    3
  ],
  "partner_channel_template_id": 1,
  "partnership_role": "host",
  "responsible_group_id": 1,
  "responsible_user_id": 1,
  "root_folder": "/AcmeCorp",
  "show_partner_channel_home_page": false,
  "tags": "example",
  "user_ids": [
    1,
    2,
    3
  ]
}

Create Partner

Endpoint

POST/partners

Return Object

Partner

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Request Parameters

ParameterDefaultDescription
ai_assistant_personality_id
int64
AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
allowed_ips
string
A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
allow_bypassing_2fa_policies
boolean
falseAllow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
allow_credential_changes
boolean
falseAllow Partner Admins to change or reset credentials for users belonging to this Partner.
allow_providing_gpg_keys
boolean
falseAllow Partner Admins to provide GPG keys.
allow_user_creation
boolean
falseAllow Partner Admins to create users.
cc_emails_to_responsible_party
boolean
falseWhen true, emails sent to Partner users are copied to the responsible User or Group.
notes
string
Notes about this Partner.
partner_channel_template_id
int64
ID of the Partner Channel Template assigned to this Partner.
responsible_group_id
int64
ID of the Group responsible for this Partner.
responsible_user_id
int64
ID of the User responsible for this Partner.
show_partner_channel_home_page
boolean
falseShow Partner users a simplified home page built from this Partner's Channels.
tags
string
Comma-separated list of Tags for this Partner. Tags are used for other features, such as UserLifecycleRules, which can target specific tags. Tags must only contain lowercase letters, numbers, and hyphens.
name
string
Required
The name of the Partner.
root_folder
string
Required
The root folder path for this Partner.
workspace_id
int64
0ID of the Workspace associated with this Partner.

Example Request

curl https://app.files.com/api/rest/v1/partners.json \
  -X POST \
  -H 'Content-Type: application/json' \
  -d '{"ai_assistant_personality_id":1,"allowed_ips":"10.0.0.0/8\n127.0.0.1","allow_bypassing_2fa_policies":false,"allow_credential_changes":false,"allow_providing_gpg_keys":false,"allow_user_creation":false,"cc_emails_to_responsible_party":false,"notes":"This is a note about the partner.","partner_channel_template_id":1,"responsible_group_id":1,"responsible_user_id":1,"show_partner_channel_home_page":false,"tags":"example","name":"Acme Corp","root_folder":"/AcmeCorp","workspace_id":1}' \
  -H 'X-FilesAPI-Key: YOUR_API_KEY'

Example Response

{
  "allow_bypassing_2fa_policies": false,
  "allowed_ips": "10.0.0.0/8\n127.0.0.1",
  "allow_credential_changes": false,
  "allow_providing_gpg_keys": false,
  "allow_user_creation": false,
  "cc_emails_to_responsible_party": false,
  "id": 1,
  "ai_assistant_personality_id": 1,
  "workspace_id": 1,
  "name": "Acme Corp",
  "notes": "This is a note about the partner.",
  "partner_admin_ids": [
    1,
    2,
    3
  ],
  "partner_channel_template_id": 1,
  "partnership_role": "host",
  "responsible_group_id": 1,
  "responsible_user_id": 1,
  "root_folder": "/AcmeCorp",
  "show_partner_channel_home_page": false,
  "tags": "example",
  "user_ids": [
    1,
    2,
    3
  ]
}

Update Partner

Endpoint

PATCH/partners/{id}

Return Object

Partner

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Request Parameters

ParameterDescription
id
int64
Required
Partner ID.
ai_assistant_personality_id
int64
AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
allowed_ips
string
A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
allow_bypassing_2fa_policies
boolean
Allow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
allow_credential_changes
boolean
Allow Partner Admins to change or reset credentials for users belonging to this Partner.
allow_providing_gpg_keys
boolean
Allow Partner Admins to provide GPG keys.
allow_user_creation
boolean
Allow Partner Admins to create users.
cc_emails_to_responsible_party
boolean
When true, emails sent to Partner users are copied to the responsible User or Group.
notes
string
Notes about this Partner.
partner_channel_template_id
int64
ID of the Partner Channel Template assigned to this Partner.
responsible_group_id
int64
ID of the Group responsible for this Partner.
responsible_user_id
int64
ID of the User responsible for this Partner.
show_partner_channel_home_page
boolean
Show Partner users a simplified home page built from this Partner's Channels.
tags
string
Comma-separated list of Tags for this Partner. Tags are used for other features, such as UserLifecycleRules, which can target specific tags. Tags must only contain lowercase letters, numbers, and hyphens.
name
string
The name of the Partner.
root_folder
string
The root folder path for this Partner.

Example Request

curl https://app.files.com/api/rest/v1/partners/{id}.json \
  -X PATCH \
  -H 'Content-Type: application/json' \
  -d '{"ai_assistant_personality_id":1,"allowed_ips":"10.0.0.0/8\n127.0.0.1","allow_bypassing_2fa_policies":false,"allow_credential_changes":false,"allow_providing_gpg_keys":false,"allow_user_creation":false,"cc_emails_to_responsible_party":false,"notes":"This is a note about the partner.","partner_channel_template_id":1,"responsible_group_id":1,"responsible_user_id":1,"show_partner_channel_home_page":false,"tags":"example","name":"Acme Corp","root_folder":"/AcmeCorp"}' \
  -H 'X-FilesAPI-Key: YOUR_API_KEY'

Example Response

{
  "allow_bypassing_2fa_policies": false,
  "allowed_ips": "10.0.0.0/8\n127.0.0.1",
  "allow_credential_changes": false,
  "allow_providing_gpg_keys": false,
  "allow_user_creation": false,
  "cc_emails_to_responsible_party": false,
  "id": 1,
  "ai_assistant_personality_id": 1,
  "workspace_id": 1,
  "name": "Acme Corp",
  "notes": "This is a note about the partner.",
  "partner_admin_ids": [
    1,
    2,
    3
  ],
  "partner_channel_template_id": 1,
  "partnership_role": "host",
  "responsible_group_id": 1,
  "responsible_user_id": 1,
  "root_folder": "/AcmeCorp",
  "show_partner_channel_home_page": false,
  "tags": "example",
  "user_ids": [
    1,
    2,
    3
  ]
}

Delete Partner

Endpoint

DELETE/partners/{id}

Return Object

No return value.

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Request Parameters

ParameterDescription
id
int64
Required
Partner ID.

Example Request

curl https://app.files.com/api/rest/v1/partners/{id}.json \
  -X DELETE \
  -H 'X-FilesAPI-Key: YOUR_API_KEY'

The Partner Object

Some of the endpoints above return a Partner object. The attributes of this object are listed below.

AttributeDescription
allow_bypassing_2fa_policies
boolean
Allow Partner Admins to change Two-Factor Authentication requirements for Partner Users.
allowed_ips
string
A list of allowed IPs for this Partner. Newline delimited. Partner User IP access is allowed when the IP matches the Partner, User, or Site allowed IP lists.
allow_credential_changes
boolean
Allow Partner Admins to change or reset credentials for users belonging to this Partner.
allow_providing_gpg_keys
boolean
Allow Partner Admins to provide GPG keys.
allow_user_creation
boolean
Allow Partner Admins to create users.
cc_emails_to_responsible_party
boolean
When true, emails sent to Partner users are copied to the responsible User or Group.
id
int64
The unique ID of the Partner.
ai_assistant_personality_id
int64
AI Assistant Personality ID assigned to this Partner, if any. Users in the Partner inherit it unless a direct per-user assignment overrides it.
workspace_id
int64
ID of the Workspace associated with this Partner.
name
string
The name of the Partner.
notes
string
Notes about this Partner.
partner_admin_ids
array(int64)
Array of User IDs that are Partner Admins for this Partner.
partner_channel_template_id
int64
ID of the Partner Channel Template assigned to this Partner.
partnership_role
string
This site's role in Partner Site relationships for this Partner. Can be host, guest, host_and_guest, or null.
Possible values: host, guest, host_and_guest
responsible_group_id
int64
ID of the Group responsible for this Partner.
responsible_user_id
int64
ID of the User responsible for this Partner.
root_folder
string
The root folder path for this Partner.
show_partner_channel_home_page
boolean
Show Partner users a simplified home page built from this Partner's Channels.
tags
string
Comma-separated list of Tags for this Partner. Tags are used for other features, such as UserLifecycleRules, which can target specific tags. Tags must only contain lowercase letters, numbers, and hyphens.
user_ids
array(int64)
Array of User IDs that belong to this Partner.

Example Partner Object

{
  "allow_bypassing_2fa_policies": false,
  "allowed_ips": "10.0.0.0/8\n127.0.0.1",
  "allow_credential_changes": false,
  "allow_providing_gpg_keys": false,
  "allow_user_creation": false,
  "cc_emails_to_responsible_party": false,
  "id": 1,
  "ai_assistant_personality_id": 1,
  "workspace_id": 1,
  "name": "Acme Corp",
  "notes": "This is a note about the partner.",
  "partner_admin_ids": [
    1,
    2,
    3
  ],
  "partner_channel_template_id": 1,
  "partnership_role": "host",
  "responsible_group_id": 1,
  "responsible_user_id": 1,
  "root_folder": "/AcmeCorp",
  "show_partner_channel_home_page": false,
  "tags": "example",
  "user_ids": [
    1,
    2,
    3
  ]
}