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

Product Ingestion Generated SDK (vendored_sdks) #179

Open
kevinhillinger opened this issue Feb 7, 2023 · 0 comments
Open

Product Ingestion Generated SDK (vendored_sdks) #179

kevinhillinger opened this issue Feb 7, 2023 · 0 comments
Labels
backend Needs backend work enhancement New feature or request

Comments

@kevinhillinger
Copy link
Member

Implement an SDK for the new Product Ingestion API.

Design

  • Generate model from JSON Schema definitions (published source)
  • Implement client code generation or a single generic client that accepts any model, exposing standard operations/verbs

Model generation

Approximate process to implement:

  1. store all URLs of the schema files
  2. Download all
  3. rename each file to the name of the specific schema using $id (regex capture name)
  4. move file to the folder, named the version from $id
  5. replace snakecase with underscore in file name
  6. go through each file, and...
    • add title attribute with Pascal case of the name of the schema
    • find the $ref values and replace with local reference instead of URI
    • remove $defs attribute
@kevinhillinger kevinhillinger added the backend Needs backend work label Feb 7, 2023
@kevinhillinger kevinhillinger changed the title Product Ingestion - vendored_sdks Product Ingestion Generated SDK (vendored_sdks) Feb 7, 2023
@kevinhillinger kevinhillinger added the enhancement New feature or request label Feb 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend Needs backend work enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant