# Protocol Documentation ## Table of Contents - [proto/public/analysis.proto](#proto_public_analysis-proto) - [AggregationDescriptor](#are-v1-analysis-AggregationDescriptor) - [CoMetricsVertexDescriptor](#are-v1-analysis-CoMetricsVertexDescriptor) - [CoMetricsVerticesDescriptor](#are-v1-analysis-CoMetricsVerticesDescriptor) - [DistributionCoMetricsDescriptor](#are-v1-analysis-DistributionCoMetricsDescriptor) - [DistributionCoMetricsDescriptorResult](#are-v1-analysis-DistributionCoMetricsDescriptorResult) - [DistributionCoMetricsResult](#are-v1-analysis-DistributionCoMetricsResult) - [DistributionCoMetricsVertexResult](#are-v1-analysis-DistributionCoMetricsVertexResult) - [DistributionMetricsDescriptor](#are-v1-analysis-DistributionMetricsDescriptor) - [DistributionMetricsResult](#are-v1-analysis-DistributionMetricsResult) - [ExceedanceProbability](#are-v1-analysis-ExceedanceProbability) - [ExceedanceProbabilityCurve](#are-v1-analysis-ExceedanceProbabilityCurve) - [ExceedanceProbabilityThreshold](#are-v1-analysis-ExceedanceProbabilityThreshold) - [LedgerExportDescriptor](#are-v1-analysis-LedgerExportDescriptor) - [LedgerExportResult](#are-v1-analysis-LedgerExportResult) - [LedgerSQLQueryDescriptor](#are-v1-analysis-LedgerSQLQueryDescriptor) - [LedgerSQLQueryResult](#are-v1-analysis-LedgerSQLQueryResult) - [ProbabilityWindow](#are-v1-analysis-ProbabilityWindow) - [ProbabilityWindowCoMetrics](#are-v1-analysis-ProbabilityWindowCoMetrics) - [ProbabilityWindowMetrics](#are-v1-analysis-ProbabilityWindowMetrics) - [SQLQuery](#are-v1-analysis-SQLQuery) - [SQLQueryResult](#are-v1-analysis-SQLQueryResult) - [AggregationMethod](#are-v1-analysis-AggregationMethod) - [SQLQuery.ResultFormat](#are-v1-analysis-SQLQuery-ResultFormat) - [proto/public/analysis_api.proto](#proto_public_analysis_api-proto) - [AsyncNetworkAnalysisReply](#are-v1-analysis-AsyncNetworkAnalysisReply) - [AsyncNetworkAnalysisRequest](#are-v1-analysis-AsyncNetworkAnalysisRequest) - [Context](#are-v1-analysis-Context) - [NetworkAnalysisRequest](#are-v1-analysis-NetworkAnalysisRequest) - [NetworkAnalysisStreamHeader](#are-v1-analysis-NetworkAnalysisStreamHeader) - [NetworkAnalysisStreamReply](#are-v1-analysis-NetworkAnalysisStreamReply) - [NetworkAnalysisStreamRequest](#are-v1-analysis-NetworkAnalysisStreamRequest) - [NetworkTerminals](#are-v1-analysis-NetworkTerminals) - [NetworkTerminals.Terminal](#are-v1-analysis-NetworkTerminals-Terminal) - [TerminalAnalysisResult](#are-v1-analysis-TerminalAnalysisResult) - [Analysis](#are-v1-analysis-Analysis) - [proto/public/code.proto](#proto_public_code-proto) - [Code](#google-rpc-Code) - [proto/public/common.proto](#proto_public_common-proto) - [Cell](#are-v1-common-Cell) - [Error](#are-v1-common-Error) - [FileObjectReference](#are-v1-common-FileObjectReference) - [GrapheneError](#are-v1-common-GrapheneError) - [InlineObject](#are-v1-common-InlineObject) - [Status](#are-v1-common-Status) - [StatusDetail](#are-v1-common-StatusDetail) - [TrialRange](#are-v1-common-TrialRange) - [Error.Code](#are-v1-common-Error-Code) - [FileObjectReference.Format](#are-v1-common-FileObjectReference-Format) - [InlineObject.Format](#are-v1-common-InlineObject-Format) - [Status.Code](#are-v1-common-Status-Code) - [proto/public/data_management_api.proto](#proto_public_data_management_api-proto) - [CreateLinkReply](#are-v1-data_management-CreateLinkReply) - [CreateLinkRequest](#are-v1-data_management-CreateLinkRequest) - [CreateNetworkReply](#are-v1-data_management-CreateNetworkReply) - [CreateNetworkRequest](#are-v1-data_management-CreateNetworkRequest) - [CreateNodeReply](#are-v1-data_management-CreateNodeReply) - [CreateNodeRequest](#are-v1-data_management-CreateNodeRequest) - [CreatePropertiesReply](#are-v1-data_management-CreatePropertiesReply) - [CreatePropertiesRequest](#are-v1-data_management-CreatePropertiesRequest) - [DeleteLinkReply](#are-v1-data_management-DeleteLinkReply) - [DeleteLinkRequest](#are-v1-data_management-DeleteLinkRequest) - [DeleteNetworkReply](#are-v1-data_management-DeleteNetworkReply) - [DeleteNetworkRequest](#are-v1-data_management-DeleteNetworkRequest) - [DeleteNodeReply](#are-v1-data_management-DeleteNodeReply) - [DeleteNodeRequest](#are-v1-data_management-DeleteNodeRequest) - [FindNodesAndLinksReply](#are-v1-data_management-FindNodesAndLinksReply) - [InlineLink](#are-v1-data_management-InlineLink) - [InlineNetwork](#are-v1-data_management-InlineNetwork) - [InlineNetworkURI](#are-v1-data_management-InlineNetworkURI) - [InlineNode](#are-v1-data_management-InlineNode) - [LinkQuery](#are-v1-data_management-LinkQuery) - [LinkQueryResult](#are-v1-data_management-LinkQueryResult) - [LinkReference](#are-v1-data_management-LinkReference) - [NetworkDetails](#are-v1-data_management-NetworkDetails) - [NetworkReference](#are-v1-data_management-NetworkReference) - [NodeQuery](#are-v1-data_management-NodeQuery) - [NodeQueryResult](#are-v1-data_management-NodeQueryResult) - [NodeReference](#are-v1-data_management-NodeReference) - [Properties](#are-v1-data_management-Properties) - [PropertiesReference](#are-v1-data_management-PropertiesReference) - [ReadLinkReply](#are-v1-data_management-ReadLinkReply) - [ReadLinkRequest](#are-v1-data_management-ReadLinkRequest) - [ReadNetworkReply](#are-v1-data_management-ReadNetworkReply) - [ReadNetworkRequest](#are-v1-data_management-ReadNetworkRequest) - [ReadNodeReply](#are-v1-data_management-ReadNodeReply) - [ReadNodeRequest](#are-v1-data_management-ReadNodeRequest) - [ReadPropertiesReply](#are-v1-data_management-ReadPropertiesReply) - [ReadPropertiesRequest](#are-v1-data_management-ReadPropertiesRequest) - [TraversalQuery](#are-v1-data_management-TraversalQuery) - [TraversalQuery.Traversal](#are-v1-data_management-TraversalQuery-Traversal) - [TraversalQueryResult](#are-v1-data_management-TraversalQueryResult) - [TraversalQueryResult.Traversal](#are-v1-data_management-TraversalQueryResult-Traversal) - [UpdateLinkReply](#are-v1-data_management-UpdateLinkReply) - [UpdateLinkRequest](#are-v1-data_management-UpdateLinkRequest) - [UpdateNetworkReply](#are-v1-data_management-UpdateNetworkReply) - [UpdateNetworkRequest](#are-v1-data_management-UpdateNetworkRequest) - [UpdateNodeReply](#are-v1-data_management-UpdateNodeReply) - [UpdateNodeRequest](#are-v1-data_management-UpdateNodeRequest) - [Properties.Encoding](#are-v1-data_management-Properties-Encoding) - [DataManagement](#are-v1-data_management-DataManagement) - [proto/public/health.proto](#proto_public_health-proto) - [HealthCheckRequest](#grpc-health-v1-HealthCheckRequest) - [HealthCheckResponse](#grpc-health-v1-HealthCheckResponse) - [HealthCheckResponse.ServingStatus](#grpc-health-v1-HealthCheckResponse-ServingStatus) - [Health](#grpc-health-v1-Health) - [Scalar Value Types](#scalar-value-types)
## proto/public/analysis.proto ### AggregationDescriptor Describes the aggregation of a ledger into one or more distributions. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | aggregation_method | [AggregationMethod](#are-v1-analysis-AggregationMethod) | | The method of aggregation to be used. | | groupby_columns | [string](#string) | repeated | List of column names whose distinct set of values form an aggregation group. If no columns are specified only one aggregation group will be generated. | | currency | [string](#string) | | Optional currency in which to export the values. The values will be translated to this currency using the rate table provided on request if this is specified. | ### CoMetricsVertexDescriptor A companion to the DistributionCoMetricsDescriptor/CoMetricsVerticesDescriptor from the analysis messages that represents a single component metric instead of a list of components The parent request defines the primary index (vertex_index) and this is the associated component for co metrics. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | aggregation | [AggregationDescriptor](#are-v1-analysis-AggregationDescriptor) | | The aggregation descriptor for which the co-metrics will be computed. | | windows | [ProbabilityWindow](#are-v1-analysis-ProbabilityWindow) | repeated | A list of probability windows that co-metrics will be computed for. | | component_index | [uint64](#uint64) | | the financial model vertex index of the component | | injected_component_index | [uint64](#uint64) | | injected vertex index used for oep cometrics | ### CoMetricsVerticesDescriptor A companion to the DistributionCoMetricsDescriptor that can be used in the financial model API because it is free from data management API messages. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | aggregation | [AggregationDescriptor](#are-v1-analysis-AggregationDescriptor) | | The aggregation descriptor for which the co-metrics will be computed. | | windows | [ProbabilityWindow](#are-v1-analysis-ProbabilityWindow) | repeated | A list of probability windows that co-metrics will be computed for. | | component_indices | [uint64](#uint64) | repeated | A list of components for which cometrics are requested | | injected_component_indices | [uint64](#uint64) | repeated | A list of injected components if OEP cometrics were requested | ### DistributionCoMetricsDescriptor Co metrics messages are a bit different from regular metrics since the request can include a collection, whereas the corresponding results may be many-per-descriptor. i.e. one DistributionCoMetricsDescriptor maps to 1 or more DistributionCoMetricsDescriptorResult messages | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | aggregation | [AggregationDescriptor](#are-v1-analysis-AggregationDescriptor) | | The aggregation descriptor for which the co-metrics will be computed. | | windows | [ProbabilityWindow](#are-v1-analysis-ProbabilityWindow) | repeated | A list of probability windows that co-metrics will be computed for. | | components | [are.v1.data_management.NodeReference](#are-v1-data_management-NodeReference) | repeated | A list of component node references | ### DistributionCoMetricsDescriptorResult | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | aggregation | [AggregationDescriptor](#are-v1-analysis-AggregationDescriptor) | | The aggregation descriptor for which the co-metrics were computed. | | windows | [ProbabilityWindow](#are-v1-analysis-ProbabilityWindow) | repeated | A list of probability windows that co-metrics will be computed for. | | component | [are.v1.data_management.NodeReference](#are-v1-data_management-NodeReference) | | A list of component node references | | subcomponent_index | [uint64](#uint64) | | In the case that the component referred to a node that transformed into multiple subnodes, this indicates which of those this result matches; this is analogous to the subterminal_index of the TerminalAnalysisResult | ### DistributionCoMetricsResult The co-metrics result for a single aggregation group and single component. A request returns one of these for each aggregation group and component. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | distribution_cometrics_descriptor | [DistributionCoMetricsDescriptorResult](#are-v1-analysis-DistributionCoMetricsDescriptorResult) | | The distribution metrics descriptor for this result. | | grouping | [are.v1.common.Cell](#are-v1-common-Cell) | repeated | The distinct values of the group-by columns which define an aggregation group. The length and order of this field matches the length and order of the groupby_columns field of the associated AggregationDescriptor. If group-by columns not are specified in `distribution_cometrics_descriptor`'s AggregationDescriptor, the `grouping` list here will be empty to indicates this. If no groupings were found (i.e. the ledger was empty), the `grouping` list will contain only unset (null) `Cell` values. | | window_cometrics | [ProbabilityWindowCoMetrics](#are-v1-analysis-ProbabilityWindowCoMetrics) | repeated | A list of probability window co-metrics, one for each probability window specified. | ### DistributionCoMetricsVertexResult Received by analysis api and mapped back to the node reference within distribution_cometrics_descriptor | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | distribution_cometrics_descriptor | [CoMetricsVertexDescriptor](#are-v1-analysis-CoMetricsVertexDescriptor) | | The distribution metrics descriptor for this result. | | grouping | [are.v1.common.Cell](#are-v1-common-Cell) | repeated | The distinct values of the group-by columns which define an aggregation group. The length and order of this field matches the length and order of the groupby_columns field of the associated AggregationDescriptor. If group-by columns not are specified in `distribution_cometrics_descriptor`'s AggregationDescriptor, the `grouping` list here will be empty to indicates this. If no groupings were found (i.e. the ledger was empty), the `grouping` list will contain only unset (null) `Cell` values. | | window_cometrics | [ProbabilityWindowCoMetrics](#are-v1-analysis-ProbabilityWindowCoMetrics) | repeated | A list of probability window co-metrics, one for each probability window specified. | ### DistributionMetricsDescriptor Describes what metrics are to be computed for each aggregation group. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | aggregation | [AggregationDescriptor](#are-v1-analysis-AggregationDescriptor) | | The aggregation descriptor for which the metrics will be computed. | | windows | [ProbabilityWindow](#are-v1-analysis-ProbabilityWindow) | repeated | A list of probability windows that metrics will be computed for. | | thresholds | [ExceedanceProbabilityThreshold](#are-v1-analysis-ExceedanceProbabilityThreshold) | repeated | A list of exceedance probability thresholds for which probabilities will be computed | | full_curve | [bool](#bool) | | Indicate whether to also compute the full distribution curve. The result is returned as a file object reference. | ### DistributionMetricsResult The metrics result for a single aggregation group. A request returns multiple of those for the same distribution metrics descriptor if there exist multiple groupings. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | distribution_metrics_descriptor | [DistributionMetricsDescriptor](#are-v1-analysis-DistributionMetricsDescriptor) | | The distribution metrics descriptor for this result. | | grouping | [are.v1.common.Cell](#are-v1-common-Cell) | repeated | The distinct values of the group-by columns which define an aggregation group. The length and order of this field matches the length and order of the groupby_columns field of the associated AggregationDescriptor. If group-by columns not are specified in `distribution_metrics_descriptor`'s AggregationDescriptor, the `grouping` list here will be empty to indicates this. If no groupings were found (i.e. the ledger was empty), the `grouping` list will contain only unset (null) `Cell` values. | | window_metrics | [ProbabilityWindowMetrics](#are-v1-analysis-ProbabilityWindowMetrics) | repeated | A list of probability window metrics, one for each probability window specified. | | probabilities | [ExceedanceProbability](#are-v1-analysis-ExceedanceProbability) | repeated | A list of exceedance probabilities. One for each threshold specified. | | curve | [are.v1.common.FileObjectReference](#are-v1-common-FileObjectReference) | | The full distribution curve if requested, represented as file object | ### ExceedanceProbability Contains the probability for a specified exceedance probability threshold. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | threshold | [ExceedanceProbabilityThreshold](#are-v1-analysis-ExceedanceProbabilityThreshold) | | The threshold for which the probability was computed. | | probability | [double](#double) | | The probability value. | ### ExceedanceProbabilityCurve Container message for a full exceedance probability curve. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | values | [ProbabilityWindowMetrics](#are-v1-analysis-ProbabilityWindowMetrics) | repeated | The values of the curve are represented as probability window metrics. | ### ExceedanceProbabilityThreshold Specifies an exceedance probability threshold | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | value | [double](#double) | | The threshold value | | inclusive | [bool](#bool) | | Consider the threshold inclusive to compute probability, otherwise it is considered exclusive. | ### LedgerExportDescriptor Describes which ledger and which columns of the ledger should be exported. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | occurrence_key_column | [string](#string) | | Name of the column that will contain the exported ledger's occurrence key. | | columns | [string](#string) | repeated | Defines which columns should be exported for this ledger. These columns will be in addition to the default columns `Trial`, `Time`, `Type`, and `Value`. | | include_node_paths | [bool](#bool) | | If true, includes the _NodePath column, which contains the names of the labelled nodes each record passed through, in order. | | currency | [string](#string) | | Optional currency in which to export the values. The values will be translated to this currency using the rate table provided on request if this is specified. | | path_override | [string](#string) | | Optional export path override which facilitates constructing custom path structures for partition discovery in tools such as Apache Spark, AWS Athena, etc. This will cause output to be written to exports/custom/ledgers/{path_override}/ rather than the default exports/ledgers/{default_export_sub_path}/ | ### LedgerExportResult The result of a ledger export | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | ledger_export_descriptor | [LedgerExportDescriptor](#are-v1-analysis-LedgerExportDescriptor) | | The ledger export descriptor for which the export was produced. | | file_object_reference | [are.v1.common.FileObjectReference](#are-v1-common-FileObjectReference) | | The reference to the exported ledger object | ### LedgerSQLQueryDescriptor Describes for which ledger the SQL queries should be executed and in what format the results will be returned. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | columns | [string](#string) | repeated | Defines which columns should be included in the table that is being queried. These columns will be in addition to the default columns `Trial`, `Time`, `Type`, and `Value`. | | queries | [SQLQuery](#are-v1-analysis-SQLQuery) | repeated | A list of SQL queries to be executed against the ledger table. | | currency | [string](#string) | | Optional currency in which to export the values. The values will be translated to this currency using the rate table provided on request if this is specified. | ### LedgerSQLQueryResult The result of a SQL query against a ledger. The client will receive as many of these as it had specified SQL queries. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | ledger_sql_query_descriptor | [LedgerSQLQueryDescriptor](#are-v1-analysis-LedgerSQLQueryDescriptor) | | The ledger SQL query descriptor for which the results are provided. | | query_index | [uint64](#uint64) | | The index in the list of SQL queries for which this is the result. | | query_result | [SQLQueryResult](#are-v1-analysis-SQLQueryResult) | | The query result. | ### ProbabilityWindow Defines a window of probabilities that describes a portion of a distribution. In the case that no points in the distribution belong to the window specified, the system assumes the request to refer the point associated with the smallest probability of (at most) the two closest points to the window. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | min_probability | [double](#double) | | The minimum probability is the exclusive boundary of the window. | | max_probability | [double](#double) | | The maximum probability is the inclusive boundary of the window. | ### ProbabilityWindowCoMetrics Contains the co-metrics computed for a specified probability window over a distribution. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | window | [ProbabilityWindow](#are-v1-analysis-ProbabilityWindow) | | The probability window for which the cometrics are provided. | | co_mean | [double](#double) | | The weighted mean / average of values within the window. | | co_max | [double](#double) | | The component's value at the trial of the primary's maximum value within the window. In the case the primary has duplicate losses at the maximum the weighted average of the component losses at the corresponding trials is returned. | | co_min | [double](#double) | | The component's value at the trial of the primary's minimum value within the window. In the case the primary has duplicate losses at the minimum the weighted average of the component losses at the corresponding trials is returned. | | covariance | [double](#double) | | The covariance of the primary and component values within the window | | correlation | [double](#double) | | The correlation of the primary and component values within the window | ### ProbabilityWindowMetrics Contains the metrics computed for a specified probability window over a distribution. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | window | [ProbabilityWindow](#are-v1-analysis-ProbabilityWindow) | | The probability window for which the metrics are provided. | | mean | [double](#double) | | The mean / average of values within the window. | | max | [double](#double) | | The maximum of the values within the window. | | min | [double](#double) | | The minimum of the values within the window. | | standard_deviation | [double](#double) | | The standard deviation of the values within the window. | ### SQLQuery A SQL query and output format descriptor. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | query | [string](#string) | | The SQL query string. The name of the table the query is executed on is "LEDGER". | | format | [SQLQuery.ResultFormat](#are-v1-analysis-SQLQuery-ResultFormat) | | Output format options | | inline | [bool](#bool) | | Inline the query results in the response. | ### SQLQueryResult An SQL query result | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | inline_object | [are.v1.common.InlineObject](#are-v1-common-InlineObject) | | An inline object | | file_object_reference | [are.v1.common.FileObjectReference](#are-v1-common-FileObjectReference) | | An object reference | | query_error | [are.v1.common.Error](#are-v1-common-Error) | | An error message if an error occurred during processing. | ### AggregationMethod Enumeration to indicate the method used to aggregate occurrences within a trial to obtain the trial total. | Name | Number | Description | | ---- | ------ | ----------- | | AEP | 0 | Aggregate Exceedance Probability The sum of all occurrences in a trial. | | OEP | 1 | Occurrence Exceedance Probability The largest of all occurrences in a trial. | ### SQLQuery.ResultFormat The possible SQL query result output formats | Name | Number | Description | | ---- | ------ | ----------- | | PARQUET | 0 | Apache Parquet format is supported only for non-inlined results. | | CSV | 1 | CSV is supported for non-inlined and inlined results. | ## proto/public/analysis_api.proto ### AsyncNetworkAnalysisReply Async analysis reply. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | status | [are.v1.common.Status](#are-v1-common-Status) | | Async analysis request status | | results_uri | [string](#string) | | Async analysis results uri | ### AsyncNetworkAnalysisRequest Equivalent of the NetworkAnalysisStreamRequest, for asynchronous network analysis. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | trial_range | [are.v1.common.TrialRange](#are-v1-common-TrialRange) | | The range of trials over which to perform the analysis. | | network_analysis_requests | [NetworkAnalysisRequest](#are-v1-analysis-NetworkAnalysisRequest) | repeated | The list of NetworkAnalysisRequests. | | rate_table_uri | [string](#string) | | The currency exchange rate table | | result_callback_url | [string](#string) | optional | An optional callback url, will be triggered when asynchronous analysis request is complete. Async service will post a JSON message containing request status and the results location to the url. | | enable_aggregate_merging | [bool](#bool) | optional | Whether to project over distinct node paths travelled | | enable_packed_row_groups | [bool](#bool) | optional | | ### Context Specifies in which context the transformation of the business model should occur as the same business model may be transformed in different ways, by specifying a different context. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | template_search_paths | [string](#string) | repeated | The search path for templates used for transformation. | ### NetworkAnalysisRequest Specifies analysis descriptors that should be applied to the terminals / sinks of business model network that is transformed within the specified context. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [are.v1.data_management.NetworkReference](#are-v1-data_management-NetworkReference) | | A reference to a network to do the analysis on. Only one of reference and query can be provided. | | query | [are.v1.data_management.TraversalQuery](#are-v1-data_management-TraversalQuery) | | A traversal query that obtains the business model network. Only one of reference and query can be provided. | | network_uri | [are.v1.data_management.InlineNetworkURI](#are-v1-data_management-InlineNetworkURI) | | A self-contained network object file. | | context | [Context](#are-v1-analysis-Context) | | The context in which to perform the transformation. | | distribution_metrics | [DistributionMetricsDescriptor](#are-v1-analysis-DistributionMetricsDescriptor) | repeated | The DistributionMetricsDescriptors that should be attached to each of the network's terminal nodes (sinks). | | ledger_exports | [LedgerExportDescriptor](#are-v1-analysis-LedgerExportDescriptor) | repeated | The LedgerExportDescriptor that should be attached to each of the network's terminal nodes (sinks). | | ledger_sql_queries | [LedgerSQLQueryDescriptor](#are-v1-analysis-LedgerSQLQueryDescriptor) | repeated | A list of ledger SQL query descriptors. | | target_nodes | [are.v1.data_management.NodeReference](#are-v1-data_management-NodeReference) | repeated | An optional list of nodes on which the descriptors will apply. If omitted, terminal nodes of the network reference are assumed. Only supported with the use of reference. | | distribution_cometrics | [DistributionCoMetricsDescriptor](#are-v1-analysis-DistributionCoMetricsDescriptor) | repeated | The DistributionCoMetricsDescriptors that should be attached to each of the network's terminal nodes (sinks). | ### NetworkAnalysisStreamHeader The header of the reply stream. If no error occurred, this must be the first message returned by the reply stream. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | network_terminals | [NetworkTerminals](#are-v1-analysis-NetworkTerminals) | repeated | The list of network terminals for each network analysis request. | ### NetworkAnalysisStreamReply A single message of the reply stream. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | header | [NetworkAnalysisStreamHeader](#are-v1-analysis-NetworkAnalysisStreamHeader) | | The header of the streaming reply. Either this or an error must be the first message returned by the stream. | | error | [are.v1.common.Error](#are-v1-common-Error) | | **Deprecated.** No longer used; gRPC raises client-side exceptions when errors occur | | result | [TerminalAnalysisResult](#are-v1-analysis-TerminalAnalysisResult) | | A terminal analysis result. There can be multiple of those per terminal and subterminal. | | status | [are.v1.common.Status](#are-v1-common-Status) | | A status message for delivering information about progress of the request | ### NetworkAnalysisStreamRequest Combines multiple NetworkAnalysisRequests into a single request message in order to perform the analysis for each independent network simultaneously. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | trial_range | [are.v1.common.TrialRange](#are-v1-common-TrialRange) | | The range of trials over which to perform the analysis. | | network_analysis_requests | [NetworkAnalysisRequest](#are-v1-analysis-NetworkAnalysisRequest) | repeated | The list of NetworkAnalysisRequests. | | rate_table_uri | [string](#string) | | The currency exchange rate table | | enable_aggregate_merging | [bool](#bool) | optional | Whether to project over distinct node paths travelled | | enable_packed_row_groups | [bool](#bool) | optional | | ### NetworkTerminals Describes the terminals and subterminals in a network. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | terminals | [NetworkTerminals.Terminal](#are-v1-analysis-NetworkTerminals-Terminal) | repeated | List of all the terminals in a network. | ### NetworkTerminals.Terminal Describes a single terminal and the number of subterminals that terminal created. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | terminal_reference | [are.v1.data_management.NodeReference](#are-v1-data_management-NodeReference) | | Reference to the terminal node. | | subterminal_count | [uint64](#uint64) | | Number of subterminals obtained for this node. TODO: Ultimately, we want to give those subterminals names that are independent of the internals of the transformation that is performed on the network. | ### TerminalAnalysisResult Analysis result for a terminal node or target node. The result is partial if in either of those two cases, subterminals are present. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | network_index | [uint64](#uint64) | | The index of the network for which this is the terminal result. | | terminal_reference | [are.v1.data_management.NodeReference](#are-v1-data_management-NodeReference) | | The reference to the terminal node of the network. | | subterminal_index | [uint64](#uint64) | | The index of the subterminal of this node that produced these analysis results. A subterminal is any sink node in the transformed network that was generated by the transformation of the original terminal node. | | distribution_metrics | [DistributionMetricsResult](#are-v1-analysis-DistributionMetricsResult) | | The metrics result associated with that subterminal. | | ledger_export | [LedgerExportResult](#are-v1-analysis-LedgerExportResult) | | The ledger export result associated with that subterminal. | | ledger_sql_query | [LedgerSQLQueryResult](#are-v1-analysis-LedgerSQLQueryResult) | | The results of the SQL queries executed against ledgers. | | distribution_cometrics | [DistributionCoMetricsResult](#are-v1-analysis-DistributionCoMetricsResult) | | | | trial_range | [are.v1.common.TrialRange](#are-v1-common-TrialRange) | | The trial range (input via request or inferred) over which the analysis was done | ### Analysis | Method Name | Request Type | Response Type | Description | | ----------- | ------------ | ------------- | ------------| | RunAnalysis | [NetworkAnalysisStreamRequest](#are-v1-analysis-NetworkAnalysisStreamRequest) | [NetworkAnalysisStreamReply](#are-v1-analysis-NetworkAnalysisStreamReply) stream | | | StartAsyncAnalysis | [AsyncNetworkAnalysisRequest](#are-v1-analysis-AsyncNetworkAnalysisRequest) | [AsyncNetworkAnalysisReply](#are-v1-analysis-AsyncNetworkAnalysisReply) | | ## proto/public/code.proto ### Code The canonical error codes for gRPC APIs. Sometimes multiple error codes may apply. Services should return the most specific error code that applies. For example, prefer `OUT_OF_RANGE` over `FAILED_PRECONDITION` if both codes apply. Similarly prefer `NOT_FOUND` or `ALREADY_EXISTS` over `FAILED_PRECONDITION`. | Name | Number | Description | | ---- | ------ | ----------- | | OK | 0 | Not an error; returned on success HTTP Mapping: 200 OK | | CANCELLED | 1 | The operation was cancelled, typically by the caller. HTTP Mapping: 499 Client Closed Request | | UNKNOWN | 2 | Unknown error. For example, this error may be returned when a `Status` value received from another address space belongs to an error space that is not known in this address space. Also errors raised by APIs that do not return enough error information may be converted to this error. HTTP Mapping: 500 Internal Server Error | | INVALID_ARGUMENT | 3 | The client specified an invalid argument. Note that this differs from `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments that are problematic regardless of the state of the system (e.g., a malformed file name). HTTP Mapping: 400 Bad Request | | DEADLINE_EXCEEDED | 4 | The deadline expired before the operation could complete. For operations that change the state of the system, this error may be returned even if the operation has completed successfully. For example, a successful response from a server could have been delayed long enough for the deadline to expire. HTTP Mapping: 504 Gateway Timeout | | NOT_FOUND | 5 | Some requested entity (e.g., file or directory) was not found. Note to server developers: if a request is denied for an entire class of users, such as gradual feature rollout or undocumented whitelist, `NOT_FOUND` may be used. If a request is denied for some users within a class of users, such as user-based access control, `PERMISSION_DENIED` must be used. HTTP Mapping: 404 Not Found | | ALREADY_EXISTS | 6 | The entity that a client attempted to create (e.g., file or directory) already exists. HTTP Mapping: 409 Conflict | | PERMISSION_DENIED | 7 | The caller does not have permission to execute the specified operation. `PERMISSION_DENIED` must not be used for rejections caused by exhausting some resource (use `RESOURCE_EXHAUSTED` instead for those errors). `PERMISSION_DENIED` must not be used if the caller can not be identified (use `UNAUTHENTICATED` instead for those errors). This error code does not imply the request is valid or the requested entity exists or satisfies other pre-conditions. HTTP Mapping: 403 Forbidden | | UNAUTHENTICATED | 16 | The request does not have valid authentication credentials for the operation. HTTP Mapping: 401 Unauthorized | | RESOURCE_EXHAUSTED | 8 | Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space. HTTP Mapping: 429 Too Many Requests | | FAILED_PRECONDITION | 9 | The operation was rejected because the system is not in a state required for the operation's execution. For example, the directory to be deleted is non-empty, an rmdir operation is applied to a non-directory, etc. Service implementors can use the following guidelines to decide between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`: (a) Use `UNAVAILABLE` if the client can retry just the failing call. (b) Use `ABORTED` if the client should retry at a higher level (e.g., when a client-specified test-and-set fails, indicating the client should restart a read-modify-write sequence). (c) Use `FAILED_PRECONDITION` if the client should not retry until the system state has been explicitly fixed. E.g., if an "rmdir" fails because the directory is non-empty, `FAILED_PRECONDITION` should be returned since the client should not retry unless the files are deleted from the directory. HTTP Mapping: 400 Bad Request | | ABORTED | 10 | The operation was aborted, typically due to a concurrency issue such as a sequencer check failure or transaction abort. See the guidelines above for deciding between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`. HTTP Mapping: 409 Conflict | | OUT_OF_RANGE | 11 | The operation was attempted past the valid range. E.g., seeking or reading past end-of-file. Unlike `INVALID_ARGUMENT`, this error indicates a problem that may be fixed if the system state changes. For example, a 32-bit file system will generate `INVALID_ARGUMENT` if asked to read at an offset that is not in the range [0,2^32-1], but it will generate `OUT_OF_RANGE` if asked to read from an offset past the current file size. There is a fair bit of overlap between `FAILED_PRECONDITION` and `OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific error) when it applies so that callers who are iterating through a space can easily look for an `OUT_OF_RANGE` error to detect when they are done. HTTP Mapping: 400 Bad Request | | UNIMPLEMENTED | 12 | The operation is not implemented or is not supported/enabled in this service. HTTP Mapping: 501 Not Implemented | | INTERNAL | 13 | Internal errors. This means that some invariants expected by the underlying system have been broken. This error code is reserved for serious errors. HTTP Mapping: 500 Internal Server Error | | UNAVAILABLE | 14 | The service is currently unavailable. This is most likely a transient condition, which can be corrected by retrying with a backoff. Note that it is not always safe to retry non-idempotent operations. See the guidelines above for deciding between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`. HTTP Mapping: 503 Service Unavailable | | DATA_LOSS | 15 | Unrecoverable data loss or corruption. HTTP Mapping: 500 Internal Server Error | ## proto/public/common.proto ### Cell A cell containing a typed value or `null`. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | int_value | [int64](#int64) | | Integer value | | float_value | [double](#double) | | Float value | | string_value | [string](#string) | | String value | ### Error | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | code | [Error.Code](#are-v1-common-Error-Code) | | | | msg | [string](#string) | | | ### FileObjectReference A reference to a file object | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | format | [FileObjectReference.Format](#are-v1-common-FileObjectReference-Format) | | The format in which the file object is encoded. | | uri | [string](#string) | | The URI of the location of the file object. | | is_collection | [bool](#bool) | | Specifies whether the URI refers to a collection of multiple objects that together represent the full object. | | expiration_date | [google.protobuf.Timestamp](#google-protobuf-Timestamp) | | Date/time that the file object will expire at. | ### GrapheneError | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | code | [google.rpc.Code](#google-rpc-Code) | | | | msg | [string](#string) | | | ### InlineObject An inline binary object | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | format | [InlineObject.Format](#are-v1-common-InlineObject-Format) | | The format of the underlying binary object. | | data | [bytes](#bytes) | | The bytestream of the binary object. | ### Status | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | message | [string](#string) | | | | code | [Status.Code](#are-v1-common-Status-Code) | | | | with_warnings | [bool](#bool) | | Set to True for Async analyses that produced warnings | ### StatusDetail | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | errors | [GrapheneError](#are-v1-common-GrapheneError) | repeated | | ### TrialRange Specifies a range of trials over which the analysis should be performed. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | trial_begin | [int32](#int32) | | The first trial of the range. Trial IDs are defined by the user's data and should be consecutive integer values. | | trial_count | [int32](#int32) | | How many consecutive trials starting at `trial_begin` to consider. | ### Error.Code | Name | Number | Description | | ---- | ------ | ----------- | | ERROR_GENERAL | 0 | A user-facing error, most likely caused by malformed input; retrying the request will not likely help | | ERROR_UNHANDLED | 1 | A system error that was unexpected; retrying the request may help | ### FileObjectReference.Format The possible formats in which a file object can be encoded. | Name | Number | Description | | ---- | ------ | ----------- | | PARQUET | 0 | | | CSV | 1 | | ### InlineObject.Format Possible known formats of the encoding of the underlying binary object. | Name | Number | Description | | ---- | ------ | ----------- | | NONE | 0 | | | CSV | 1 | | ### Status.Code | Name | Number | Description | | ---- | ------ | ----------- | | NONE | 0 | | | QUEUED | 1 | | | PROCESSING | 2 | | | COMPLETE | 3 | | | ERROR | 4 | | | WARNING | 5 | | ## proto/public/data_management_api.proto ### CreateLinkReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | | ### CreateLinkRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | source | [NodeReference](#are-v1-data_management-NodeReference) | | | | destination | [NodeReference](#are-v1-data_management-NodeReference) | | | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### CreateNetworkReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NetworkReference](#are-v1-data_management-NetworkReference) | | | ### CreateNetworkRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | link_references | [LinkReference](#are-v1-data_management-LinkReference) | repeated | | | node_references | [NodeReference](#are-v1-data_management-NodeReference) | repeated | | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### CreateNodeReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | | ### CreateNodeRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### CreatePropertiesReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### CreatePropertiesRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | properties | [Properties](#are-v1-data_management-Properties) | | | ### DeleteLinkReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | | ### DeleteLinkRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | | ### DeleteNetworkReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NetworkReference](#are-v1-data_management-NetworkReference) | | | ### DeleteNetworkRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NetworkReference](#are-v1-data_management-NetworkReference) | | | ### DeleteNodeReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | | ### DeleteNodeRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | | ### FindNodesAndLinksReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | node | [ReadNodeReply](#are-v1-data_management-ReadNodeReply) | | | | link | [ReadLinkReply](#are-v1-data_management-ReadLinkReply) | | | ### InlineLink | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | | | source | [NodeReference](#are-v1-data_management-NodeReference) | | | | destination | [NodeReference](#are-v1-data_management-NodeReference) | | | | properties | [Properties](#are-v1-data_management-Properties) | | | ### InlineNetwork | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | nodes | [InlineNode](#are-v1-data_management-InlineNode) | repeated | | | links | [InlineLink](#are-v1-data_management-InlineLink) | repeated | | ### InlineNetworkURI | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | uri | [string](#string) | | | ### InlineNode | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | | | properties | [Properties](#are-v1-data_management-Properties) | | | ### LinkQuery Represents a query for one or more links | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | query | [string](#string) | | The query string. refer to query expressions documentation: https://graphene.analyzere.net/ | ### LinkQueryResult Represents a single LinkQuery result. A LinkQuery may return multiple of these messages. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | A reference to the Link. | | properties | [Properties](#are-v1-data_management-Properties) | | Optionally inlined properties of the result Link. | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### LinkReference Represense a reference to a specific link and revision of that link. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | id | [uint64](#uint64) | | Unique identifier of the link | | revision | [uint64](#uint64) | | Optional revision of the link. If this value is unspecified the reference is implied to refer to the latest revision of the link. | ### NetworkDetails | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NetworkReference](#are-v1-data_management-NetworkReference) | | | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | | deleted | [bool](#bool) | | | ### NetworkReference | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | id | [uint64](#uint64) | | Unique identifier of the network | | revision | [uint64](#uint64) | | Optional revision of the link. If this value is unspecified the reference is implied to refer to the latest revision of the link. | ### NodeQuery Represents a query for one or more nodes | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | query | [string](#string) | | The query string. refer to query expressions documentation: https://graphene.analyzere.net/ | ### NodeQueryResult Represents a single NodeQuery result. Generally, a NodeQuery might match multiple results in which case multiple instances of the NodeQueryResult should be returned. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | The reference to the result Node. | | properties | [Properties](#are-v1-data_management-Properties) | | Optionally inlined properties of the result Node. | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### NodeReference Represents a reference to a specific node and revision of that node. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | id | [uint64](#uint64) | | Unique identifier of the node | | revision | [uint64](#uint64) | | Optional revision of the node. If this value is unspecified the reference is implied to refer to the latest revision of the node. | ### Properties Represents a set of properties. | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | data | [bytes](#bytes) | | properties as a binary string. | | encoding | [Properties.Encoding](#are-v1-data_management-Properties-Encoding) | | | ### PropertiesReference | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | id | [uint64](#uint64) | | | ### ReadLinkReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | | | source | [NodeReference](#are-v1-data_management-NodeReference) | | | | destination | [NodeReference](#are-v1-data_management-NodeReference) | | | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | | deleted | [bool](#bool) | | | ### ReadLinkRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | | ### ReadNetworkReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | network | [NetworkDetails](#are-v1-data_management-NetworkDetails) | | | | node | [ReadNodeReply](#are-v1-data_management-ReadNodeReply) | | | | link | [ReadLinkReply](#are-v1-data_management-ReadLinkReply) | | | ### ReadNetworkRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NetworkReference](#are-v1-data_management-NetworkReference) | | | ### ReadNodeReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | | deleted | [bool](#bool) | | | ### ReadNodeRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | | | with_inlined_properties | [bool](#bool) | | | ### ReadPropertiesReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | properties | [Properties](#are-v1-data_management-Properties) | | | ### ReadPropertiesRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### TraversalQuery Represents a traversal query Example: (type == 'Layer') -- (type == 'Membership') -> (type == 'Portfolio' AND id == 123) | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | source_constraint | [NodeQuery](#are-v1-data_management-NodeQuery) | | | | traversals | [TraversalQuery.Traversal](#are-v1-data_management-TraversalQuery-Traversal) | repeated | | ### TraversalQuery.Traversal | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | link_constraint | [LinkQuery](#are-v1-data_management-LinkQuery) | | | | destination_constraint | [NodeQuery](#are-v1-data_management-NodeQuery) | | | ### TraversalQueryResult Represents a traversal query result Example: [ V(1, rev1) -- E(3, rev3) -> V(2, rev2), V(4, rev19) -- E(10, rev41) -> V(8, rev30) ] | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | source | [NodeQueryResult](#are-v1-data_management-NodeQueryResult) | | | | traversals | [TraversalQueryResult.Traversal](#are-v1-data_management-TraversalQueryResult-Traversal) | repeated | | ### TraversalQueryResult.Traversal | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | link | [LinkQueryResult](#are-v1-data_management-LinkQueryResult) | | | | destination | [NodeQueryResult](#are-v1-data_management-NodeQueryResult) | | | ### UpdateLinkReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | | ### UpdateLinkRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [LinkReference](#are-v1-data_management-LinkReference) | | | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### UpdateNetworkReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NetworkReference](#are-v1-data_management-NetworkReference) | | | ### UpdateNetworkRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NetworkReference](#are-v1-data_management-NetworkReference) | | | | link_references | [LinkReference](#are-v1-data_management-LinkReference) | repeated | | | node_references | [NodeReference](#are-v1-data_management-NodeReference) | repeated | | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### UpdateNodeReply | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | | ### UpdateNodeRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | reference | [NodeReference](#are-v1-data_management-NodeReference) | | | | properties | [Properties](#are-v1-data_management-Properties) | | | | properties_reference | [PropertiesReference](#are-v1-data_management-PropertiesReference) | | | ### Properties.Encoding Available encodings for the properties | Name | Number | Description | | ---- | ------ | ----------- | | JSON | 0 | | ### DataManagement The Data Management Service | Method Name | Request Type | Response Type | Description | | ----------- | ------------ | ------------- | ------------| | CreateProperties | [CreatePropertiesRequest](#are-v1-data_management-CreatePropertiesRequest) | [CreatePropertiesReply](#are-v1-data_management-CreatePropertiesReply) | Create a Properties property set | | ReadProperties | [ReadPropertiesRequest](#are-v1-data_management-ReadPropertiesRequest) | [ReadPropertiesReply](#are-v1-data_management-ReadPropertiesReply) | Retrieve Properties | | CreateNetwork | [CreateNetworkRequest](#are-v1-data_management-CreateNetworkRequest) | [CreateNetworkReply](#are-v1-data_management-CreateNetworkReply) | Create a network | | ReadNetwork | [ReadNetworkRequest](#are-v1-data_management-ReadNetworkRequest) | [ReadNetworkReply](#are-v1-data_management-ReadNetworkReply) stream | Returns properties or links associated with a network | | UpdateNetwork | [UpdateNetworkRequest](#are-v1-data_management-UpdateNetworkRequest) | [UpdateNetworkReply](#are-v1-data_management-UpdateNetworkReply) | Update properties or link list for a network | | DeleteNetwork | [DeleteNetworkRequest](#are-v1-data_management-DeleteNetworkRequest) | [DeleteNetworkReply](#are-v1-data_management-DeleteNetworkReply) | Delete a network | | CreateNode | [CreateNodeRequest](#are-v1-data_management-CreateNodeRequest) | [CreateNodeReply](#are-v1-data_management-CreateNodeReply) | Create a node | | ReadNode | [ReadNodeRequest](#are-v1-data_management-ReadNodeRequest) | [ReadNodeReply](#are-v1-data_management-ReadNodeReply) | Read the properties from a node | | UpdateNode | [UpdateNodeRequest](#are-v1-data_management-UpdateNodeRequest) | [UpdateNodeReply](#are-v1-data_management-UpdateNodeReply) | Update the properties of a node | | DeleteNode | [DeleteNodeRequest](#are-v1-data_management-DeleteNodeRequest) | [DeleteNodeReply](#are-v1-data_management-DeleteNodeReply) | Delete a node | | CreateLink | [CreateLinkRequest](#are-v1-data_management-CreateLinkRequest) | [CreateLinkReply](#are-v1-data_management-CreateLinkReply) | Create a link | | ReadLink | [ReadLinkRequest](#are-v1-data_management-ReadLinkRequest) | [ReadLinkReply](#are-v1-data_management-ReadLinkReply) | Read the properties associated with a link | | UpdateLink | [UpdateLinkRequest](#are-v1-data_management-UpdateLinkRequest) | [UpdateLinkReply](#are-v1-data_management-UpdateLinkReply) | Update a link's properties | | DeleteLink | [DeleteLinkRequest](#are-v1-data_management-DeleteLinkRequest) | [DeleteLinkReply](#are-v1-data_management-DeleteLinkReply) | Delete a link | | FindNodes | [NodeQuery](#are-v1-data_management-NodeQuery) | [NodeQueryResult](#are-v1-data_management-NodeQueryResult) stream | Find one or more nodes given search criteria. Always finds the latest revision of a node. Does not return deleted nodes | | FindLinks | [LinkQuery](#are-v1-data_management-LinkQuery) | [LinkQueryResult](#are-v1-data_management-LinkQueryResult) stream | Find one or more links given search criteria. Always finds the latest revision of a link. Does not return deleted links. May return a link that refers to older versions of nodes, even if the latest versions of those nodes are deleted. | | FindNodesAndLinks | [TraversalQuery](#are-v1-data_management-TraversalQuery) | [FindNodesAndLinksReply](#are-v1-data_management-FindNodesAndLinksReply) stream | Find nodes and links determined by the source nodes consistent with the source_constraint, and with subsequent edge/node constraints subject to traversal_constraints. Returns both nodes and links in no particular order. By default, only the latest revision of any given node or link is considered. All conditions of the traversal constraints must match. Deleted items are not considered matching, hence no nodes or links will match unless all constraints match and no node or link is deleted in the latest revision permitted by the constraints. | ## proto/public/health.proto This file is needed for manual local testing of the Health Check endpoint grpcurl --plaintext -proto proto/public/health.proto localhost:50051 grpc.health.v1.Health/Check ### HealthCheckRequest | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | service | [string](#string) | | | ### HealthCheckResponse | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | | status | [HealthCheckResponse.ServingStatus](#grpc-health-v1-HealthCheckResponse-ServingStatus) | | | ### HealthCheckResponse.ServingStatus | Name | Number | Description | | ---- | ------ | ----------- | | UNKNOWN | 0 | | | SERVING | 1 | | | NOT_SERVING | 2 | | | SERVICE_UNKNOWN | 3 | Used only by the Watch method. | ### Health | Method Name | Request Type | Response Type | Description | | ----------- | ------------ | ------------- | ------------| | Check | [HealthCheckRequest](#grpc-health-v1-HealthCheckRequest) | [HealthCheckResponse](#grpc-health-v1-HealthCheckResponse) | | | Watch | [HealthCheckRequest](#grpc-health-v1-HealthCheckRequest) | [HealthCheckResponse](#grpc-health-v1-HealthCheckResponse) stream | | ## Scalar Value Types | .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby | | ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- | | double | | double | double | float | float64 | double | float | Float | | float | | float | float | float | float32 | float | float | Float | | int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | | int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum | | uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) | | uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) | | sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | | sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum | | fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) | | fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum | | sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | | sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum | | bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | | string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) | | bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |