Class: MethodRuby::Resources::ForwardingRequests

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

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