NDEFMessage: NDEFMessage() constructor

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The NDEFMessage() constructor creates a new NDEFMessage object, initialized with the given NDEF records.


new NDEFMessage(records)



An array of objects with the following members:

data Optional

Contains the data to be transmitted; one of a string, n ArrayBuffer, a TypedArray, a DataView, or an array of nested records.

encoding Optional

A string specifying the record's encoding.

id Optional

A developer-defined identifier for the record.

lang Optional

A valid language tag according to RFC 5646: Tags for Identifying Languages (also known as BCP 47).

mediaType Optional

A valid MIME type.


A string indicating the type of data stored in data. It must be one of the following values:


An absolute URL to the data.


An empty NDEFRecord.


A valid MIME type.


A smart poster as defined by the NDEF-SMARTPOSTER specification.


Text as defined by the NDEF-TEXT specification.


The record type is not known.


A URL as defined by the NDEF-URI specification.


# dom-ndefmessage-constructor

Browser compatibility

BCD tables only load in the browser