Cord Python API Client

Overview

Cord Python API Client

Cord logo

license

The data programming platform for AI

💻 Features

  • Minimal low-level Python client that allows you to interact with Cord's API
  • Supports Python: 3.6, 3.7, and 3.8

Relevant Links

💡 Getting Started

For full documentation, visit Cord Python API Client.

First, install Cord Python API Client using the pip package manager:

pip install cord-client-python

Then, create an API key for authentication via the Cord web app. Pass the project ID and API key as environment variables or pass them explicitly when you initialise the CordClient object.

export CORD_PROJECT_ID="<project_id>"
export CORD_API_KEY="<project_api_key>"

Passing the project ID and API key as environment variables, you can initialise the Cord client directly.

from cord.client import CordClient

client = CordClient.initialise()

If you want to avoid setting environment variables, you can initialise the Cord client by passing the project ID and API key as strings.

from cord.client import CordClient

client = CordClient.initialise("<project_id>", "<project_api_key>")

If you wish to instantiate several client objects and avoid passing parameters each time, you can instantiate a CordConfig object, pass the project ID and API key as strings, and initialise the client with the config object.

from cord.client import CordClient
from cord.client import CordConfig

config = CordConfig("<project_id>", "<project_api_key>")
client = CordClient.initialise_with_config(config)

Once you have instantiated a Cord client, it is easy to fetch information associated with the given project ID.

from cord.client import CordClient

client = CordClient.initialise()
project = client.get_project()

🐛 Troubleshooting

Please report bugs to GitHub Issues. Just make sure you read the Cord documentation and search for related issues first.

Comments
  • DEV-1181 - DEV-1188 -Allow users to interacts with projects and datasets without API keys

    DEV-1181 - DEV-1188 -Allow users to interacts with projects and datasets without API keys

    Introduction and Explanation

    Essentially I have added another SshConfig which will allows the new DatasetManager and ProjectManager to use the reference of the UserConfig for SSH authentication.

    Notes:

    • The new classes are called DatasetManager and ProjectManager. Calling them Dataset would lead to name clashes with the ORM class (also leading to potential backwards compatibility concerns) and would also be a bit of a confusing name if you think about operations like Dataset.get_dataset(). DatasetManager makes this more clear.
    • We now have the functionally equivalent EncordClientDataset and DatasetManager. We just have an alias and use one class in conjunction with the API keys and one with just getting the DatasetManager directly from the EncordUserClient. I personally find this a little bit confusing and would not mind keeping one EncordClientDataset around, but seems like @rad-cord and @justin-cord prefer the rename so please let confirm this change in this PR.
    • I have updated the docs - please check them out to see if it is as expected. I have left the docs for API keys but have made it very obvious that we encourage using the new DatasetManager and user_client.get_dataset_manager() etc.
    • You can now include the DatasetManager, ProjectManager, and EncordUserClient directly from the encord package.

    JIRA

    DEV-1181

    Documentation

    I need to update the SDK documentation.

    Tests

    I will update the SDK integration tests.

    Known issues

    Backwards compatibility constraints

    opened by denis-cord 8
  • DEV-1311 - Add the list_models and get_training_metadata functions

    DEV-1311 - Add the list_models and get_training_metadata functions

    Introduction and Explanation

    Allow users to query all the models that are available for a project. Additionally allow users to get more information about the training instances.

    JIRA

    DEV-1311

    opened by denis-cord 7
  • DEV-2045 - Add object and classification hash filtering into SDK

    DEV-2045 - Add object and classification hash filtering into SDK

    ~~TODO: docstrings and documentation.~~

    Also possibly expose the review type argument as well with the help of @rizwancordtech to choose naming and documentation. EDIT: will defer this to another time/PR.

    opened by denis-cord 4
  • DEV-1622 - Add polylines to the COCO exporter

    DEV-1622 - Add polylines to the COCO exporter

    Introduction and Explanation

    With a little trick, this adds support for exporting polylines in COCO. Polylines will essentially be represented as polygons without any area.

    Tests

    Some unit tests added.

    opened by denis-cord 4
  • GitHub action - do all unit and integration tests on multiple supported Python versions

    GitHub action - do all unit and integration tests on multiple supported Python versions

    Now on merge all the unit and integration tests will be run for stages 3.7-3.10.

    Due to some missing support from dependencies for the deprecated 3.6 version, we cannot run tests there.

    this is an example of a job that runs with the latest configurations. It shows catches the errors that slipped through well.

    Annoying it also reports some noise because if the tests fail, we cannot run the last step of the action which is this:

          - name: Checkout current repo for post cleanup
            uses: actions/checkout@v2
    

    and therefore the "Post Run" GitHub job doesn't work. If @rizwancordtech has some ideas here that would be great, otherwise this is good to merge from my side.

    opened by denis-cord 4
  • Add black checks to PR github actions

    Add black checks to PR github actions

    This PR also does all the necessary formatting.

    I have chosen against a run command and instead used an example from the black docs. If we wanted a run command we would need to do the poetry install including dev dependencies.

    opened by denis-cord 4
  • Add to_dict() in LabelRowMetadata class

    Add to_dict() in LabelRowMetadata class

    Introduction and Explanation

    LabelRowMetadata class was missing to_dict() equivalent as in OntologyStructure. This method will come handy when saving Encord Active cache.

    opened by eloy-encord 3
  • Benchmark QA support in the SDK

    Benchmark QA support in the SDK

    Introduction and Explanation

    Introducing support for 'shadow data' in the SDK.

    JIRA

    https://cord-team.atlassian.net/browse/DEV-2055

    Documentation

    Not quite.

    Tests

    SDK tests to follow

    Known issues

    I'm not entirely sure about the 'ProjectWorkflowType' thing.

    opened by alexey-cord-tech 3
  • Deprecate Python 3.6

    Deprecate Python 3.6

    I’m proposing to deprecate Python 3.6. Official support has been dropped by the Python maintainers and some tools are stopping to work for Python 3.6 After talking to Ulrik it seems like we don’t have clients who are using Python 3.6 with our SDK.

    opened by denis-cord 3
  • AttributeError: module 'concurrent' has no attribute 'futures'

    AttributeError: module 'concurrent' has no attribute 'futures'

    Getting this traceback after I upgraded:

      File "push_to_cord.py", line 15, in upload_image_group
        res = cord_dataset.create_image_group(image_paths)
      File "/home/louislva/.local/lib/python3.8/site-packages/cord/client.py", line 232, in create_image_group
        upload_to_signed_url_list(file_paths, signed_urls, self._querier, Image, max_workers)
      File "/home/louislva/.local/lib/python3.8/site-packages/cord/http/utils.py", line 58, in upload_to_signed_url_list
        with concurrent.futures.ThreadPoolExecutor(max_workers=max_workers) as executor:
    AttributeError: module 'concurrent' has no attribute 'futures'
    

    It seems like you just need to change the way you import concurrent (see this thread)

    My colleague Esben has also made a PR to address it: #70

    opened by louislva 3
  • fix(image): uses correct property name

    fix(image): uses correct property name

    Introduction and Explanation

    Some introductory context and overview

    JIRA

    Link ticket(s)

    Documentation

    There should be enough internal documentation for a product owner to write customer-facing documentation or a separate PR linked if writing the customer documentation directly. Link all that are relevant below.

    • Internal: notion link
    • Customer docs PR: link
    • OpenAPI/SDK
      • Generated docs: link to example if possible
      • Command to generate: here

    Tests

    Make a quick statement and post any relevant links of CI / test results. If the testing infrastructure isn’t yet in-place, note that instead.

    • What are the critical unit tests?
    • Explain the Integration Tests such that it’s clear Correctness is satisfied. Link to test results if possible.

    Known issues

    If there are any known issues with the solution, make a statement about what they are and why they are Ok to leave unsolved for now. Make tickets for the known issues linked to the original ticket linked above

    opened by Encord-davids 2
  • Frame numbers for urls of video data

    Frame numbers for urls of video data

    Hello,

    I would like to download specific frames of video data associated with an annotation. However, I've found that (1) a frame URL corresponding to an annotation is not embedded in the annotation object and (2) URLs for all frames are grouped together in the data_unit and not in an order corresponding to the frame ordering.

    Is there some way to determine to which frame each URL corresponds? Any help would be appreciated.

    opened by csheaff 4
  • Support 'export_history' on label rows

    Support 'export_history' on label rows

    Introduction and Explanation

    f"{title}" ;)

    This should only land after the corresponding BE change (https://github.com/encord-team/cord-backend/pull/1025)

    JIRA

    DEV-250

    Documentation

    The basic info should be in there.

    Tests

    There are integration tests (in the other repo, as usual).

    Known issues

    We need better process for developing this.

    opened by alexey-cord-tech 2
  • Remove the `cord` package

    Remove the `cord` package

    This is required by https://github.com/encord-team/cord-backend/pull/955

    This can be technically kept in a stable branch, but we might as well do it for clients as it is a very non-invasive change to change cord to encord.

    This does not remove the CordUserClient to be least annoying to clients.

    opened by denis-cord 1
Releases(0.1.60)
  • 0.1.60(Jan 9, 2023)

    What's Changed

    • Docs dicom deidentification example by @adam-encord in https://github.com/encord-team/encord-client-python/pull/236
    • Add the include_reviews flag. by @denis-cord in https://github.com/encord-team/encord-client-python/pull/237 We have recently removed the reviews field from the label row as default. This is because many teams saw that it could significantly bloat the response size, while in many cases not being needed by the team. We now added the include_reviews flag for the project.get_label_row() and project.get_label_rows() functions to add the reviews field back in, if needed.

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.59...0.1.60

    Source code(tar.gz)
    Source code(zip)
  • 0.1.59(Jan 7, 2023)

    What's Changed

    • Dicom deidentify function by @adam-encord in https://github.com/encord-team/encord-client-python/pull/231 Added deidentify_dicom_files function which takes links to dicom files pointing to AWS, GCP, AZURE or OTC and Encord platform private bucket integration as input and performs dicom files deidentification on them, writing deidentified files to buckets as new files.
    • Version bump to 0.1.59 by @adam-encord in https://github.com/encord-team/encord-client-python/pull/235

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.58...0.1.59

    Source code(tar.gz)
    Source code(zip)
  • 0.1.58(Jan 4, 2023)

    What's Changed

    • DEV-2242 - Allow adding users to datasets by @denis-cord in https://github.com/encord-team/encord-client-python/pull/227 Check the add_users docs for more info.
    • Support video_image_groups in SDK by @adam-encord in https://github.com/encord-team/encord-client-python/pull/222 Check the create_image_group docs with the create_video flag. Read more about the impact of the create_video flag here.

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.57...0.1.58

    Source code(tar.gz)
    Source code(zip)
  • 0.1.57v2(Jan 3, 2023)

    What's Changed

    • Set up FAQ page in documentation @rad-cord in https://github.com/encord-team/encord-client-python/pull/228
    • Enable Accept-Encoding gzip header by @rad-cord in https://github.com/encord-team/encord-client-python/pull/229

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.56...0.1.57v2

    Source code(tar.gz)
    Source code(zip)
  • 0.1.56(Dec 14, 2022)

    What's Changed

    • Rely on urllib3 retry logic. Create a connection for every request by @rad-cord in https://github.com/encord-team/encord-client-python/pull/226

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.55...0.1.56

    Source code(tar.gz)
    Source code(zip)
  • 0.1.55(Dec 12, 2022)

    What's Changed

    • Benchmark QA support in the SDK by @alexey-cord-tech in https://github.com/encord-team/encord-client-python/pull/216
    • Add dynamic attributes to ontology by @denis-cord in https://github.com/encord-team/encord-client-python/pull/218
    • DEV-1843 - Optionally get client metadata via a data_row by @denis-cord in https://github.com/encord-team/encord-client-python/pull/205
    • Fix ubuntu + python version for the GH pipeline by @adam-encord in https://github.com/encord-team/encord-client-python/pull/225
    • Add to_dict() in LabelRowMetadata class by @eloy-encord in https://github.com/encord-team/encord-client-python/pull/224

    New Contributors

    • @eloy-encord made their first contribution in https://github.com/encord-team/encord-client-python/pull/224

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.54...0.1.55

    Source code(tar.gz)
    Source code(zip)
  • 0.1.54(Nov 15, 2022)

    What's Changed

    • DEV-2045 - Add object and classification hash filtering into SDK by @denis-cord in https://github.com/encord-team/encord-client-python/pull/213

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.53...0.1.54

    Source code(tar.gz)
    Source code(zip)
  • 0.1.53(Oct 26, 2022)

    What's Changed

    • Add transform_bounding_boxes_to_polygons option to CVAT importer by @denis-cord in https://github.com/encord-team/encord-client-python/pull/209

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.52...0.1.53

    Source code(tar.gz)
    Source code(zip)
  • 0.1.52(Oct 22, 2022)

    What's Changed

    • Update CVAT docs around requests timeouts by @denis-cord in https://github.com/encord-team/encord-client-python/pull/208
    • Allow CVAT uploads with deep file paths. by @denis-cord in https://github.com/encord-team/encord-client-python/pull/207

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.51...0.1.52

    Source code(tar.gz)
    Source code(zip)
  • 0.1.51(Oct 18, 2022)

    What's Changed

    • Add the rotatable bounding box to ObjectShape enum by @rad-cord in https://github.com/encord-team/encord-client-python/pull/203
    • [Docs] Expanding main menu with section titles. by @frederik-encord in https://github.com/encord-team/encord-client-python/pull/201
    • Fix docs for get_label_rows by @denis-cord in https://github.com/encord-team/encord-client-python/pull/204
    • Reset default max_retries to 0 by @denis-cord in https://github.com/encord-team/encord-client-python/pull/206

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.50...0.1.51

    Source code(tar.gz)
    Source code(zip)
  • 0.1.50(Oct 4, 2022)

    New Features

    You can now use a bulk get_label_rows for faster label row retrieval.

    project = client_instance.get_project(<project_hash>)
    
    created_label_uids_list = []
    for label_row in project.label_rows:
        if label_row is not None:  # None values will fail the operation
            created_label_uids_list.append(label_row["label_hash"])
    
    label_rows = project.get_label_rows(created_label_uids_list, get_signed_url=False)
    

    What's Changed

    • Add Ontology top level object to docs by @denis-cord in https://github.com/encord-team/encord-client-python/pull/202
    • Allow requesting multiple label rows. by @denis-cord in https://github.com/encord-team/encord-client-python/pull/197

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.49.1...0.1.50

    Source code(tar.gz)
    Source code(zip)
  • 0.1.49.1(Sep 27, 2022)

    Bug Fix

    The encord.utilities.label_utilities.construct_answer_dictionaries now works well with labels with the DICOM format. The YOLTv4 model was removed from the encord.constants.model.AutomationModels as it is not supported by Encord anymore.

    What's Changed

    • Remove YOLTv4 by @adam-encord in https://github.com/encord-team/encord-client-python/pull/191
    • Fixes to e2e docs by @denis-cord in https://github.com/encord-team/encord-client-python/pull/194
    • Update SSH key link by @justin-cord in https://github.com/encord-team/encord-client-python/pull/195
    • Datatype dicom was missing in construct_answer_dictionaries() by @andreashenc in https://github.com/encord-team/encord-client-python/pull/193
    • Increase timeouts by @radovanCord in https://github.com/encord-team/encord-client-python/pull/198
    • Add link to main encord docs and a small fix by @denis-cord in https://github.com/encord-team/encord-client-python/pull/200
    • Revert "Increase timeouts (#198) by @radovanCord in https://github.com/encord-team/encord-client-python/pull/199

    New Contributors

    • @adam-encord made their first contribution in https://github.com/encord-team/encord-client-python/pull/191
    • @justin-cord made their first contribution in https://github.com/encord-team/encord-client-python/pull/195
    • @andreashenc made their first contribution in https://github.com/encord-team/encord-client-python/pull/193

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.48...0.1.49

    Source code(tar.gz)
    Source code(zip)
  • 0.1.48(Sep 6, 2022)

    What's Changed

    • Fhv/e2e authenticate instructions by @frederik-encord in https://github.com/encord-team/encord-client-python/pull/186
    • add new actions to docs by @radovanCord in https://github.com/encord-team/encord-client-python/pull/190
    • DEV-1649 - Add user_email to LabelLog type by @radovanCord in https://github.com/encord-team/encord-client-python/pull/188

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.47...0.1.48

    Source code(tar.gz)
    Source code(zip)
  • 0.1.47(Sep 1, 2022)

    What's Changed

    • Cycle available colours by @javi-encord in https://github.com/encord-team/encord-client-python/pull/182
    • Fix a code example; Add a configurations page by @denis-cord in https://github.com/encord-team/encord-client-python/pull/179
    • Add ability to upload DICOM series to Encord storage by @rad-cord in https://github.com/encord-team/encord-client-python/pull/187

    New Contributors

    • @javi-encord made their first contribution in https://github.com/encord-team/encord-client-python/pull/182

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.46.1...0.1.47

    Source code(tar.gz)
    Source code(zip)
  • 0.1.46.1(Aug 23, 2022)

    New Features

    You are now able to set the video, image group, and image title at the time you are uploading the data. Please check the doc strings of these functions for explanations around the interface.v

    What's Changed

    • Add yoltv4 model to AutomationModels enum by @denis-cord in https://github.com/encord-team/encord-client-python/pull/177
    • Add custom title option for image groups and video upload at upload time. by @denis-cord in https://github.com/encord-team/encord-client-python/pull/176
    • Update answer dictinary construction for single images. by @frederik-encord in https://github.com/encord-team/encord-client-python/pull/178
    • Version bump 0.1.46 by @denis-cord in https://github.com/encord-team/encord-client-python/pull/181

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.45...0.1.46.1

    Source code(tar.gz)
    Source code(zip)
  • 0.1.45(Aug 17, 2022)

    New functions

    Conveniently inspect your models and training iterations:

    from encord import EncordUserClient
    from encord.utilities.project_utilities import get_all_model_iteration_uids
    
    
    user_client = EncordUserClient.create_with_ssh_private_key(<your_ssh_key>)
    project = user_client.get_project(<project_id>)
    
    model_configurations = project.list_models()
    all_model_iteration_uids = get_all_model_iteration_uids(model_configurations)
    training_metadata = project.get_training_metadata(
        all_model_iteration_uids,
        get_model_training_labels=True,
    )
    

    Upload single images instead of image groups with:

    from encord import EncordUserClient
    
    user_client = EncordUserClient.create_with_ssh_private_key(<your_ssh_key>)
    dataset = user_client.get_dataset(<dataset_id>)
    dataset.upload_image(<image_path>, title="custom_title.jpg")
    

    Read more about images and image groups here and here.

    What's Changed

    • Add changelog link by @denis-cord in https://github.com/encord-team/encord-client-python/pull/174
    • DEV-1311 - Add the list_models and get_training_metadata functions by @denis-cord in https://github.com/encord-team/encord-client-python/pull/138
    • Allow file upload of native single images by @denis-cord in https://github.com/encord-team/encord-client-python/pull/172
    • Version bump 0.1.45 by @denis-cord in https://github.com/encord-team/encord-client-python/pull/175

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.44...0.1.45

    Source code(tar.gz)
    Source code(zip)
  • 0.1.44(Aug 15, 2022)

    What's Changed

    • Remove print statements by @denis-cord in https://github.com/encord-team/encord-client-python/pull/166
    • Remove unnecessary uuid dependency by @denis-cord in https://github.com/encord-team/encord-client-python/pull/167
    • Allow native images as a data type by @denis-cord in https://github.com/encord-team/encord-client-python/pull/170
    • Fix the construct_answer_dictionaries function by @denis-cord in https://github.com/encord-team/encord-client-python/pull/171
    • Version bump 0.1.44 by @denis-cord in https://github.com/encord-team/encord-client-python/pull/173

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.43...0.1.44

    Source code(tar.gz)
    Source code(zip)
  • 0.1.43(Aug 4, 2022)

    Backwards compatibility warning

    If you have been using the Ontology object from encord.objects.ontology then you will need to do the following: Replace lines such as:

    from encord.objects.ontology import Ontology
    

    with this:

    from encord.objects.ontology_structure import OntologyStructure
    

    The functionality of the new encord.objects.ontology_structure.OntologyStructure object is the same as the previous encord.objects.ontology.Ontology object.

    What's Changed

    • Add additional link about private key gen by @denis-cord in https://github.com/encord-team/encord-client-python/pull/151
    • Ontology entity handling and structure editing by @alexey-cord-tech in https://github.com/encord-team/encord-client-python/pull/149
    • Docs update and version bump by @denis-cord in https://github.com/encord-team/encord-client-python/pull/156
    • Uploading images to our platform by @denis-cord in https://github.com/encord-team/encord-client-python/pull/157
    • Add the OTC integration parameter to StorageLocation by @rad-cord in https://github.com/encord-team/encord-client-python/pull/153
    • Fix issue with expiring signed URLs on upload of many images (#159) by @denis-cord in https://github.com/encord-team/encord-client-python/pull/160
    • Add DICOM to DataType enum by @rad-cord in https://github.com/encord-team/encord-client-python/pull/158
    • Retry all network requests by @denis-cord in https://github.com/encord-team/encord-client-python/pull/161
    • Pin TLS certificate. Point default endpoint to api.encord.com by @rad-cord in https://github.com/encord-team/encord-client-python/pull/162
    • Improve some tests for safety by @denis-cord in https://github.com/encord-team/encord-client-python/pull/164
    • Reuse the existing HTTPS session to avoid expensive TCP and TLS hands… by @rad-cord in https://github.com/encord-team/encord-client-python/pull/163
    • Version bump 0.1.43 by @denis-cord in https://github.com/encord-team/encord-client-python/pull/165

    Read more about our new RequestsSettings object for automatic HTTP request retries here.

    If you want to overwrite the default values you can do so when instantiating the EncordUserClient

        encord_user_client = EncordUserClient.create_with_ssh_private_key(
            os.environ.get("SSH_KEY"),
            requests_settings=RequestsSettings(max_retries=5, backoff_factor=0.1),
        )
    

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.40.1...0.1.43

    Source code(tar.gz)
    Source code(zip)
  • 0.1.42(Jul 28, 2022)

    What's Changed

    • Fix issue with expiring signed URLs on upload of many images by @denis-cord in https://github.com/encord-team/encord-client-python/pull/159

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.41...0.1.42

    Source code(tar.gz)
    Source code(zip)
  • 0.1.41(Jul 26, 2022)

  • 0.1.40.1(Jul 15, 2022)

    What's Changed

    • Fhv/e2e docs by @frederik-encord in https://github.com/encord-team/encord-client-python/pull/132
    • Add the end to end docs to index by @denis-cord in https://github.com/encord-team/encord-client-python/pull/147
    • update data items method added by @radovanCord in https://github.com/encord-team/encord-client-python/pull/148
    • Version bump 0.1.40 by @denis-cord in https://github.com/encord-team/encord-client-python/pull/150

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.39...0.1.40.1

    Source code(tar.gz)
    Source code(zip)
  • 0.1.39(Jul 6, 2022)

    What's Changed

    • Complete the fix for DEV-1326 #140 by @denis-cord in https://github.com/encord-team/encord-client-python/pull/146

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.38.1...0.1.39

    Source code(tar.gz)
    Source code(zip)
  • 0.1.38.1(Jul 6, 2022)

    What's Changed

    • DEV-1326 - Adapt the type of the re-encode poll by @denis-cord in https://github.com/encord-team/encord-client-python/pull/140
    • Add small SDK docs fix by @denis-cord in https://github.com/encord-team/encord-client-python/pull/143
    • Remove 'Denis' comment from client facing docs by @denis-cord in https://github.com/encord-team/encord-client-python/pull/144
    • Bump version to 0.1.38 by @denis-cord in https://github.com/encord-team/encord-client-python/pull/145

    NOTE: the extra minor-minor version in the tag is just there to keep the release tag consistent with the pypi version.

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.37...0.1.38.1

    Source code(tar.gz)
    Source code(zip)
  • 0.1.37(Jun 21, 2022)

    What's Changed

    • Automation models as an enum. by @frederik-encord in https://github.com/encord-team/encord-client-python/pull/122
    • Fix black dependency issues for pre-commit hook by @denis-cord in https://github.com/encord-team/encord-client-python/pull/125
    • Fhv/private key as env variable by @frederik-encord in https://github.com/encord-team/encord-client-python/pull/124
    • Fhv/sdk docs by @frederik-encord in https://github.com/encord-team/encord-client-python/pull/121
    • [Docs] Added missing new line to make code-block work. by @frederik-encord in https://github.com/encord-team/encord-client-python/pull/127
    • Imporve docs build instructions by @denis-cord in https://github.com/encord-team/encord-client-python/pull/128
    • Add the SshConfig for the EncordClient by @denis-cord in https://github.com/encord-team/encord-client-python/pull/129
    • Create the new Project and Dataset objects by @denis-cord in https://github.com/encord-team/encord-client-python/pull/130
    • Add a more complete ontology object by @denis-cord in https://github.com/encord-team/encord-client-python/pull/131
    • Updated docs link by @rizwancordtech in https://github.com/encord-team/encord-client-python/pull/134
    • Cast the AutomationModels backwards compatible definition to a string. by @denis-cord in https://github.com/encord-team/encord-client-python/pull/135
    • Add two new error classes that may come from the api server. by @denis-cord in https://github.com/encord-team/encord-client-python/pull/133
    • Add the GenericServerError for forwards compatibility. by @denis-cord in https://github.com/encord-team/encord-client-python/pull/137
    • DEV-1317 - Fix issues around handling storage location by @denis-cord in https://github.com/encord-team/encord-client-python/pull/139
    • DEV-1329 - Expose the dataset_hash for consistency with project class. by @denis-cord in https://github.com/encord-team/encord-client-python/pull/141
    • DEV-1331 - Add InvalidArgumentError; Improve GenericError by @denis-cord in https://github.com/encord-team/encord-client-python/pull/142
    • DEV-1188 - Add new project and dataset to SDK docs by @denis-cord in https://github.com/encord-team/encord-client-python/pull/136

    New Contributors

    • @frederik-encord made their first contribution in https://github.com/encord-team/encord-client-python/pull/122

    Full Changelog: https://github.com/encord-team/encord-client-python/compare/0.1.36...0.1.37

    Source code(tar.gz)
    Source code(zip)
  • 0.1.23(Jan 10, 2022)

  • 0.1.6(Jul 15, 2021)

Owner
Cord
Create and manage training data with data programming
Cord
wyscoutapi is an extremely basic API client for the Wyscout API (v2 & v3) for Python

wyscoutapi wyscoutapi is an extremely basic API client for the Wyscout API (v2 & v3). Usage Install with pip install wyscoutapi. To connect to the Wys

Ben Torvaney 11 Nov 22, 2022
Beyonic API Python official client library simplified examples using Flask, Django and Fast API.

Beyonic API Python official client library simplified examples using Flask, Django and Fast API.

Harun Mbaabu Mwenda 46 Sep 1, 2022
Python API Client for Twitter API v2

?? Python Client For Twitter API v2 ?? Why Twitter Stream ? Twitter-Stream.py a python API client for Twitter API v2 now supports FilteredStream, Samp

Twitivity 31 Nov 19, 2022
Dns-Client-Server - Dns Client Server For Python

Dns-client-server DNS Server: supporting all types of queries and replies. Shoul

Nishant Badgujar 1 Feb 15, 2022
Raphtory-client - The python client for the Raphtory project

Raphtory Client This is the python client for the Raphtory project Install via p

Raphtory 5 Apr 28, 2022
Drcom-pt-client - Drcom Pt version client with refresh timer

drcom-pt-client Drcom Pt version client with refresh timer Dr.com Pt版本客户端 可用于网页认

null 4 Nov 16, 2022
Official Python client for the MonkeyLearn API. Build and consume machine learning models for language processing from your Python apps.

MonkeyLearn API for Python Official Python client for the MonkeyLearn API. Build and run machine learning models for language processing from your Pyt

MonkeyLearn 157 Nov 22, 2022
🖥️ Python - P1 Monitor API Asynchronous Python Client

??️ Asynchronous Python client for the P1 Monitor

Klaas Schoute 9 Dec 12, 2022
Python API Client for Close

Close API A convenient Python wrapper for the Close API. API docs: http://developer.close.com Support: [email protected] Installation pip install clos

Close 56 Nov 30, 2022
Python client for CoinPayments API

pyCoinPayments - Python API client for CoinPayments Updates This library has now been converted to work with python3 This is an unofficial client for

James 27 Sep 21, 2022
DEPRECATED - Official Python Client for the Discogs API

⚠️ DEPRECATED This repository is no longer maintained. You can still use a REST client like Requests or other third-party Python library to access the

Discogs 483 Dec 31, 2022
The Foursquare API client for Python

foursquare Python client for the foursquare API. Philosophy: Map foursquare's endpoints one-to-one Clean, simple, Pythonic calls Only handle raw data,

Mike Lewis 400 Dec 19, 2022
Python Client for Instagram API

This project is not actively maintained. Proceed at your own risk! python-instagram A Python 2/3 client for the Instagram REST and Search APIs Install

Facebook Archive 2.9k Dec 30, 2022
A Python Client for News API

newsapi-python A Python client for the News API. License Provided under MIT License by Matt Lisivick. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRAN

Matt Lisivick 281 Dec 29, 2022
SmartFile API Client (Python).

A SmartFile Open Source project. Read more about how SmartFile uses and contributes to Open Source software. Summary This library includes two API cli

SmartFile 19 Jan 11, 2022
Python client for the Socrata Open Data API

sodapy sodapy is a python client for the Socrata Open Data API. Installation You can install with pip install sodapy. If you want to install from sour

Cristina 368 Dec 9, 2022
Python client for the Echo Nest API

Pyechonest Tap into The Echo Nest's Musical Brain for the best music search, information, recommendations and remix tools on the web. Pyechonest is an

The Echo Nest 655 Dec 29, 2022
A Python Tumblr API v2 Client

PyTumblr Installation Install via pip: $ pip install pytumblr Install from source: $ git clone https://github.com/tumblr/pytumblr.git $ cd pytumblr $

Tumblr 677 Dec 21, 2022
A super awesome Twitter API client for Python.

birdy birdy is a super awesome Twitter API client for Python in just a little under 400 LOC. TL;DR Features Future proof dynamic API with full REST an

Inueni 259 Dec 28, 2022