Skip to content
Merged
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
7 changes: 6 additions & 1 deletion Meraki.Api/MerakiClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,12 @@ public MerakiClient(MerakiClientOptions options, ILogger? logger = default)
BrandingPolicies = RefitFor(Organizations.BrandingPolicies.BrandingPolicies),
Priorities = RefitFor(Organizations.BrandingPolicies.Priorities)
},
Clients = RefitFor(Organizations.Clients),
Clients = new()
{
Clients = RefitFor(Organizations.Clients.Clients),
BandwidthUsageHistory = RefitFor(Organizations.Clients.BandwidthUsageHistory),
Overview = RefitFor(Organizations.Clients.Overview),
},
Comment on lines +153 to +158
Copy link

Copilot AI Apr 12, 2026

Choose a reason for hiding this comment

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

New public surface area is being wired (Organizations.Clients.Overview and .BandwidthUsageHistory), but there are no corresponding tests exercising these endpoints (only GetOrganizationClientsSearchAsync is covered). Consider adding integration tests alongside Meraki.Api.Test/Organizations/Clients/Tests.cs to ensure these newly exposed interfaces remain correctly wired and callable.

Copilot uses AI. Check for mistakes.
ConfigurationChanges = RefitFor(Organizations.ConfigurationChanges),
ConfigTemplates = new()
{
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
namespace Meraki.Api.Sections.General.Organizations;

/// <summary>
/// Provides access to organizations clients API endpoints
/// </summary>
public partial class OrganizationsClientsSection

Check notice on line 6 in Meraki.Api/Sections/General/Organizations/OrganizationsClientsSection.cs

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

Meraki.Api/Sections/General/Organizations/OrganizationsClientsSection.cs#L6

'partial' is gratuitous in this context.
{
/// <summary>
/// Interface for client search and details.
/// </summary>
[RefitPromoteCalls]
internal IOrganizationsClients Clients { get; set; } = null!;

/// <summary>
/// Interface for client bandwidth usage history.
/// </summary>
public IOrganizationBandwidthUsageHistory BandwidthUsageHistory { get; internal set; } = null!;

/// <summary>
/// Interface for client overview information.
/// </summary>
public IOrganizationsClientOverview Overview { get; internal set; } = null!;
}
Original file line number Diff line number Diff line change
Expand Up @@ -75,9 +75,9 @@ public partial class OrganizationsSection
public OrganizationsCertificatesSection Certificates { get; internal set; } = new();

/// <summary>
/// Interface for client search and details.
/// Section for client search and details.
Copy link

Copilot AI Apr 12, 2026

Choose a reason for hiding this comment

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

The XML doc for OrganizationsSection.Clients still describes only “client search and details”, but this section now also exposes Overview and BandwidthUsageHistory endpoints. Update the summary to reflect the full scope to avoid misleading IntelliSense for consumers.

Suggested change
/// Section for client search and details.
/// Section for client search, details, overview, and bandwidth usage history operations.

Copilot uses AI. Check for mistakes.
/// </summary>
public IOrganizationsClients Clients { get; internal set; } = null!;
public OrganizationsClientsSection Clients { get; internal set; } = new();
Comment on lines 77 to +80
Copy link

Copilot AI Apr 12, 2026

Choose a reason for hiding this comment

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

Changing OrganizationsSection.Clients from IOrganizationsClients to OrganizationsClientsSection is a public API signature change. [RefitPromoteCalls] preserves method-call syntax, but consumers that reference the property as IOrganizationsClients (e.g., assignments/DI registrations/method params) will no longer compile. If the intent is truly non-breaking, consider keeping a public IOrganizationsClients-typed property (possibly obsolete) or having OrganizationsClientsSection implement IOrganizationsClients so it remains assignable to the interface; otherwise this should be treated/documented as a breaking change (SemVer/changelog).

Copilot uses AI. Check for mistakes.

/// <summary>
/// Section for cloud-related operations.
Expand Down
Loading