Class: SDM::Token

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Overview

A Token is an account providing tokenized access for automation or integration use. Tokens include admin tokens, API keys, and SCIM tokens.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(account_type: nil, created_at: nil, deadline: nil, duration: nil, id: nil, name: nil, permissions: nil, rekeyed: nil, suspended: nil, tags: nil) ⇒ Token

Returns a new instance of Token.



18218
18219
18220
18221
18222
18223
18224
18225
18226
18227
18228
18229
18230
18231
18232
18233
18234
18235
18236
18237
18238
18239
18240
# File 'lib/models/porcelain.rb', line 18218

def initialize(
  account_type: nil,
  created_at: nil,
  deadline: nil,
  duration: nil,
  id: nil,
  name: nil,
  permissions: nil,
  rekeyed: nil,
  suspended: nil,
  tags: nil
)
  @account_type =  == nil ? "" : 
  @created_at = created_at == nil ? nil : created_at
  @deadline = deadline == nil ? nil : deadline
  @duration = duration == nil ? nil : duration
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @permissions = permissions == nil ? [] : permissions
  @rekeyed = rekeyed == nil ? nil : rekeyed
  @suspended = suspended == nil ? false : suspended
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
end

Instance Attribute Details

#account_typeObject

Corresponds to the type of token, e.g. api or admin-token.



18198
18199
18200
# File 'lib/models/porcelain.rb', line 18198

def 
  @account_type
end

#created_atObject

CreatedAt is the timestamp when the token was created



18200
18201
18202
# File 'lib/models/porcelain.rb', line 18200

def created_at
  @created_at
end

#deadlineObject

The timestamp when the Token will expire.



18202
18203
18204
# File 'lib/models/porcelain.rb', line 18202

def deadline
  @deadline
end

#durationObject

Duration from token creation to expiration.



18204
18205
18206
# File 'lib/models/porcelain.rb', line 18204

def duration
  @duration
end

#idObject

Unique identifier of the Token.



18206
18207
18208
# File 'lib/models/porcelain.rb', line 18206

def id
  @id
end

#nameObject

Unique human-readable name of the Token.



18208
18209
18210
# File 'lib/models/porcelain.rb', line 18208

def name
  @name
end

#permissionsObject

Permissions assigned to the token, e.g. role:create.



18210
18211
18212
# File 'lib/models/porcelain.rb', line 18210

def permissions
  @permissions
end

#rekeyedObject

The timestamp when the Token was last rekeyed.



18212
18213
18214
# File 'lib/models/porcelain.rb', line 18212

def rekeyed
  @rekeyed
end

#suspendedObject

Reserved for future use. Always false for tokens.



18214
18215
18216
# File 'lib/models/porcelain.rb', line 18214

def suspended
  @suspended
end

#tagsObject

Tags is a map of key, value pairs.



18216
18217
18218
# File 'lib/models/porcelain.rb', line 18216

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



18242
18243
18244
18245
18246
18247
18248
# File 'lib/models/porcelain.rb', line 18242

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end