# IoT Concepts
Based in the "bigdata" paradigm, the OpenGate platform allows collecting non structured information from devices (sensors, machines, etc.) using South API (connectors) using the datastream concept. Next figure shows the main concepts of the IoT API:
Understanding the usage of this API requires understand first the main resources involved. They are:
Device: Represents the physical element (communications devices, concentrators, machines, sensors, etc.) which information is being collected.
Feed: Represents the logical elements (users, multiple instances of the same datastream in a device, etc.) which information is being collected.
Datamodel: It defines all the variables associated to a device or type of entity for its management and monitoring. These variables are defined like datastreams template and they represent the information about an individual "measure" that evolves over time, that is, define the main features of a datastream, see DataStream Template.
To know all the necessary attributes of the datamodel, see Datamodel description.
To know all datastreams that offers the OpenGate platform, see Default Datamodels
To find information about how to provision new datamodels See Datamodels Provision
Datastream (Instance of Datastream): It is the current value of a datastream. Every datastream instance must have a unique (within the device) alphanumeric Identifier. If the name of the datastream instance matches with the datastream template name the instance inherits main features of the datamodel as units, period, tags, etc.
Datapoint: It represents a single value of a datastream at a specific point in time. See datapoint attribute to know all the necessary attributes. The instance of datastream will be a datapoint in the time.
atattribute indicates when the measure was collected.
The set of datapoints is the historical data of the measure