Module: Shipeasy::Admin::Generated::CreateConnectorRequest

Defined in:
lib/shipeasy_admin/models/create_connector_request.rb

Overview

Body for POST /api/admin/connectors, discriminated on provider. The OAuth providers (google_sheets/github/slack) create a disabled stub that is finished via the provider's OAuth flow. The trigger providers (claude_trigger/cursor_trigger/copilot_trigger/jules_trigger) arrive config + credentials together and are fireable immediately.

Class Method Summary collapse

Class Method Details

.build(data) ⇒ Object

Builds the object

Parameters:

  • Data (Mixed)

    to be matched against the list of oneOf items

Returns:

  • (Object)

    Returns the model or the data itself



52
53
54
55
56
57
58
59
60
# File 'lib/shipeasy_admin/models/create_connector_request.rb', line 52

def build(data)
  discriminator_value = data[openapi_discriminator_name]
  return nil if discriminator_value.nil?

  klass = openapi_discriminator_mapping[discriminator_value.to_s.to_sym]
  return nil unless klass

  Shipeasy::Admin::Generated.const_get(klass).build_from_hash(data)
end

.openapi_discriminator_mappingObject

Discriminator's mapping (OpenAPI v3)



37
38
39
40
41
42
43
44
45
46
47
# File 'lib/shipeasy_admin/models/create_connector_request.rb', line 37

def openapi_discriminator_mapping
  {
    :'claude_trigger' => :'CreateClaudeTriggerRequest',
    :'copilot_trigger' => :'CreateCopilotTriggerRequest',
    :'cursor_trigger' => :'CreateCursorTriggerRequest',
    :'github' => :'CreateOAuthConnectorRequest',
    :'google_sheets' => :'CreateOAuthConnectorRequest',
    :'jules_trigger' => :'CreateJulesTriggerRequest',
    :'slack' => :'CreateOAuthConnectorRequest'
  }
end

.openapi_discriminator_nameObject

Discriminator's property name (OpenAPI v3)



32
33
34
# File 'lib/shipeasy_admin/models/create_connector_request.rb', line 32

def openapi_discriminator_name
  :'provider'
end

.openapi_one_ofObject

List of class defined in oneOf (OpenAPI v3)



21
22
23
24
25
26
27
28
29
# File 'lib/shipeasy_admin/models/create_connector_request.rb', line 21

def openapi_one_of
  [
    :'CreateClaudeTriggerRequest',
    :'CreateCopilotTriggerRequest',
    :'CreateCursorTriggerRequest',
    :'CreateJulesTriggerRequest',
    :'CreateOAuthConnectorRequest'
  ]
end