example.helloworld.v1.HelloWorld
HelloWorld describes a Temporal workflow and activity with the same name
and signature
Input: example.helloworld.v1.HelloWorldInput
Attribute
Type
Description
name
string
json_name: name
go_name: Name
Output: example.helloworld.v1.HelloWorldOutput
Attribute
Type
Description
result
string
json_name: result
go_name: Result
Defaults:
Name Value
id hello_world/${! uuid_v4() }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
HelloWorld describes a Temporal workflow and activity with the same name
and signature
Input: example.helloworld.v1.HelloWorldInput
Attribute
Type
Description
name
string
json_name: name
go_name: Name
Output: example.helloworld.v1.HelloWorldOutput
Attribute
Type
Description
result
string
json_name: result
go_name: Result
Defaults:
Name Value
start_to_close_timeout 10 seconds
example.helloworld.v1.HelloWorldInput
HelloWorldInput describes the input to a HelloWorld task
Attribute
Type
Description
name
string
json_name: name
go_name: Name
example.helloworld.v1.HelloWorldOutput
HelloWorldOutput describes the output from a HelloWorld task
Attribute
Type
Description
result
string
json_name: result
go_name: Result
example.mutex.v1.Example.Mutex
Input: example.mutex.v1.MutexInput
Attribute
Type
Description
resource_id
string
json_name: resourceId
go_name: ResourceId
Defaults:
Name Value
id
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
retry_policy.backoff_coefficient 2
retry_policy.initial_interval 1 second
retry_policy.max_attempts 5
retry_policy.max_interval 1 minute
Signals:
example.mutex.v1.Example.SampleWorkflowWithMutex
Input: example.mutex.v1.SampleWorkflowWithMutexInput
Attribute
Type
Description
resource_id
string
json_name: resourceId
go_name: ResourceId
sleep
google.protobuf.Duration
json_name: sleep
go_name: Sleep
Defaults:
Name Value
id SampleWorkflow1WithMutex_${! uuid_v4() }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
Signals:
example.mutex.v1.Example.AcquireLock
Input: example.mutex.v1.AcquireLockInput
Attribute
Type
Description
timeout
google.protobuf.Duration
json_name: timeout
go_name: Timeout
workflow_id
string
json_name: workflowId
go_name: WorkflowId
example.mutex.v1.Example.LockAcquired
Input: example.mutex.v1.LockAcquiredInput
Attribute
Type
Description
lease_id
string
json_name: leaseId
go_name: LeaseId
example.mutex.v1.Example.ReleaseLock
Input: example.mutex.v1.ReleaseLockInput
Attribute
Type
Description
lease_id
string
json_name: leaseId
go_name: LeaseId
example.mutex.v1.Example.Mutex
Input: example.mutex.v1.MutexInput
Attribute
Type
Description
resource_id
string
json_name: resourceId
go_name: ResourceId
Defaults:
Name Value
start_to_close_timeout 10 seconds
example.mutex.v1.AcquireLockInput
Attribute
Type
Description
timeout
google.protobuf.Duration
json_name: timeout
go_name: Timeout
workflow_id
string
json_name: workflowId
go_name: WorkflowId
example.mutex.v1.LockAcquiredInput
Attribute
Type
Description
lease_id
string
json_name: leaseId
go_name: LeaseId
example.mutex.v1.MutexInput
Attribute
Type
Description
resource_id
string
json_name: resourceId
go_name: ResourceId
example.mutex.v1.ReleaseLockInput
Attribute
Type
Description
lease_id
string
json_name: leaseId
go_name: LeaseId
example.mutex.v1.SampleWorkflowWithMutexInput
Attribute
Type
Description
resource_id
string
json_name: resourceId
go_name: ResourceId
sleep
google.protobuf.Duration
json_name: sleep
go_name: Sleep
example.searchattributes.v1
example.searchattributes.v1.Example
example.searchattributes.v1.Example.SearchAttributes
Input: example.searchattributes.v1.SearchAttributesInput
Attribute
Type
Description
custom_bool_field
bool
json_name: customBoolField
go_name: CustomBoolField
custom_datetime_field
google.protobuf.Timestamp
json_name: customDatetimeField
go_name: CustomDatetimeField
custom_double_field
double
json_name: customDoubleField
go_name: CustomDoubleField
custom_int_field
int64
json_name: customIntField
go_name: CustomIntField
custom_keyword_field
string
json_name: customKeywordField
go_name: CustomKeywordField
custom_text_field
string
json_name: customTextField
go_name: CustomTextField
Defaults:
Name Value
id search_attributes_${! uuid_v4() }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
search_attributes CustomKeywordField = customKeywordField
CustomTextField = customTextField
CustomIntField = customIntField.int64()
CustomDoubleField = customDoubleField
CustomBoolField = customBoolField
CustomDatetimeField = customDatetimeField.ts_parse("2006-01-02T15:04:05Z")
example.searchattributes.v1.SearchAttributesInput
Attribute
Type
Description
custom_bool_field
bool
json_name: customBoolField
go_name: CustomBoolField
custom_datetime_field
google.protobuf.Timestamp
json_name: customDatetimeField
go_name: CustomDatetimeField
custom_double_field
double
json_name: customDoubleField
go_name: CustomDoubleField
custom_int_field
int64
json_name: customIntField
go_name: CustomIntField
custom_keyword_field
string
json_name: customKeywordField
go_name: CustomKeywordField
custom_text_field
string
json_name: customTextField
go_name: CustomTextField
example.updatabletimer.v1
example.updatabletimer.v1.Example
UpdatableTimer describes an updatable timer workflow
Input: example.updatabletimer.v1.UpdatableTimerInput
Attribute
Type
Description
initial_wake_up_time
google.protobuf.Timestamp
json_name: initialWakeUpTime
go_name: InitialWakeUpTime
name
string
json_name: name
go_name: Name
Defaults:
Name Value
id updatable-timer/${! name.or(uuid_v4()) }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
Queries:
Signals:
example.updatabletimer.v1.Example.GetWakeUpTime
GetWakeUpTime retrieves the current timer expiration timestamp
Output: example.updatabletimer.v1.GetWakeUpTimeOutput
example.updatabletimer.v1.Example.UpdateWakeUpTime
UpdateWakeUpTime updates the timer expiration timestamp
Input: example.updatabletimer.v1.UpdateWakeUpTimeInput
example.updatabletimer.v1.GetWakeUpTimeOutput
GetWakeUpTimeOutput describes the input to a GetWakeUpTime query
example.updatabletimer.v1.UpdatableTimerInput
UpdatableTimerInput describes the input to a UpdatableTimer workflow
Attribute
Type
Description
initial_wake_up_time
google.protobuf.Timestamp
json_name: initialWakeUpTime
go_name: InitialWakeUpTime
name
string
json_name: name
go_name: Name
example.updatabletimer.v1.UpdateWakeUpTimeInput
UpdateWakeUpTimeInput describes the input to a UpdateWakeUpTime signal
example.v1.Example.CreateFoo
CreateFoo creates a new foo operation
Input: example.v1.CreateFooRequest
Attribute
Type
Description
name
string
unique foo name
json_name: name
go_name: Name
Output: example.v1.CreateFooResponse
Attribute
Type
Description
foo
example.v1.Foo
json_name: foo
go_name: Foo
Defaults:
Name Value
execution_timeout 1 hour
id create-foo/${! name.slug() }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE
Queries:
Signals:
Updates:
example.v1.Example.GetFooProgress
GetFooProgress returns the status of a CreateFoo operation
Output: example.v1.GetFooProgressResponse
Attribute
Type
Description
progress
float
json_name: progress
go_name: Progress
status
example.v1.Foo.Status
json_name: status
go_name: Status
example.v1.Example.SetFooProgress
SetFooProgress sets the current status of a CreateFoo operation
Input: example.v1.SetFooProgressRequest
Attribute
Type
Description
progress
float
value of current workflow progress
json_name: progress
go_name: Progress
example.v1.Example.UpdateFooProgress
UpdateFooProgress sets the current status of a CreateFoo operation
Input: example.v1.SetFooProgressRequest
Attribute
Type
Description
progress
float
value of current workflow progress
json_name: progress
go_name: Progress
Output: example.v1.GetFooProgressResponse
Attribute
Type
Description
progress
float
json_name: progress
go_name: Progress
status
example.v1.Foo.Status
json_name: status
go_name: Status
example.v1.Example.Notify
Notify sends a notification
Input: example.v1.NotifyRequest
Attribute
Type
Description
message
string
json_name: message
go_name: Message
Defaults:
Name Value
retry_policy.max_attempts 3
start_to_close_timeout 30 seconds
example.v1.CreateFooRequest
CreateFooRequest describes the input to a CreateFoo workflow
Attribute
Type
Description
name
string
unique foo name
json_name: name
go_name: Name
example.v1.CreateFooResponse
SampleWorkflowWithMutexResponse describes the output from a CreateFoo workflow
Attribute
Type
Description
foo
example.v1.Foo
json_name: foo
go_name: Foo
Foo describes an illustrative foo resource
Attribute
Type
Description
name
string
json_name: name
go_name: Name
status
example.v1.Foo.Status
json_name: status
go_name: Status
Value Description
FOO_STATUS_UNSPECIFIED
FOO_STATUS_READY
FOO_STATUS_CREATING
example.v1.GetFooProgressResponse
GetFooProgressResponse describes the output from a GetFooProgress query
Attribute
Type
Description
progress
float
json_name: progress
go_name: Progress
status
example.v1.Foo.Status
json_name: status
go_name: Status
NotifyRequest describes the input to a Notify activity
Attribute
Type
Description
message
string
json_name: message
go_name: Message
example.v1.SetFooProgressRequest
SetFooProgressRequest describes the input to a SetFooProgress signal
Attribute
Type
Description
progress
float
value of current workflow progress
json_name: progress
go_name: Progress
example.xns.v1.Xns.ProvisionFoo
Input: example.xns.v1.ProvisionFooRequest
Attribute
Type
Description
name
string
unique foo name
json_name: name
go_name: Name
Output: example.xns.v1.ProvisionFooResponse
Defaults:
Name Value
id provision-foo/${! name.slug() }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
example.xns.v1.Example.CreateFoo
CreateFoo creates a new foo operation
Input: example.xns.v1.CreateFooRequest
Attribute
Type
Description
name
string
unique foo name
json_name: name
go_name: Name
Output: example.xns.v1.CreateFooResponse
Defaults:
Name Value
execution_timeout 1 hour
id create-foo/${! name.slug() }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE
xns.heartbeat_interval 10 seconds
xns.heartbeat_timeout 20 seconds
xns.start_to_close_timeout 1 hour 30 seconds
Queries:
Signals:
Updates:
example.xns.v1.Example.GetFooProgress
GetFooProgress returns the status of a CreateFoo operation
Output: example.xns.v1.GetFooProgressResponse
Attribute
Type
Description
progress
float
json_name: progress
go_name: Progress
status
example.xns.v1.Foo.Status
json_name: status
go_name: Status
example.xns.v1.Example.SetFooProgress
SetFooProgress sets the current status of a CreateFoo operation
Input: example.xns.v1.SetFooProgressRequest
Attribute
Type
Description
progress
float
value of current workflow progress
json_name: progress
go_name: Progress
example.xns.v1.Example.UpdateFooProgress
UpdateFooProgress sets the current status of a CreateFoo operation
Input: example.xns.v1.SetFooProgressRequest
Attribute
Type
Description
progress
float
value of current workflow progress
json_name: progress
go_name: Progress
Output: example.xns.v1.GetFooProgressResponse
Attribute
Type
Description
progress
float
json_name: progress
go_name: Progress
status
example.xns.v1.Foo.Status
json_name: status
go_name: Status
Defaults:
example.xns.v1.Example.Notify
Notify sends a notification
Input: example.xns.v1.NotifyRequest
Attribute
Type
Description
message
string
json_name: message
go_name: Message
Defaults:
Name Value
retry_policy.max_attempts 3
start_to_close_timeout 30 seconds
example.xns.v1.CreateFooRequest
CreateFooRequest describes the input to a CreateFoo workflow
Attribute
Type
Description
name
string
unique foo name
json_name: name
go_name: Name
example.xns.v1.CreateFooResponse
SampleWorkflowWithMutexResponse describes the output from a CreateFoo workflow
Foo describes an illustrative foo resource
Attribute
Type
Description
name
string
json_name: name
go_name: Name
status
example.xns.v1.Foo.Status
json_name: status
go_name: Status
example.xns.v1.Foo.Status
Value Description
FOO_STATUS_UNSPECIFIED
FOO_STATUS_READY
FOO_STATUS_CREATING
example.xns.v1.GetFooProgressResponse
GetFooProgressResponse describes the output from a GetFooProgress query
Attribute
Type
Description
progress
float
json_name: progress
go_name: Progress
status
example.xns.v1.Foo.Status
json_name: status
go_name: Status
example.xns.v1.NotifyRequest
NotifyRequest describes the input to a Notify activity
Attribute
Type
Description
message
string
json_name: message
go_name: Message
example.xns.v1.ProvisionFooRequest
ProvisionFooRequest describes the input to a ProvisionFoo workflow
Attribute
Type
Description
name
string
unique foo name
json_name: name
go_name: Name
example.xns.v1.ProvisionFooResponse
SampleWorkflowWithMutexResponse describes the output from a ProvisionFoo workflow
example.xns.v1.SetFooProgressRequest
SetFooProgressRequest describes the input to a SetFooProgress signal
Attribute
Type
Description
progress
float
value of current workflow progress
json_name: progress
go_name: Progress
mycompany.simple.SomeWorkflow1
SomeWorkflow1 does some workflow thing.
Input: mycompany.simple.SomeWorkflow1Request
Attribute
Type
Description
id
string
json_name: id
go_name: Id
request_val
string
json_name: requestVal
go_name: RequestVal
Output: mycompany.simple.SomeWorkflow1Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
Defaults:
Name Value
id some-workflow-1/${! id }/${! uuid_v4() }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
Queries:
Signals:
mycompany.simple.SomeWorkflow2
SomeWorkflow2 does some workflow thing.
Defaults:
Name Value
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
Signals:
Updates:
mycompany.simple.Simple.SomeWorkflow3
SomeWorkflow3 does some workflow thing.
Deprecated: Use SomeWorkflow2 instead.
Input: mycompany.simple.SomeWorkflow3Request
Attribute
Type
Description
id
string
json_name: id
go_name: Id
request_val
string
json_name: requestVal
go_name: RequestVal
Defaults:
Name Value
execution_timeout 1 hour
id some-workflow-3/${! id }/${! requestVal }
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE
retry_policy.max_attempts 2
task_queue
Signals:
mycompany.simple.Simple.SomeQuery1
SomeQuery1 queries some thing.
Output: mycompany.simple.SomeQuery1Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
mycompany.simple.Simple.SomeQuery2
SomeQuery2 queries some thing.
Input: mycompany.simple.SomeQuery2Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
Output: mycompany.simple.SomeQuery2Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
mycompany.simple.Simple.SomeSignal1
SomeSignal1 is a signal.
mycompany.simple.Simple.SomeSignal2
SomeSignal2 is a signal.
Input: mycompany.simple.SomeSignal2Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.Simple.SomeSignal3
SomeSignal3 is a signal.
Input: mycompany.simple.SomeSignal3Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.Simple.SomeUpdate1
SomeUpdate1 updates a SomeWorkflow2
Input: mycompany.simple.SomeUpdate1Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
Output: mycompany.simple.SomeUpdate1Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
Defaults:
Name Value
validate true
wait_policy WAIT_POLICY_COMPLETED
mycompany.simple.SomeActivity1
SomeActivity1 does some activity thing.
mycompany.simple.Simple.SomeActivity2
SomeActivity2 does some activity thing.
Input: mycompany.simple.SomeActivity2Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
Defaults:
Name Value
retry_policy.max_interval 30 seconds
start_to_close_timeout 10 seconds
mycompany.simple.Simple.SomeActivity3
SomeActivity3 does some activity thing.
Input: mycompany.simple.SomeActivity3Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
Output: mycompany.simple.SomeActivity3Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
Defaults:
Name Value
retry_policy.max_attempts 5
start_to_close_timeout 10 seconds
task_queue some-other-task-queue
mycompany.simple.Simple.SomeSignal1
SomeSignal1 is a signal.
Defaults:
Name Value
start_to_close_timeout 10 seconds
mycompany.simple.Simple.SomeSignal2
SomeSignal2 is a signal.
Input: mycompany.simple.SomeSignal2Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
Defaults:
Name Value
start_to_close_timeout 10 seconds
mycompany.simple.Simple.SomeSignal3
SomeSignal3 is a signal.
Input: mycompany.simple.SomeSignal3Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
Output: mycompany.simple.SomeSignal3Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
Defaults:
Name Value
start_to_close_timeout 10 seconds
mycompany.simple.Simple.SomeUpdate1
SomeUpdate1 updates a SomeWorkflow2
Input: mycompany.simple.SomeUpdate1Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
Output: mycompany.simple.SomeUpdate1Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
Defaults:
Name Value
start_to_close_timeout 10 seconds
mycompany.simple.Other.OtherWorkflow
Input: mycompany.simple.OtherWorkflowRequest
Attribute
Type
Description
bar
mycompany.simple.OtherWorkflowRequest.Bar
json_name: bar
go_name: Bar
baz
mycompany.simple.OtherWorkflowRequest.Baz
json_name: baz
go_name: Baz
example_bool
bool
json_name: exampleBool
go_name: ExampleBool
example_bytes
bytes
json_name: exampleBytes
go_name: ExampleBytes
example_double
double
json_name: exampleDouble
go_name: ExampleDouble
example_duration
google.protobuf.Duration
json_name: exampleDuration
go_name: ExampleDuration
example_empty
google.protobuf.Empty
json_name: exampleEmpty
go_name: ExampleEmpty
example_enum
mycompany.simple.OtherEnum
json_name: exampleEnum
go_name: ExampleEnum
example_fixed32
fixed32
json_name: exampleFixed32
go_name: ExampleFixed32
example_fixed64
fixed64
json_name: exampleFixed64
go_name: ExampleFixed64
example_float
float
json_name: exampleFloat
go_name: ExampleFloat
example_int32
int32
json_name: exampleInt32
go_name: ExampleInt32
example_int64
int64
json_name: exampleInt64
go_name: ExampleInt64
example_sfixed32
sfixed32
json_name: exampleSfixed32
go_name: ExampleSfixed32
example_sfixed64
sfixed64
json_name: exampleSfixed64
go_name: ExampleSfixed64
example_sint32
sint32
json_name: exampleSint32
go_name: ExampleSint32
example_sint64
sint64
json_name: exampleSint64
go_name: ExampleSint64
example_timestamp
google.protobuf.Timestamp
json_name: exampleTimestamp
go_name: ExampleTimestamp
example_uint32
uint32
json_name: exampleUint32
go_name: ExampleUint32
example_uint64
uint64
json_name: exampleUint64
go_name: ExampleUint64
foo
mycompany.simple.Foo
json_name: foo
go_name: Foo
quux
string
json_name: quux
go_name: Quux
qux
mycompany.simple.Qux
json_name: qux
go_name: Qux
some_val
string
json_name: someVal
go_name: SomeVal
Output: mycompany.simple.OtherWorkflowResponse
Defaults:
Name Value
id other-workflow/${!uuid_v4()}
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
mycompany.simple.Other.OtherQuery
Output: mycompany.simple.OtherQueryResponse
Attribute
Type
Description
filter
string
json_name: filter
go_name: Filter
mycompany.simple.Other.OtherSignal
Input: mycompany.simple.OtherSignalRequest
Attribute
Type
Description
type
string
json_name: type
go_name: Type
mycompany.simple.Other.OtherUpdate
Input: mycompany.simple.OtherUpdateRequest
Attribute
Type
Description
mode
string
json_name: mode
go_name: Mode
Output: mycompany.simple.OtherUpdateResponse
mycompany.simple.Other.OtherWorkflow
Input: mycompany.simple.OtherWorkflowRequest
Attribute
Type
Description
bar
mycompany.simple.OtherWorkflowRequest.Bar
json_name: bar
go_name: Bar
baz
mycompany.simple.OtherWorkflowRequest.Baz
json_name: baz
go_name: Baz
example_bool
bool
json_name: exampleBool
go_name: ExampleBool
example_bytes
bytes
json_name: exampleBytes
go_name: ExampleBytes
example_double
double
json_name: exampleDouble
go_name: ExampleDouble
example_duration
google.protobuf.Duration
json_name: exampleDuration
go_name: ExampleDuration
example_empty
google.protobuf.Empty
json_name: exampleEmpty
go_name: ExampleEmpty
example_enum
mycompany.simple.OtherEnum
json_name: exampleEnum
go_name: ExampleEnum
example_fixed32
fixed32
json_name: exampleFixed32
go_name: ExampleFixed32
example_fixed64
fixed64
json_name: exampleFixed64
go_name: ExampleFixed64
example_float
float
json_name: exampleFloat
go_name: ExampleFloat
example_int32
int32
json_name: exampleInt32
go_name: ExampleInt32
example_int64
int64
json_name: exampleInt64
go_name: ExampleInt64
example_sfixed32
sfixed32
json_name: exampleSfixed32
go_name: ExampleSfixed32
example_sfixed64
sfixed64
json_name: exampleSfixed64
go_name: ExampleSfixed64
example_sint32
sint32
json_name: exampleSint32
go_name: ExampleSint32
example_sint64
sint64
json_name: exampleSint64
go_name: ExampleSint64
example_timestamp
google.protobuf.Timestamp
json_name: exampleTimestamp
go_name: ExampleTimestamp
example_uint32
uint32
json_name: exampleUint32
go_name: ExampleUint32
example_uint64
uint64
json_name: exampleUint64
go_name: ExampleUint64
foo
mycompany.simple.Foo
json_name: foo
go_name: Foo
quux
string
json_name: quux
go_name: Quux
qux
mycompany.simple.Qux
json_name: qux
go_name: Qux
some_val
string
json_name: someVal
go_name: SomeVal
Output: mycompany.simple.OtherWorkflowResponse
Defaults:
Name Value
start_to_close_timeout 30 seconds
mycompany.simple.Ignored.What
Input: mycompany.simple.WhatRequest
Attribute
Type
Description
blah
string
json_name: blah
go_name: Blah
Defaults:
Name Value
id
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
mycompany.simple.OnlyActivities
mycompany.simple.OnlyActivities.LonelyActivity1
Input: mycompany.simple.LonelyActivity1Request
Output: mycompany.simple.LonelyActivity1Response
Defaults:
Name Value
start_to_close_timeout 5 seconds
mycompany.simple.Deprecated
mycompany.simple.Deprecated.SomeDeprecatedWorkflow1
SomeDeprecatedWorkflow1 does something
Input: mycompany.simple.SomeDeprecatedMessage
Output: mycompany.simple.SomeDeprecatedMessage
Defaults:
Name Value
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
Queries:
Signals:
Updates:
mycompany.simple.Deprecated.SomeDeprecatedWorkflow2
SomeDeprecatedWorkflow2 does something else
Deprecated: a custom workflow deprecation message.
Input: mycompany.simple.SomeDeprecatedMessage
Output: mycompany.simple.SomeDeprecatedMessage
Defaults:
Name Value
id_reuse_policy WORKFLOW_ID_REUSE_POLICY_UNSPECIFIED
Queries:
Signals:
Updates:
mycompany.simple.Deprecated.SomeDeprecatedQuery1
SomeDeprecatedQuery1 does something else
Input: mycompany.simple.SomeDeprecatedMessage
Output: mycompany.simple.SomeDeprecatedMessage
mycompany.simple.Deprecated.SomeDeprecatedQuery2
SomeDeprecatedQuery2 does something else
Deprecated: a custom query deprecation message.
Input: mycompany.simple.SomeDeprecatedMessage
Output: mycompany.simple.SomeDeprecatedMessage
mycompany.simple.Deprecated.SomeDeprecatedSignal1
SomeDeprecatedSignal1 does something else
Input: mycompany.simple.SomeDeprecatedMessage
mycompany.simple.Deprecated.SomeDeprecatedSignal2
SomeDeprecatedSignal2 does something else
Deprecated: a custom signal deprecation message.
Input: mycompany.simple.SomeDeprecatedMessage
mycompany.simple.Deprecated.SomeDeprecatedUpdate1
SomeDeprecatedUpdate1 does something else
Input: mycompany.simple.SomeDeprecatedMessage
Output: mycompany.simple.SomeDeprecatedMessage
mycompany.simple.Deprecated.SomeDeprecatedUpdate2
SomeDeprecatedUpdate2 does something else
Deprecated: a custom signal deprecation message.
Input: mycompany.simple.SomeDeprecatedMessage
Output: mycompany.simple.SomeDeprecatedMessage
mycompany.simple.Deprecated.SomeDeprecatedActivity1
SomeDeprecatedActivity1 does something
Input: mycompany.simple.SomeDeprecatedMessage
Output: mycompany.simple.SomeDeprecatedMessage
Defaults:
Name Value
start_to_close_timeout 5 seconds
mycompany.simple.Deprecated.SomeDeprecatedActivity2
SomeDeprecatedActivity2 does something else
Deprecated: a custom activity deprecation message.
Input: mycompany.simple.SomeDeprecatedMessage
Output: mycompany.simple.SomeDeprecatedMessage
Defaults:
Name Value
start_to_close_timeout 5 seconds
Attribute
Type
Description
foo
string
json_name: foo
go_name: Foo
mycompany.simple.LonelyActivity1Request
mycompany.simple.LonelyActivity1Response
mycompany.simple.OtherEnum
Value Description
OTHER_UNSPECIFIED
OTHER_FOO
OTHER_BAR
mycompany.simple.OtherQueryResponse
Attribute
Type
Description
filter
string
json_name: filter
go_name: Filter
mycompany.simple.OtherSignalRequest
Attribute
Type
Description
type
string
json_name: type
go_name: Type
mycompany.simple.OtherUpdateRequest
Attribute
Type
Description
mode
string
json_name: mode
go_name: Mode
mycompany.simple.OtherUpdateResponse
mycompany.simple.OtherWorkflowRequest
Attribute
Type
Description
bar
mycompany.simple.OtherWorkflowRequest.Bar
json_name: bar
go_name: Bar
baz
mycompany.simple.OtherWorkflowRequest.Baz
json_name: baz
go_name: Baz
example_bool
bool
json_name: exampleBool
go_name: ExampleBool
example_bytes
bytes
json_name: exampleBytes
go_name: ExampleBytes
example_double
double
json_name: exampleDouble
go_name: ExampleDouble
example_duration
google.protobuf.Duration
json_name: exampleDuration
go_name: ExampleDuration
example_empty
google.protobuf.Empty
json_name: exampleEmpty
go_name: ExampleEmpty
example_enum
mycompany.simple.OtherEnum
json_name: exampleEnum
go_name: ExampleEnum
example_fixed32
fixed32
json_name: exampleFixed32
go_name: ExampleFixed32
example_fixed64
fixed64
json_name: exampleFixed64
go_name: ExampleFixed64
example_float
float
json_name: exampleFloat
go_name: ExampleFloat
example_int32
int32
json_name: exampleInt32
go_name: ExampleInt32
example_int64
int64
json_name: exampleInt64
go_name: ExampleInt64
example_sfixed32
sfixed32
json_name: exampleSfixed32
go_name: ExampleSfixed32
example_sfixed64
sfixed64
json_name: exampleSfixed64
go_name: ExampleSfixed64
example_sint32
sint32
json_name: exampleSint32
go_name: ExampleSint32
example_sint64
sint64
json_name: exampleSint64
go_name: ExampleSint64
example_timestamp
google.protobuf.Timestamp
json_name: exampleTimestamp
go_name: ExampleTimestamp
example_uint32
uint32
json_name: exampleUint32
go_name: ExampleUint32
example_uint64
uint64
json_name: exampleUint64
go_name: ExampleUint64
foo
mycompany.simple.Foo
json_name: foo
go_name: Foo
quux
string
json_name: quux
go_name: Quux
qux
mycompany.simple.Qux
json_name: qux
go_name: Qux
some_val
string
json_name: someVal
go_name: SomeVal
mycompany.simple.OtherWorkflowRequest.Bar
Attribute
Type
Description
bar
string
json_name: bar
go_name: Bar
mycompany.simple.OtherWorkflowRequest.Baz
Attribute
Type
Description
baz
string
json_name: baz
go_name: Baz
mycompany.simple.OtherWorkflowResponse
Attribute
Type
Description
qux
string
json_name: qux
go_name: Qux
mycompany.simple.SomeActivity2Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.SomeActivity3Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.SomeActivity3Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
mycompany.simple.SomeDeprecatedMessage
mycompany.simple.SomeQuery1Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
mycompany.simple.SomeQuery2Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.SomeQuery2Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
mycompany.simple.SomeSignal2Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.SomeSignal3Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.SomeSignal3Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
mycompany.simple.SomeUpdate1Request
Attribute
Type
Description
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.SomeUpdate1Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
mycompany.simple.SomeWorkflow1Request
Attribute
Type
Description
id
string
json_name: id
go_name: Id
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.SomeWorkflow1Response
Attribute
Type
Description
response_val
string
json_name: responseVal
go_name: ResponseVal
mycompany.simple.SomeWorkflow3Request
Attribute
Type
Description
id
string
json_name: id
go_name: Id
request_val
string
json_name: requestVal
go_name: RequestVal
mycompany.simple.WhatRequest
Attribute
Type
Description
blah
string
json_name: blah
go_name: Blah
A Duration represents a signed, fixed-length span of time represented
as a count of seconds and fractions of seconds at nanosecond
resolution. It is independent of any calendar and concepts like "day"
or "month". It is related to Timestamp in that the difference between
two Timestamp values is a Duration and it can be added or subtracted
from a Timestamp. Range is approximately +-10,000 years.
# Examples
Example 1: Compute Duration from two Timestamps in pseudo code.
Timestamp start = ...;
Timestamp end = ...;
Duration duration = ...;
duration.seconds = end.seconds - start.seconds;
duration.nanos = end.nanos - start.nanos;
if (duration.seconds < 0 && duration.nanos > 0) {
duration.seconds += 1;
duration.nanos -= 1000000000;
} else if (duration.seconds > 0 && duration.nanos < 0) {
duration.seconds -= 1;
duration.nanos += 1000000000;
}
Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
Timestamp start = ...;
Duration duration = ...;
Timestamp end = ...;
end.seconds = start.seconds + duration.seconds;
end.nanos = start.nanos + duration.nanos;
if (end.nanos < 0) {
end.seconds -= 1;
end.nanos += 1000000000;
} else if (end.nanos >= 1000000000) {
end.seconds += 1;
end.nanos -= 1000000000;
}
Example 3: Compute Duration from datetime.timedelta in Python.
td = datetime.timedelta(days=3, minutes=10)
duration = Duration()
duration.FromTimedelta(td)
# JSON Mapping
In JSON format, the Duration type is encoded as a string rather than an
object, where the string ends in the suffix "s" (indicating seconds) and
is preceded by the number of seconds, with nanoseconds expressed as
fractional seconds. For example, 3 seconds with 0 nanoseconds should be
encoded in JSON format as "3s", while 3 seconds and 1 nanosecond should
be expressed in JSON format as "3.000000001s", and 3 seconds and 1
microsecond should be expressed in JSON format as "3.000001s".
Attribute
Type
Description
nanos
int32
Signed fractions of a second at nanosecond resolution of the span
of time. Durations less than one second are represented with a 0
`seconds` field and a positive or negative `nanos` field. For durations
of one second or more, a non-zero value for the `nanos` field must be
of the same sign as the `seconds` field. Must be from -999,999,999
to +999,999,999 inclusive.
json_name: nanos
go_name: Nanos
seconds
int64
Signed seconds of the span of time. Must be from -315,576,000,000
to +315,576,000,000 inclusive. Note: these bounds are computed from:
60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
json_name: seconds
go_name: Seconds
google.protobuf.Timestamp
A Timestamp represents a point in time independent of any time zone or local
calendar, encoded as a count of seconds and fractions of seconds at
nanosecond resolution. The count is relative to an epoch at UTC midnight on
January 1, 1970, in the proleptic Gregorian calendar which extends the
Gregorian calendar backwards to year one.
All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
second table is needed for interpretation, using a [24-hour linear
smear](https://developers.google.com/time/smear).
The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
restricting to that range, we ensure that we can convert to and from [RFC
3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
# Examples
Example 1: Compute Timestamp from POSIX `time()`.
Timestamp timestamp;
timestamp.set_seconds(time(NULL));
timestamp.set_nanos(0);
Example 2: Compute Timestamp from POSIX `gettimeofday()`.
struct timeval tv;
gettimeofday(&tv, NULL);
Timestamp timestamp;
timestamp.set_seconds(tv.tv_sec);
timestamp.set_nanos(tv.tv_usec * 1000);
Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
FILETIME ft;
GetSystemTimeAsFileTime(&ft);
UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime;
// A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z
// is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.
Timestamp timestamp;
timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
long millis = System.currentTimeMillis();
Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)
.setNanos((int) ((millis % 1000) * 1000000)).build();
Example 5: Compute Timestamp from Java `Instant.now()`.
Instant now = Instant.now();
Timestamp timestamp =
Timestamp.newBuilder().setSeconds(now.getEpochSecond())
.setNanos(now.getNano()).build();
Example 6: Compute Timestamp from current time in Python.
timestamp = Timestamp()
timestamp.GetCurrentTime()
# JSON Mapping
In JSON format, the Timestamp type is encoded as a string in the
[RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the
format is "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z"
where {year} is always expressed using four digits while {month}, {day},
{hour}, {min}, and {sec} are zero-padded to two digits each. The fractional
seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),
are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone
is required. A proto3 JSON serializer should always use UTC (as indicated by
"Z") when printing the Timestamp type and a proto3 JSON parser should be
able to accept both UTC and other timezones (as indicated by an offset).
For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past
01:30 UTC on January 15, 2017.
In JavaScript, one can convert a Date object to this format using the
standard
[toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString)
method. In Python, a standard `datetime.datetime` object can be converted
to this format using
[`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with
the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use
the Joda Time's [`ISODateTimeFormat.dateTime()`](
http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()
) to obtain a formatter capable of generating timestamps in this format.
Attribute
Type
Description
nanos
int32
Non-negative fractions of a second at nanosecond resolution. Negative
second values with fractions must still have non-negative nanos values
that count forward in time. Must be from 0 to 999,999,999
inclusive.
json_name: nanos
go_name: Nanos
seconds
int64
Represents seconds of UTC time since Unix epoch
1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
9999-12-31T23:59:59Z inclusive.
json_name: seconds
go_name: Seconds