Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions lib/adyen/services/management.rb
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
require_relative 'management/allowed_origins_company_level_api'
require_relative 'management/allowed_origins_merchant_level_api'
require_relative 'management/android_files_company_level_api'
require_relative 'management/client_certificates_company_level_api'
require_relative 'management/client_key_company_level_api'
require_relative 'management/client_key_merchant_level_api'
require_relative 'management/donation_campaigns_api'
Expand All @@ -23,6 +24,10 @@
require_relative 'management/terminal_settings_merchant_level_api'
require_relative 'management/terminal_settings_store_level_api'
require_relative 'management/terminal_settings_terminal_level_api'
require_relative 'management/terminal_themes_company_level_api'
require_relative 'management/terminal_themes_merchant_level_api'
require_relative 'management/terminal_themes_store_level_api'
require_relative 'management/terminal_themes_terminal_level_api'
require_relative 'management/terminals_terminal_level_api'
require_relative 'management/users_company_level_api'
require_relative 'management/users_merchant_level_api'
Expand Down Expand Up @@ -85,6 +90,10 @@ def android_files_company_level_api
@android_files_company_level_api ||= Adyen::AndroidFilesCompanyLevelApi.new(@client, @version)
end

def client_certificates_company_level_api
@client_certificates_company_level_api ||= Adyen::ClientCertificatesCompanyLevelApi.new(@client, @version)
end

def client_key_company_level_api
@client_key_company_level_api ||= Adyen::ClientKeyCompanyLevelApi.new(@client, @version)
end
Expand Down Expand Up @@ -145,6 +154,22 @@ def terminal_settings_terminal_level_api
@terminal_settings_terminal_level_api ||= Adyen::TerminalSettingsTerminalLevelApi.new(@client, @version)
end

def terminal_themes_company_level_api
@terminal_themes_company_level_api ||= Adyen::TerminalThemesCompanyLevelApi.new(@client, @version)
end

def terminal_themes_merchant_level_api
@terminal_themes_merchant_level_api ||= Adyen::TerminalThemesMerchantLevelApi.new(@client, @version)
end

def terminal_themes_store_level_api
@terminal_themes_store_level_api ||= Adyen::TerminalThemesStoreLevelApi.new(@client, @version)
end

def terminal_themes_terminal_level_api
@terminal_themes_terminal_level_api ||= Adyen::TerminalThemesTerminalLevelApi.new(@client, @version)
end

def terminals_terminal_level_api
@terminals_terminal_level_api ||= Adyen::TerminalsTerminalLevelApi.new(@client, @version)
end
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ def upload_android_app(company_id, headers: {})
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Upload Android Certificate
# Upload Android certificate
def upload_android_certificate(company_id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/androidCertificates', company_id)

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
require_relative '../service'
module Adyen

# NOTE: This class is auto generated by OpenAPI Generator
# Ref: https://openapi-generator.tech
#
# Do not edit the class manually.
class ClientCertificatesCompanyLevelApi < Service
attr_accessor :service, :version

def initialize(client, version = DEFAULT_VERSION)
super(client, version, 'Management')
end

# Generate a client certificate
def generate_client_certificate(request, company_id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/clientCertificates', company_id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, request, headers, @version)
end

# Retrieve all valid client certificates for this company
def list_client_certificates(company_id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/clientCertificates', company_id)

action = { method: 'get', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
require_relative '../service'
module Adyen

# NOTE: This class is auto generated by OpenAPI Generator
# Ref: https://openapi-generator.tech
#
# Do not edit the class manually.
class TerminalThemesCompanyLevelApi < Service
attr_accessor :service, :version

def initialize(client, version = DEFAULT_VERSION)
super(client, version, 'Management')
end

# Add an asset to a terminal theme
def add_terminal_theme_asset_for_company(company_id, id, headers: {}, query_params: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}/assets', company_id, id)
endpoint += create_query_string(query_params)
action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end
Comment on lines +16 to +21

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The add_terminal_theme_asset_for_company method is missing the request parameter in its signature. Since this is a POST request to add an asset, a request body containing the asset payload is required. Currently, an empty hash {} is hardcoded as the request payload in the call_adyen_api call, making it impossible for users to upload or specify the asset.

def add_terminal_theme_asset_for_company(request, company_id, id, headers: {}, query_params: {})
      endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}/assets', company_id, id)
      endpoint += create_query_string(query_params)
      action = { method: 'post', url: endpoint }
      @client.call_adyen_api(@service, action, request, headers, @version)
    end


# Apply a terminal theme
def apply_terminal_theme_for_company(company_id, id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}/apply', company_id, id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Create a terminal theme
def create_terminal_theme_for_company(request, company_id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes', company_id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, request, headers, @version)
end

# Delete an asset from a terminal theme
def delete_terminal_theme_asset_for_company(company_id, id, headers: {}, query_params: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}/assets', company_id, id)
endpoint += create_query_string(query_params)
action = { method: 'delete', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Delete a terminal theme
def delete_terminal_theme_for_company(company_id, id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}', company_id, id)

Check failure on line 49 in lib/adyen/services/management/terminal_themes_company_level_api.rb

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Define a constant instead of duplicating this literal "/companies/{companyId}/terminalThemes/{id}" 3 times.

See more on https://sonarcloud.io/project/issues?id=Adyen_adyen-ruby-api-library&issues=AaDOPDyETYOlddd_-bLy&open=AaDOPDyETYOlddd_-bLy&pullRequest=405

action = { method: 'delete', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Replace a theme asset
def edit_terminal_theme_asset_for_company(company_id, id, headers: {}, query_params: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}/assets/replace', company_id, id)
endpoint += create_query_string(query_params)
action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end
Comment on lines +56 to +61

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The edit_terminal_theme_asset_for_company method is missing the request parameter in its signature. Since this is a POST request to replace/edit an asset, a request body containing the new asset payload is required. Currently, an empty hash {} is hardcoded as the request payload in the call_adyen_api call, making it impossible for users to upload or specify the asset.

def edit_terminal_theme_asset_for_company(request, company_id, id, headers: {}, query_params: {})
      endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}/assets/replace', company_id, id)
      endpoint += create_query_string(query_params)
      action = { method: 'post', url: endpoint }
      @client.call_adyen_api(@service, action, request, headers, @version)
    end


# Get a terminal theme
def get_terminal_theme_by_id_for_company(company_id, id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}', company_id, id)

action = { method: 'get', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# List terminal themes
def list_terminal_themes_for_company(company_id, headers: {}, query_params: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes', company_id)
endpoint += create_query_string(query_params)
action = { method: 'get', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Unapply a terminal theme
def unapply_terminal_theme_for_company(company_id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes/unapply', company_id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Update the metadata of a terminal theme
def update_terminal_theme_for_company(request, company_id, id, headers: {})
endpoint = build_endpoint('/companies/{companyId}/terminalThemes/{id}', company_id, id)

action = { method: 'patch', url: endpoint }
@client.call_adyen_api(@service, action, request, headers, @version)
end

end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
require_relative '../service'
module Adyen

# NOTE: This class is auto generated by OpenAPI Generator
# Ref: https://openapi-generator.tech
#
# Do not edit the class manually.
class TerminalThemesMerchantLevelApi < Service
attr_accessor :service, :version

def initialize(client, version = DEFAULT_VERSION)
super(client, version, 'Management')
end

# Add an asset to a terminal theme
def add_terminal_theme_asset_for_merchant(merchant_id, id, headers: {}, query_params: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}/assets', merchant_id, id)
endpoint += create_query_string(query_params)
action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end
Comment on lines +16 to +21

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The add_terminal_theme_asset_for_merchant method is missing the request parameter in its signature. Since this is a POST request to add an asset, a request body containing the asset payload is required. Currently, an empty hash {} is hardcoded as the request payload in the call_adyen_api call, making it impossible for users to upload or specify the asset.

def add_terminal_theme_asset_for_merchant(request, merchant_id, id, headers: {}, query_params: {})
      endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}/assets', merchant_id, id)
      endpoint += create_query_string(query_params)
      action = { method: 'post', url: endpoint }
      @client.call_adyen_api(@service, action, request, headers, @version)
    end


# Apply a terminal theme
def apply_terminal_theme_for_merchant(merchant_id, id, headers: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}/apply', merchant_id, id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Create a terminal theme
def create_terminal_theme_for_merchant(request, merchant_id, headers: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes', merchant_id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, request, headers, @version)
end

# Delete an asset from a terminal theme
def delete_terminal_theme_asset_for_merchant(merchant_id, id, headers: {}, query_params: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}/assets', merchant_id, id)
endpoint += create_query_string(query_params)
action = { method: 'delete', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Delete a terminal theme
def delete_terminal_theme_for_merchant(merchant_id, id, headers: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}', merchant_id, id)

Check failure on line 49 in lib/adyen/services/management/terminal_themes_merchant_level_api.rb

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Define a constant instead of duplicating this literal "/merchants/{merchantId}/terminalThemes/{id}" 3 times.

See more on https://sonarcloud.io/project/issues?id=Adyen_adyen-ruby-api-library&issues=AaDOPD3XTYOlddd_-bLz&open=AaDOPD3XTYOlddd_-bLz&pullRequest=405

action = { method: 'delete', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Replace a theme asset
def edit_terminal_theme_asset_for_merchant(merchant_id, id, headers: {}, query_params: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}/assets/replace', merchant_id, id)
endpoint += create_query_string(query_params)
action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end
Comment on lines +56 to +61

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The edit_terminal_theme_asset_for_merchant method is missing the request parameter in its signature. Since this is a POST request to replace/edit an asset, a request body containing the new asset payload is required. Currently, an empty hash {} is hardcoded as the request payload in the call_adyen_api call, making it impossible for users to upload or specify the asset.

def edit_terminal_theme_asset_for_merchant(request, merchant_id, id, headers: {}, query_params: {})
      endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}/assets/replace', merchant_id, id)
      endpoint += create_query_string(query_params)
      action = { method: 'post', url: endpoint }
      @client.call_adyen_api(@service, action, request, headers, @version)
    end


# Get a terminal theme
def get_terminal_theme_by_id_for_merchant(merchant_id, id, headers: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}', merchant_id, id)

action = { method: 'get', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# List terminal themes
def list_terminal_themes_for_merchant(merchant_id, headers: {}, query_params: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes', merchant_id)
endpoint += create_query_string(query_params)
action = { method: 'get', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Unapply a terminal theme
def unapply_terminal_theme_for_merchant(merchant_id, headers: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/unapply', merchant_id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Update the metadata of a terminal theme
def update_terminal_theme_for_merchant(request, merchant_id, id, headers: {})
endpoint = build_endpoint('/merchants/{merchantId}/terminalThemes/{id}', merchant_id, id)

action = { method: 'patch', url: endpoint }
@client.call_adyen_api(@service, action, request, headers, @version)
end

end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
require_relative '../service'
module Adyen

# NOTE: This class is auto generated by OpenAPI Generator
# Ref: https://openapi-generator.tech
#
# Do not edit the class manually.
class TerminalThemesStoreLevelApi < Service
attr_accessor :service, :version

def initialize(client, version = DEFAULT_VERSION)
super(client, version, 'Management')
end

# Apply a terminal theme
def apply_terminal_theme_for_store(store_id, id, headers: {})
endpoint = build_endpoint('/stores/{storeId}/terminalThemes/{id}/apply', store_id, id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Unapply a terminal theme
def unapply_terminal_theme_for_store(store_id, headers: {})
endpoint = build_endpoint('/stores/{storeId}/terminalThemes/unapply', store_id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
require_relative '../service'
module Adyen

# NOTE: This class is auto generated by OpenAPI Generator
# Ref: https://openapi-generator.tech
#
# Do not edit the class manually.
class TerminalThemesTerminalLevelApi < Service
attr_accessor :service, :version

def initialize(client, version = DEFAULT_VERSION)
super(client, version, 'Management')
end

# Apply a terminal theme
def apply_terminal_theme_for_terminal(terminal_id, id, headers: {})
endpoint = build_endpoint('/terminals/{terminalId}/terminalThemes/{id}/apply', terminal_id, id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

# Unapply a terminal theme
def unapply_terminal_theme_for_terminal(terminal_id, headers: {})
endpoint = build_endpoint('/terminals/{terminalId}/terminalThemes/unapply', terminal_id)

action = { method: 'post', url: endpoint }
@client.call_adyen_api(@service, action, {}, headers, @version)
end

end
end
8 changes: 4 additions & 4 deletions sdk-generation-log/management.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"service": "management",
"project": "ruby",
"generatedAt": "2026-07-31T12:01:01Z",
"openapiCommitSha": "425d65d12163ebd4fe6fa6d2f859075817c81cba",
"automationCommitSha": "0c108bd8050cf480d2710b78b770afdfbdd89397",
"libraryCommitSha": "7f77a7b7aca2c2b22147ba4b996ada979f9decd9"
"generatedAt": "2026-10-22T14:18:40Z",
"openapiCommitSha": "2c1f3ab1e0385815899db9364a95e5aa5cf5568a",
"automationCommitSha": "b78db5c1f857f1d7d8d45116ce61f6266043fa60",
"libraryCommitSha": "773b42b07b93eceb706d79d666496a2c864f62fe"
}
Loading