Class: Infisical::Models::Secret

Inherits:
Struct
  • Object
show all
Defined in:
lib/infisical/models/secret.rb

Overview

Value object representing a single Infisical secret.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Attribute Details

#created_atString?

Returns ISO 8601 creation timestamp.

Returns:

  • (String, nil)

    ISO 8601 creation timestamp



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#environmentString

Returns environment slug the secret belongs to.

Returns:

  • (String)

    environment slug the secret belongs to



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#idString

Returns unique id of the secret.

Returns:

  • (String)

    unique id of the secret



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#metadataArray<SecretMetadata>

Returns key/value metadata entries.

Returns:



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#secret_commentString?

Returns comment stored with the secret.

Returns:

  • (String, nil)

    comment stored with the secret



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#secret_keyString

Returns the secret's name.

Returns:

  • (String)

    the secret's name



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#secret_pathString?

Returns folder path the secret lives at.

Returns:

  • (String, nil)

    folder path the secret lives at



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#secret_valueString

Returns the secret's value.

Returns:

  • (String)

    the secret's value



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#tagsArray<SecretTag>

Returns tags attached to the secret.

Returns:

  • (Array<SecretTag>)

    tags attached to the secret



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#typeString

Returns "shared" or "personal".

Returns:

  • (String)

    "shared" or "personal"



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#updated_atString?

Returns ISO 8601 last-update timestamp.

Returns:

  • (String, nil)

    ISO 8601 last-update timestamp



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#versionInteger

Returns version number, incremented on every update.

Returns:

  • (Integer)

    version number, incremented on every update



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

#workspaceString

Returns id of the project the secret belongs to.

Returns:

  • (String)

    id of the project the secret belongs to



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/infisical/models/secret.rb', line 64

Secret = Struct.new(
  :id, :workspace, :environment, :version, :type,
  :secret_key, :secret_value, :secret_comment, :secret_path,
  :metadata, :tags,
  :created_at, :updated_at,
  keyword_init: true
) do
  # Builds a Secret from an API response hash (camelCase keys).
  #
  # @api private
  def self.from_api(data)
    new(
      id: data["id"],
      workspace: data["workspace"],
      environment: data["environment"],
      version: data["version"],
      type: data["type"],
      secret_key: data["secretKey"],
      secret_value: data["secretValue"],
      secret_comment: data["secretComment"],
      secret_path: data["secretPath"],
      metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
      tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
      created_at: data["createdAt"],
      updated_at: data["updatedAt"]
    )
  end
end

Class Method Details

.from_api(data) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Builds a Secret from an API response hash (camelCase keys).



74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/infisical/models/secret.rb', line 74

def self.from_api(data)
  new(
    id: data["id"],
    workspace: data["workspace"],
    environment: data["environment"],
    version: data["version"],
    type: data["type"],
    secret_key: data["secretKey"],
    secret_value: data["secretValue"],
    secret_comment: data["secretComment"],
    secret_path: data["secretPath"],
    metadata: Array(data["secretMetadata"]).map { |entry| SecretMetadata.from_api(entry) },
    tags: Array(data["tags"]).map { |tag| SecretTag.from_api(tag) },
    created_at: data["createdAt"],
    updated_at: data["updatedAt"]
  )
end