zitadel/system.proto
This document reflects the state from API 1.0 (available from 20.04.2021)
SystemService
Healthz
rpc Healthz(HealthzRequest) HealthzResponse
Indicates if ZITADEL is running. It respondes as soon as ZITADEL started
GET: /healthz
ListInstances
rpc ListInstances(ListInstancesRequest) ListInstancesResponse
Returns a list of ZITADEL instances
POST: /instances/_search
GetInstance
rpc GetInstance(GetInstanceRequest) GetInstanceResponse
Returns the detail of an instance
GET: /instances/{instance_id}
AddInstance
rpc AddInstance(AddInstanceRequest) AddInstanceResponse
Creates a new instance with all needed setup data This might take some time
POST: /instances
RemoveInstance
rpc RemoveInstance(RemoveInstanceRequest) RemoveInstanceResponse
Removes a instances This might take some time
DELETE: /instances/{instance_id}
ExistsDomain
rpc ExistsDomain(ExistsDomainRequest) ExistsDomainResponse
Checks if a domain exists
POST: /domains/{domain}/_exists
ListDomains
rpc ListDomains(ListDomainsRequest) ListDomainsResponse
Returns the custom domains of an instance
POST: /instances/{instance_id}/domains/_search
AddDomain
rpc AddDomain(AddDomainRequest) AddDomainResponse
Returns the domain of an instance
POST: /instances/{instance_id}/domains
RemoveDomain
rpc RemoveDomain(RemoveDomainRequest) RemoveDomainResponse
Returns the domain of an instance
DELETE: /instances/{instance_id}/domains/{domain}
SetPrimaryDomain
rpc SetPrimaryDomain(SetPrimaryDomainRequest) SetPrimaryDomainResponse
Returns the domain of an instance
POST: /instances/{instance_id}/domains/_set_primary
ListViews
rpc ListViews(ListViewsRequest) ListViewsResponse
Returns all stored read models of ZITADEL views are used for search optimisation and optimise request latencies they represent the delta of the event happend on the objects
POST: /views/_search
ClearView
rpc ClearView(ClearViewRequest) ClearViewResponse
Truncates the delta of the change stream be carefull with this function because ZITADEL has to recompute the deltas after they got cleared. Search requests will return wrong results until all deltas are recomputed
POST: /views/{database}/{view_name}
ListFailedEvents
rpc ListFailedEvents(ListFailedEventsRequest) ListFailedEventsResponse
Returns event descriptions which cannot be processed. It's possible that some events need some retries. For example if the SMTP-API wasn't able to send an email at the first time
POST: /failedevents/_search
RemoveFailedEvent
rpc RemoveFailedEvent(RemoveFailedEventRequest) RemoveFailedEventResponse
Deletes the event from failed events view.
the event is not removed from the change stream
This call is usefull if the system was able to process the event later.
e.g. if the second try of sending an email was successful. the first try produced a
failed event. You can find out if it worked on the failure_count
DELETE: /failedevents/{database}/{view_name}/{failed_sequence}
Messages
AddDomainRequest
Field | Type | Description | Validation |
---|---|---|---|
instance_id | string | - | string.min_len: 1 string.max_len: 200 |
domain | string | - | string.min_len: 1 string.max_len: 200 |
AddDomainResponse
Field | Type | Description | Validation |
---|---|---|---|
details | zitadel.v1.ObjectDetails | - |
AddInstanceRequest
Field | Type | Description | Validation |
---|---|---|---|
instance_name | string | - | string.min_len: 1 string.max_len: 200 |
first_org_name | string | - | string.max_len: 200 |
custom_domain | string | - | string.max_len: 200 |
owner_user_name | string | - | string.max_len: 200 |
owner_email | AddInstanceRequest.Email | - | message.required: true |
owner_profile | AddInstanceRequest.Profile | - | message.required: false |
owner_password | AddInstanceRequest.Password | - | message.required: false |
default_language | string | - | string.max_len: 10 |
AddInstanceRequest.Email
Field | Type | Description | Validation |
---|---|---|---|
string | - | string.min_len: 1 string.max_len: 200 | |
is_email_verified | bool | - |
AddInstanceRequest.Password
Field | Type | Description | Validation |
---|---|---|---|
password | string | - | string.max_len: 200 |
password_change_required | bool | - |
AddInstanceRequest.Profile
Field | Type | Description | Validation |
---|---|---|---|
first_name | string | - | string.max_len: 200 |
last_name | string | - | string.max_len: 200 |
preferred_language | string | - | string.max_len: 10 |
AddInstanceResponse
Field | Type | Description | Validation |
---|---|---|---|
instance_id | string | - | |
details | zitadel.v1.ObjectDetails | - |
ChangeSubscriptionRequest
Field | Type | Description | Validation |
---|---|---|---|
domain | string | - | string.min_len: 1 string.max_len: 200 |
subscription_name | string | - | string.min_len: 1 string.max_len: 200 |
request_limit | uint64 | - | |
action_mins_limit | uint64 | - |
ChangeSubscriptionResponse
Field | Type | Description | Validation |
---|---|---|---|
details | zitadel.v1.ObjectDetails | - |
ClearViewRequest
Field | Type | Description | Validation |
---|---|---|---|
database | string | - | string.min_len: 1 string.max_len: 200 |
view_name | string | - | string.min_len: 1 string.max_len: 200 |
ClearViewResponse
This is an empty response
ExistsDomainRequest
Field | Type | Description | Validation |
---|---|---|---|
domain | string | - | string.min_len: 1 string.max_len: 200 |
ExistsDomainResponse
Field | Type | Description | Validation |
---|---|---|---|
exists | bool | - |
FailedEvent
Field | Type | Description | Validation |
---|---|---|---|
database | string | - | |
view_name | string | - | |
failed_sequence | uint64 | - | |
failure_count | uint64 | - | |
error_message | string | - |
GetInstanceRequest
Field | Type | Description | Validation |
---|---|---|---|
instance_id | string | - | string.min_len: 1 string.max_len: 200 |
GetInstanceResponse
Field | Type | Description | Validation |
---|---|---|---|
instance | zitadel.instance.v1.InstanceDetail | - |
GetUsageRequest
Field | Type | Description | Validation |
---|---|---|---|
instance_id | string | - | string.min_len: 1 string.max_len: 200 |
GetUsageResponse
Field | Type | Description | Validation |
---|---|---|---|
details | zitadel.v1.ObjectDetails | - | |
executed_requests | uint64 | - | |
executed_action_mins | uint64 | - |
HealthzRequest
This is an empty request
HealthzResponse
This is an empty response
ListDomainsRequest
Field | Type | Description | Validation |
---|---|---|---|
instance_id | string | list limitations and ordering | string.min_len: 1 string.max_len: 200 |
query | zitadel.v1.ListQuery | - | |
sorting_column | zitadel.instance.v1.DomainFieldName | the field the result is sorted | |
queries | repeated zitadel.instance.v1.DomainSearchQuery | criterias the client is looking for |
ListDomainsResponse
Field | Type | Description | Validation |
---|---|---|---|
details | zitadel.v1.ListDetails | - | |
sorting_column | zitadel.instance.v1.DomainFieldName | - | |
result | repeated zitadel.instance.v1.Domain | - |
ListFailedEventsRequest
This is an empty request
ListFailedEventsResponse
Field | Type | Description | Validation |
---|---|---|---|
result | repeated FailedEvent | TODO: list details |
ListInstancesRequest
Field | Type | Description | Validation |
---|---|---|---|
query | zitadel.v1.ListQuery | list limitations and ordering | |
sorting_column | zitadel.instance.v1.FieldName | the field the result is sorted | |
queries | repeated zitadel.instance.v1.Query | criterias the client is looking for |
ListInstancesResponse
Field | Type | Description | Validation |
---|---|---|---|
details | zitadel.v1.ListDetails | - | |
sorting_column | zitadel.instance.v1.FieldName | - | |
result | repeated zitadel.instance.v1.Instance | - |
ListViewsRequest
This is an empty request
ListViewsResponse
Field | Type | Description | Validation |
---|---|---|---|
result | repeated View | TODO: list details |
RemoveDomainRequest
Field | Type | Description | Validation |
---|---|---|---|
instance_id | string | - | string.min_len: 1 string.max_len: 200 |
domain | string | - | string.min_len: 1 string.max_len: 200 |
RemoveDomainResponse
Field | Type | Description | Validation |
---|---|---|---|
details | zitadel.v1.ObjectDetails | - |
RemoveFailedEventRequest
Field | Type | Description | Validation |
---|---|---|---|
database | string | - | string.min_len: 1 string.max_len: 200 |
view_name | string | - | string.min_len: 1 string.max_len: 200 |
failed_sequence | uint64 | - |
RemoveFailedEventResponse
This is an empty response
RemoveInstanceRequest
Field | Type | Description | Validation |
---|---|---|---|
instance_id | string | - | string.min_len: 1 string.max_len: 200 |
RemoveInstanceResponse
Field | Type | Description | Validation |
---|---|---|---|
details | zitadel.v1.ObjectDetails | - |
SetPrimaryDomainRequest
Field | Type | Description | Validation |
---|---|---|---|
instance_id | string | - | string.min_len: 1 string.max_len: 200 |
domain | string | - | string.min_len: 1 string.max_len: 200 |
SetPrimaryDomainResponse
Field | Type | Description | Validation |
---|---|---|---|
details | zitadel.v1.ObjectDetails | - |
View
Field | Type | Description | Validation |
---|---|---|---|
database | string | - | |
view_name | string | - | |
processed_sequence | uint64 | - | |
event_timestamp | google.protobuf.Timestamp | The timestamp the event occured | |
last_successful_spooler_run | google.protobuf.Timestamp | - | |
instance | string | - |