- 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. |