Class: Dolibarr::Api::Users

Inherits:
Object
  • Object
show all
Defined in:
lib/dolibarr-api/api/users.rb

Defined Under Namespace

Classes: Email, Groups, Login, Notifications, Notificationsbycode, RemoveGroup, SetGroup

Instance Method Summary collapse

Constructor Details

#initialize(connection) ⇒ Users

Returns a new instance of Users.



5
6
7
# File 'lib/dolibarr-api/api/users.rb', line 5

def initialize(connection)
  @connection = connection
end

Instance Method Details

#create(create_users_model: nil) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/dolibarr-api/api/users.rb', line 9

def create(create_users_model: nil)
  @connection.call(
    :POST,
    '/users',
    type: nil,
    auth: ['api_key'],
    body: create_users_model
  )
end

#delete(id:) ⇒ Object

Raises:

  • (ArgumentError)


19
20
21
22
23
24
25
26
27
28
29
# File 'lib/dolibarr-api/api/users.rb', line 19

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

  @connection.call(
    :DELETE,
    '/users/{id}'
      .gsub('{id}', ERB::Util.url_encode(id.to_s)),
    type: nil,
    auth: ['api_key']
  )
end

#get(id:, includepermissions: nil) ⇒ Object

Raises:

  • (ArgumentError)


31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/dolibarr-api/api/users.rb', line 31

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

  @connection.call(
    :GET,
    '/users/{id}'
      .gsub('{id}', ERB::Util.url_encode(id.to_s)),
    type: nil,
    auth: ['api_key'],
    query: { 'includepermissions' => includepermissions }
  )
end

#list(sortfield: nil, sortorder: nil, limit: nil, page: nil, user_ids: nil, category: nil, sqlfilters: nil, properties: nil) ⇒ Object



44
45
46
47
48
49
50
51
52
# File 'lib/dolibarr-api/api/users.rb', line 44

def list(sortfield: nil, sortorder: nil, limit: nil, page: nil, user_ids: nil, category: nil, sqlfilters: nil, properties: nil)
  @connection.call(
    :GET,
    '/users',
    type: nil,
    auth: ['api_key'],
    query: { 'sortfield' => sortfield, 'sortorder' => sortorder, 'limit' => limit, 'page' => page, 'user_ids' => user_ids, 'category' => category, 'sqlfilters' => sqlfilters, 'properties' => properties }
  )
end

#retrieve_info(includepermissions: nil) ⇒ Object



54
55
56
57
58
59
60
61
62
# File 'lib/dolibarr-api/api/users.rb', line 54

def retrieve_info(includepermissions: nil)
  @connection.call(
    :GET,
    '/users/info',
    type: nil,
    auth: ['api_key'],
    query: { 'includepermissions' => includepermissions }
  )
end

#set_password(id:, send_password: nil) ⇒ Object

Raises:

  • (ArgumentError)


64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/dolibarr-api/api/users.rb', line 64

def set_password(id:, send_password: nil)
  raise ArgumentError, 'id is required' if id.nil?

  @connection.call(
    :GET,
    '/users/{id}/setPassword'
      .gsub('{id}', ERB::Util.url_encode(id.to_s)),
    type: nil,
    auth: ['api_key'],
    query: { 'send_password' => send_password }
  )
end

#update(id:, update_users_model: nil) ⇒ Object

Raises:

  • (ArgumentError)


77
78
79
80
81
82
83
84
85
86
87
88
# File 'lib/dolibarr-api/api/users.rb', line 77

def update(id:, update_users_model: nil)
  raise ArgumentError, 'id is required' if id.nil?

  @connection.call(
    :PUT,
    '/users/{id}'
      .gsub('{id}', ERB::Util.url_encode(id.to_s)),
    type: Dolibarr::Api::Models::Obj,
    auth: ['api_key'],
    body: update_users_model
  )
end