External Events

An ExternalEvent is a log that is sent to the cloud from a client application such as the Files.com CLI.

List External Events

SDK Method

external_event.List()

Return Values

Returns a *external_event.Iter and an error. Range over All() to receive files_sdk.ExternalEvent 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.

Additional Arguments

Example Request

import (
    "fmt"
    "errors"

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

externalEventIterator, err := external_event.List(files_sdk.ExternalEventListParams{})
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 externalEvent, err := range externalEventIterator.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(externalEvent)
}

Show External Event

SDK Method

external_event.Find()

Return Values

Returns a files_sdk.ExternalEvent value and an error.

Authorization Requirement

Requires a Site-Wide API key, or a User API key or session from a Site Administrator.

ExternalEventFindParams Fields

FieldDescription
Id
int64
Required
External Event ID.

Example Request

import (
    "fmt"
    "errors"

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

externalEvent, err := external_event.Find(files_sdk.ExternalEventFindParams{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(externalEvent)

Create External Event

SDK Method

external_event.Create()

Return Values

Returns a files_sdk.ExternalEvent value and an error.

Authorization Requirement

Available to all authenticated keys or sessions.

ExternalEventCreateParams Fields

FieldDescription
Status
string
Required
Status of event.
Possible values: success, failure, partial_failure, in_progress, skipped
Body
string
Required
Event body

Example Request

import (
    "fmt"
    "errors"

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

externalEvent, err := external_event.Create(files_sdk.ExternalEventCreateParams{
  Status: "example",
  Body: "example",
})
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(externalEvent)

The ExternalEvent Object

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

AttributeDescription
Id
int64
Event ID
EventType
string
Type of event being recorded.
Possible values: ldap_sync, remote_server_sync, lockout, ldap_login, saml_login, client_log, pending_work, siem_http_destination
Status
string
Status of event.
Possible values: success, failure, partial_failure, in_progress, skipped
Body
string
Event body
CreatedAt
date-time
External event create date/time
BodyUrl
string
Link to log file.