Class: MethodRuby::Resources::ForwardingRequests

Inherits:
Object
  • Object
show all
Defined in:
lib/method_ruby/resources/forwarding_requests.rb,
sig/method_ruby/resources/forwarding_requests.rbs

Overview

Request forwarding with sensitive data injection

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ ForwardingRequests

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 ForwardingRequests.

Parameters:



86
87
88
# File 'lib/method_ruby/resources/forwarding_requests.rb', line 86

def initialize(client:)
  @client = client
end

Instance Method Details

#create(bindings:, body:, headers:, method_:, url:, method_version:, metadata: nil, idempotency_key: nil, request_options: {}) ⇒ MethodRuby::Models::ForwardingRequestCreateResponse

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

Creates a new forwarding request that proxies an HTTP request to a third-party endpoint with sensitive data injection.

Forwarding-specific validation and execution failures are returned in the standard error envelope. Common forwarding sub_type values include URL_NOT_ALLOWED, INVALID_METHOD, BODY_JSON_INVALID, BINDING_NOT_FOUND, FORWARDED_REQUEST_NETWORK_ERROR, and FORWARDED_REQUEST_TIMEOUT.

Parameters:

  • bindings (Hash{Symbol=>String}) —

    Body param: Key-value map of secret bindings to inject into the request.

  • body (String) —

    Body param: Body to send with the forwarded request.

  • headers (Hash{Symbol=>String}) —

    Body param: HTTP headers to include in the forwarded request.

  • method_ (Symbol, MethodRuby::Models::ForwardingRequestCreateParams::Method) —

    Body param: HTTP method to use.

  • url (String) —

    Body param: The destination URL for the forwarded request.

  • method_version (Symbol, MethodRuby::Models::ForwardingRequestCreateParams::MethodVersion) —

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

  • metadata (Object, nil) —

    Body param: Optional metadata to attach to the forwarding request.

  • 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:



41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/method_ruby/resources/forwarding_requests.rb', line 41

def create(params)
  parsed, options = MethodRuby::ForwardingRequestCreateParams.dump_request(params)
  header_params = {method_version: "method-version", idempotency_key: "idempotency-key"}
  @client.request(
    method: :post,
    path: "forwarding_requests",
    headers: parsed.slice(*header_params.keys).transform_keys(header_params),
    body: parsed.except(*header_params.keys),
    model: MethodRuby::Models::ForwardingRequestCreateResponse,
    security: {secret_key: true},
    options: options
  )
end

#retrieve(id, method_version:, request_options: {}) ⇒ MethodRuby::Models::ForwardingRequestRetrieveResponse

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

Returns a single forwarding request by its identifier.

Parameters:

Returns:

See Also:



71
72
73
74
75
76
77
78
79
80
81
# File 'lib/method_ruby/resources/forwarding_requests.rb', line 71

def retrieve(id, params)
  parsed, options = MethodRuby::ForwardingRequestRetrieveParams.dump_request(params)
  @client.request(
    method: :get,
    path: ["forwarding_requests/%1$s", id],
    headers: parsed.transform_keys(method_version: "method-version"),
    model: MethodRuby::Models::ForwardingRequestRetrieveResponse,
    security: {secret_key: true},
    options: options
  )
end