Class: AttachmentsClient

Inherits:
Object
  • Object
show all
Defined in:
lib/lockstep_sdk/clients/attachments_client.rb

Instance Method Summary collapse

Constructor Details

#initialize(lockstepsdk) ⇒ AttachmentsClient

Initialize the AttachmentsClient class with a lockstepsdk instance.

Parameters:

  • lockstepsdk (LockstepApi)

    The Lockstep API client object for this connection



24
25
26
# File 'lib/lockstep_sdk/clients/attachments_client.rb', line 24

def initialize(lockstepsdk)
    @lockstepsdk = lockstepsdk
end

Instance Method Details

#archive_attachment(id:) ⇒ Object

Flag this attachment as archived, which can distinguish between attachments currently active and attachments not intended for active use. This is similar to deletion but preserves information about the record’s existence.

An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment.

See [Extensibility](developer.lockstep.io/docs/extensibility) for more information.

Parameters:

  • id (uuid)

    The unique ID number of the Attachment to be archived



68
69
70
71
# File 'lib/lockstep_sdk/clients/attachments_client.rb', line 68

def archive_attachment(id:)
    path = "/api/v1/Attachments/#{id}"
    @lockstepsdk.request(:delete, path, nil, nil)
end

#download_attachment(id:) ⇒ Object

Returns a URI for the Attachment file to be downloaded, based on the ID provided.

An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment.

See [Extensibility](developer.lockstep.io/docs/extensibility) for more information.

Parameters:

  • id (uuid)

    The unique ID number of the Attachment whose URI will be returned



81
82
83
84
# File 'lib/lockstep_sdk/clients/attachments_client.rb', line 81

def download_attachment(id:)
    path = "/api/v1/Attachments/#{id}/download"
    @lockstepsdk.request(:get, path, nil, nil)
end

#query_attachments(filter:, include_param:, order:, page_size:, page_number:) ⇒ Object

Queries Attachments for this account using the specified filtering, sorting, nested fetch, and pagination rules requested.

More information on querying can be found on the [Searchlight Query Language](developer.lockstep.io/docs/querying-with-searchlight) page on the Lockstep Developer website.

An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment.

See [Extensibility](developer.lockstep.io/docs/extensibility) for more information.

Parameters:

  • filter (string)

    The filter to use to select from the list of available Attachments, in the [Searchlight query syntax](github.com/tspence/csharp-searchlight).

  • include_param (string)

    To fetch additional data on this object, specify the list of elements to retrieve. No collections are currently available for querying but may be available in the future.

  • order (string)

    The sort order for the results, in the [Searchlight order syntax](github.com/tspence/csharp-searchlight).

  • page_size (int32)

    The page size for results (default 200, maximum of 10,000)

  • page_number (int32)

    The page number for results (default 0)



116
117
118
119
120
# File 'lib/lockstep_sdk/clients/attachments_client.rb', line 116

def query_attachments(filter:, include_param:, order:, page_size:, page_number:)
    path = "/api/v1/Attachments/query"
    params = {:filter => filter, :include => include_param, :order => order, :pageSize => page_size, :pageNumber => page_number}
    @lockstepsdk.request(:get, path, nil, params)
end

#retrieve_attachment(id:, include_param:) ⇒ Object

Retrieves the Attachment with the provided Attachment identifier.

An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment.

See [Extensibility](developer.lockstep.io/docs/extensibility) for more information.

Parameters:

  • id (uuid)

    The unique ID number of the Attachment to retrieve

  • include_param (string)

    To fetch additional data on this object, specify the list of elements to retrieve. No collections are currently available for querying but may be available in the future.



38
39
40
41
42
# File 'lib/lockstep_sdk/clients/attachments_client.rb', line 38

def retrieve_attachment(id:, include_param:)
    path = "/api/v1/Attachments/#{id}"
    params = {:include => include_param}
    @lockstepsdk.request(:get, path, nil, params)
end

#update_attachment(id:, body:) ⇒ Object

Updates an existing Attachment with the information supplied to this PATCH call.

The PATCH method allows you to change specific values on the object while leaving other values alone. As input you should supply a list of field names and new values. If you do not provide the name of a field, that field will remain unchanged. This allows you to ensure that you are only updating the specific fields desired.

An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment.

See [Extensibility](developer.lockstep.io/docs/extensibility) for more information.

Parameters:

  • id (uuid)

    The unique Lockstep Platform ID number of the attachment to update

  • body (object)

    A list of changes to apply to this Attachment



55
56
57
58
# File 'lib/lockstep_sdk/clients/attachments_client.rb', line 55

def update_attachment(id:, body:)
    path = "/api/v1/Attachments/#{id}"
    @lockstepsdk.request(:patch, path, body.to_camelback_keys.to_json, nil)
end

#upload_attachment(table_name:, object_id:, filename:) ⇒ Object

Uploads and creates one or more Attachments from the provided arguments.

An Attachment is a file that can be attached to various account attributes within Lockstep. Attachments can be used for invoices, bills, or any other external files that you wish to track and have access to. Attachments represents an Attachment and a number of different metadata attributes related to the creation, storage, and ownership of the Attachment.

See [Extensibility](developer.lockstep.io/docs/extensibility) for more information.

Parameters:

  • table_name (string)

    The name of the type of object to which this Attachment will be linked

  • object_id (uuid)

    The unique ID of the object to which this Attachment will be linked

  • filename (File)

    The full path of a file to upload to the API



96
97
98
99
100
# File 'lib/lockstep_sdk/clients/attachments_client.rb', line 96

def upload_attachment(table_name:, object_id:, filename:)
    path = "/api/v1/Attachments"
    params = {:tableName => table_name, :objectId => object_id}
    @lockstepsdk.request(:post, path, nil, params)
end