Class ApiSpec
Describes a version of an API in a structured way. ApiSpecs provide formal descriptions that consumers can use to use a version. ApiSpec resources are intended to be fully-resolved descriptions of an ApiVersion. When specs consist of multiple files, these should be bundled together (e.g., in a zip archive) and stored as a unit. Multiple specs can exist to provide representations in different API description formats. Synchronization of these representations would be provided by tooling and background services.
Implements
Inherited Members
Namespace: Google.Apis.ApigeeRegistry.v1.Data
Assembly: Google.Apis.ApigeeRegistry.v1.dll
Syntax
public class ApiSpec : IDirectResponseSchema
Properties
Annotations
Annotations attach non-identifying metadata to resources. Annotation keys and values are less restricted than those of labels, but should be generally used for small values of broad interest. Larger, topic- specific metadata should be stored in Artifacts.
Declaration
[JsonProperty("annotations")]
public virtual IDictionary<string, string> Annotations { get; set; }
Property Value
| Type | Description |
|---|---|
| IDictionary<string, string> |
Contents
Input only. The contents of the spec. Provided by API callers when specs are created or updated. To access the contents of a spec, use GetApiSpecContents.
Declaration
[JsonProperty("contents")]
public virtual string Contents { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
CreateTime
object representation of CreateTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")]
public virtual object CreateTime { get; set; }
Property Value
| Type | Description |
|---|---|
| object |
CreateTimeDateTimeOffset
DateTimeOffset representation of CreateTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? CreateTimeDateTimeOffset { get; set; }
Property Value
| Type | Description |
|---|---|
| DateTimeOffset? |
CreateTimeRaw
Output only. Creation timestamp; when the spec resource was created.
Declaration
[JsonProperty("createTime")]
public virtual string CreateTimeRaw { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Description
A detailed description.
Declaration
[JsonProperty("description")]
public virtual string Description { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
ETag
The ETag of the item.
Declaration
public virtual string ETag { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Filename
A possibly-hierarchical name used to refer to the spec from other specs.
Declaration
[JsonProperty("filename")]
public virtual string Filename { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Hash
Output only. A SHA-256 hash of the spec's contents. If the spec is gzipped, this is the hash of the uncompressed spec.
Declaration
[JsonProperty("hash")]
public virtual string Hash { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Labels
Labels attach identifying metadata to resources. Identifying metadata can be used to filter list operations.
Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase
letters, numeric characters, underscores and dashes. International characters are allowed. No more than 64
user labels can be associated with one resource (System labels are excluded). See https://goo.gl/xmQnxf for
more information and examples of labels. System reserved label keys are prefixed with
apigeeregistry.googleapis.com/ and cannot be changed.
Declaration
[JsonProperty("labels")]
public virtual IDictionary<string, string> Labels { get; set; }
Property Value
| Type | Description |
|---|---|
| IDictionary<string, string> |
MimeType
A style (format) descriptor for this spec that is specified as a Media
Type. Possible values include application/vnd.apigee.proto,
application/vnd.apigee.openapi, and application/vnd.apigee.graphql, with possible suffixes representing
compression types. These hypothetical names are defined in the vendor tree defined in RFC6838
(https://tools.ietf.org/html/rfc6838) and are not final. Content types can specify compression. Currently
only GZip compression is supported (indicated with "+gzip").
Declaration
[JsonProperty("mimeType")]
public virtual string MimeType { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Name
Resource name.
Declaration
[JsonProperty("name")]
public virtual string Name { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
RevisionCreateTime
object representation of RevisionCreateTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use RevisionCreateTimeDateTimeOffset instead.")]
public virtual object RevisionCreateTime { get; set; }
Property Value
| Type | Description |
|---|---|
| object |
RevisionCreateTimeDateTimeOffset
DateTimeOffset representation of RevisionCreateTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? RevisionCreateTimeDateTimeOffset { get; set; }
Property Value
| Type | Description |
|---|---|
| DateTimeOffset? |
RevisionCreateTimeRaw
Output only. Revision creation timestamp; when the represented revision was created.
Declaration
[JsonProperty("revisionCreateTime")]
public virtual string RevisionCreateTimeRaw { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
RevisionId
Output only. Immutable. The revision ID of the spec. A new revision is committed whenever the spec contents are changed. The format is an 8-character hexadecimal string.
Declaration
[JsonProperty("revisionId")]
public virtual string RevisionId { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
RevisionUpdateTime
object representation of RevisionUpdateTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use RevisionUpdateTimeDateTimeOffset instead.")]
public virtual object RevisionUpdateTime { get; set; }
Property Value
| Type | Description |
|---|---|
| object |
RevisionUpdateTimeDateTimeOffset
DateTimeOffset representation of RevisionUpdateTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? RevisionUpdateTimeDateTimeOffset { get; set; }
Property Value
| Type | Description |
|---|---|
| DateTimeOffset? |
RevisionUpdateTimeRaw
Output only. Last update timestamp: when the represented revision was last modified.
Declaration
[JsonProperty("revisionUpdateTime")]
public virtual string RevisionUpdateTimeRaw { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
SizeBytes
Output only. The size of the spec file in bytes. If the spec is gzipped, this is the size of the uncompressed spec.
Declaration
[JsonProperty("sizeBytes")]
public virtual int? SizeBytes { get; set; }
Property Value
| Type | Description |
|---|---|
| int? |
SourceUri
The original source URI of the spec (if one exists). This is an external location that can be used for reference purposes but which may not be authoritative since this external resource may change after the spec is retrieved.
Declaration
[JsonProperty("sourceUri")]
public virtual string SourceUri { get; set; }
Property Value
| Type | Description |
|---|---|
| string |