Class: MethodRuby::Resources::Entities::Subscriptions

Inherits:
Object
  • Object
show all
Defined in:
lib/method_ruby/resources/entities/subscriptions.rb

Overview

Subscriptions for entities

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Subscriptions

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.

Returns a new instance of Subscriptions.

Parameters:



148
149
150
# File 'lib/method_ruby/resources/entities/subscriptions.rb', line 148

def initialize(client:)
  @client = client
end

Instance Method Details

#create(entity_id, enroll:, method_version:, payload: nil, idempotency_key: nil, request_options: {}) ⇒ MethodRuby::Models::Entities::SubscriptionCreateResponse

Some parameter documentations has been truncated, see Models::Entities::SubscriptionCreateParams for more details.

Creates a new subscription for the specified entity.

Parameters:

Returns:

See Also:



30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/method_ruby/resources/entities/subscriptions.rb', line 30

def create(entity_id, params)
  parsed, options = MethodRuby::Entities::SubscriptionCreateParams.dump_request(params)
  header_params = {method_version: "method-version", idempotency_key: "idempotency-key"}
  @client.request(
    method: :post,
    path: ["entities/%1$s/subscriptions", entity_id],
    headers: parsed.slice(*header_params.keys).transform_keys(header_params),
    body: parsed.except(*header_params.keys),
    model: MethodRuby::Models::Entities::SubscriptionCreateResponse,
    security: {secret_key: true},
    options: options
  )
end

#delete(sub_id, entity_id:, method_version:, idempotency_key: nil, request_options: {}) ⇒ MethodRuby::Models::Entities::SubscriptionDeleteResponse

Some parameter documentations has been truncated, see Models::Entities::SubscriptionDeleteParams for more details.

Deletes an entity subscription by its identifier.

Parameters:

  • sub_id (String)

    Path param: Unique identifier for the entity subscription.

  • entity_id (String)

    Path param: Unique identifier for the entity.

  • method_version (Symbol, MethodRuby::Models::Entities::SubscriptionDeleteParams::MethodVersion)

    Header param: API version to use for this request. This spec targets ‘2025-12-01

  • idempotency_key (String)

    Header param: Idempotency key for safely retrying a write request. Reuse the sam

  • request_options (MethodRuby::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
# File 'lib/method_ruby/resources/entities/subscriptions.rb', line 126

def delete(sub_id, params)
  parsed, options = MethodRuby::Entities::SubscriptionDeleteParams.dump_request(params)
  entity_id =
    parsed.delete(:entity_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :delete,
    path: ["entities/%1$s/subscriptions/%2$s", entity_id, sub_id],
    headers: parsed.transform_keys(
      method_version: "method-version",
      idempotency_key: "idempotency-key"
    ),
    model: MethodRuby::Models::Entities::SubscriptionDeleteResponse,
    security: {secret_key: true},
    options: options
  )
end

#list(entity_id, method_version:, request_options: {}) ⇒ MethodRuby::Models::Entities::SubscriptionListResponse

Some parameter documentations has been truncated, see Models::Entities::SubscriptionListParams for more details.

Returns a list of subscriptions for the specified entity.

Parameters:

Returns:

See Also:



94
95
96
97
98
99
100
101
102
103
104
# File 'lib/method_ruby/resources/entities/subscriptions.rb', line 94

def list(entity_id, params)
  parsed, options = MethodRuby::Entities::SubscriptionListParams.dump_request(params)
  @client.request(
    method: :get,
    path: ["entities/%1$s/subscriptions", entity_id],
    headers: parsed.transform_keys(method_version: "method-version"),
    model: MethodRuby::Models::Entities::SubscriptionListResponse,
    security: {secret_key: true},
    options: options
  )
end

#retrieve(sub_id, entity_id:, method_version:, request_options: {}) ⇒ MethodRuby::Models::Entities::SubscriptionRetrieveResponse

Some parameter documentations has been truncated, see Models::Entities::SubscriptionRetrieveParams for more details.

Returns a single entity subscription by its identifier.

Parameters:

Returns:

See Also:



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/method_ruby/resources/entities/subscriptions.rb', line 62

def retrieve(sub_id, params)
  parsed, options = MethodRuby::Entities::SubscriptionRetrieveParams.dump_request(params)
  entity_id =
    parsed.delete(:entity_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :get,
    path: ["entities/%1$s/subscriptions/%2$s", entity_id, sub_id],
    headers: parsed.transform_keys(method_version: "method-version"),
    model: MethodRuby::Models::Entities::SubscriptionRetrieveResponse,
    security: {secret_key: true},
    options: options
  )
end