- Resource: Spec
- SpecContents
- SpecDetails
- OpenApiSpecDetails
- Format
- LintResponse
- Issue
- Severity
- Range
- Point
- SummaryEntry
- LintState
- Linter
- ParsingMode
- Methods
Resource: Spec
Represents a spec associated with an API version in the API Hub. Note that specs of various types can be uploaded, however parsing of details is supported for OpenAPI spec currently.
| JSON representation | 
|---|
| { "name": string, "displayName": string, "specType": { object ( | 
| Fields | |
|---|---|
| name | 
 Identifier. The name of the spec. Format:  | 
| displayName | 
 Required. The display name of the spec. This can contain the file name of the spec. | 
| specType | 
 Required. The type of spec. The value should be one of the allowed values defined for  Note, this field is mandatory if content is provided. | 
| contents | 
 Optional. Input only. The contents of the uploaded spec. | 
| details | 
 Output only. Details parsed from the spec. | 
| sourceUri | 
 Optional. The URI of the spec source in case file is uploaded from an external version control system. | 
| createTime | 
 Output only. The time at which the spec was created. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
| updateTime | 
 Output only. The time at which the spec was last updated. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
| lintResponse | 
 Optional. The lint response for the spec. | 
| attributes | 
 Optional. The list of user defined attributes associated with the spec. The key is the attribute name. It will be of the format:  An object containing a list of  | 
| documentation | 
 Optional. The documentation of the spec. For OpenAPI spec, this will be populated from  | 
| parsingMode | 
 Optional. Input only. Enum specifying the parsing mode for OpenAPI Specification (OAS) parsing. | 
| sourceMetadata[] | 
 Output only. The list of sources and metadata from the sources of the spec. | 
SpecContents
The spec contents.
| JSON representation | 
|---|
| { "contents": string, "mimeType": string } | 
| Fields | |
|---|---|
| contents | 
 Required. The contents of the spec. A base64-encoded string. | 
| mimeType | 
 Required. The mime type of the content for example application/json, application/yaml, application/wsdl etc. | 
SpecDetails
SpecDetails contains the details parsed from supported spec types.
| JSON representation | 
|---|
| { "description": string, // Union field | 
| Fields | |
|---|---|
| description | 
 Output only. The description of the spec. | 
| Union field  
 | |
| openApiSpecDetails | 
 Output only. Additional details apart from  | 
OpenApiSpecDetails
OpenApiSpecDetails contains the details parsed from an OpenAPI spec in addition to the fields mentioned in SpecDetails.
| JSON representation | 
|---|
| { "format": enum ( | 
| Fields | |
|---|---|
| format | 
 Output only. The format of the spec. | 
| version | 
 Output only. The version in the spec. This maps to  | 
| owner | 
 Output only. Owner details for the spec. This maps to  | 
Format
Enumeration of spec formats.
| Enums | |
|---|---|
| FORMAT_UNSPECIFIED | SpecFile type unspecified. | 
| OPEN_API_SPEC_2_0 | OpenAPI Spec v2.0. | 
| OPEN_API_SPEC_3_0 | OpenAPI Spec v3.0. | 
| OPEN_API_SPEC_3_1 | OpenAPI Spec v3.1. | 
LintResponse
LintResponse contains the response from the linter.
| JSON representation | 
|---|
| { "issues": [ { object ( | 
| Fields | |
|---|---|
| issues[] | 
 Optional. Array of issues found in the analyzed document. | 
| summary[] | 
 Optional. Summary of all issue types and counts for each severity level. | 
| state | 
 Required. Lint state represents success or failure for linting. | 
| source | 
 Required. Name of the linting application. | 
| linter | 
 Required. Name of the linter used. | 
| createTime | 
 Required. Timestamp when the linting response was generated. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
Issue
Issue contains the details of a single issue found by the linter.
| JSON representation | 
|---|
| { "code": string, "path": [ string ], "message": string, "severity": enum ( | 
| Fields | |
|---|---|
| code | 
 Required. Rule code unique to each rule defined in linter. | 
| path[] | 
 Required. An array of strings indicating the location in the analyzed document where the rule was triggered. | 
| message | 
 Required. Human-readable message describing the issue found by the linter. | 
| severity | 
 Required. Severity level of the rule violation. | 
| range | 
 Required. Object describing where in the file the issue was found. | 
Severity
Severity of the issue.
| Enums | |
|---|---|
| SEVERITY_UNSPECIFIED | Severity unspecified. | 
| SEVERITY_ERROR | Severity error. | 
| SEVERITY_WARNING | Severity warning. | 
| SEVERITY_INFO | Severity info. | 
| SEVERITY_HINT | Severity hint. | 
Range
Object describing where in the file the issue was found.
| JSON representation | 
|---|
| { "start": { object ( | 
| Fields | |
|---|---|
| start | 
 Required. Start of the issue. | 
| end | 
 Required. End of the issue. | 
Point
Point within the file (line and character).
| JSON representation | 
|---|
| { "line": integer, "character": integer } | 
| Fields | |
|---|---|
| line | 
 Required. Line number (zero-indexed). | 
| character | 
 Required. Character position within the line (zero-indexed). | 
SummaryEntry
Count of issues with a given severity.
| JSON representation | 
|---|
| {
  "severity": enum ( | 
| Fields | |
|---|---|
| severity | 
 Required. Severity of the issue. | 
| count | 
 Required. Count of issues with the given severity. | 
LintState
Lint state represents success or failure for linting.
| Enums | |
|---|---|
| LINT_STATE_UNSPECIFIED | Lint state unspecified. | 
| LINT_STATE_SUCCESS | Linting was completed successfully. | 
| LINT_STATE_ERROR | Linting encountered errors. | 
Linter
Enumeration of linter types.
| Enums | |
|---|---|
| LINTER_UNSPECIFIED | Linter type unspecified. | 
| SPECTRAL | Linter type spectral. | 
| OTHER | Linter type other. | 
ParsingMode
Specifies the parsing mode for API specifications during creation and update. - RELAXED: Parsing errors in the specification content do not fail the API call. - STRICT: Parsing errors in the specification content result in failure of the API call. If not specified, defaults to RELAXED.
| Enums | |
|---|---|
| PARSING_MODE_UNSPECIFIED | Defaults to RELAXED. | 
| RELAXED | Parsing of the Spec on create and update is relaxed, meaning that parsing errors the spec contents will not fail the API call. | 
| STRICT | Parsing of the Spec on create and update is strict, meaning that parsing errors in the spec contents will fail the API call. | 
| Methods | |
|---|---|
| 
 | Add a spec to an API version in the API hub. | 
| 
 | Delete a spec. | 
| 
 | Get details about the information parsed from a spec. | 
| 
 | Get spec contents. | 
| 
 | Lints the requested spec and updates the corresponding API Spec with the lint response. | 
| 
 | List specs corresponding to a particular API resource. | 
| 
 | Update spec. |