Add external import sources, work history, screening fields and Phase 1 docs
- New ExternalImportSource and ExternalWorkHistoryEntry models, controller and migrations - Screening fields on external profile imports - Admin and provider profile views, routes and workflow tests updated - Phase 1 validation, route inventory, gap report template and roadmap docs - Add the Google Sheets work-order parser tool (tools/google-sheets-wo-parser)
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
# Field Nation Access Research
|
||||
|
||||
Date: 2026-07-18
|
||||
|
||||
This note records the current import access decision for Provider Exchange / Technical Services Exchange.
|
||||
|
||||
## Finding
|
||||
|
||||
Field Nation has an official developer platform with REST APIs, webhooks, and connectors. The public developer documentation describes the API as a Client API for integrating systems with the Field Nation marketplace and automating work-order lifecycle operations.
|
||||
|
||||
The documented prerequisites for the quick-start flow include:
|
||||
|
||||
- active buyer account;
|
||||
- integration contract in place;
|
||||
- sandbox credentials;
|
||||
- development environment;
|
||||
- company ID.
|
||||
|
||||
The quick-start authentication flow uses OAuth credentials issued during onboarding, not a self-service provider profile export token. The REST documentation describes production and sandbox base URLs and says the API supports direct marketplace integration. The quick-start example focuses on creating work orders and integration workflows.
|
||||
|
||||
## Practical Decision
|
||||
|
||||
For urgent provider-history import, do not wait on API credentials.
|
||||
|
||||
Use provider-owned source material first:
|
||||
|
||||
- Field Nation profile print/PDF;
|
||||
- screenshots;
|
||||
- copied profile text;
|
||||
- copied reviews/work-summary text;
|
||||
- CSV/PDF/export if Field Nation exposes one in the logged-in account;
|
||||
- email or report exports if available.
|
||||
|
||||
The app now supports private source-batch upload and first-pass parsing for text-like source material. This lets us test import quickly without storing Field Nation credentials or automating logged-in scraping.
|
||||
|
||||
## API Path
|
||||
|
||||
Keep an API path open only if Field Nation grants suitable credentials and confirms access is appropriate for provider-owned profile/history data.
|
||||
|
||||
Before implementing API import, verify:
|
||||
|
||||
- whether credentials can be issued for a provider account or only buyer/client integrations;
|
||||
- whether endpoints expose provider profile ratings, review history, completed job counts, and work summaries for the authenticated provider;
|
||||
- whether production API access requires a contract or implementation team approval;
|
||||
- whether export of provider-owned data is allowed by Field Nation terms and privacy rules;
|
||||
- rate limits and audit requirements.
|
||||
|
||||
## Logged-In Window Path
|
||||
|
||||
If no provider API is available, a logged-in browser window can be used manually to collect provider-owned source material:
|
||||
|
||||
1. Open Field Nation while logged in.
|
||||
2. Navigate to the provider profile/history/reviews/work summary screens.
|
||||
3. Print to PDF, download available exports, or copy visible profile text.
|
||||
4. Upload the files/text through the private import source vault.
|
||||
5. Parse text-like sources locally.
|
||||
6. Review and redact before approving an imported-history summary.
|
||||
|
||||
Avoid automated credential capture or blind scraping. If browser automation is later used, keep it limited to user-directed export/download actions in an already logged-in session.
|
||||
|
||||
## 2026-07-18 Profile Capture Test
|
||||
|
||||
Provider profile `https://app.fieldnation.com/p/172630` was captured from a user-opened, logged-in Chrome tab.
|
||||
|
||||
Captured private source material is stored locally under `storage/app/private/fieldnation-capture/` and includes:
|
||||
|
||||
- profile visible text, DOM snapshot, structured attribute extraction, and screenshots;
|
||||
- expanded skillset/equipment text;
|
||||
- availability screenshot/text;
|
||||
- recommendations tab screenshot/text;
|
||||
- full work-history table export across 28 paginated pages.
|
||||
|
||||
The logged-in work-history popup `https://app.fieldnation.com/profile/popup/workhistory/172630` exposed a paginated table with `961` unique job rows. The consolidated private CSV is stored at `storage/app/private/fieldnation-capture/fieldnation-profile-172630-work-history-all-pages.csv`.
|
||||
|
||||
The profile source was imported into the local app as a private parsed source batch for seeded provider profile `1`. The parsed import summary captured:
|
||||
|
||||
- Field Nation ID `172630`;
|
||||
- rating `4.9`;
|
||||
- rating count `421`;
|
||||
- completed jobs `961`;
|
||||
- clients `201`;
|
||||
- timeliness score `100%`;
|
||||
- backout score `0%`;
|
||||
- background check passed `Jan 2020` and drug test passed `Feb 2026` in the private source notes.
|
||||
|
||||
The full job-history CSV is attached as private proof. A row-level external work-history table now stores the captured `961` Field Nation jobs for provider/admin review and redacted public samples when the imported summary visibility allows it.
|
||||
|
||||
## Public Access Check
|
||||
|
||||
A no-cookie request to `https://app.fieldnation.com/p/172630` returned HTTP `303` to Field Nation's identity login flow. Search checks for the provider ID did not surface a public indexed profile page. Current evidence indicates the profile and work-history surfaces require a logged-in Field Nation session unless Field Nation grants API access.
|
||||
|
||||
## Sources
|
||||
|
||||
- Field Nation developer portal: `https://developer.fieldnation.com/`
|
||||
- Field Nation quick start: `https://developer.fieldnation.com/docs/getting-started/quick-start/`
|
||||
- Field Nation REST API introduction: `https://developer.fieldnation.com/docs/rest-api/introduction/`
|
||||
- Field Nation webhooks API overview: `https://developer.fieldnation.com/docs/webhooks/api-reference/overview/`
|
||||
Reference in New Issue
Block a user