Class: Twilio::REST::Notify::V1::CredentialContext

Inherits:
InstanceContext show all
Defined in:
lib/twilio-ruby/rest/notify/v1/credential.rb

Overview

PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.

Instance Method Summary collapse

Constructor Details

#initialize(version, sid) ⇒ CredentialContext

Initialize the CredentialContext

Parameters:

  • version (Version)

    Version that contains the resource

  • sid (String)

    The sid



196
197
198
199
200
201
202
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 196

def initialize(version, sid)
  super(version)

  # Path Solution
  @solution = {sid: sid, }
  @uri = "/Credentials/#{@solution[:sid]}"
end

Instance Method Details

#deleteBoolean

Deletes the CredentialInstance

Returns:

  • (Boolean)

    true if delete succeeds, true otherwise



258
259
260
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 258

def delete
  @version.delete('delete', @uri)
end

#fetchCredentialInstance

Fetch a CredentialInstance

Returns:



207
208
209
210
211
212
213
214
215
216
217
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 207

def fetch
  params = Twilio::Values.of({})

  payload = @version.fetch(
      'GET',
      @uri,
      params,
  )

  CredentialInstance.new(@version, payload, sid: @solution[:sid], )
end

#to_sObject

Provide a user friendly representation



264
265
266
267
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 264

def to_s
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
  "#<Twilio.Notify.V1.CredentialContext #{context}>"
end

#update(friendly_name: :unset, certificate: :unset, private_key: :unset, sandbox: :unset, api_key: :unset, secret: :unset) ⇒ CredentialInstance

Update the CredentialInstance

Parameters:

  • friendly_name (String) (defaults to: :unset)

    Friendly name for stored credential

  • certificate (String) (defaults to: :unset)
    APN only

    URL encoded representation of the

    certificate. Strip everything outside of the headers, e.g. ‘—–BEGIN CERTIFICATE—–MIIFnTCCBIWgAwIBAgIIAjy9H849+E8wDQYJKoZIhvcNAQEFBQAwgZYxCzAJBgNV.….A==—–END CERTIFICATE—–`

  • private_key (String) (defaults to: :unset)
    APN only

    URL encoded representation of the private

    key. Strip everything outside of the headers, e.g. ‘—–BEGIN RSA PRIVATE KEY—–MIIEpQIBAAKCAQEAuyf/lNrH9ck8DmNyo3fGgvCI1l9s+cmBY3WIz+cUDqmxiieRn.—–END RSA PRIVATE KEY—–`

  • sandbox (Boolean) (defaults to: :unset)
    APN only

    use this credential for sending to

    production or sandbox APNs (string ‘true` or `false`)

  • api_key (String) (defaults to: :unset)
    GCM only

    This is the “Server key” of your project from

    Firebase console under Settings / Cloud messaging. Yes, you can use the server key from the Firebase console for GCM.

  • secret (String) (defaults to: :unset)
    FCM only

    This is the “Server key” of your project from

    Firebase console under Settings / Cloud messaging.

Returns:



236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
# File 'lib/twilio-ruby/rest/notify/v1/credential.rb', line 236

def update(friendly_name: :unset, certificate: :unset, private_key: :unset, sandbox: :unset, api_key: :unset, secret: :unset)
  data = Twilio::Values.of({
      'FriendlyName' => friendly_name,
      'Certificate' => certificate,
      'PrivateKey' => private_key,
      'Sandbox' => sandbox,
      'ApiKey' => api_key,
      'Secret' => secret,
  })

  payload = @version.update(
      'POST',
      @uri,
      data: data,
  )

  CredentialInstance.new(@version, payload, sid: @solution[:sid], )
end