Class: Grafana::Api::Folders

Inherits:
Object
  • Object
show all
Defined in:
lib/grafana-api/api/folders.rb

Instance Method Summary collapse

Constructor Details

#initialize(connection) ⇒ Folders

Returns a new instance of Folders.



5
6
7
# File 'lib/grafana-api/api/folders.rb', line 5

def initialize(connection)
  @connection = connection
end

Instance Method Details

#counts(folder_uid:) ⇒ Object

Raises:

  • (ArgumentError)


9
10
11
12
13
14
15
16
17
18
19
# File 'lib/grafana-api/api/folders.rb', line 9

def counts(folder_uid:)
  raise ArgumentError, 'folder_uid is required' if folder_uid.nil?

  @connection.call(
    :GET,
    '/folders/{folder_uid}/counts'
      .gsub('{folder_uid}', ERB::Util.url_encode(folder_uid.to_s)),
    type: nil,
    auth: ['api_key', 'basic']
  )
end

#create(create_folder_command:) ⇒ Object

Raises:

  • (ArgumentError)


21
22
23
24
25
26
27
28
29
30
31
# File 'lib/grafana-api/api/folders.rb', line 21

def create(create_folder_command:)
  raise ArgumentError, 'create_folder_command is required' if create_folder_command.nil?

  @connection.call(
    :POST,
    '/folders',
    type: Grafana::Api::Models::Folder,
    auth: ['api_key', 'basic'],
    body: create_folder_command
  )
end

#delete(folder_uid:, force_delete_rules: nil) ⇒ Object

Raises:

  • (ArgumentError)


33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/grafana-api/api/folders.rb', line 33

def delete(folder_uid:, force_delete_rules: nil)
  raise ArgumentError, 'folder_uid is required' if folder_uid.nil?

  @connection.call(
    :DELETE,
    '/folders/{folder_uid}'
      .gsub('{folder_uid}', ERB::Util.url_encode(folder_uid.to_s)),
    type: Grafana::Api::Models::DeleteFolder200Response,
    auth: ['api_key', 'basic'],
    query: { 'forceDeleteRules' => force_delete_rules }
  )
end

#get(folder_uid:) ⇒ Object

Raises:

  • (ArgumentError)


46
47
48
49
50
51
52
53
54
55
56
# File 'lib/grafana-api/api/folders.rb', line 46

def get(folder_uid:)
  raise ArgumentError, 'folder_uid is required' if folder_uid.nil?

  @connection.call(
    :GET,
    '/folders/{folder_uid}'
      .gsub('{folder_uid}', ERB::Util.url_encode(folder_uid.to_s)),
    type: Grafana::Api::Models::Folder,
    auth: ['api_key', 'basic']
  )
end

#list(limit: nil, page: nil, parent_uid: nil, permission: nil) ⇒ Object



58
59
60
61
62
63
64
65
66
# File 'lib/grafana-api/api/folders.rb', line 58

def list(limit: nil, page: nil, parent_uid: nil, permission: nil)
  @connection.call(
    :GET,
    '/folders',
    type: [Grafana::Api::Models::FolderSearchHit],
    auth: ['api_key', 'basic'],
    query: { 'limit' => limit, 'page' => page, 'parentUid' => parent_uid, 'permission' => permission }
  )
end

#move(folder_uid:, move_folder_command:) ⇒ Object

Raises:

  • (ArgumentError)


68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/grafana-api/api/folders.rb', line 68

def move(folder_uid:, move_folder_command:)
  raise ArgumentError, 'folder_uid is required' if folder_uid.nil?
  raise ArgumentError, 'move_folder_command is required' if move_folder_command.nil?

  @connection.call(
    :POST,
    '/folders/{folder_uid}/move'
      .gsub('{folder_uid}', ERB::Util.url_encode(folder_uid.to_s)),
    type: Grafana::Api::Models::Folder,
    auth: ['api_key', 'basic'],
    body: move_folder_command
  )
end

#permissions(folder_uid:) ⇒ Object

Raises:

  • (ArgumentError)


82
83
84
85
86
87
88
89
90
91
92
# File 'lib/grafana-api/api/folders.rb', line 82

def permissions(folder_uid:)
  raise ArgumentError, 'folder_uid is required' if folder_uid.nil?

  @connection.call(
    :GET,
    '/folders/{folder_uid}/permissions'
      .gsub('{folder_uid}', ERB::Util.url_encode(folder_uid.to_s)),
    type: [Grafana::Api::Models::DashboardACLInfoDTO],
    auth: ['api_key', 'basic']
  )
end

#permissions_post(folder_uid:, update_dashboard_acl_command:) ⇒ Object

Raises:

  • (ArgumentError)


94
95
96
97
98
99
100
101
102
103
104
105
106
# File 'lib/grafana-api/api/folders.rb', line 94

def permissions_post(folder_uid:, update_dashboard_acl_command:)
  raise ArgumentError, 'folder_uid is required' if folder_uid.nil?
  raise ArgumentError, 'update_dashboard_acl_command is required' if update_dashboard_acl_command.nil?

  @connection.call(
    :POST,
    '/folders/{folder_uid}/permissions'
      .gsub('{folder_uid}', ERB::Util.url_encode(folder_uid.to_s)),
    type: Grafana::Api::Models::SuccessResponseBody,
    auth: ['api_key', 'basic'],
    body: update_dashboard_acl_command
  )
end

#update(folder_uid:, update_folder_command:) ⇒ Object

Raises:

  • (ArgumentError)


108
109
110
111
112
113
114
115
116
117
118
119
120
# File 'lib/grafana-api/api/folders.rb', line 108

def update(folder_uid:, update_folder_command:)
  raise ArgumentError, 'folder_uid is required' if folder_uid.nil?
  raise ArgumentError, 'update_folder_command is required' if update_folder_command.nil?

  @connection.call(
    :PUT,
    '/folders/{folder_uid}'
      .gsub('{folder_uid}', ERB::Util.url_encode(folder_uid.to_s)),
    type: Grafana::Api::Models::Folder,
    auth: ['api_key', 'basic'],
    body: update_folder_command
  )
end