Class: Notion::Generated::Endpoints::DataSources

Inherits:
Endpoints::Base show all
Defined in:
lib/notion/endpoints/data_sources.rb,
lib/notion/generated/endpoints/data_sources.rb

Instance Method Summary collapse

Methods inherited from Endpoints::Base

#initialize, operation, operations

Constructor Details

This class inherits a constructor from Notion::Endpoints::Base

Instance Method Details

#create(parent:, properties:, **params, &block) ⇒ Object

Create a data source



35
36
37
38
39
# File 'lib/notion/generated/endpoints/data_sources.rb', line 35

def create(parent:, properties:, **params, &block)
    params[:parent] = parent
    params[:properties] = properties
  invoke_operation(:create, params, &block)
end

#query(data_source_id:, **params, &block) ⇒ Object

Query a data source



29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/notion/generated/endpoints/data_sources.rb', line 29

def query(data_source_id:, **params)
  if block_given?
    builder = Query::Builder.new(
      schema: @client.schema_for(data_source_id),
      strict: @client.config.strict
    )
    yield builder
    params.merge!(builder.to_h)
  end
  params[:data_source_id] = data_source_id
  invoke_operation(:query, params)
end

#retrieve(data_source_id:, **params, &block) ⇒ Object

Retrieve a data source



17
18
19
20
# File 'lib/notion/generated/endpoints/data_sources.rb', line 17

def retrieve(data_source_id:, **params, &block)
    params[:data_source_id] = data_source_id
  invoke_operation(:retrieve, params, &block)
end

#sync_since(data_source_id:, time:, **params) ⇒ Object



20
21
22
23
24
25
26
# File 'lib/notion/endpoints/data_sources.rb', line 20

def sync_since(data_source_id:, time:, **params)
  filter = {
    timestamp: "last_edited_time",
    last_edited_time: { on_or_after: time.iso8601 }
  }
  query(data_source_id: data_source_id, **params, filter: filter)
end

#templates(data_source_id:, **params, &block) ⇒ Object

List templates in a data source



42
43
44
45
# File 'lib/notion/generated/endpoints/data_sources.rb', line 42

def templates(data_source_id:, **params, &block)
    params[:data_source_id] = data_source_id
  invoke_operation(:templates, params, &block)
end

#update(data_source_id:, **params, &block) ⇒ Object

Update a data source



23
24
25
26
# File 'lib/notion/generated/endpoints/data_sources.rb', line 23

def update(data_source_id:, **params, &block)
    params[:data_source_id] = data_source_id
  invoke_operation(:update, params, &block)
end