Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Resuming Active "Maintenance" #2

Open
Caffe1neAdd1ct opened this issue Oct 7, 2021 · 0 comments
Open

Resuming Active "Maintenance" #2

Caffe1neAdd1ct opened this issue Oct 7, 2021 · 0 comments
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@Caffe1neAdd1ct
Copy link
Member

Caffe1neAdd1ct commented Oct 7, 2021

Fork Status

Currently this fork has been upgraded to run on PHP 7 and Guzzle 7 with compatability for PHP 5.6 still.

I started a new project and needed to use some of the older APIs which didn't provide OpenAPI spec files. This SDK should now work with Laravel 7 / Guzzle 7 and PHP 7. I may look to provide support for later versions of Laravel/Guzzle/PHP soon.

Endpoint Status(es)

The tooling behind this SDK made by @davidsadler has also been tweaked and fixed to use the moved documentation pages and WDSL URLs to re-generate the following end points:

  • BulkDataExchange
  • BusinessPoliciesManagement
  • Feedback
  • FileTransfer
  • Finding
  • HalfFinding
  • Merchandising
  • MerchantData
  • Product
  • ProductMetadata
  • RelatedItemsManagement
  • ResolutionCaseManagement
  • ReturnManagement
  • Shopping
  • Trading

The above are all WSDL based and reasonably easy to replace with the WDSL2PHP project, however the follow endpoint is a REST based one with no provided OpenAPI or Swagger file, documentation is converted into a wsdl file then processed through xlt templates into PHP code currently, this isn't an ideal situation, but is clever and works!

  • PostOrder

This end point has been regenerated by collecting the documentation pages and a number of extra fixes added to prevent Types being generated instead of Enums in certain places.

The following API endpoints will no longer be updated on this fork as they are either deprecated by eBay or have been re-generated into new SDK client libraries using the eBay provided OpenAPI Spec files:

  • Account
  • Constants
  • Feed
  • Fulfillment
  • Order
  • Taxonomy
  • Analytics
  • Catalog
  • Credentials
  • Inventory
  • Services
  • Browse
  • Compliance
  • Metadata
  • Types
  • Marketing

I would highly recommend starting to use the newly generated SDKs under the zvps namespace combined with the OAuth section of this package until it gets refactored to it's own package.

At version 20.0.0 the above will be removed from this package, this SDK will be focused on maintaining support for the WSDL based endpoints and PostOrders. The buying API REST SDK clients will be generated from the OpenAPI Spec files soon, selling ones are all done and available.

Future Plans

To keep the WSDL based and PostOrder endpoints updated using the existing method created by @davidsadler.

To move the OAuth endpoint to a separate package for reuse in the new OpenAPI Spec generated API sell/buy REST clients.

To remove replaced end points from here eventually.

PRs

If you have already forked and improved or fixed areas of the SDK which haven't been included yet, please feel free to raise a PR to this repo. As long as they are not on a file marked as automatically generated we should be able to pull these in. If they are to an automatically generated file, we will need to look at the change and implement in the tool which generates these files instead.

OpenAPI Spec SDKs

Under the zVPS org I have generated and listed to packgist the following SDKs using OpenAPI Spec files:

  • ebay-sell-analytics-php-client
  • ebay-sell-finances-php-client
  • ebay-sell-listing-php-client
  • ebay-sell-metadata-php-client
  • ebay-sell-compliance-php-client
  • ebay-sell-fulfillment-php-client
  • ebay-sell-logistics-php-client
  • ebay-sell-negotiation-php-client
  • ebay-sell-account-php-client
  • ebay-sell-feed-php-client
  • ebay-sell-inventory-php-client
  • ebay-sell-marketing-php-client
  • ebay-sell-recommendation-php-client

To deal with OAuth and Application token collection i'm still using this SDKs OAuth classes, however as previously mentioned my plan will be to life this out and include / make available when pulling in any of the newer SDKs.

There is a main package available for Sell, the equivalent Buy package will also be available once generated:

  • ebay-sell-php-client

This will pull in all the related packages in one go rather than listing all the SDKs in your composer.json, left to make/generate:

  • ebay-buy-php-client
  • ebay-commerce-php-client
  • ebay-auth-php-client
  • ebay-php-client

Buy APIs left to generate:

  • Browse API
  • Deal API
  • Feed API
  • Marketing API
  • Marketplace InsightsAPI
  • Offer API
  • Order API

Commerce APIs left to generate:

  • Catalog API
  • Charity API
  • Identity API
  • Media API
  • Notification API
  • Taxonomy API
  • Translation API

If these new packages and maintained fork starts to see some traction / use I'll look at moving them to a fresh Github Org and bringing in some testing / other maintainers to help.

@Caffe1neAdd1ct Caffe1neAdd1ct added the documentation Improvements or additions to documentation label Oct 7, 2021
@Caffe1neAdd1ct Caffe1neAdd1ct self-assigned this Oct 7, 2021
@Caffe1neAdd1ct Caffe1neAdd1ct pinned this issue Oct 7, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

1 participant