Show / Hide Table of Contents

Class Documentation

Documentation provides the information for describing a service.

Example: <pre><code>documentation: summary: > The Google Calendar API gives access to most calendar features. pages:

  • name: Overview content: &#40;== include google/foo/overview.md ==&#41;
  • name: Tutorial content: &#40;== include google/foo/tutorial.md ==&#41; subpages;
  • name: Java content: &#40;== include google/foo/tutorial_java.md ==&#41; rules:
  • selector: google.calendar.Calendar.Get description: > ...
  • selector: google.calendar.Calendar.Put description: > ... </code></pre> Documentation is provided in markdown syntax. In addition to standard markdown features, definition lists, tables and fenced code blocks are supported. Section headers can be provided and are interpreted relative to the section nesting of the context where a documentation fragment is embedded.

Documentation from the IDL is merged with documentation defined via the config at normalization time, where documentation provided by config rules overrides IDL provided.

A number of constructs specific to the API platform are supported in documentation text.

In order to reference a proto element, the following notation can be used: <pre><code>&#91;fully.qualified.proto.name]&#91;]</code></pre> To override the display text used for the link, this can be used: <pre><code>&#91;display text]&#91;fully.qualified.proto.name]</code></pre> Text can be excluded from doc using the following notation: <pre><code>&#40;-- internal comment --&#41;</code></pre>

A few directives are available in documentation. Note that directives must appear on a single line to be properly identified. The include directive includes a markdown file from an external source: <pre><code>&#40;== include path/to/file ==&#41;</code></pre> The resource_for directive marks a message to be the resource of a collection in REST view. If it is not specified, tools attempt to infer the resource from the operations in a collection: <pre><code>&#40;== resource_for v1.shelves.books ==&#41;</code></pre> The directive suppress_warning does not directly affect documentation and is documented together with service config validation.

Inheritance
System.Object
Documentation
Implements
IMessage<Documentation>
IMessage
System.IEquatable<Documentation>
IDeepCloneable<Documentation>
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Google.Api
Assembly: Google.Api.CommonProtos.dll
Syntax
public sealed class Documentation : IMessage<Documentation>, IMessage, IEquatable<Documentation>, IDeepCloneable<Documentation>

Constructors

Documentation()

Declaration
public Documentation()

Documentation(Documentation)

Declaration
public Documentation(Documentation other)
Parameters
Type Name Description
Documentation other

Fields

DocumentationRootUrlFieldNumber

Field number for the "documentation_root_url" field.

Declaration
public const int DocumentationRootUrlFieldNumber = 4
Field Value
Type Description
System.Int32

OverviewFieldNumber

Field number for the "overview" field.

Declaration
public const int OverviewFieldNumber = 2
Field Value
Type Description
System.Int32

PagesFieldNumber

Field number for the "pages" field.

Declaration
public const int PagesFieldNumber = 5
Field Value
Type Description
System.Int32

RulesFieldNumber

Field number for the "rules" field.

Declaration
public const int RulesFieldNumber = 3
Field Value
Type Description
System.Int32

SummaryFieldNumber

Field number for the "summary" field.

Declaration
public const int SummaryFieldNumber = 1
Field Value
Type Description
System.Int32

Properties

Descriptor

Declaration
public static MessageDescriptor Descriptor { get; }
Property Value
Type Description
MessageDescriptor

DocumentationRootUrl

The URL to the root of documentation.

Declaration
public string DocumentationRootUrl { get; set; }
Property Value
Type Description
System.String

Overview

Declares a single overview page. For example: <pre><code>documentation: summary: ... overview: &#40;== include overview.md ==&#41; </code></pre> This is a shortcut for the following declaration (using pages style): <pre><code>documentation: summary: ... pages:

  • name: Overview content: &#40;== include overview.md ==&#41; </code></pre> Note: you cannot specify both overview field and pages field.
Declaration
public string Overview { get; set; }
Property Value
Type Description
System.String

Pages

The top level pages for the documentation set.

Declaration
public RepeatedField<Page> Pages { get; }
Property Value
Type Description
RepeatedField<Page>

Parser

Declaration
public static MessageParser<Documentation> Parser { get; }
Property Value
Type Description
MessageParser<Documentation>

Rules

A list of documentation rules that apply to individual API elements.

NOTE: All service configuration rules follow "last one wins" order.

Declaration
public RepeatedField<DocumentationRule> Rules { get; }
Property Value
Type Description
RepeatedField<DocumentationRule>

Summary

A short summary of what the service does. Can only be provided by plain text.

Declaration
public string Summary { get; set; }
Property Value
Type Description
System.String

Methods

CalculateSize()

Declaration
public int CalculateSize()
Returns
Type Description
System.Int32
Implements
IMessage.CalculateSize()

Clone()

Declaration
public Documentation Clone()
Returns
Type Description
Documentation
Implements
IDeepCloneable<T>.Clone()

Equals(Documentation)

Declaration
public bool Equals(Documentation other)
Parameters
Type Name Description
Documentation other
Returns
Type Description
System.Boolean
Implements
System.IEquatable<T>.Equals(T)

Equals(Object)

Declaration
public override bool Equals(object other)
Parameters
Type Name Description
System.Object other
Returns
Type Description
System.Boolean
Overrides
System.Object.Equals(System.Object)

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
System.Int32
Overrides
System.Object.GetHashCode()

MergeFrom(Documentation)

Declaration
public void MergeFrom(Documentation other)
Parameters
Type Name Description
Documentation other
Implements
IMessage<T>.MergeFrom(T)

MergeFrom(CodedInputStream)

Declaration
public void MergeFrom(CodedInputStream input)
Parameters
Type Name Description
CodedInputStream input
Implements
IMessage.MergeFrom(CodedInputStream)

ToString()

Declaration
public override string ToString()
Returns
Type Description
System.String
Overrides
System.Object.ToString()

WriteTo(CodedOutputStream)

Declaration
public void WriteTo(CodedOutputStream output)
Parameters
Type Name Description
CodedOutputStream output
Implements
IMessage.WriteTo(CodedOutputStream)

Explicit Interface Implementations

IMessage.Descriptor

Declaration
MessageDescriptor IMessage.Descriptor { get; }
Returns
Type Description
MessageDescriptor
Implements
IMessage.Descriptor
Back to top