The server-to-server contract for creating and retrieving GOFA assessments.
UAT base URL: https://www.uat.gofa.app/api/platform/v1
Use API key authentication for every request. All paths
below are relative to this base URL. JSON requests use Content-Type: application/json.
| Method | Path | Purpose |
|---|---|---|
POST | /inquiries | Create one assessment and its first Hosted Flow session. |
GET | /inquiries/{inquiryId} | Retrieve status and a saved result. |
GET | /inquiries | List your enterprise's assessments. |
POST | /inquiries/{inquiryId}/resume | Issue another session for an eligible existing task. |
DELETE | /inquiries/{inquiryId}/sessions/{sessionId} | Revoke access through a particular session. |
Successful responses contain ok: true, data, and requestId. The shape of
data depends on the operation. Creation returns data.inquiry; retrieval returns
the Inquiry directly as data.
Errors contain a machine-readable code:
{
"ok": false,
"error": { "code": "invalid_input" },
"requestId": "example-request-id"
}The same request identifier is returned in X-Request-Id. Include it, the HTTP
status, the operation, and the Inquiry ID when contacting GOFA. Do not include API
keys, launch tokens, photos, or health results in diagnostic logs.
See Errors and limits for retry guidance.
| Field | Type | Meaning |
|---|---|---|
id | string | GOFA-assigned Inquiry UUID. Use it to retrieve the task. |
clientId | string | Enterprise identifier selected by your credential. Read-only. |
environment | string | test for the current UAT integration. |
workflowId | string | vital-scan or ai-nutrition. |
templateVersion | string | GOFA-managed service version. Informational; not a customer-selected template. |
status | string | created, in_progress, completed, failed, or expired. |
source | string | api or dashboard. |
referenceId | string or null | Your optional customer reference. |
createdAt, updatedAt, expiresAt | ISO 8601 string | Creation, latest update, and assessment-access deadline. |
startedAt, completedAt | ISO 8601 string or null | Lifecycle timestamps, when available. |
returnUrl | string or null | Resolved return URL. Included in detail responses. |
input | object or null | Collected Vital Scan information; null for AI Nutrition. Detail only. |
result | object or null | Saved service result. Detail only. |
List responses contain summary fields only: they omit returnUrl, input, and
result. Retrieve an individual Inquiry to read its result.
There is no enterprise endpoint to upload a meal, submit scan metrics, or mark an Inquiry complete. The Hosted Flow performs those steps. This API does not provide webhook delivery; retrieve the task after a browser return or use controlled polling from your backend. A return URL is a browser destination, not a server webhook.