---
openapi: "3.0.1"
info:
title: "Collections API"
description: "Collections enable you to group API proxies, targets, or developer\
\ apps and set up appropriate threshold values for all members of the group to\
\ diagnose issues faster. For more information, see Manage collections using the API.\n"
version: "1.0"
servers:
- url: "https://apimonitoring.enterprise.apigee.com"
security:
- OAuth: []
paths:
/collections:
get:
tags:
- "API Montoring"
summary: "List collections"
operationId: "listCollections"
description: "Lists collections in an organization.\nYou can filter the list\
\ of returned collections by the Edge environment, collection type, collection\
\ name, and collection members.\n\n**Note**: Edge imposes a quota on this\
\ API. You can call this API at most **six times per minute**.\n\nFor more\
\ information and examples of this API, see Manage collections using the API."
parameters:
- $ref: "#/components/parameters/org"
- $ref: "#/components/parameters/env"
- $ref: "#/components/parameters/name"
- $ref: "#/components/parameters/type"
- $ref: "#/components/parameters/member"
responses:
"200":
description: "OK"
content:
application/json:
schema:
$ref: "#/components/schemas/Collections"
post:
tags:
- "API Montoring"
summary: "Create a collection"
operationId: "createCollection"
description: "Creates a collection. \n\n\n**Notes**: \n\n* You can add a maximum\
\ of **20 items** to a collection.\n* Edge imposes a quota on this API. You\
\ can call this API at most **six times per minute**.\n\n\nFor more information\
\ and examples of this API, see Manage collections using the API.\n"
requestBody:
description: "Collection details.\n"
content:
application/json:
schema:
$ref: "#/components/schemas/Collection"
required: true
responses:
"201":
description: "Created"
content:
application/json:
schema:
$ref: "#/components/schemas/Collection"
example:
uuid: ""
organization: "myorg"
environment: "prod"
name: "Critical APIs"
type: "proxy"
members:
- "proxy1"
- "proxy2"
description: "My collection for critical APIs"
updatedAt: "2018-08-08T17:46:50Z"
updatedBy: "ahamilton@example.com"
default:
description: "Error"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
x-codegen-request-body-name: "collection"
/collections/{collection_id}:
get:
tags:
- "API Montoring"
summary: "Get a collection"
operationId: "getCollection"
description: "Gets a collection.\n\n**Note**: Edge imposes a quota on this API.\
\ You can call this API at most **six times** per minute.\n\nFor more information\
\ and examples of this API, see Manage collections using the API."
parameters:
- $ref: "#/components/parameters/collection_id"
responses:
"200":
description: "OK"
content:
application/json:
schema:
$ref: "#/components/schemas/Collection"
example:
uuid: ""
organization: "myorg"
environment: "prod"
name: "Critical APIs"
type: "proxy"
members:
- "proxy1"
- "proxy2"
description: "My collection for critical APIs"
updatedAt: "2018-08-08T17:46:50Z"
updatedBy: "ahamilton@example.com"
delete:
tags:
- "API Montoring"
summary: "Delete a collection"
operationId: "deleteCollection"
description: "Deletes a collection.\n\n**Notes**: \n\n* Edge imposes a quota\
\ on this API. You can call this API at most **six times** per minute.\n*\
\ **This API cannot be executed using the Try this API panel**.\n\nFor more\
\ information and examples of this API, see Manage collections using the API."
parameters:
- $ref: "#/components/parameters/collection_id"
- $ref: "#/components/parameters/Content-type"
responses:
"200":
description: "OK"
content:
application/json:
schema:
$ref: "#/components/schemas/Delete"
example:
uuid: ""
organization: "myorg"
environment: "prod"
name: "Critical APIs"
type: "proxy"
members:
- "proxy1"
- "proxy2"
description: "My collection for critical APIs"
updatedAt: "2018-08-08T17:46:50Z"
updatedBy: "ahamilton@example.com"
default:
description: "Error"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- "API Montoring"
summary: "Update a collection"
operationId: "updateCollection"
description: "Updates a collection. \nYou must specify the organization in the\
\ JSON payload but all other properties are optional. \n\n**Notes**: \n\n\
* You cannot change the organization, environment, or collection type when\
\ updating the collection.\n* Edge imposes a quota on this API. You can call\
\ this API at most **six times per minute**.\n* **This API cannot be executed\
\ using the Try this API panel**.\n\nFor more information and examples of\
\ this API, see Manage collections using the API."
parameters:
- name: "collection_id"
in: "path"
description: "Valid collection ID. Use the Get collections API to get a list of collection IDs."
required: true
schema:
type: "string"
requestBody:
description: "Collection object that is being updated\n"
content:
application/json:
schema:
$ref: "#/components/schemas/Collection"
required: true
responses:
"200":
description: "OK"
content:
application/json:
schema:
$ref: "#/components/schemas/Collection"
example:
uuid: ""
organization: "myorg"
environment: "prod"
name: "Critical APIs"
type: "proxy"
members:
- "proxy1"
- "proxy2"
description: "My collection for critical APIs"
updatedAt: "2018-08-08T17:46:50Z"
updatedBy: "ahamilton@example.com"
default:
description: "Error"
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
components:
securitySchemes:
OAuth:
type: "apiKey"
name: "Authorization"
in: "header"
description: "For OAuth, enter the following in the Key field: Bearer %your-token%\
\ (see https://docs.apigee.com/api-platform/system-administration/using-oauth2#get-the-tokens)"
parameters:
org:
name: "org"
in: "query"
description: "Organization name."
required: true
schema:
type: "string"
env:
name: "env"
in: "query"
description: "Environment name."
required: false
schema:
type: "string"
name:
name: "name"
in: "query"
description: "Collection name."
required: false
schema:
type: "string"
type:
name: "type"
in: "query"
description: "Type of collection. Valid values include: `proxy`, `target`, or\
\ `developerApp`. By default, all collection types are returned."
required: false
schema:
type: "string"
member:
name: "member"
in: "query"
description: "Name of the API proxy, target, or developer app that is a member\
\ of the collection for which you want to list details."
schema:
type: "string"
collection_id:
name: "collection_id"
in: "path"
description: "Valid collection ID."
required: true
schema:
type: "string"
Content-type:
name: "Content-type"
in: "header"
description: "Content-type header"
required: true
schema:
type: "string"
schemas:
Collections:
type: "array"
description: "`proxy`, `target` or `developerApp` collections."
items:
$ref: "#/components/schemas/Collection"
Collection:
type: "object"
properties:
name:
type: "string"
description: "Name of the collection. Required when creating a collection."
example: "LowTraffic"
organization:
type: "string"
description: "Organization name. Required when creating a collection; cannot\
\ be updated."
example: "myOrg"
environment:
type: "string"
description: "Environment name. Required when creating a collection; cannot\
\ be updated."
example: "test"
description:
type: "string"
description: "Description of the collection. Required when creating a collection."
example: "Collection of Low Traffic targets"
type:
type: "string"
description: "Type of collection. Valid values include `proxy`, `target`,\
\ or `developerApp`. Required when creating a collection; cannot be updated."
example: "target"
members:
type: "array"
description: "API proxy, target, or develoer app members belonging to the\
\ collection. Required when creating a collection."
example:
- "Target123"
- "Target345"
items:
type: "string"
updatedAt:
type: "string"
description: "Output only. Time the condition was updated.\n"
format: "iso8601"
example: "2017-10-12T23:19:09Z"
updatedBy:
type: "string"
description: "Output only. Email address of the user that created or last\
\ modified the collection.\n"
format: "email"
example: "user@example.com"
uuid:
type: "string"
description: "Collection ID."
example: "1ae31238-6469-11e8-adc0-fa7ae01bbebc"
description: "Collection details."
Error:
type: "object"
properties:
errorCode:
type: "integer"
status:
type: "integer"
description: "HTTP status code\n"
example: 500
message:
type: "string"
Delete:
type: "object"
properties:
status:
type: "integer"
description: "HTTP status code"
example: 200