Scheduled Exports

A Scheduled Export defines a recurring schedule for generating one of the built-in CSV exports and e-mailing it to a Site Admin recipient.

List Scheduled Exports

SDK Method

scheduledexport.List()

Return Object

[]*ScheduledExport

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

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    scheduled_export "github.com/Files-com/files-sdk-go/v3/scheduledexport"
)

scheduledExportIterator, err := scheduled_export.List(files_sdk.ScheduledExportListParams{})
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 scheduledExportIterator.Next() {
    scheduledExport := scheduledExportIterator.scheduledExport()
}
err = scheduledExportIterator.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 Scheduled Export

SDK Method

scheduledexport.Find()

Return Object

ScheduledExport

Authorization Requirement

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

ScheduledExportFindParams Fields

FieldDescription
Id
int64
Required
Scheduled Export ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    scheduled_export "github.com/Files-com/files-sdk-go/v3/scheduledexport"
)

scheduledExport, err := scheduled_export.Find(files_sdk.ScheduledExportFindParams{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 Scheduled Export

SDK Method

scheduledexport.Create()

Return Object

ScheduledExport

Authorization Requirement

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

ScheduledExportCreateParams Fields

FieldDefaultDescription
Name
string
Required
Name for this scheduled export.
ExportType
string
Required
Export report type. Valid values: folder_size_audit, group_membership_audit, permission_audit, share_link_audit
ExportOptions
object
Report-specific options. permission_audit supports group_by with user or path.
UserId
int64
Site Admin user who receives the completed export e-mail.
Disabled
boolean
falseIf true, this scheduled export will not run.
Trigger
string
"daily"Schedule trigger type: daily or custom_schedule.
Possible values: daily, custom_schedule
Interval
string
If trigger is daily, this specifies how often to run the scheduled export.
RecurringDay
int64
If trigger is daily, this selects the day number inside the chosen interval.
RecurringDays
array(int64)
If trigger is daily, this selects one or more day numbers inside a week, month, quarter, or year interval.
ScheduleId
int64
If trigger is custom_schedule, the reusable Schedule used instead of the scheduled export's schedule fields.
ScheduleDaysOfWeek
array(int64)
If trigger is custom_schedule, the 0-based weekdays used by the schedule.
ScheduleTimesOfDay
array(string)
Times of day in HH:MM format for the scheduled export schedule.
ScheduleTimeZone
string
Time zone used by the scheduled export schedule.
HolidayRegion
string
Optional holiday region used by the scheduled export schedule.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    scheduled_export "github.com/Files-com/files-sdk-go/v3/scheduledexport"
)

scheduledExport, err := scheduled_export.Create(files_sdk.ScheduledExportCreateParams{
  Name: "Monthly access review",
  ExportType: "permission_audit"
})
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 Scheduled Export

SDK Method

scheduledexport.Update()

Return Object

ScheduledExport

Authorization Requirement

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

ScheduledExportUpdateParams Fields

FieldDescription
Id
int64
Required
Scheduled Export ID.
Name
string
Name for this scheduled export.
ExportType
string
Export report type. Valid values: folder_size_audit, group_membership_audit, permission_audit, share_link_audit
ExportOptions
object
Report-specific options. permission_audit supports group_by with user or path.
UserId
int64
Site Admin user who receives the completed export e-mail.
Disabled
boolean
If true, this scheduled export will not run.
Trigger
string
Schedule trigger type: daily or custom_schedule.
Possible values: daily, custom_schedule
Interval
string
If trigger is daily, this specifies how often to run the scheduled export.
RecurringDay
int64
If trigger is daily, this selects the day number inside the chosen interval.
RecurringDays
array(int64)
If trigger is daily, this selects one or more day numbers inside a week, month, quarter, or year interval.
ScheduleId
int64
If trigger is custom_schedule, the reusable Schedule used instead of the scheduled export's schedule fields.
ScheduleDaysOfWeek
array(int64)
If trigger is custom_schedule, the 0-based weekdays used by the schedule.
ScheduleTimesOfDay
array(string)
Times of day in HH:MM format for the scheduled export schedule.
ScheduleTimeZone
string
Time zone used by the scheduled export schedule.
HolidayRegion
string
Optional holiday region used by the scheduled export schedule.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    scheduled_export "github.com/Files-com/files-sdk-go/v3/scheduledexport"
)

scheduledExport, err := scheduled_export.Update(files_sdk.ScheduledExportUpdateParams{
  Id: 1,
  Name: "Monthly access review"
})
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 Scheduled Export

SDK Method

scheduledexport.Delete()

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.

ScheduledExportDeleteParams Fields

FieldDescription
Id
int64
Required
Scheduled Export ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    scheduled_export "github.com/Files-com/files-sdk-go/v3/scheduledexport"
)

err := scheduled_export.Delete(files_sdk.ScheduledExportDeleteParams{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 ScheduledExport Object

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

AttributeDescription
Id
int64
Scheduled Export ID
Name
string
Name for this scheduled export.
ExportType
string
Export report type. Valid values: folder_size_audit, group_membership_audit, permission_audit, share_link_audit
ReportName
string
Human-readable report name.
ExportOptions
object
Report-specific options. permission_audit supports group_by with user or path.
UserId
int64
Site Admin user who receives the completed export e-mail.
Disabled
boolean
If true, this scheduled export will not run.
Trigger
string
Schedule trigger type: daily or custom_schedule.
Possible values: daily, custom_schedule
Interval
string
If trigger is daily, this specifies how often to run the scheduled export.
RecurringDay
int64
If trigger is daily, this selects the day number inside the chosen interval.
RecurringDays
array(int64)
If trigger is daily, this selects one or more day numbers inside a week, month, quarter, or year interval.
ScheduleId
int64
If trigger is custom_schedule, the reusable Schedule used instead of the scheduled export's schedule fields.
ScheduleDaysOfWeek
array(int64)
If trigger is custom_schedule, the 0-based weekdays used by the schedule.
ScheduleTimesOfDay
array(string)
Times of day in HH:MM format for the scheduled export schedule.
ScheduleTimeZone
string
Time zone used by the scheduled export schedule.
HolidayRegion
string
Optional holiday region used by the scheduled export schedule.
HumanReadableSchedule
string
Human-readable schedule description.
LastRunAt
date-time
Most recent scheduled run time.
LastExportId
int64
Most recent Export ID created by this schedule.
CreatedAt
date-time
Creation time.
UpdatedAt
date-time
Last update time.