{"id":21746787,"url":"https://github.com/norwegian-geotechnical-institute/field-manager-python-client","last_synced_at":"2026-05-20T10:34:42.244Z","repository":{"id":264612471,"uuid":"890866360","full_name":"norwegian-geotechnical-institute/field-manager-python-client","owner":"norwegian-geotechnical-institute","description":"The Field Manager (FM) Python client is a library designed to provide developers with programmatic access to the Field Manager API.","archived":false,"fork":false,"pushed_at":"2025-03-13T13:50:38.000Z","size":1041,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":4,"default_branch":"trunk","last_synced_at":"2025-03-13T14:36:22.010Z","etag":null,"topics":["api","client","field-manager","openapi","python"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/field-manager-python-client/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/norwegian-geotechnical-institute.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-19T10:16:12.000Z","updated_at":"2025-03-13T13:48:38.000Z","dependencies_parsed_at":"2025-01-25T22:35:40.348Z","dependency_job_id":"640d2211-f40f-450f-8e3f-25bae9225b96","html_url":"https://github.com/norwegian-geotechnical-institute/field-manager-python-client","commit_stats":null,"previous_names":["norwegian-geotechnical-institute/field-manager-python-client"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norwegian-geotechnical-institute%2Ffield-manager-python-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norwegian-geotechnical-institute%2Ffield-manager-python-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norwegian-geotechnical-institute%2Ffield-manager-python-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/norwegian-geotechnical-institute%2Ffield-manager-python-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/norwegian-geotechnical-institute","download_url":"https://codeload.github.com/norwegian-geotechnical-institute/field-manager-python-client/tar.gz/refs/heads/trunk","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244722747,"owners_count":20499154,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","client","field-manager","openapi","python"],"created_at":"2024-11-26T08:06:51.318Z","updated_at":"2026-05-20T10:34:42.239Z","avatar_url":"https://github.com/norwegian-geotechnical-institute.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Field Manager Python Client 🚀\n\n**A lightweight, Pythonic library for interacting with the [Field Manager API](https://app.fieldmanager.io/developer) — quickly retrieve project data, manage locations, and automate workflows, all from Python.**\n\n## ✨ Why Use This Client?\n\n- **Easy Integration:** Each endpoint is ready to use—no manual HTTP calls needed.\n- **Seamless Authentication:** Built-in OAuth2/OIDC authentication with automatic token management.\n- **Auto-Generated \u0026 Up-to-Date:** Always in sync with the latest Field Manager API updates.\n- **Full Coverage:** Access every endpoint and model the Field Manager platform provides.\n\n## ⚙️ Installation \u0026 Setup\n\n1. **Install** the package with authentication support:\n\n   ```bash\n   pip install field-manager-python-client python-keycloak\n   ```\n\n2. **Authenticate**: Use the built-in authentication functions for seamless access:\n\n   ```python\n   from field_manager_python_client import get_prod_client\n\n   # Authenticate with your Field Manager account\n   client = get_prod_client(email=\"your.email@example.com\")\n   ```\n\n## 🚀 Quick Example\n\nHere's how to fetch project information using the authenticated client:\n\n```python\nfrom field_manager_python_client import get_prod_client\nfrom field_manager_python_client.api.projects import get_project_projects_project_id_get\n\n# Authenticate and get client\nclient = get_prod_client(email=\"your.email@example.com\")\n\n# Use the client to fetch project data\nproject_id = \"your-project-id\"\nproject_info = get_project_projects_project_id_get.sync(client=client, project_id=project_id)\n\nprint(f\"Project Name: {project_info.name}\")\n```\n\n## 🔐 Authentication Options\n\nThe client supports multiple authentication methods:\n\n1. **Integrated Authentication** (Recommended):\n\n   ```python\n   from field_manager_python_client import authenticate, get_prod_client\n\n   client = authenticate(environment=\"prod\", email=\"user@example.com\")\n   # or\n   client = get_prod_client(email=\"user@example.com\")\n   ```\n\n2. **Manual Token Setup**:\n\n   ```python\n   from field_manager_python_client import AuthenticatedClient\n\n   client = AuthenticatedClient(\n       base_url=\"https://app.fieldmanager.io/api/location\",\n       token=\"your-access-token\"\n   )\n   ```\n\n3. **Service Account Authentication** (for automated workflows):\n   - See the [Authentication Guide](./doc/AUTHENTICATION_GUIDE.md) for details\n   - Also covered in the [Advanced User Guide](./doc/ADVANCED_USER_GUIDE.md)\n\n## 📂 Explore More Examples\n\nCheck out the [examples folder](./examples/examples/) for scripts demonstrating how to:\n\n- **Authentication**: Multiple ways to authenticate with the API\n- **Organizations**: Fetch and manage organization data\n- **Projects**: Retrieve project details and metadata\n- **Locations**: Manage field locations and associated data\n- **Data Export**: Export project data in various formats\n- **Advanced Usage**: Async operations, bulk operations, and more\n\n## 📚 Documentation\n\nFor comprehensive documentation, see the [`./doc/`](./doc/) directory:\n\n- **[Authentication Guide](./doc/AUTHENTICATION_GUIDE.md)**: Complete guide to all authentication methods\n- **[Advanced User Guide](./doc/ADVANCED_USER_GUIDE.md)**: In-depth coverage of sync/async operations and customizations\n- **[Troubleshooting Guide](./doc/TROUBLESHOOTING.md)**: Solutions for common issues, including Windows long path support\n- **[Examples Overview](./examples/EXAMPLES_OVERVIEW.md)**: Detailed overview of all available examples\n\n## 🏗️ For Developers\n\nIf you want to learn more about this library, contribute, or understand the internals, visit the main repository: [https://github.com/norwegian-geotechnical-institute/field-manager-python-client](https://github.com/norwegian-geotechnical-institute/field-manager-python-client)\n\nThe actual client package is auto-generated from the Field Manager API specification and includes:\n\n- Full type hints and IDE support\n- Comprehensive error handling\n- Both synchronous and asynchronous operations\n- Advanced customization options\n\n## 🤝 Contributing\n\nWe welcome issues, bug reports, and feature requests! Please check our [contributing guidelines](./doc/MAINTAINERS_GUIDE.md) and feel free to open an issue or submit a pull request.\n\n---\n\nHave fun building with the Field Manager Python Client! If you have questions or need help, feel free to open an issue. Happy coding! ✨\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnorwegian-geotechnical-institute%2Ffield-manager-python-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnorwegian-geotechnical-institute%2Ffield-manager-python-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnorwegian-geotechnical-institute%2Ffield-manager-python-client/lists"}