module Slack::Web::Api::Endpoints::Files

Public Instance Methods

files_delete(options = {}) click to toggle source

Deletes a file.

@option options [file] :file

ID of file to delete.

@see api.slack.com/methods/files.delete @see github.com/slack-ruby/slack-api-ref/blob/master/methods/files/files.delete.json

# File lib/slack/web/api/endpoints/files.rb, line 15
def files_delete(options = {})
  throw ArgumentError.new('Required arguments :file missing') if options[:file].nil?
  post('files.delete', options)
end
files_edit(options = {}) click to toggle source

Change the properties of a file (undocumented)

@option options [Object] :file

ID of the file to be edited

@option options [Object] :title

New title of the file

@option options [Object] :filetype

New filetype of the file. See https://api.slack.com/types/file#file_types for a list of all supported types.

@see github.com/slack-ruby/slack-api-ref/blob/master/methods/undocumented/files/files.edit.json

# File lib/slack/web/api/endpoints/files.rb, line 30
def files_edit(options = {})
  throw ArgumentError.new('Required arguments :file missing') if options[:file].nil?
  throw ArgumentError.new('Required arguments :title missing') if options[:title].nil?
  logger.warn('The files.edit method is undocumented.')
  post('files.edit', options)
end
files_info(options = {}) click to toggle source

Gets information about a team file.

@option options [file] :file

Specify a file by providing its ID.

@see api.slack.com/methods/files.info @see github.com/slack-ruby/slack-api-ref/blob/master/methods/files/files.info.json

# File lib/slack/web/api/endpoints/files.rb, line 44
def files_info(options = {})
  throw ArgumentError.new('Required arguments :file missing') if options[:file].nil?
  post('files.info', options)
end
files_list(options = {}) click to toggle source

Lists & filters team files.

@option options [channel] :channel

Filter files appearing in a specific channel, indicated by its ID.

@option options [Object] :ts_from

Filter files created after this timestamp (inclusive).

@option options [Object] :ts_to

Filter files created before this timestamp (inclusive).

@option options [Object] :types

Filter files by type:

all - All files
spaces - Posts
snippets - Snippets
images - Image files
gdocs - Google docs
zips - Zip files
pdfs - PDF files

You can pass multiple values in the types argument, like types=spaces,snippets.The default value is all, which does not filter the list.
.

@option options [user] :user

Filter files created by a single user.

@see api.slack.com/methods/files.list @see github.com/slack-ruby/slack-api-ref/blob/master/methods/files/files.list.json

# File lib/slack/web/api/endpoints/files.rb, line 76
def files_list(options = {})
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
  post('files.list', options)
end
files_revokePublicURL(options = {}) click to toggle source

Revokes public/external sharing access for a file

@option options [file] :file

File to revoke.

@see api.slack.com/methods/files.revokePublicURL @see github.com/slack-ruby/slack-api-ref/blob/master/methods/files/files.revokePublicURL.json

# File lib/slack/web/api/endpoints/files.rb, line 89
def files_revokePublicURL(options = {})
  throw ArgumentError.new('Required arguments :file missing') if options[:file].nil?
  post('files.revokePublicURL', options)
end
files_share(options = {}) click to toggle source

Share an existing file in a channel (undocumented)

@option options [Object] :file

ID of the file to be shared

@option options [channel] :channel

Channel to share the file in. Works with both public (channel ID) and private channels (group ID).

@see github.com/slack-ruby/slack-api-ref/blob/master/methods/undocumented/files/files.share.json

# File lib/slack/web/api/endpoints/files.rb, line 102
def files_share(options = {})
  throw ArgumentError.new('Required arguments :file missing') if options[:file].nil?
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  logger.warn('The files.share method is undocumented.')
  post('files.share', options)
end
files_sharedPublicURL(options = {}) click to toggle source

Enables a file for public/external sharing.

@option options [file] :file

File to share.

@see api.slack.com/methods/files.sharedPublicURL @see github.com/slack-ruby/slack-api-ref/blob/master/methods/files/files.sharedPublicURL.json

# File lib/slack/web/api/endpoints/files.rb, line 117
def files_sharedPublicURL(options = {})
  throw ArgumentError.new('Required arguments :file missing') if options[:file].nil?
  post('files.sharedPublicURL', options)
end
files_upload(options = {}) click to toggle source

Uploads or creates a file.

@option options [Object] :channels

Comma-separated list of channel names or IDs where the file will be shared.

@option options [Object] :content

File contents via a POST variable. If omitting this parameter, you must provide a file.

@option options [file] :file

File contents via multipart/form-data. If omitting this parameter, you must submit content.

@option options [Object] :filename

Filename of file.

@option options [Object] :filetype

A file type identifier.

@option options [Object] :initial_comment

Initial comment to add to file.

@option options [Object] :title

Title of file.

@see api.slack.com/methods/files.upload @see github.com/slack-ruby/slack-api-ref/blob/master/methods/files/files.upload.json

# File lib/slack/web/api/endpoints/files.rb, line 141
def files_upload(options = {})
  post('files.upload', options)
end