Requests

A Request is a file that should be uploaded by a specific user or group.

Requests can either be manually created and managed, or managed automatically by an Automation.

List Requests

SDK Method

request.List()

Return Object

[]*Request

Authorization Requirement

Available to all authenticated keys or sessions.

RequestListParams Fields

FieldDescription
Mine
boolean
Only show requests of the current user? (Defaults to true if current user is not a site admin.)
Path
string
Path to show requests for. If omitted, shows all paths. Send / to represent the root directory.

Additional Arguments

Example Request

import (
    "fmt"
    "errors"

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

requestIterator, err := request.List(files_sdk.RequestListParams{Mine: lib.Bool(false)})
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 requestIterator.Next() {
    request := requestIterator.request()
}
err = requestIterator.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())
    }
}

List Requests

SDK Method

request.GetFolder()

Return Object

[]*Request

Authorization Requirement

Available to all authenticated keys or sessions.

RequestGetFolderParams Fields

FieldDescription
Mine
boolean
Only show requests of the current user? (Defaults to true if current user is not a site admin.)
Path
string
Required
Path to show requests for. If omitted, shows all paths. Send / to represent the root directory.

Additional Arguments

Example Request

import (
    "fmt"
    "errors"

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

requestIterator, err := request.GetFolder(files_sdk.RequestGetFolderParams{Path: "path"})
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 requestIterator.Next() {
    request := requestIterator.request()
}
err = requestIterator.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())
    }
}

Create Request

SDK Method

request.Create()

Return Object

Request

Authorization Requirement

Available to all authenticated keys or sessions.

RequestCreateParams Fields

FieldDescription
Path
string
Required
Folder path on which to request the file.
Destination
string
Required
Destination filename (without extension) to request.
UserIds
string
A list of user IDs to request the file from. If sent as a string, it should be comma-delimited.
GroupIds
string
A list of group IDs to request the file from. If sent as a string, it should be comma-delimited.

Example Request

import (
    "fmt"
    "errors"

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

request, err := request.Create(files_sdk.RequestCreateParams{
  Path: "path",
  Destination: "destination"
})
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 Request

SDK Method

request.Delete()

Return Object

No return value.

Authorization Requirement

Available to all authenticated keys or sessions.

RequestDeleteParams Fields

FieldDescription
Id
int64
Required
Request ID.

Example Request

import (
    "fmt"
    "errors"

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

err := request.Delete(files_sdk.RequestDeleteParams{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 Request Object

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

AttributeDescription
Id
int64
Request ID
Path
string
Folder path. This must be slash-delimited, but it must neither start nor end with a slash. Maximum of 5000 characters.
Source
string
Source filename, if applicable
Destination
string
Destination filename
AutomationId
int64
ID of automation that created request
UserDisplayName
string
User making the request (if applicable)