Module: Auth0::Api::V2::Tickets

Included in:
Auth0::Api::V2
Defined in:
lib/auth0/api/v2/tickets.rb

Overview

Methods to use the tickets endpoints

Instance Method Summary collapse

Instance Method Details

#post_email_verification(user_id, result_url: nil, ttl_sec: nil, identity: nil, client_id: nil, organization_id: nil) ⇒ json

Create an email verification ticket After expiration, the ticket cannot be used to verify the user’s email. If not specified or if you send 0, the Auth0 default lifetime of five days will be applied

Parameters:

  • user_id (string)

    The user_id of for which the ticket is to be created.

  • result_url (string) (defaults to: nil)

    The user will be redirected to this endpoint once the ticket is used.

  • ttl_sec (integer) (defaults to: nil)

    The ticket’s lifetime in seconds starting from the moment of creation.

  • identity (hash) (defaults to: nil)

    Used to verify secondary, federated, and passwordless-email identities.

    • :user_id [string] user_id of the identity.

    • :provider [string] provider of the identity.

  • client_id (string) (defaults to: nil)

    client id

  • organization_id (string) (defaults to: nil)

    organization id

Returns:

  • (json)

    Returns the created ticket url.

See Also:



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/auth0/api/v2/tickets.rb', line 22

def post_email_verification(user_id, result_url: nil, ttl_sec: nil, identity: nil, client_id: nil, organization_id: nil)
  if user_id.to_s.empty?
    raise Auth0::InvalidParameter, 'Must supply a valid user id to post an email verification'
  end
  path = "#{tickets_path}/email-verification"
  request_params = {
    user_id: user_id,
    result_url: result_url,
    ttl_sec: ttl_sec.is_a?(Integer) ? ttl_sec : nil
  }
  request_params[:client_id] = client_id unless client_id.nil?
  request_params[:organization_id] = organization_id unless organization_id.nil?

  if identity
    unless identity.is_a? Hash
      raise Auth0::InvalidParameter, 'Identity must be a hash to post an email verification'
    end
    request_params[:identity] = identity
  end

  post(path, request_params)
end

#post_password_change(result_url: nil, user_id: nil, connection_id: nil, email: nil, ttl_sec: nil, mark_email_as_verified: nil, includeEmailInRedirect: nil, new_password: nil, client_id: nil, organization_id: nil) ⇒ json

Create a password change ticket changed. If sending this parameter, the email is also required and the user_id is invalid. expiration, the ticket cannot be used to change the user’s password. If not specified or if you send 0, the Auth0 default lifetime of 5 days will be applied. changed, false if email_verified attribute should not be updated in the reset_email

Parameters:

  • result_url (string) (defaults to: nil)

    The user will be redirected to this endpoint once the ticket is used.

  • user_id (string) (defaults to: nil)

    The user_id of for which the ticket is to be created.

  • connection_id (string) (defaults to: nil)

    The connection that provides the identity for which the password is to be

  • email (string) (defaults to: nil)

    The user’s email.

  • ttl_sec (integer) (defaults to: nil)

    The ticket’s lifetime in seconds starting from the moment of creation. After

  • mark_email_as_verified (boolean) (defaults to: nil)

    true if email_verified attribute must be set to true once password is

  • includeEmailInRedirect (boolean) (defaults to: nil)

    Whether or not we include the email as part of the returnUrl

  • new_password (string) (defaults to: nil)

    The password to be set for the user once the ticket is used.

  • client_id (string) (defaults to: nil)

    client id

  • organization_id (string) (defaults to: nil)

    organization id

Returns:

  • (json)

    Returns the created ticket url.

See Also:



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
92
93
# File 'lib/auth0/api/v2/tickets.rb', line 64

def post_password_change(
    result_url: nil,
    user_id: nil,
    connection_id: nil,
    email: nil,
    ttl_sec: nil,
    mark_email_as_verified: nil,
    includeEmailInRedirect: nil,
    new_password: nil,
    client_id: nil,
    organization_id: nil
  )

  booleans = [true, false]
  path = "#{tickets_path}/password-change"
  request_params = {
    result_url: result_url,
    user_id: user_id,
    connection_id: connection_id,
    email: email,
    ttl_sec: ttl_sec.is_a?(Integer) ? ttl_sec : nil,
    mark_email_as_verified: booleans.include?(mark_email_as_verified) ? mark_email_as_verified : nil,
    includeEmailInRedirect: booleans.include?(includeEmailInRedirect) ? includeEmailInRedirect : nil,
    new_password: new_password
  }
  request_params[:client_id] = client_id unless client_id.nil?
  request_params[:organization_id] = organization_id unless organization_id.nil?

  post(path, request_params)
end