Because Semple modules are dynamically created by users, the SDK expects your JavaScript/TypeScript payloads to match the exact field configurations. When you create or update a record using the fields object, the values you provide must align with the underlying Semple Data Type as defined in the core allocator.

Text Types

Number Types

Boolean & Dates

Advanced Types

Relation & Files

Strict Type Enforcement

If you attempt to pass a string to a number field, or a misformatted date string to a timestamp field, the Semple API (and by extension, the SDK) will reject the mutation with an invalid_argument error.

AI Agent Rules for Types

If you are an AI generating payloads:
  1. Always parse numbers to raw number primitives. Do not send "10".
  2. Ensure timestamp values are formatted correctly using .toISOString().
  3. When populating relation fields, ensure the value is the rec_... ID of the related record, not its name or a nested object.