Class: Stytch::M2M::Clients::Secrets

Inherits:
Object
  • Object
show all
Includes:
RequestHelper
Defined in:
lib/stytch/m2m.rb

Instance Method Summary collapse

Methods included from RequestHelper

#delete_request, #get_request, #post_request, #put_request, #request_with_query_params

Constructor Details

#initialize(connection) ⇒ Secrets

Returns a new instance of Secrets.



434
435
436
# File 'lib/stytch/m2m.rb', line 434

def initialize(connection)
  @connection = connection
end

Instance Method Details

#rotate(client_id:) ⇒ Object

Complete the rotation of an M2M client secret started with the Start Secret Rotation Endpoint Start Secret Rotation Endpoint. After this endpoint is called, the client's next_client_secret becomes its client_secret and the previous client_secret will no longer be valid.

Parameters:

client_id

The ID of the client. The type of this field is String.

Returns:

An object with the following fields:

request_id

Globally unique UUID that is returned with every API call. This value is important to log for debugging purposes; we may ask for this value to help identify a specific API call when helping you debug an issue. The type of this field is String.

m2m_client

The M2M Client affected by this operation. The type of this field is M2MClient (+object+).

status_code

The HTTP status code of the response. Stytch follows standard HTTP response status code patterns, e.g. 2XX values equate to success, 3XX values are redirects, 4XX are client errors, and 5XX are server errors. The type of this field is Integer.



514
515
516
517
518
519
520
521
# File 'lib/stytch/m2m.rb', line 514

def rotate(
  client_id:
)
  headers = {}
  request = {}

  post_request("/v1/m2m/clients/#{client_id}/secrets/rotate", request, headers)
end

#rotate_cancel(client_id:) ⇒ Object

Cancel the rotation of an M2M client secret started with the Start Secret Rotation Endpoint Start Secret Rotation Endpoint. After this endpoint is called, the client's next_client_secret is discarded and only the original client_secret will be valid.

Parameters:

client_id

The ID of the client. The type of this field is String.

Returns:

An object with the following fields:

request_id

Globally unique UUID that is returned with every API call. This value is important to log for debugging purposes; we may ask for this value to help identify a specific API call when helping you debug an issue. The type of this field is String.

m2m_client

The M2M Client affected by this operation. The type of this field is M2MClient (+object+).

status_code

The HTTP status code of the response. Stytch follows standard HTTP response status code patterns, e.g. 2XX values equate to success, 3XX values are redirects, 4XX are client errors, and 5XX are server errors. The type of this field is Integer.



486
487
488
489
490
491
492
493
# File 'lib/stytch/m2m.rb', line 486

def rotate_cancel(
  client_id:
)
  headers = {}
  request = {}

  post_request("/v1/m2m/clients/#{client_id}/secrets/rotate/cancel", request, headers)
end

#rotate_start(client_id:) ⇒ Object

Initiate the rotation of an M2M client secret. After this endpoint is called, both the client's client_secret and next_client_secret will be valid. To complete the secret rotation flow, update all usages of client_secret to next_client_secret and call the Rotate Secret EndpointRotate Secret Endpoint to complete the flow.Secret rotation can be cancelled using the Rotate Cancel EndpointRotate Cancel Endpoint.

Important: This is the only time you will be able to view the generated next_client_secret in the API response. Stytch stores a hash of the next_client_secret and cannot recover the value if lost. Be sure to persist the next_client_secret in a secure location. If the next_client_secret is lost, you will need to trigger a secret rotation flow to receive another one.

Parameters:

client_id

The ID of the client. The type of this field is String.

Returns:

An object with the following fields:

request_id

Globally unique UUID that is returned with every API call. This value is important to log for debugging purposes; we may ask for this value to help identify a specific API call when helping you debug an issue. The type of this field is String.

m2m_client

The M2M Client affected by this operation. The type of this field is M2MClientWithNextClientSecret (+object+).

status_code

The HTTP status code of the response. Stytch follows standard HTTP response status code patterns, e.g. 2XX values equate to success, 3XX values are redirects, 4XX are client errors, and 5XX are server errors. The type of this field is Integer.



458
459
460
461
462
463
464
465
# File 'lib/stytch/m2m.rb', line 458

def rotate_start(
  client_id:
)
  headers = {}
  request = {}

  post_request("/v1/m2m/clients/#{client_id}/secrets/rotate/start", request, headers)
end