Skip to content

feat: Fabric API Sync 4.30 to 4.31 by GitHub Action for @tutkat - #58

Merged
tutkat merged 17 commits into
mainfrom
sync/gh-1786957308
Aug 21, 2026
Merged

tutkat merged 17 commits into
mainfrom
sync/gh-1786957308

Conversation

@github-actions

@github-actions github-actions Bot commented Aug 17, 2026 •

Copy link
Copy Markdown
Contributor

This API Sync PR was triggered by @tutkat through GitHub Actions workflow_dispatch
on 2026-08-17.

This PR updates the SDK API Spec Version:
from 4.30 to 4.31

  • Latest Swaggerhub API Spec is fetched - version 4.31
  • Patches have been applied
  • Generated client has been updated

Changes in SDK

New APIs

  • ApplicationDomainsApi – CRUD + search for App Domains: createAppDomain, deleteAppDomainByUuid, getAppDomainByUuid, getAttachedAppLinksByAppDomainId, searchAppDomains, updateAppDomainByUuid
  • ApplicationLinksApi – CRUD + attach/detach App Links with domains and services: createAppLink, deleteAppLinkByUuid, getAppLinkByUuid, attachAppDomainToAppLink, attachAppServiceToAppLink, detachAppDomainFromAppLink, detachAppServiceFromAppLink, searchAppLinks, searchAttachedAppDomains, searchAttachedAppServices, updateAppLinkByUuid, updateAppServiceAttachmentToAppLink
  • ApplicationServicesApi – CRUD + search for App Services with subscription/link listings: createAppService, deleteAppServiceByUuid, getAppServiceByUuid, searchAppServices, searchAttachedAppSubscriptionsByAppServiceId, updateAppServiceByUuid
  • ApplicationSubscriptionsApi – CRUD + search for App Subscriptions: createAppSubscription, deleteAppSubscriptionByUuid, getAppSubscriptionByUuid, searchAppSubscriptions, updateAppSubscriptionByUuid
  • FabricOneApi – Interconnect management: createInterconnect, deleteInterconnectByUuid, getInterconnectByUuid, getInterconnectPackages, searchInterconnects
  • GatewaysApi – CRUD for Gateways: createGateway, deleteGatewayByUuid, getGatewayByUuid, updateGatewayByUuid
  • LoasApi – Full Letter of Authorization management: createLoa, createLoaNote, getLoaActionsByUuid, getLoaByUuid, getLoaConsumersByLoaId, getLoaNotesByUuid, performLoaAction, searchLoa, searchLoaAction, updateLoaByUuid
  • OpticalMetroConnectsApi – Optical Metro Connect management: createBulkOpticalConnect, createOpticalConnect, getOpticalConnectByUuid, searchOpticalConnect

Enhanced APIs

  • CloudRoutersApi – Added getCloudRouterByUuid (get cloud router by UUID)
  • ServiceProfilesApi – Added getServiceProfileEnvironmentsByUuid (list provider environments), serviceProfileEnvironmentAction (perform action on environment), updateServiceProfileByUuid (PATCH update)
  • StreamsApi – Added searchStreamAssets, searchStreams
  • StreamSubscriptionsApi – Added searchStreamSubscriptions
  • CloudEventsApi – Added searchLastOpEvents (search operational events)
  • InternetExchangeServicesApi – Added getExchangeServiceById, searchExchangeService
  • LogosApi – Added createLogo
  • TagsApi – Added getTagByUuid

New Models

Application Domains (~10 models)

  • AppDomain, AppDomainState, AppDomainType, AppDomainPostRequest, AppDomainSearchRequest, AppDomainSearchResponse, AppDomainChange, AppDomainChangeOperation, AppDomainFilter, AppDomainFilters, AppDomainOrFilter, AppDomainSimpleExpression, AppDomainSortCriteria, AppDomainSortDirection, AppDomainAttachedAppLink, AppDomainAttachedAppLinks

Application Links (~30 models)

  • AppLink, AppLinkState, AppLinkType, AppLinkChange, AppLinkChangeOperation, AppLinkCloudRouter, AppLinkFilter, AppLinkFilters, AppLinkOrFilter, AppLinkSearchRequest, AppLinkSortCriteria, AppLinkSortDirection
  • AppLinkAppDomainAttachment, AppLinkAttachedAppDomain, AppLinkAttachedAppDomains, AppLinkAttachDomainFilter, AppLinkAttachDomainFilters, AppLinkAttachDomainOrFilter, AppLinkAttachDomainSearchRequest, AppLinkAttachDomainSearchResponse, AppLinkAttachDomainSimpleExpression, AppLinkAttachDomainSortCriteria, AppLinkAttachDomainSortDirection
  • AppLinkAppServiceAttachment, AppLinkAppServiceAttachmentChange, AppLinkAppServiceAttachmentChangeOperation, AppLinkAttachedAppService, AppLinkAttachedAppServices, AppLinkAttachServiceFilter, AppLinkAttachServiceFilters, AppLinkAttachServiceOrFilter, AppLinkAttachServiceRequest, AppLinkAttachServiceSearchRequest, AppLinkAttachServiceSearchResponse, AppLinkAttachServiceSimpleExpression, AppLinkAttachServiceSortCriteria, AppLinkAttachServiceSortDirection, AppLinkAttachState

Application Services & Subscriptions (~25 models)

  • AppService, AppServicePostRequest, AppServiceSearchRequest, AppServiceSearchResponse, AppServiceChangeOperation, AppServiceAttachedAppLink, AppServiceAttachedAppLinks, AppServiceAttachedAppSubscriptionFilter, AppServiceAttachedAppSubscriptionFilters, AppServiceAttachedAppSubscriptionOrFilter, AppServiceAttachedAppSubscriptionSearchRequest, AppServiceAttachedAppSubscriptionSearchResponse
  • AppSubscription, AppSubscriptionPostRequest, AppSubscriptionSearchRequest, AppSubscriptionSearchResponse, AppSubscriptionChangeOperation, AppSubscriptionState

Gateways (~5 models)

  • Gateway, GatewayPostRequest, GatewayChangeOperation, GatewayState (and related)

Interconnects / FabricOne (~10 models)

  • Interconnect, InterconnectPostRequest, InterconnectSearchRequest, InterconnectSearchResponse, InterconnectState, InterconnectSortBy, InterconnectSortByResponse, InterconnectSortCriteria, InterconnectSortCriteriaResponse, InterconnectSortDirection, InterconnectSortDirectionResponse, InterconnectSearchFieldName, AllInterconnectPackagesResponse

LOA – Letter of Authorization (~25 models)

  • LoaResponse, CreateLoa, LoaSearchRequest, LoaSearchResponse, LoaFieldName, LoaFilter, LoaSimpleExpression, LoaSearchFilters, LoaSortCriteria
  • LoaActionRequest, LoaActionResponse, LoaActionSearchRequest, LoaActionSearchResponse, LoaActionData, LoaActionFieldName, LoaActionFilter, LoaActionOrFilter, LoaActionSearchFilters, LoaActionSearchSimpleExpressions, LoaActionSortCriteria
  • LoaNoteDetails, LoaNotesResponse, CreateLoaNote, LoaConsumer, LoaConsumersResponse
  • LoaChangelog, LoaDemarcationPoint, LoaIssuer, LoaRequestor, LoaProductType, LoaOpEnum, LoaPatchPanelConnectorType, IssueLoa, RequestLoa

Optical Metro Connect (~20 models)

  • OpticalConnectPostRequest, OpticalConnectResponse, OpticalConnectBulk, BulkOpticalConnectRequest, OpticalConnectSearchRequest, OpticalConnectServiceSearchResponse
  • OpticalConnectASideRequest, OpticalConnectASideResponse, OpticalConnectZSideRequest, OpticalConnectZSideResponse, OpticalConnectLocation, OpticalConnectPatchPanelFields, OpticalConnectRedundancy, OpticalConnectNotification
  • OpticalConnectFilter, OpticalConnectFilters, OpticalConnectOrFilter, OpticalConnectSimpleExpression, OpticalConnectSortBy, OpticalConnectSortCriteria, OpticalConnectSortDirection, OpticalConnectState, OpticalConnectConnectionDestinationType
  • OpticalConnectPrice, OpticalConnectPriceASide, OpticalConnectPriceLocation, OpticalConnectPricePathType, OpticalConnectPriceZSide

Streams search (~15 models)

  • StreamSearchRequest, StreamSearchFilter, StreamSearchFilters, StreamSearchOrFilter, StreamSearchSimpleExpression, StreamSearchSortBy, StreamSearchSortCriteria, StreamSearchSortDirection
  • StreamSubscriptionSearchRequest, StreamSubscriptionSearchFilter, StreamSubscriptionSearchFilters, StreamSubscriptionSearchOrFilter, StreamSubscriptionSearchSimpleExpression, StreamSubscriptionSearchSortBy, StreamSubscriptionSearchSortCriteria, StreamSubscriptionSearchSortDirection, SearchStreamSubscriptionResponse

Other new models

  • Phone – Phone contact model (used in SimplifiedNotification)
  • ProviderEnvironments – List of provider environments for service profiles
  • RouteCollector, Router, RoutingProtocolResponse – Routing protocol extensions
  • PublicPeeringConnectionResponse – Public peering connection response
  • MaintenanceState – Maintenance state enum
  • ServiceProfileLastMileApiIntegration – Last mile API integration for service profiles
  • OperationalEventFilters, OperationalEventSearchRequest, OperationalEventSimpleExpression, SearchOperationalEventResponse – Operational event search models

Updated Models

Enum Expansions

  • ConnectionType – Added GW_VC, IPX_VC; removed IC_VC
  • SimplifiedNotification.TypeEnum – Added ORDERING, QUOTE_NOTIFICATIONS (previously ORDERING was the last value)

New Fields

  • SimplifiedNotification – Added phone field (List<Phone>) for array of contact phone numbers

Breaking Changes

  • ConnectionType – Removed IC_VC enum value; replaced by GW_VC and IPX_VC. Any code switching on IC_VC will fail at runtime with IllegalArgumentException.

Generator Config Change

  • enumUnknownDefaultCase: true added to config/openapi-generator.json — future SDK regenerations will add an UNKNOWN_DEFAULT_OPEN_API fallback value to every enum. Unknown values returned by the API will no longer throw IllegalArgumentException during deserialization.

@tutkat
tutkat requested a review from a team as a code owner August 17, 2026 12:46
tng1-equinix
tng1-equinix previously approved these changes Aug 18, 2026
Comment thread .github/workflows/sync-fabricv4.yaml Outdated
Comment thread config/openapi-generator.json Outdated
tng1-equinix
tng1-equinix previously approved these changes Aug 20, 2026
Comment thread services/fabricv4/pom.xml
Comment on lines -178 to -190
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.3.0</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>

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.

I assume the new pom.mustache template was added in order to make this change. Why is this change needed?

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.

this plugin is not required

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.

Is it not required, or does its inclusion cause something to break?

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.

Is it needed in this repo:

No, for several reasons:

  1. Code in services/fabricv4/src/ is auto-generated — a sources jar has little value since nobody debugs generated code manually.
  2. The SDK is distributed via GitHub, not Maven Central — Maven Central requires -sources.jar, an internal Nexus does not.
    @ctreatma

Comment thread version Outdated

@ctreatma ctreatma left a comment

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.

I'm approving this PR as-is because my only remaining concern, the change to the POM file, is low-impact right now and easily reverted.

For future sync PRs, please try to keep them focused on the synced code and open separate PRs for changing things like how tests run, how version numbers are managed, or what plugins are or are not needed.

For the POM change in particular: I expect that DRE will revert that in the near future. The fact that this SDK is not published to Maven Central is an oversight that makes this SDK harder to discover.

@tutkat
tutkat merged commit 5250bc7 into main Aug 21, 2026
1 check passed
@tutkat
tutkat deleted the sync/gh-1786957308 branch August 21, 2026 16:58
@github-actions

Copy link
Copy Markdown
Contributor Author

This PR is included in version 0.11.0 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants