Circle V2 API Docs
    Preparing search index...

    Type Alias FormFillingInput

    type FormFillingInput = {
        config?: FormFillingConfigOverrides;
        context?: FormFillingRunContext;
        fields: FormFieldWorkItem[];
        formPurpose?: string | null;
        includeEmr?: boolean;
        onFieldSettled?: OnFormFieldSettled;
        patientId: PatientId;
        referenceInstant?: Date;
        selectedDocumentIds: string[];
        sessionNotes?: readonly FormFillingSessionNote[];
        treatmentEpisodeId?: TreatmentEpisodeId;
    }
    Index

    Properties

    Pre-resolved setup. A caller batching one run's worklist hoists it ONCE; omitted, the runner resolves it.

    fields: FormFieldWorkItem[]

    The field worklist. Every entry gets exactly one answer back, in this order.

    formPurpose?: string | null

    The form's forms.context — what the form is FOR. Injected into every field's prompt; v1 only injected it on the batched sub-field path, so single fields were answered blind to the form.

    includeEmr?: boolean

    Additionally open the patient's EMR vector namespace to search_chart.

    onFieldSettled?: OnFormFieldSettled

    Called as each field settles, so a batch that overruns or crashes does not discard the siblings it had already produced. A rejecting callback is caught and logged, never propagated.

    patientId: PatientId
    referenceInstant?: Date

    Frozen "now" for date reasoning. Production leaves this unset (wall-clock).

    selectedDocumentIds: string[]

    The run's retrieval bound: the only documents the agent may search or read.

    sessionNotes?: readonly FormFillingSessionNote[]

    Circle session notes the run may quote, rendered by the caller and inlined into every field's prompt. Omitted, none.

    treatmentEpisodeId?: TreatmentEpisodeId

    Scopes patient-context resolution to one episode.