GET /api/apis/versions/{APIVersionID}/definition/{Specification}
GET /api/apis/versions/{APIVersionID}/definition/{Specification}/{IncludeDocId}

Returns the generated API description document for the specified API version. With the optional IncludeDocId parameter, returns the generated API description document in the specified format.

This operation is applicable to all supported API document formats.

Authorization Roles/Permissions: User must have read permission for the API, per the visibility rules below.

Visibility rules for generated API description document: The visibility behavior varies according to the specification for the API, as follows:

  • RAML 0.8/WSDL documents: This operation does not support applying visibility scopes to specific content within RAML/WSDL documents. The platform returns these documents to the user only if the user has permission for the entire API. If the user has partial or no visibility permission for the API, the platform returns an Unauthorized message.
  • Open API 3.0, Swagger 2.0 or 1.2: The operation returns the Swagger document with the information that the user has visibility to see. In this scenario, if the user has visibility to certain parts of the API, but not others, the user sees the authorized portions of the API, as determined by the API settings and the user's permissions.

Note: WSDL is generally used for SOAP rather than REST APIs. If you're retrieving the API definition in WSDL format for a REST API, it will include proprietary extensions for the Akana platform. For SOAP services it will be standard WSDL.

This topic includes the following sections:

HTTP Method

GET

URL

https://{hostname}/api/apis/versions/{APIVersionID}/definition/{Specification}/[{IncludeDocId}][?Environment={Environment}]

Sample Request #1: Open API 3.0

The example below shows a request for the Open API 3.0 document for an API set up on the platform, in the Live implementation. The API is a subset of the Swagger Petstore API. For the corresponding response, see Sample Response #1.

Request URL #1: Open API 3.0

https://{hostname}/api/apis/versions/4b8ceb11-d751-499f-ba1a-ff76cec0e064.acmepaymentscorp/definition/oas3?Environment=Production

Sample request headers

GET /api/apis/versions/4b8ceb11-d751-499f-ba1a-ff76cec0e064.acmepaymentscorp/definition/oas3?Environment=Production HTTP/1.1
Host: {hostname}
X-Csrf-Token_acmepaymentscorp: TokenID%3D8ed70a13-8469-11e8-b37a-b155e4eabeb8%2CexpirationTime%3D153...
Cookie: AtmoAuthToken_{fedmemberid}={Cookie value (usually starts with TokenID)}

Sample request body

Not applicable.

Sample Request #2: Swagger 2.0

The examples below show requests for the documentation for an API set up on the platform, that is a subset of the sample Swagger Petstore API. You can also click through to view the corresponding responses.

Request URL #2: Swagger 2.0

For the response, see Sample Response #2: Swagger 2.0 below.

https://{hostname}/api/apis/versions/4b8ceb11-d751-499f-ba1a-ff76cec0e064.acmepaymentscorp/definition/swagger

Sample Request #3: Swagger 1.2

Request URL #3: Swagger 1.2

For the response, see Sample Response #3: Swagger 1.2 below.

https://{hostname}/api/apis/versions/4b8ceb11-d751-499f-ba1a-ff76cec0e064.acmepaymentscorp/definition/swagger1_2

Sample Request #4: RAML 0.8

Request URL #4: RAML 0.8

For the response, see Sample Response #4: RAML 0.8 below.

The example below includes an appropriate Accept header for the response format. However, this is not necessary; the response media type is determined by the specification.

https://{hostname}/api/apis/versions/4b8ceb11-d751-499f-ba1a-ff76cec0e064.acmepaymentscorp/definition/raml
Accept: application/raml+yaml

Sample Request #5: WSDL

Request URL #5: WSDL

For the response, see Sample Response #5: WSDL below.

https://{hostname}/api/apis/versions/4b8ceb11-d751-499f-ba1a-ff76cec0e064.acmepaymentscorp/definition/wsdl

Request Headers

For general information on request header values, refer to HTTP Request Headers.

Header Description
Accept

The media type is determined by the specification. Use a generic value such as */*, specify an appropriate value for the specification you're using, or leave blank. For example:

  • Open API 3.0, Swagger 2.0, Swagger 1.2: application/json
  • RAML 0.8: application/raml+yaml
  • WSDL: application/xml
Cookie AtmoAuthToken_{fedmemberid}={cookie value, which usually starts with TokenID}—The platform cookie. This is the Akana API Platform authorization token, and must be sent with every API request that requires login. For more information and an example, see Session cookies.
X-Csrf-Token_{fedmemberID} The CSRF prevention header; may or may not be required, depending on platform settings. See CSRF Prevention on the Platform. By default, the CSRF header is not required for GET operations and is required for all others, with a few exceptions relating to user login.

Request Parameters

Parameter Parm Type Data Type Required Description
APIVersionID Path string Required The unique ID for a specific API version.
Specification Path string Required

The specification to be used in generating the API description document. Valid values:

  • swagger (defaults to swagger2 which is Swagger 2.0)
  • swagger1_2
  • oas3
  • raml
  • wsdl
IncludeDocId Path string Optional For Swagger 1.2 or WSDL, a description document might import, or include, another document. In that case, the main document will have an import statement with the IncludeDocId parameter. This allows the client to fetch the imported files.
Environment Query string Optional Optionally, specify the implementation (Sandbox or Live implementation.

Response

If successful, this operation returns HTTP status code 200, with the API description document in the requested format.

Sample Response #1: Open API 3.0

The example below shows the responses to the API request shown in Sample Request #1. The API is a subset of the sample Swagger Petstore API.

Sample response #1 headers

Content-Type: application/json
Date: Thu, 05 Mar 2020 22:51:14 GMT

Sample response #1 body

{
  "openapi": "3.0",
  "info": {
    "title": "Swagger_Petstore_4_Operations",
    "description": "Swagger_Petstore_4_Operations. Based on http://petstore.swagger.io/v2/swagger.json with deletions in API Designer.",
    "version": "v1"
  },
  "servers": [
    {
      "url": "https://testing.acmepaymentscorp.com:7955/api16098live"
    },
    {
      "url": "http://testing.acmepaymentscorp.com:7905/api16098live"
    }
  ],
  "paths": {
    "/pet": {
      "post": {
        "tags": [
          "pet"
        ],
        "summary": "Add a new pet to the store",
        "operationId": "addPet",
        "requestBody": {
          "description": "Pet object that needs to be added to the store",
          "content": {
            "application/xml": {
              "schema": {
                "$ref": "#/components/schemas/Pet"
              }
            },
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Pet"
              }
            }
          },
          "required": true
        },
        "responses": {
          "405": {
            "description": "Invalid input",
            "content": {
              "application/xml": {},
              "application/json": {}
            }
          }
        }
      }
    },
    "/pet/findByTags": {
      "get": {
        "tags": [
          "pet"
        ],
        "summary": "Finds Pets by tags",
        "description": "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.",
        "operationId": "findPetsByTags",
        "parameters": [
          {
            "name": "tags",
            "in": "query",
            "description": "Tags to filter by",
            "required": true,
            "style": "form",
            "schema": {
              "type": "array",
              "description": "Tags to filter by",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Invalid tag value",
            "content": {
              "application/xml": {},
              "application/json": {}
            }
          },
          "200": {
            "description": "successful operation",
            "content": {
              "application/xml": {},
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Pet"
                  }
                }
              }
            }
          }
        },
        "deprecated": true
      }
    },
    "/pet/{petId}": {
      "get": {
        "tags": [
          "pet"
        ],
        "summary": "Find pet by ID",
        "description": "Returns a single pet",
        "operationId": "getPetById",
        "parameters": [
          {
            "name": "petId",
            "in": "path",
            "description": "ID of pet to return",
            "required": true,
            "schema": {
              "type": "integer",
              "description": "ID of pet to return",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Invalid ID supplied",
            "content": {
              "application/xml": {},
              "application/json": {}
            }
          },
          "404": {
            "description": "Pet not found",
            "content": {
              "application/xml": {},
              "application/json": {}
            }
          },
          "200": {
            "description": "successful operation",
            "content": {
              "application/xml": {
                "schema": {
                  "$ref": "#/components/schemas/Pet"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Pet"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "pet"
        ],
        "summary": "Deletes a pet",
        "operationId": "deletePet",
        "parameters": [
          {
            "name": "api_key",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "default": "null"
            }
          },
          {
            "name": "petId",
            "in": "path",
            "description": "Pet id to delete",
            "required": true,
            "schema": {
              "type": "integer",
              "description": "Pet id to delete",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "400": {
            "description": "Invalid ID supplied",
            "content": {
              "application/xml": {},
              "application/json": {}
            }
          },
          "404": {
            "description": "Pet not found",
            "content": {
              "application/xml": {},
              "application/json": {}
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Order": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "petId": {
            "type": "integer",
            "format": "int64"
          },
          "quantity": {
            "type": "integer",
            "format": "int32"
          },
          "shipDate": {
            "type": "string",
            "format": "date-time"
          },
          "status": {
            "type": "string",
            "description": "Order Status",
            "enum": [
              "placed",
              "approved",
              "delivered"
            ]
          },
          "complete": {
            "type": "boolean"
          }
        },
        "xml": {
          "name": "Order"
        }
      },
      "Category": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "name": {
            "type": "string"
          }
        },
        "xml": {
          "name": "Category"
        }
      },
      "User": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "username": {
            "type": "string"
          },
          "firstName": {
            "type": "string"
          },
          "lastName": {
            "type": "string"
          },
          "email": {
            "type": "string"
          },
          "password": {
            "type": "string"
          },
          "phone": {
            "type": "string"
          },
          "userStatus": {
            "type": "integer",
            "description": "User Status",
            "format": "int32"
          }
        },
        "xml": {
          "name": "User"
        }
      },
      "Tag": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "name": {
            "type": "string"
          }
        },
        "xml": {
          "name": "Tag"
        }
      },
      "ApiResponse": {
        "type": "object",
        "properties": {
          "code": {
            "type": "integer",
            "format": "int32"
          },
          "type": {
            "type": "string"
          },
          "message": {
            "type": "string"
          }
        }
      },
      "Pet": {
        "required": [
          "name",
          "photoUrls"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "format": "int64"
          },
          "category": {
            "$ref": "#/components/schemas/Category"
          },
          "name": {
            "type": "string",
            "example": "doggie"
          },
          "photoUrls": {
            "type": "array",
            "xml": {
              "wrapped": true
            },
            "items": {
              "type": "string",
              "xml": {
                "name": "photoUrl"
              }
            }
          },
          "tags": {
            "type": "array",
            "xml": {
              "wrapped": true
            },
            "items": {
              "$ref": "#/components/schemas/Tag"
            }
          },
          "status": {
            "type": "string",
            "description": "pet status in the store",
            "enum": [
              "available",
              "pending",
              "sold"
            ]
          }
        },
        "xml": {
          "name": "Pet"
        }
      }
    }
  },
  "tags": [
    {
      "name": "pet",
      "description": "Everything about your Pets",
      "externalDocs": {
        "url": "http://swagger.io"
      }
    },
    {
      "name": "store",
      "description": "Access to Petstore orders"
    },
    {
      "name": "user",
      "description": "Operations about user",
      "externalDocs": {
        "url": "http://swagger.io"
      }
    }
  ]
}

Sample Response #2: Swagger 2.0

The example below shows the responses to the API request shown in Sample Request #2. The API is a subset of the sample Swagger Petstore API.

Sample response #2 headers

Content-Type: application/json
Date: Thu, 05 Mar 2020 22:54:49 GMT

Sample response #2 body

{
  "swagger": "2.0",
  "info": {
    "description": "Swagger_Petstore_4_Operations. Based on http://petstore.swagger.io/v2/swagger.json with deletions in API Designer.",
    "version": "v1",
    "title": "Swagger_Petstore_4_Operations"
  },
  "host": "testing.acmepaymentscorp.com:7955",
  "basePath": "/api16098live",
  "schemes": [
    "HTTPS",
    "HTTP"
  ],
  "paths": {
    "/pet": {
      "post": {
        "tags": [
          "pet"
        ],
        "summary": "Add a new pet to the store",
        "operationId": "addPet",
        "consumes": [
          "application/xml",
          "application/json"
        ],
        "produces": [
          "application/xml",
          "application/json"
        ],
        "parameters": [
          {
            "in": "body",
            "name": "body",
            "description": "Pet object that needs to be added to the store",
            "required": true,
            "schema": {
              "$ref": "#/definitions/Pet"
            }
          }
        ],
        "responses": {
          "405": {
            "description": "Invalid input"
          }
        }
      }
    },
    "/pet/findByTags": {
      "get": {
        "tags": [
          "pet"
        ],
        "summary": "Finds Pets by tags",
        "description": "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.",
        "operationId": "findPetsByTags",
        "produces": [
          "application/xml",
          "application/json"
        ],
        "parameters": [
          {
            "name": "tags",
            "in": "query",
            "description": "Tags to filter by",
            "required": true,
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "csv"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Pet"
              }
            }
          },
          "400": {
            "description": "Invalid tag value"
          }
        },
        "deprecated": true
      }
    },
    "/pet/{petId}": {
      "get": {
        "tags": [
          "pet"
        ],
        "summary": "Find pet by ID",
        "description": "Returns a single pet",
        "operationId": "getPetById",
        "produces": [
          "application/xml",
          "application/json"
        ],
        "parameters": [
          {
            "name": "petId",
            "in": "path",
            "description": "ID of pet to return",
            "required": true,
            "type": "integer",
            "format": "int64"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "schema": {
              "$ref": "#/definitions/Pet"
            }
          },
          "400": {
            "description": "Invalid ID supplied"
          },
          "404": {
            "description": "Pet not found"
          }
        }
      },
      "delete": {
        "tags": [
          "pet"
        ],
        "summary": "Deletes a pet",
        "operationId": "deletePet",
        "produces": [
          "application/xml",
          "application/json"
        ],
        "parameters": [
          {
            "name": "api_key",
            "in": "header",
            "required": false,
            "type": "string",
            "default": "null"
          },
          {
            "name": "petId",
            "in": "path",
            "description": "Pet id to delete",
            "required": true,
            "type": "integer",
            "format": "int64"
          }
        ],
        "responses": {
          "400": {
            "description": "Invalid ID supplied"
          },
          "404": {
            "description": "Pet not found"
          }
        }
      }
    }
  },
  "definitions": {
    "Order": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "petId": {
          "type": "integer",
          "format": "int64"
        },
        "quantity": {
          "type": "integer",
          "format": "int32"
        },
        "shipDate": {
          "type": "string",
          "format": "date-time"
        },
        "status": {
          "type": "string",
          "description": "Order Status",
          "enum": [
            "placed",
            "approved",
            "delivered"
          ]
        },
        "complete": {
          "type": "boolean"
        }
      },
      "xml": {
        "name": "Order"
      }
    },
    "Category": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "name": {
          "type": "string"
        }
      },
      "xml": {
        "name": "Category"
      }
    },
    "User": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "username": {
          "type": "string"
        },
        "firstName": {
          "type": "string"
        },
        "lastName": {
          "type": "string"
        },
        "email": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "phone": {
          "type": "string"
        },
        "userStatus": {
          "type": "integer",
          "format": "int32",
          "description": "User Status"
        }
      },
      "xml": {
        "name": "User"
      }
    },
    "Tag": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "name": {
          "type": "string"
        }
      },
      "xml": {
        "name": "Tag"
      }
    },
    "ApiResponse": {
      "type": "object",
      "properties": {
        "code": {
          "type": "integer",
          "format": "int32"
        },
        "type": {
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      }
    },
    "Pet": {
      "type": "object",
      "required": [
        "name",
        "photoUrls"
      ],
      "properties": {
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "category": {
          "$ref": "#/definitions/Category"
        },
        "name": {
          "type": "string",
          "example": "doggie"
        },
        "photoUrls": {
          "type": "array",
          "xml": {
            "wrapped": true
          },
          "items": {
            "type": "string",
            "xml": {
              "name": "photoUrl"
            }
          }
        },
        "tags": {
          "type": "array",
          "xml": {
            "wrapped": true
          },
          "items": {
            "$ref": "#/definitions/Tag"
          }
        },
        "status": {
          "type": "string",
          "description": "pet status in the store",
          "enum": [
            "available",
            "pending",
            "sold"
          ]
        }
      },
      "xml": {
        "name": "Pet"
      }
    }
  },
  "tags": [
    {
      "name": "pet",
      "description": "Everything about your Pets",
      "externalDocs": {
        "url": "http://swagger.io"
      }
    },
    {
      "name": "store",
      "description": "Access to Petstore orders"
    },
    {
      "name": "user",
      "description": "Operations about user",
      "externalDocs": {
        "url": "http://swagger.io"
      }
    }
  ]
}

Sample Response #3: Swagger 1.2

The example below shows the responses to the API request shown in Sample Request #3. The API is a subset of the sample Swagger Petstore API.

Sample response #3 headers

Content-Type: application/json
Date: Thu, 05 Mar 2020 22:57:18 GMT

Sample response #3 body

{
 "swaggerVersion": "1.2",
 "apis": [
  {
   "path": "/pet"
  }
 ],
 "info": {
  "title": "Swagger_Petstore_4_Operations_v1_Live",
  "description": "Swagger_Petstore_4_Operations. Based on http://petstore.swagger.io/v2/swagger.json with deletions in API Designer."
 }
}

Sample Response #4: RAML 0.8

The example below shows the responses to the API request shown in Sample Request #4. The API is a subset of the sample Swagger Petstore API.

Sample response #4 headers

Content-Type: application/raml+yaml
Date: Thu, 05 Mar 2020 22:59:28 GMT

Sample response #4 body

#%RAML 0.8
title: "Swagger_Petstore_4_Operations_v1_Live"
baseUri: "https://testing.acmepaymentscorp.com:7955/api16098live"
protocols: [HTTPS, HTTP]
schemas: 
  - 
    "json": '{"ApiResponse":{"type":"object","properties":{"code":{"type":"integer","format":"int32"},"type":{"type":"string"},"message":{"type":"string"}}},"Category":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}},"xml":{"name":"Category"}},"Order":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"petId":{"type":"integer","format":"int64"},"quantity":{"type":"integer","format":"int32"},"shipDate":{"type":"string","format":"date-time"},"status":{"type":"string","description":"Order Status","enum":["placed","approved","delivered"]},"complete":{"type":"boolean"}},"xml":{"name":"Order"}},"Pet":{"required":["name","photoUrls"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"category":{"$ref":"#/Category"},"name":{"type":"string","example":"doggie"},"photoUrls":{"type":"array","xml":{"wrapped":true},"items":{"type":"string","xml":{"name":"photoUrl"}}},"tags":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/Tag"}},"status":{"type":"string","description":"pet status in the store","enum":["available","pending","sold"]}},"xml":{"name":"Pet"}},"Tag":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}},"xml":{"name":"Tag"}},"User":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"username":{"type":"string"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"password":{"type":"string"},"phone":{"type":"string"},"userStatus":{"type":"integer","description":"User Status","format":"int32"}},"xml":{"name":"User"}}}'
"/pet/findByTags": 
  get: 
    description: "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing."
    queryParameters: 
      "tags": 
        displayName: "tags"
        description: "Tags to filter by"
        type: string
        required: true
        repeat: true
    responses: 
      "400": 
        description: "Invalid tag value"
        body: 
          "application/xml": 
          "application/json": 
      "200": 
        description: "successful operation"
        body: 
          "application/xml": 
          "application/json": 
            schema: '{"type":"array","items":{"$ref":"#/Pet"}}'
"/pet/{petId}": 
  uriParameters: 
    "petId": 
      displayName: "petId"
      description: "ID of pet to return"
      type: integer
      required: true
      repeat: false
  get: 
    description: "Returns a single pet"
    responses: 
      "404": 
        description: "Pet not found"
        body: 
          "application/xml": 
          "application/json": 
      "200": 
        description: "successful operation"
        body: 
          "application/xml": 
          "application/json": 
      "400": 
        description: "Invalid ID supplied"
        body: 
          "application/xml": 
          "application/json": 
  delete: 
    description: "Deletes a pet"
    headers: 
      "api_key": 
        displayName: "api_key"
        type: string
        required: false
        repeat: false
        default: "null"
    responses: 
      "400": 
        description: "Invalid ID supplied"
        body: 
          "application/xml": 
          "application/json": 
      "404": 
        description: "Pet not found"
        body: 
          "application/xml": 
          "application/json": 
"/pet": 
  post: 
    description: "Add a new pet to the store"
    body: 
      "application/xml": 
        schema: '{"$ref":"#/Pet"}'
      "application/json": 
        schema: '{"$ref":"#/Pet"}'
    responses: 
      "405": 
        description: "Invalid input"
        body: 
          "application/xml": 
          "application/json": 
documentation: 
  - 
    title: "description"
    content: "Swagger_Petstore_4_Operations. Based on http://petstore.swagger.io/v2/swagger.json with deletions in API Designer."

Sample Response #5: WSDL

WSDL is generally used for SOAP rather than REST APIs. If you're retrieving the API definition in WSDL format for a REST API, it will include proprietary extensions for the Akana platform, as shown in the example below. In addition, depending on your browser, you might need to view source in the browser to see it. For SOAP services the response is standard WSDL.

The example below shows the responses to the API request shown in Sample Request #5. The API is a subset of the sample Swagger Petstore API.

Sample response #5 headers

Content-Type: application/xml
Date: Fri, 06 Mar 2020 14:42:52 GMT

Sample response #5 body

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="Swagger_Petstore_4_Operations_v1" xmlns:sdoc="http://soa.com/wsdl/doc" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns="http://soa.com/uri/products/wsdlext/1.0" xmlns:tns="Swagger_Petstore_4_Operations_v1" xmlns:js="http://soa.com/jsonSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:shttp="http://soa.com/wsdl/http">
  <wsdl:types>
    <shttp:schema language="json" targetNamespace="http://soa.com/jsonSchema" xmlns:shttp="http://soa.com/wsdl/http"><![CDATA[{"ApiResponse":{"type":"object","properties":{"code":{"type":"integer","format":"int32"},"type":{"type":"string"},"message":{"type":"string"}}},"Category":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}},"xml":{"name":"Category"}},"Order":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"petId":{"type":"integer","format":"int64"},"quantity":{"type":"integer","format":"int32"},"shipDate":{"type":"string","format":"date-time"},"status":{"type":"string","description":"Order Status","enum":["placed","approved","delivered"]},"complete":{"type":"boolean"}},"xml":{"name":"Order"}},"Pet":{"required":["name","photoUrls"],"type":"object","properties":{"id":{"type":"integer","format":"int64"},"category":{"$ref":"#/Category"},"name":{"type":"string","example":"doggie"},"photoUrls":{"type":"array","xml":{"wrapped":true},"items":{"type":"string","xml":{"name":"photoUrl"}}},"tags":{"type":"array","xml":{"wrapped":true},"items":{"$ref":"#/Tag"}},"status":{"type":"string","description":"pet status in the store","enum":["available","pending","sold"]}},"xml":{"name":"Pet"}},"Tag":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"}},"xml":{"name":"Tag"}},"User":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"username":{"type":"string"},"firstName":{"type":"string"},"lastName":{"type":"string"},"email":{"type":"string"},"password":{"type":"string"},"phone":{"type":"string"},"userStatus":{"type":"integer","description":"User Status","format":"int32"}},"xml":{"name":"User"}}}]]></shttp:schema>
  </wsdl:types>
  <wsdl:message name="findPetsByTagsResponseMessage_200">
    <wsdl:part name="body" type="xs:anyType">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="addPetResponseMessage">
  </wsdl:message>
  <wsdl:message name="findPetsByTagsFault_400">
  </wsdl:message>
  <wsdl:message name="getPetByIdResponseMessage_200">
    <wsdl:part name="body" type="js:Pet">
    </wsdl:part>
    <wsdl:part name="body" type="js:Pet">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="getPetByIdRequestMessage">
    <wsdl:part name="petId" type="xs:int">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="getPetByIdFault_404">
  </wsdl:message>
  <wsdl:message name="findPetsByTagsRequestMessage">
    <wsdl:part name="tags" type="xs:string">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="getPetByIdFault_400">
  </wsdl:message>
  <wsdl:message name="deletePetRequestMessage">
    <wsdl:part name="api_key" type="xs:string">
    </wsdl:part>
    <wsdl:part name="petId" type="xs:int">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="deletePetFault_400">
  </wsdl:message>
  <wsdl:message name="deletePetResponseMessage">
  </wsdl:message>
  <wsdl:message name="addPetRequestMessage">
    <wsdl:part name="body" type="xs:anyType">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="addPetFault_405">
  </wsdl:message>
  <wsdl:message name="deletePetFault_404">
  </wsdl:message>
  <wsdl:portType name="Swagger_Petstore_4_Operations_PortType_0">
    <wsdl:operation name="addPet">
<wsdl:documentation><sdoc:displayName>addPet</sdoc:displayName></wsdl:documentation>
      <wsdl:input message="tns:addPetRequestMessage">
    </wsdl:input>
      <wsdl:output message="tns:addPetResponseMessage">
    </wsdl:output>
      <wsdl:fault name="addPetFault_405" message="tns:addPetFault_405">
    </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="findPetsByTags">
<wsdl:documentation><sdoc:displayName>findPetsByTags</sdoc:displayName></wsdl:documentation>
      <wsdl:input message="tns:findPetsByTagsRequestMessage">
    </wsdl:input>
      <wsdl:output message="tns:findPetsByTagsResponseMessage_200">
    </wsdl:output>
      <wsdl:fault name="findPetsByTagsFault_400" message="tns:findPetsByTagsFault_400">
    </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="getPetById">
<wsdl:documentation><sdoc:displayName>getPetById</sdoc:displayName></wsdl:documentation>
      <wsdl:input message="tns:getPetByIdRequestMessage">
    </wsdl:input>
      <wsdl:output message="tns:getPetByIdResponseMessage_200">
    </wsdl:output>
      <wsdl:fault name="getPetByIdFault_400" message="tns:getPetByIdFault_400">
    </wsdl:fault>
      <wsdl:fault name="getPetByIdFault_404" message="tns:getPetByIdFault_404">
    </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="deletePet">
<wsdl:documentation><sdoc:displayName>deletePet</sdoc:displayName></wsdl:documentation>
      <wsdl:input message="tns:deletePetRequestMessage">
    </wsdl:input>
      <wsdl:output message="tns:deletePetResponseMessage">
    </wsdl:output>
      <wsdl:fault name="deletePetFault_404" message="tns:deletePetFault_404">
    </wsdl:fault>
      <wsdl:fault name="deletePetFault_400" message="tns:deletePetFault_400">
    </wsdl:fault>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="Swagger_Petstore_4_Operations_Binding_0" type="tns:Swagger_Petstore_4_Operations_PortType_0">
<wsdl:documentation><sdoc:group path="/pet"/><sdoc:group path="/pet/findByTags"/><sdoc:group path="/pet/{petId}"/></wsdl:documentation>
    <shttp:binding/>
    <wsdl:operation name="addPet">
<wsdl:documentation><sdoc:response code="405" fault="addPetFault_405"><sdoc:description><![CDATA[Invalid input]]></sdoc:description></sdoc:response><sdoc:displayName>addPet</sdoc:displayName><sdoc:summary><![CDATA[Add a new pet to the store]]></sdoc:summary><sdoc:tag>pet</sdoc:tag></wsdl:documentation>
    <shttp:operation inputSerialization="application/xml,application/json" location="/pet" method="POST" outputSerialization="application/xml,application/json"/>
      <wsdl:input>
    <shttp:input name="body" part="body" type="entity"><shttp:schema type="application/xml"><![CDATA[{"$ref":"#/Pet"}]]></shttp:schema><shttp:schema type="application/json"><![CDATA[{"$ref":"#/Pet"}]]></shttp:schema><wsdl:documentation><sdoc:description><![CDATA[Pet object that needs to be added to the store]]></sdoc:description><sdoc:required>true</sdoc:required></wsdl:documentation></shttp:input>
      </wsdl:input>
      <wsdl:output>
      </wsdl:output>
      <wsdl:fault name="addPetFault_405">
    <shttp:output name="body" part="body" type="entity"/>
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="findPetsByTags">
<wsdl:documentation><sdoc:response code="400" fault="findPetsByTagsFault_400"><sdoc:description><![CDATA[Invalid tag value]]></sdoc:description></sdoc:response><sdoc:response code="200"><sdoc:description><![CDATA[successful operation]]></sdoc:description><sdoc:schema type="application/json"><![CDATA[{"type":"array","items":{"$ref":"#/Pet"}}]]></sdoc:schema></sdoc:response><sdoc:displayName>findPetsByTags</sdoc:displayName><sdoc:description><![CDATA[Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.]]></sdoc:description><sdoc:summary><![CDATA[Finds Pets by tags]]></sdoc:summary><sdoc:tag>pet</sdoc:tag><sdoc:deprecated>true</sdoc:deprecated></wsdl:documentation>
    <shttp:operation location="/pet/findByTags" method="GET" outputSerialization="application/xml,application/json"/>
      <wsdl:input>
    <shttp:input name="tags" part="tags" type="query"><wsdl:documentation><sdoc:type>array</sdoc:type><sdoc:displayName>tags</sdoc:displayName><sdoc:description><![CDATA[Tags to filter by]]></sdoc:description><sdoc:required>true</sdoc:required><sdoc:collectionFormat>csv</sdoc:collectionFormat><sdoc:type>array</sdoc:type><sdoc:items><sdoc:type>string</sdoc:type></sdoc:items></wsdl:documentation><shttp:schema type="application/json"><![CDATA[{"type":"array","description":"Tags to filter by","items":{"type":"string"}}]]></shttp:schema></shttp:input>
      </wsdl:input>
      <wsdl:output>
    <shttp:output name="body" part="body" type="entity"><shttp:schema type="application/json"><![CDATA[{"type":"array","items":{"$ref":"#/Pet"}}]]></shttp:schema><wsdl:documentation><sdoc:type>array</sdoc:type><sdoc:items><sdoc:type>array</sdoc:type></sdoc:items></wsdl:documentation></shttp:output>
      </wsdl:output>
      <wsdl:fault name="findPetsByTagsFault_400">
    <shttp:output name="body" part="body" type="entity"/>
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="getPetById">
<wsdl:documentation><sdoc:response code="400" fault="getPetByIdFault_400"><sdoc:description><![CDATA[Invalid ID supplied]]></sdoc:description></sdoc:response><sdoc:response code="404" fault="getPetByIdFault_404"><sdoc:description><![CDATA[Pet not found]]></sdoc:description></sdoc:response><sdoc:response code="200"><sdoc:description><![CDATA[successful operation]]></sdoc:description></sdoc:response><sdoc:displayName>getPetById</sdoc:displayName><sdoc:description><![CDATA[Returns a single pet]]></sdoc:description><sdoc:summary><![CDATA[Find pet by ID]]></sdoc:summary><sdoc:tag>pet</sdoc:tag></wsdl:documentation>
    <shttp:operation location="/pet/{petId}" method="GET" outputSerialization="application/xml,application/json"/>
      <wsdl:input>
    <shttp:input name="petId" part="petId" type="path"><wsdl:documentation><sdoc:type>integer</sdoc:type><sdoc:format>int64</sdoc:format><sdoc:displayName>petId</sdoc:displayName><sdoc:description><![CDATA[ID of pet to return]]></sdoc:description><sdoc:required>true</sdoc:required></wsdl:documentation><shttp:schema type="application/json"><![CDATA[{"type":"integer","description":"ID of pet to return","format":"int64"}]]></shttp:schema></shttp:input>
      </wsdl:input>
      <wsdl:output>
    <shttp:output name="body" part="body" type="entity"/>
      </wsdl:output>
      <wsdl:fault name="getPetByIdFault_400">
    <shttp:output name="body" part="body" type="entity"/>
      </wsdl:fault>
      <wsdl:fault name="getPetByIdFault_404">
    <shttp:output name="body" part="body" type="entity"/>
      </wsdl:fault>
    </wsdl:operation>
    <wsdl:operation name="deletePet">
<wsdl:documentation><sdoc:response code="400" fault="deletePetFault_400"><sdoc:description><![CDATA[Invalid ID supplied]]></sdoc:description></sdoc:response><sdoc:response code="404" fault="deletePetFault_404"><sdoc:description><![CDATA[Pet not found]]></sdoc:description></sdoc:response><sdoc:displayName>deletePet</sdoc:displayName><sdoc:summary><![CDATA[Deletes a pet]]></sdoc:summary><sdoc:tag>pet</sdoc:tag></wsdl:documentation>
    <shttp:operation location="/pet/{petId}" method="DELETE" outputSerialization="application/xml,application/json"/>
      <wsdl:input>
    <shttp:input name="api_key" part="api_key" type="header"><wsdl:documentation><sdoc:type>string</sdoc:type><sdoc:default>null</sdoc:default><sdoc:displayName>api_key</sdoc:displayName><sdoc:required>false</sdoc:required></wsdl:documentation><shttp:schema type="application/json"><![CDATA[{"type":"string","default":"null"}]]></shttp:schema></shttp:input>
    <shttp:input name="petId" part="petId" type="path"><wsdl:documentation><sdoc:type>integer</sdoc:type><sdoc:format>int64</sdoc:format><sdoc:displayName>petId</sdoc:displayName><sdoc:description><![CDATA[Pet id to delete]]></sdoc:description><sdoc:required>true</sdoc:required></wsdl:documentation><shttp:schema type="application/json"><![CDATA[{"type":"integer","description":"Pet id to delete","format":"int64"}]]></shttp:schema></shttp:input>
      </wsdl:input>
      <wsdl:output>
      </wsdl:output>
      <wsdl:fault name="deletePetFault_404">
    <shttp:output name="body" part="body" type="entity"/>
      </wsdl:fault>
      <wsdl:fault name="deletePetFault_400">
    <shttp:output name="body" part="body" type="entity"/>
      </wsdl:fault>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="svc_4b8ceb11-d751-499f-ba1a-ff76cec0e064.acmepaymentscorp.live">
<wsdl:documentation><sdoc:title>Swagger_Petstore_4_Operations_v1_Live</sdoc:title><sdoc:description><![CDATA[Swagger_Petstore_4_Operations. Based on http://petstore.swagger.io/v2/swagger.json with deletions in API Designer.]]></sdoc:description></wsdl:documentation>
    <wsdl:port name="https1883586292" binding="tns:Swagger_Petstore_4_Operations_Binding_0">
    <shttp:address location="https://testing.acmepaymentscorp.com:7955/api16098live"/>
    <soa:connectionProperty name="gateway_hostname" value="testing.acmepaymentscorp.com" xmlns:soa="http://soa.com/uri/products/wsdlext/1.0"/>
    <soa:connectionProperty name="visibility" value="public" xmlns:soa="http://soa.com/uri/products/wsdlext/1.0"/>
    <soa:connectionProperty name="virtualHost" value="testing.acmepaymentscorp.com" xmlns:soa="http://soa.com/uri/products/wsdlext/1.0"/>
    </wsdl:port>
    <wsdl:port name="http1415836027" binding="tns:Swagger_Petstore_4_Operations_Binding_0">
    <shttp:address location="http://testing.acmepaymentscorp.com:7905/api16098live"/>
    <soa:connectionProperty name="gateway_hostname" value="testing.acmepaymentscorp.com" xmlns:soa="http://soa.com/uri/products/wsdlext/1.0"/>
    <soa:connectionProperty name="visibility" value="public" xmlns:soa="http://soa.com/uri/products/wsdlext/1.0"/>
    <soa:connectionProperty name="virtualHost" value="testing.acmepaymentscorp.com" xmlns:soa="http://soa.com/uri/products/wsdlext/1.0"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

Response Headers

For general information on response header values, refer to HTTP Response Headers.

Header Description
Content-Type The response Content-Type value is determined by the specification.

Response Body

The response body is the generated API documentation.

Error Codes/Messages

If the call is unsuccessful an error code/message is returned. One or more examples of possible errors for this operation are shown below.

Item Value
401 Unauthorized. For example, you would get this response if you didn't include the custom X-Csrf-Token_{fedmemberID} header in the request, when it was required by the platform settings; or if you included an invalid or expired value for this header. You would also get this response for any operation that requires login (almost all) if the login cookie was missing.
500 An error occurred processing the call.

More information about Akana API Platform API error messages.

Related Topics