GoSmarter Logo
GoSmarter API Gateway

Upload a document for AI proposal generation

POST
https://api.gosmarter.ai
/api/company/{companyId}/onboarding/{surface}/documents

Uploads a PDF/image (price list, spec sheet) for the given wizard surface. Requires the onboarding-assistant feature. Counts against the same 20/24h propose rate limit as text/CSV proposals. The uploaded file is deleted automatically after 24 hours.

Upload a document for AI proposal generation › path Parameters

companyId
​string · uuid · required
surface
​string · required

Upload a document for AI proposal generation › Headers

GoSmarter-Api-Key
​string · required

The GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.

Upload a document for AI proposal generation › Request Body

Upload a document for AI proposal generation › Responses

Document accepted, proposal row created at Status=1/4 Uploaded

onboardingProposalId
​integer · int32
onboardingSessionId
​integer · int32
companyId
​string · uuid
surface
​string
sourceType
​string
payloadJson
​string
modelDeployment
​string
promptVersion
​string
status
​string
sourceBlobUri
​string
originalFileName
​string
layoutTextBlobUri
​string
failureReason
​string
createdBy
​string · uuid
createdAt
​string · date-time
updatedAt
​string · date-time

Get the latest onboarding session

GET
https://api.gosmarter.ai
/api/company/{companyId}/onboarding/session

Returns the company's most recent onboarding session with its proposals. 404 when the company has never started onboarding.

Get the latest onboarding session › path Parameters

companyId
​string · uuid · required

Get the latest onboarding session › Headers

GoSmarter-Api-Key
​string · required

The GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.

Get the latest onboarding session › Responses

The latest session


Get or create the onboarding session

POST
https://api.gosmarter.ai
/api/company/{companyId}/onboarding/session

Returns the company's in-progress onboarding session with its proposals, creating one if none exists.

Get or create the onboarding session › path Parameters

companyId
​string · uuid · required

Get or create the onboarding session › Headers

GoSmarter-Api-Key
​string · required

The GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.

Get or create the onboarding session › Responses

The active session


Get trial onboarding checklist progress (Preview)

GET
https://api.gosmarter.ai
/api/company/{companyId}/onboarding/progress

Preview: this operation may change or be removed without a new versioned route or notice period until it is announced as stable (see the API Versioning Policy). Returns six booleans derived from the company's real data: millCertUploaded, inventoryCreated, orderWithLineItemCreated, stockReserved, certificatePackGenerated and hexUsed. Soft-deleted records do not count. Also returns activation timing: companyCreatedAt, firstPackAt and timeToFirstPackSeconds (null until the first certificate pack exists).

Get trial onboarding checklist progress (Preview) › path Parameters

companyId
​string · uuid · required

The unique identifier of the company

Get trial onboarding checklist progress (Preview) › Headers

GoSmarter-Api-Key
​string · required

The GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.

Get trial onboarding checklist progress (Preview) › Responses

The company's checklist progress

millCertUploaded
​boolean

True when the company has at least one active mill certificate.

inventoryCreated
​boolean

True when the company has at least one active inventory item.

orderWithLineItemCreated
​boolean

True when the company has an active order with at least one active line item.

stockReserved
​boolean

True when any inventory is linked (reserved) to an order line item.

certificatePackGenerated
​boolean

True when the company has generated at least one certificate pack.

hexUsed
​boolean

True when an onboarding (Hex) session has a completed step or a Completed/Dismissed status.

companyCreatedAt
​string · date-time

When the company was created (UTC).

firstPackAt
​string · date-time

When the company generated its first certificate pack (UTC); null until one exists.

timeToFirstPackSeconds
​integer · int64

Seconds from company creation to the first certificate pack (never negative); null until a pack exists.


Generate AI configuration proposals

POST
https://api.gosmarter.ai
/api/company/{companyId}/onboarding/propose

Proposes configuration rows for a wizard surface from pasted text or imported rows. Requires the onboarding-assistant feature (Starter plan or higher). Rate limited to 50 calls per company per 24 hours.

Generate AI configuration proposals › path Parameters

companyId
​string · uuid · required

Generate AI configuration proposals › Headers

GoSmarter-Api-Key
​string · required

The GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.

Generate AI configuration proposals › Request Body

surface
​string
sourceType
​string
input
​string
onboardingSessionId
​integer · int32

Generate AI configuration proposals › Responses

Validated proposal rows. For surface=organisations, the shape is ProposeOrganisationsResponse instead (same envelope, different Rows item type).

onboardingProposalId
​integer · int32
truncated
​boolean
promptVersion
​string

Generate a proposal for another surface from an already-uploaded document

POST
https://api.gosmarter.ai
/api/company/{companyId}/onboarding/{surface}/documents/reuse

Reuses the extracted text from a document already uploaded (and scanned) elsewhere in this onboarding session to generate a proposal for a different surface, without re-running malware scanning or Document Intelligence extraction. Counts against the same 20/24h propose rate limit as every other proposal path.

Generate a proposal for another surface from an already-uploaded document › path Parameters

companyId
​string · uuid · required
surface
​string · required

Generate a proposal for another surface from an already-uploaded document › Headers

GoSmarter-Api-Key
​string · required

The GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.

Generate a proposal for another surface from an already-uploaded document › Request Body

sourceProposalId
​integer · int32

Generate a proposal for another surface from an already-uploaded document › Responses

The new proposal, already at a terminal status (Proposed or Failed)

onboardingProposalId
​integer · int32
onboardingSessionId
​integer · int32
companyId
​string · uuid
surface
​string
sourceType
​string
payloadJson
​string
modelDeployment
​string
promptVersion
​string
status
​string
sourceBlobUri
​string
originalFileName
​string
layoutTextBlobUri
​string
failureReason
​string
createdBy
​string · uuid
createdAt
​string · date-time
updatedAt
​string · date-time

Update a proposal's status

PATCH
https://api.gosmarter.ai
/api/company/{companyId}/onboarding/proposal/{proposalId}

Records the admin's decision on an AI proposal: Accepted, Rejected, or Applied.

Update a proposal's status › path Parameters

companyId
​string · uuid · required
proposalId
​integer · int32 · required

Update a proposal's status › Headers

GoSmarter-Api-Key
​string · required

The GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.

Update a proposal's status › Request Body

Update a proposal's status › Responses

Status updated

No data returned

Update the onboarding session

PATCH
https://api.gosmarter.ai
/api/company/{companyId}/onboarding/session/{sessionId}

Sets the session status (Completed/Dismissed) and/or records a completed step.

Update the onboarding session › path Parameters

companyId
​string · uuid · required
sessionId
​integer · int32 · required

Update the onboarding session › Headers

GoSmarter-Api-Key
​string · required

The GoSmarter-Api-Key header is used to authenticate with the API using your API key. Value is of the format YOUR_KEY_HERE.

Update the onboarding session › Request Body

status
​string
completedStep
​string

Update the onboarding session › Responses

Updated session

onboardingSessionId
​integer · int32
companyId
​string · uuid
status
​string
stepsCompleted
​string
createdBy
​string · uuid
createdAt
​string · date-time
updatedAt
​string · date-time