Check out v4 of the Fauna CLI

v4 of the Fauna CLI is now in beta.

The new version introduces enhancements to the developer experience, including an improved authentication workflow. To get started, check out the CLI v4 quick start.

collection.createData()

Create a collection document from an object that may contain metadata fields.

Signature

createData(data: { *: Any }) => <Document>

Description

Creates a document in the collection with user-provided document fields.

If the following metadata fields are included, they populate the document data Object field:

  • id

  • ts

  • ttl

  • data.

Otherwise, the data field isn’t instantiated.

Parameters

Parameter Type Required Description

data

Object

Yes

Object containing the document’s fields.

For supported fields in user-defined collections, see Document fields.

To create a document with a user-provided id, you must use an authentication secret with the create_with_id privilege.

Fields with keys that match metadata fields are moved to the data field. See Document fields that populate the data field.

Document fields that populate the data field

Name Type Required Description

ttl

Time

Timestamp indicating when to remove the document. When the document is removed, it ceases to exist.
Default = null Causes the document to persist indefinitely.

id

Number

User-defined document id.

data

Any

The key:value pairs to populate the data field.

Return value

Type Description

Document

New document.

Examples

Create a document with the id and coll metadata fields:

Customer.createData({
  id: 12345,
  coll: "Person",
  name: "John Doe",
  email: "john.doe@example.com",
  address: {
    street: "123 Main St",
    city: "San Francisco",
    state: "CA",
    postalCode: "12345",
    country: "United States"
  }
})
{
  id: "412999820218728960",
  coll: Customer,
  ts: Time("2099-07-30T22:04:39.400Z"),
  cart: null,
  orders: "hdW...",
  name: "John Doe",
  email: "john.doe@example.com",
  address: {
    street: "123 Main St",
    city: "San Francisco",
    state: "CA",
    postalCode: "12345",
    country: "United States"
  },
  data: {
    coll: "Person",
    id: 12345
  }
}

createData() treats any metadata field as a document field and nests it in the document’s data property.

Is this article helpful? 

Tell Fauna how the article can be improved:
Visit Fauna's forums or email docs@fauna.com

Thank you for your feedback!