# Data Types

The API can receive requests and return responses comprising of specific data types. For brevity in the rest of the documentation, the details of these data types are recorded in this section:


##### String

A `String` is a variable length UTF-8 encoded string.


##### Time

A `Time` is represented by a [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) compliant `String`:

```
2014-08-05T14:30:00Z
```

This represents Tuesday 5th August 2014 at 2:30PM UTC.

Please be aware that we don't accept values that pass nonzero millisecond values.


##### Date

A `Date` is represented by a [ISO 8601](http://en.wikipedia.org/wiki/ISO_8601) compliant `String` with no time component:

```
2014-08-05
```

This represents Tuesday 5th August 2014.


##### Boolean

A `Boolean` has a value of `true` or `false`.


##### Integer

An `Integer` is a 32-bit signed integer.


##### Float

A `Float` is a 32-bit numeric with a decimal point.


##### Duration

An object that describes a period of time in `hours` and/or `minutes` as `Integer` values.

For example:

```json
{
  "minutes": 90
}
```

```json
{
  "hours": 2
}
```

```json
{
  "hours": 1,
  "minutes": 30
}
```

When `hours` is specified `minutes` must be less than 60.

Note that durations sent from Cronofy in API responses and push notifications will always only have a `minutes` field.


##### Tag

An object that describes a tag.

For example:

```json
{
  "value": "Interview"
}
```



---
[Read in HTML](/developers/api/data-types/)