blob: c00d79a23f07c021453a943ee693dcaafd53aa88 [file] [log] [blame] [edit]
# Copyright 2017 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
swagger: '2.0'
info:
version: "0.0.1"
title: apid apis for gateway
description: |
API for querying gateway configuration changes and complete state
contact:
name: Apigee, Inc.
url: http://www.apigee.com/
email: sales@apigee.com
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
host: "localhost:9000"
basePath: "/"
schemes:
- "https"
tags:
- name: "configurations"
description: "Get Configurations"
- name: "blob"
description: "Blob Download"
paths:
/configurations:
get:
tags:
- "configurations"
description: |
Get list of configurations associated with apid's datascope
parameters:
- name: "block"
in: "query"
type: string
description: "Long poll block duration in seconds"
- name: "apid-config-index"
in: "query"
type: string
description: "x-apid-config-index value from request in previous request"
- name: "type"
in: "query"
type: string
description: "filter configurations by type. When type filter is given, long-polling is not supported"
responses:
200:
description: Successful response
headers:
x-apid-config-index:
type: "string"
description: "client can use this for response caching"
schema:
$ref: '#/definitions/ConfigurationsResponse'
304:
description: Not Modified, No change in response based on If-None-Match header value. Cache representation.
default:
description: Error response
schema:
$ref: '#/definitions/ErrorResponse'
/configurations/{configId}:
get:
tags:
- "configurations/{configId}"
description: |
Get a configuration by id
parameters:
- name: configId
in: path
required: true
type: string
description: configId
responses:
200:
description: Successful response
schema:
$ref: '#/definitions/Configuration'
304:
description: Not Modified, No change in response based on If-None-Match header value. Cache representation.
default:
description: Error response
schema:
$ref: '#/definitions/ErrorResponse'
/blobs/{blobId}:
get:
tags:
- "blob"
description: "Blob Download"
parameters:
- name: blobId
in: path
required: true
type: string
description: blobId
- name: "If-None-Match"
in: "header"
type: string
required: false
description: "ETag value from request in previous request"
responses:
200:
description: Successful response
headers:
Content-type:
type: "string"
description : "application/octet-stream"
ETag:
type: "string"
description: "client can use this for response caching"
304:
description: Not Modified, No change in response based on If-None-Match header value. Cache representation.
headers:
ETag:
type: "string"
description: "client can use this for response caching"
404:
description: Not Found
schema:
$ref: '#/definitions/ErrorResponse'
default:
description: Error response
schema:
$ref: '#/definitions/ErrorResponse'
definitions:
ConfigurationsResponse:
properties:
kind:
type: string
self:
type: string
contents:
type: array
items:
$ref: '#/definitions/Configuration'
Configuration:
properties:
self:
type: string
description: url to access this config
name:
type: string
description: configuration name
type:
type: string
description: type of configuration
organization:
type: string
description: organization id
environment:
type: string
description: environment id
revision:
type: string
description: revision of blob
blobId:
type: string
description: blob id
blobUrl:
type: string
description: url to download blob
resourceBlobId:
type: string
created:
type: string
description: Entity creation date. ISO8601 representation
updated:
type: string
description: Entity updated date. ISO8601 representation
ErrorResponse:
properties:
status:
type: string
message:
type: string
errors:
type: array
items:
type: string