upsert_operating_subject
Create or update one durable company-owned subject, including a person, location, product, offering, customer, vendor, contract, equity award, account, or obligation, then freshly resolve the plan. Use a stable externalKey; store decision facts through record_operating_fact, not opaque attributes. Never fabricate personal, immigration, or credential data. Prerequisite: authenticated active organization access plus every prerequisite stated above. Canonicality: invokes the shared backend action; trust the returned actual_tool_output and context_engineering instead of adding a state-recovery call. Idempotency: obey the tool-specific retry key or guarantee; if none is stated, inspect refreshed state before retrying. Confirmation boundary: no additional confirmation is needed for this read, reversible save, explicit fact/evidence record, link preparation, plan refresh, or action pre-authorized by a standing founder-configured policy.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | active | |
| companyId | No | corply_companies.id. May be omitted only when the active organization has exactly one company. | |
| itemLimit | Yes | Maximum items returned per actionable/blocked/waiting section. | |
| attributes | No | Allowlisted integration linkage only. Citizenship, visa, tax, ID, health, credential, compensation, and other decision data must be typed facts. | |
| displayName | Yes | ||
| externalKey | Yes | Stable caller-controlled identity, e.g. founder:<uuid> or product:billing. | |
| subjectType | Yes | ||
| linkedUserId | No | Owner/operator-only account link for subject-self private access. Omit to preserve; null to unlink. The target must be an active org member. | |
| questionLimit | Yes | Maximum targeted missing-fact questions returned. | |
| _corply_context | No | Echo context_engineering.context_session from the prior Corply result. |