Event Targets

An EventTarget is a delivery destination for EventRecords.

List Event Targets

SDK Method

eventtarget.List()

Return Object

[]*EventTarget

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

eventTargetIterator, err := event_target.List(files_sdk.EventTargetListParams{})
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 eventTargetIterator.Next() {
    eventTarget := eventTargetIterator.eventTarget()
}
err = eventTargetIterator.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 Event Target

SDK Method

eventtarget.Find()

Return Object

EventTarget

Authorization Requirement

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

EventTargetFindParams Fields

FieldDescription
Id
int64
Required
Event Target ID.

Example Request

import (
    "fmt"
    "errors"

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

eventTarget, err := event_target.Find(files_sdk.EventTargetFindParams{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 Event Target

SDK Method

eventtarget.Create()

Return Object

EventTarget

Authorization Requirement

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

EventTargetCreateParams Fields

FieldDefaultDescription
Name
string
Required
Event Target name.
WorkspaceId
int64
0Workspace ID. 0 means the default workspace or site-wide.
ApplyToAllWorkspaces
boolean
falseIf true, this default-workspace target can receive events from all workspaces.
Enabled
boolean
trueWhether this Event Target can receive events.
Config
object
Required
Event Target configuration. Folder targets accept path and format (json or csv).
DeliveryPolicy
object
Event Target delivery policy. Email and folder targets support batch_interval in seconds, between 600 and 86400.
TargetType
string
Required
Event Target type.
Possible values: email, webhook, slack_webhook, teams_webhook, amazon_sns, google_pubsub, folder

Example Request

import (
    "fmt"
    "errors"

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

eventTarget, err := event_target.Create(files_sdk.EventTargetCreateParams{
  Name: "example",
  Config: `example`,
  TargetType: "example"
})
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 Event Target

SDK Method

eventtarget.Update()

Return Object

EventTarget

Authorization Requirement

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

EventTargetUpdateParams Fields

FieldDescription
Id
int64
Required
Event Target ID.
Name
string
Event Target name.
WorkspaceId
int64
Workspace ID. 0 means the default workspace or site-wide.
ApplyToAllWorkspaces
boolean
If true, this default-workspace target can receive events from all workspaces.
Enabled
boolean
Whether this Event Target can receive events.
Config
object
Event Target configuration. Folder targets accept path and format (json or csv).
DeliveryPolicy
object
Event Target delivery policy. Email and folder targets support batch_interval in seconds, between 600 and 86400.

Example Request

import (
    "fmt"
    "errors"

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

eventTarget, err := event_target.Update(files_sdk.EventTargetUpdateParams{
  Id: 1,
  Name: "example"
})
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 Event Target

SDK Method

eventtarget.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.

EventTargetDeleteParams Fields

FieldDescription
Id
int64
Required
Event Target ID.

Example Request

import (
    "fmt"
    "errors"

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

err := event_target.Delete(files_sdk.EventTargetDeleteParams{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 EventTarget Object

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

AttributeDescription
Id
int64
Event Target ID
Name
string
Event Target name.
TargetType
string
Event Target type.
Possible values: email, webhook, slack_webhook, teams_webhook, amazon_sns, google_pubsub, folder
WorkspaceId
int64
Workspace ID. 0 means the default workspace or site-wide.
ApplyToAllWorkspaces
boolean
If true, this default-workspace target can receive events from all workspaces.
Enabled
boolean
Whether this Event Target can receive events.
Config
object
Event Target configuration. Folder targets accept path and format (json or csv).
DeliveryPolicy
object
Event Target delivery policy. Email and folder targets support batch_interval in seconds, between 600 and 86400.
CreatedAt
date-time
Event Target create date/time.
UpdatedAt
date-time
Event Target update date/time.