AI-generated Key Takeaways
- 
          A DateRange represents a period of time and is defined by a start date and an end date. 
- 
          Both the start and end dates within a DateRange are inclusive. 
- 
          A Date object can represent a full date, a month and day, a year, or a year and month. 
- 
          When specifying a Date, you can use 0 for year, month, or day depending on what part of the date you want to represent. 
A date range.
| JSON representation | 
|---|
| { "startDate": { object ( | 
| Fields | |
|---|---|
| startDate | 
 The lower bound of the date range, inclusive. Must specify a positive value for  | 
| endDate | 
 The upper bound of the date range, inclusive. Must specify a positive value for  | 
Date
Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following:
- A full date, with non-zero year, month, and day values.
- A month and day, with a zero year (for example, an anniversary).
- A year on its own, with a zero month and a zero day.
- A year and month, with a zero day (for example, a credit card expiration date).
Related types:
- google.type.TimeOfDay
- google.type.DateTime
- google.protobuf.Timestamp
| JSON representation | 
|---|
| { "year": integer, "month": integer, "day": integer } | 
| Fields | |
|---|---|
| year | 
 Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year. | 
| month | 
 Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day. | 
| day | 
 Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. |