inventree / inventree-python

Python library for communication with inventree via API
https://docs.inventree.org/en/latest/api/python/python/
MIT License
26 stars 34 forks source link

Add support for company/customer address #213

Open lfg-seth opened 7 months ago

lfg-seth commented 7 months ago

It seems like there is no way to create or modify company/customer address.

I would like to help develop this if someone could point me in the right direction.

miggland commented 7 months ago

I assume you've seen the documentation, available for example at: https://demo.inventree.org/api-doc/

New classes can be added simply, see the example for Contacts: https://github.com/inventree/inventree-python/blob/b7f4cabcd57d03de8e77dc3243dc4d8f1266f65c/inventree/company.py#L11 These use the methods defined in inventree.base.InventreeObject.

Get the URL from the docs, the relevant API_VERSION can be found in https://github.com/inventree/InvenTree/blob/master/InvenTree/InvenTree/api_version.py, or via the corresponding PR which enabled addresses.

The class Company has several methods which help in usage, eg. getting Contacts for the Company (getCompany).

Spontaneously, a new class along the lines of Contact for addresses, and a method in Company to return them, is probably what you're after.

General notes

There is no contribution docs here, but there are pre-commit checks defined. Installing these before you commit locally will make it easier to pass the tests later on. There are also invoke commands to use locally, see tasks.py.

miggland commented 7 months ago

Also, you'll need to add some tests for your new methods. You should be able to find inspiration in the tets for Company and Contact