DateTime

नागरिक समय (या कभी-कभी भौतिक समय) को दर्शाता है.

यह तरीका कई संभावित तरीकों में से किसी एक के समय का प्रतिनिधित्व कर सकता है:

  • जब utcoffset सेट होता है और समय क्षेत्र सेट नहीं होता है: यूटीसी से एक खास ऑफ़सेट के साथ कैलेंडर दिन पर नागरिक समय.
  • जब समय-क्षेत्र सेट है और utcoffset सेट नहीं है: किसी खास समय क्षेत्र में कैलेंडर दिन पर नागरिक समय.
  • जब समय क्षेत्र या utcoffset सेट नहीं है: स्थानीय समय में कैलेंडर दिन पर नागरिक समय.

तारीख, प्रोग्रैटिक ग्रेगोरियन कैलेंडर के हिसाब से होती है.

अगर साल, महीने या दिन 0 हैं, तो तारीख और समय को क्रम में कोई खास साल, महीना या दिन नहीं माना जाता है.

अगर तारीख और समय के सभी फ़ील्ड सेट हैं और time_offset में से किसी एक मामले में वैल्यू सेट है, तो इस टाइप का इस्तेमाल किसी फ़िज़िकल समय को दिखाने के लिए भी किया जा सकता है. इसके बजाय, Timestamp मैसेज का इस्तेमाल करें. अगर आपके इस्तेमाल के उदाहरण में उपयोगकर्ता का समय क्षेत्र भी सेव करना है, तो इसे किसी दूसरे फ़ील्ड में किया जा सकता है.

यह तरीका कुछ ऐप्लिकेशन के सुझावों के मुकाबले ज़्यादा सुविधाजनक है. अपने ऐप्लिकेशन की सीमाओं से जुड़े दस्तावेज़ और पुष्टि ज़रूर करें.

जेएसओएन के काेड में दिखाना
{
  "year": integer,
  "month": integer,
  "day": integer,
  "hours": integer,
  "minutes": integer,
  "seconds": integer,
  "nanos": integer,

  // Union field time_offset can be only one of the following:
  "utcOffset": string,
  "timeZone": {
    object (TimeZone)
  }
  // End of list of possible types for union field time_offset.
}
फ़ील्ड
year

integer

ज़रूरी नहीं. तारीख का साल. बिना तारीख के साल की तारीख बताने के लिए, यह 1 से 9999 के बीच होनी चाहिए.

month

integer

ज़रूरी नहीं. वर्ष का महीना. अगर तारीख के बजाय किसी महीने की जानकारी दी गई हो, तो 1 से 12 से 0 होना चाहिए.

day

integer

ज़रूरी नहीं. महीने का दिन. इसे 1 से 31 के बीच का होना चाहिए. साथ ही, साल और महीने के लिए मान्य होना चाहिए या अगर दिन के बिना तारीख और समय की जानकारी दी गई हो, तो 0 होना चाहिए.

hours

integer

ज़रूरी नहीं. 24 घंटे के प्रारूप में दिन के घंटे. यह 0 से 23 तक होना चाहिए, जो डिफ़ॉल्ट रूप से 0 (मध्यरात्रि) होता है. कारोबार के बंद होने के समय जैसी स्थितियों के लिए, एपीआई "24:00:00" वैल्यू को अनुमति दे सकता है.

minutes

integer

ज़रूरी नहीं. दिन के घंटे. इसे 0 से 59 के बीच होना चाहिए, जो डिफ़ॉल्ट रूप से 0 हो जाता है.

seconds

integer

ज़रूरी नहीं. समय के कुछ सेकंड. यह आम तौर पर 0 से 59 के बीच होना चाहिए, जो डिफ़ॉल्ट रूप से 0 हो जाता है. अगर कोई लीप-सेकंड की अनुमति देता है, तो एपीआई 60 वैल्यू की अनुमति दे सकता है.

nanos

integer

ज़रूरी नहीं. नैनोसेकंड में सेकंड के अंश. इसे 0 से 999,999,999 के बीच डिफ़ॉल्ट रूप से 0 होना चाहिए.

यूनियन फ़ील्ड time_offset. ज़रूरी नहीं. इसमें यूटीसी ऑफ़सेट या तारीख का समय क्षेत्र बताया जाता है. इनके बीच सावधानी से चुनें, क्योंकि आने वाले समय का डेटा बदल सकता है (उदाहरण के लिए, कोई देश अपने डीएसटी शुरू/खत्म होने की तारीख में बदलाव करता है और जिन सीमाओं पर असर हुआ है उनके तारीख समय पहले ही सेव कर लिए गए थे). अगर तारीख नहीं हटाई गई है, तो यह माना जाएगा कि तारीख और समय स्थानीय समय में है. time_offset इनमें से सिर्फ़ एक हो सकता है:
utcOffset

string (Duration format)

UTC ऑफ़सेट. यह -18 घंटे से +18 घंटे के बीच का होना चाहिए. उदाहरण के लिए, -4:00 का यूटीसी ऑफ़सेट { सेकंड: -14400 } के तौर पर दिखाया जाएगा.

's' पर खत्म होने वाले नौ दशमलव अंकों तक की अवधि. उदाहरण: "3.5s".

timeZone

object (TimeZone)

टाइम ज़ोन.

TimeZone

IANA समय क्षेत्र डेटाबेस का समय क्षेत्र दिखाता है.

जेएसओएन के काेड में दिखाना
{
  "id": string,
  "version": string
}
फ़ील्ड
id

string

IANA समय क्षेत्र डेटाबेस समय क्षेत्र, जैसे "अमेरिका/New_York".

version

string

ज़रूरी नहीं. IANA टाइम ज़ोन डेटाबेस वर्शन नंबर, जैसे "2019a".