Skip to main content

The module implements functions for working with the API of the Cropwise Operations digital management platform.

Project description

The cropwiseworker module is designed to work with the Cropwise Operations digital agricultural enterprise management platform API. The module allows you to interact with various platform data, facilitating the integration and automation of tasks.

Installing

Install module using pip:

pip install cropwiseworker

Module functions

Mass download of data from the Cropwise Operations account

data_downloader(endpoint, token, params=None, data_format=None, version=None)
  • endpoint (required) – enter your endpoint from Cropwise Operations API documentation (https://cropwiseoperations.docs.apiary.io/)
  • token (required) – enter your TOKEN from Cropwise Operations account
  • params – enter your endpoint parameters using array format (default None)
  • data_format – enter suggested data format (default pd.DataFrame(), also supported 'json')
  • version – enter your Cropwise Operations API version using str data type (default 'v3')

Create a massive dataset with soil test, crop rotation, agro operation and yield data for analysis named Agrimatrix

agrimatrix_dataset(enterprise, token, season)
  • enterprise (required) – enter a name of your enterprise
  • token (required) – enter your TOKEN from Cropwise Operations account
  • season (required) – enter an interested value of season using int data type

Create a kml-file with several orchard rows inside of quarter kml-file

create_orchard_rows(file_path, number_of_rows, start_side='right', crop=None, download_directory=None)
  • file_path (required) – enter a directory of your quarter with row direction line in KML format using str data type. The row direction line should have a name 'row_direction_{quarter name}'
  • number_of_rows (required) – enter the relevant number of orchard rows to create using int data type
  • start_side – select the side from which you want to start numbering rows relative to the direction line (standard = 'right', also could be 'left')
  • crop – enter a name of crop which grows in your quarter using str data type (standard = None)
  • download_directory – enter a directory to download result file using str data type (standard = None)

Get a data with last changed objects within certain period

fetch_changes(endpoint, token, start_date, end_date, step_days=3, output_format='dataframe')
  • endpoint (required) – enter your endpoint from Cropwise Operations API documentation (https://cropwiseoperations.docs.apiary.io/)
  • token (required) – enter your TOKEN from Cropwise Operations account
  • start_date (required) – enter a date which from the data should start downloading in format 'YYYY-MM-DD'
  • end_date (required) – enter a date which till the data should start downloading in format 'YYYY-MM-DD'
  • step_days – enter a number of days between start_date and every next date
  • ** output_format** – enter a format name for output data (standard – pd.DataFrame, also may be 'json')

Workflow examples

import cropwiseworker as cw

token = 'YOUR_TOKEN'

params = {'created_at_gt_eq':'2023-01-01'}

fields = cw.data_downloader('fields', token=token, params=params)
print(fields)

my_2023_analysis = cw.agrimatrix_dataset('YOUR_ENTERPRISE_NAME', token=token, season=2023)
print(my_2023_analysis)

cw.create_orchard_rows('path/to/your/file.kml', 'QuarterName', 50, direction='south_north', 'Apple', 'path/to/download/directory')

field_changes = cw.fetch_changes('fields', token, '2024-01-01', '2024-01-07', step_days=1, output_format='json')
print(field_changes)

License

This package is distributed under the Apache License 2.0.

Changelog

All noticeable changes to this project will be documented in this file.

The format is based on [Keep a Changelog] (https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning] (https://semver.org/spec/v2.0.0.html).

[0.0.7] – 2024-07-25

Changed

– The README.md – The algorithm of function create_orchard_rows() was changed. Added the opportunity to create rows in individual direction using the LineString of row direction in KML-file

[0.0.6] – 2024-07-16

Added

  • Added a new function fetch_changes() for mass loading of changed object from Cropwise Operations.

Changed

– The README.md

Fixed

– The bug with previous version downloading.

[0.0.5] – 2024-07-08

Added

  • Added a new function create_orchard_rows() for geofencing.

[0.0.2] - 2024-04-12

Added

  • The project was created.
  • Added the function data_downloader() for mass loading of data on the Cropwise Operations API.
  • Added the function agrimatrix_datase() for creating an Agrimatrix report.
  • Integration with the external Cropwise Operations API.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cropwiseworker-0.0.7.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cropwiseworker-0.0.7-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file cropwiseworker-0.0.7.tar.gz.

File metadata

  • Download URL: cropwiseworker-0.0.7.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.7

File hashes

Hashes for cropwiseworker-0.0.7.tar.gz
Algorithm Hash digest
SHA256 33e0753513009bedb469cb1d6f33d6dfbc07175e47e49688545c59e3c4a78690
MD5 2b2c93a036ba2df4abebb7da8fcd7472
BLAKE2b-256 121022876cd83332b582ace3c267eb910cb79f82ca8170f4f64807132948b875

See more details on using hashes here.

File details

Details for the file cropwiseworker-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: cropwiseworker-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.7

File hashes

Hashes for cropwiseworker-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 3b28a9d1ef7bd55a6d70235b63701c6ff3ddd89ed0a1c297cd9167ae4cc785ab
MD5 a9f2ad7bfbd412e05520ff5ab631388e
BLAKE2b-256 729631da301230d4492cde83f42044878d05c49ba4087546a5309ee29b96f279

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page