Module: Swiftype::Client::Document

Included in:
Swiftype::Client
Defined in:
lib/swiftype/client.rb

Overview

Documents have fields that can be searched or filtered.

For more information on indexing documents, see the REST API indexing documentation.

Instance Method Summary collapse

Instance Method Details

#create_document(engine_id, document_type_id, document = {}) ⇒ Object



280
281
282
# File 'lib/swiftype/client.rb', line 280

def create_document(engine_id, document_type_id, document={})
  post("engines/#{engine_id}/document_types/#{document_type_id}/documents.json", :document => document)
end

#create_documents(engine_id, document_type_id, documents = []) ⇒ Object



284
285
286
# File 'lib/swiftype/client.rb', line 284

def create_documents(engine_id, document_type_id, documents=[])
  post("engines/#{engine_id}/document_types/#{document_type_id}/documents/bulk_create.json", :documents => documents)
end

#create_or_update_document(engine_id, document_type_id, document = {}) ⇒ Object



296
297
298
# File 'lib/swiftype/client.rb', line 296

def create_or_update_document(engine_id, document_type_id, document={})
  post("engines/#{engine_id}/document_types/#{document_type_id}/documents/create_or_update.json", :document => document)
end

#create_or_update_documents(engine_id, document_type_id, documents = []) ⇒ Object



300
301
302
# File 'lib/swiftype/client.rb', line 300

def create_or_update_documents(engine_id, document_type_id, documents=[])
  post("engines/#{engine_id}/document_types/#{document_type_id}/documents/bulk_create_or_update.json", :documents => documents)
end

#destroy_document(engine_id, document_type_id, document_id) ⇒ Object



288
289
290
# File 'lib/swiftype/client.rb', line 288

def destroy_document(engine_id, document_type_id, document_id)
  delete("engines/#{engine_id}/document_types/#{document_type_id}/documents/#{document_id}.json")
end

#destroy_documents(engine_id, document_type_id, document_ids = []) ⇒ Object



292
293
294
# File 'lib/swiftype/client.rb', line 292

def destroy_documents(engine_id, document_type_id, document_ids=[])
  post("engines/#{engine_id}/document_types/#{document_type_id}/documents/bulk_destroy.json", :documents => document_ids)
end

#document(engine_id, document_type_id, document_id) ⇒ Object



276
277
278
# File 'lib/swiftype/client.rb', line 276

def document(engine_id, document_type_id, document_id)
  get("engines/#{engine_id}/document_types/#{document_type_id}/documents/#{document_id}.json")
end

#documents(engine_id, document_type_id, page = nil, per_page = nil) ⇒ Object



269
270
271
272
273
274
# File 'lib/swiftype/client.rb', line 269

def documents(engine_id, document_type_id, page=nil, per_page=nil)
  options = {}
  options[:page] = page if page
  options[:per_page] = per_page if per_page
  get("engines/#{engine_id}/document_types/#{document_type_id}/documents.json", options)
end

#update_document(engine_id, document_type_id, document_id, fields) ⇒ Object



304
305
306
# File 'lib/swiftype/client.rb', line 304

def update_document(engine_id, document_type_id, document_id, fields)
  put("engines/#{engine_id}/document_types/#{document_type_id}/documents/#{document_id}/update_fields.json", { :fields => fields })
end

#update_documents(engine_id, document_type_id, documents = {}) ⇒ Object



308
309
310
# File 'lib/swiftype/client.rb', line 308

def update_documents(engine_id, document_type_id, documents={})
  put("engines/#{engine_id}/document_types/#{document_type_id}/documents/bulk_update.json", { :documents => documents })
end