Repository navigation
Regenerate PHP SDK: restore method names, 14.1.0 parameter order, and form field names - #629
Merged
Merged
Conversation
The previous regen shipped ~70 methods with path-derived names
(`crmV3Owners()`, `settingsUsersV3()`, `marketingV3Forms_0()`, ...)
because the upstream specs dropped the name part of their operationIds.
Most of those methods were `getPage`/`create`/etc. in earlier releases.
Regenerated with api-clients' operationId overrides ("Override
operationIds that generate path-style PHP method names"). Only method
names change: same endpoints, same parameters. The one exception is
Cms\UrlRedirects BasicApi, which also picks up four url-mappings
endpoints added upstream since the last regen.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Since 14.1.0 the upstream specs list parameters alphabetically, so regens silently reordered positional arguments on 115 methods, including getPage/getById on every CRM object. Existing calls kept running but sent values to the wrong parameters: crm owners getPage(null, null, 1) filtered by email=1, and users getPage(5) sent after=5. Regenerated with api-clients' 14.1.0 parameter-order transform. Every changed method keeps the same parameters, now in 14.1.0 order. Imports getPage is renamed to getImportsPage because upstream removed its `before` parameter, so old calls fail loudly instead of passing `before` as `limit`. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Since the Sep 9 codegen, Files upload/replace sent form fields under their PHP variable names (folder_path, file_name, folder_id, charset_hunch). The API ignores those, so every upload failed with 400 "Either folderId or folderPath is required". Imports AdvancedApi had the same problem (import_request instead of importRequest). 14.1.0 was fine because FilesApi had been hand-fixed (184f63f), and that regen overwrote it. Regenerated with api-clients' PHP template override, which keys form data by the spec's property name. All form keys in the SDK now match their spec, and the Files and Imports keys match 14.1.0 again. The same regen also drops Cms\UrlRedirects' four url-mappings endpoints, which upstream has removed from the spec again since the previous regen. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
joe-yeager
approved these changes
Oct 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Since 14.1.0, upstream spec changes broke the SDK in two ways:
Path-style method names (
crmV3Owners(),settingsUsersV3(),marketingV3Forms_0()…) replaced names that weregetPage/create/etc. in earlier releases.Silently reordered parameters. The specs now list parameters alphabetically, so 115 methods take positional arguments in a different order than 14.1.0. That includes
getPage/getByIdon every CRM object. Existing calls keep running but send values to the wrong parameters: crm ownersgetPage(null, null, 1)filtered byemail=1, and usersgetPage(5)sentafter=5.Files upload is broken. Multipart form fields are sent under their PHP variable names (
folder_path,file_name, …) instead of the wire names (folderPath,fileName, …). The API ignores them, so every upload fails with 400 "Either folderId or folderPath is required". ImportsAdvancedApihas the same problem (import_requestvsimportRequest). 14.1.0 was fine becauseFilesApihad been hand-fixed (184f63f9), and the Sep 9 regen overwrote it.None of these problems is in any tagged release (latest is 14.1.0); they're only on
dev-master.What
Regenerated with HubSpotEngineering/api-clients#381, which restores the names, the 14.1.0 parameter order, and the form field names.
GET /crm/v3/ownersgetPage($email, $after, $limit, $archived)crmV3Owners($after, $archived, $email, $limit)getPage($email, $after, $limit, $archived)GET /settings/users/v3getPage($limit, $after)settingsUsersV3($after, $limit)getPage($limit, $after)GET /crm/v3/objects/contactsgetPage($limit, $after, $properties, …)getPage($after, $archived, $associations, $limit, …)getPage($limit, $after, $properties, …)GET /crm/v3/importsis nowgetImportsPage. Upstream removed itsbeforeparameter, so oldgetPage(after, before, limit)calls fail loudly instead of passingbeforeaslimit.Verification
replaceonly had its body parameter renamed in place.lib/, tests, README) calls the old names.php -lclean. phpspec 139/139 and phpunit pass locally.tab_app_card_idfield on a CRM cards model, and Marketing/Transactional docblocks). The next regen will pick it up.🤖 Generated with Claude Code