openapi: 3.2.0 info: description: 'API for the API Gateway service. Use this API to manage gateways, deployments, and related items. For more information, see [Overview of API Gateway](/iaas/Content/APIGateway/Concepts/apigatewayoverview.htm). ' title: API Gateway API version: '20190501' x-provenance: method: harvested first_party: true publisher: Oracle source: https://docs.oracle.com/en-us/iaas/api/specs/4a7a190925fb30298864e9aee04c85cfd197a64c6eca47f749c72b5d9b9046ba.yaml harvested: '2026-08-04' note: Published by Oracle as the contract for the API Gateway API OCI service and stored verbatim; API Evangelist added only this provenance block. x-evidence: - url: https://docs.oracle.com/en-us/iaas/api/specs/index.json what: Oracle's own index of every OCI service specification - url: https://docs.oracle.com/en-us/iaas/api/specs/4a7a190925fb30298864e9aee04c85cfd197a64c6eca47f749c72b5d9b9046ba.yaml what: the harvested document for API Gateway API servers: - url: http://127.0.0.1/20190501 - url: https://127.0.0.1/20190501 tags: - name: apiGateway paths: /apis: get: description: 'Returns a list of APIs. ' operationId: ListApis parameters: - $ref: '#/components/parameters/CompartmentIdQueryParam' - $ref: '#/components/parameters/DisplayNameQueryParam' - $ref: '#/components/parameters/ApiLifecycleStateQueryParam' - $ref: '#/components/parameters/PaginationLimitQueryParam' - $ref: '#/components/parameters/PaginationTokenQueryParam' - $ref: '#/components/parameters/SortOrderQueryParam' - $ref: '#/components/parameters/SortByQueryParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: A page of API Summary objects. headers: opc-next-page: description: 'For list pagination. When this header appears in the response, additional pages of results remain. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' schema: type: string default: 'null' opc-prev-page: description: 'For list pagination. When this header appears in the response, additional pages of results were seen previously. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/ApiCollection' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Gets a list of all APIs in a compartment tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/Api' post: description: 'Creates a new API. ' operationId: CreateApi parameters: - $ref: '#/components/parameters/RetryTokenHeader' - $ref: '#/components/parameters/RequestIdHeader' responses: 201: description: The API is being created. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' location: description: 'Location of the resource. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Api' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Creates a new API tags: - apiGateway x-obmcs-client-retries-enabled: true requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateApiDetails' description: Details for the new API. required: true /apis/{apiId}: delete: description: Deletes the API with the given identifier. operationId: DeleteApi parameters: - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/OverrideLocksQueryParameter' responses: 202: description: The API will be deleted. headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Delete an API. tags: - apiGateway x-related-resource: '#/definitions/Api' get: description: Gets an API by identifier. operationId: GetApi parameters: - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: Retrieves the API with the given identifier. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Api' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Get API tags: - apiGateway x-obmcs-client-retries-enabled: true put: description: Updates the API with the given identifier. operationId: UpdateApi parameters: - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/OverrideLocksQueryParameter' responses: 202: description: The API will be updated. headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Update the API by the identifier tags: - apiGateway x-related-resource: '#/definitions/Api' requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateApiDetails' description: The information to be updated. required: true /apis/{apiId}/actions/addLock: post: description: Adds a lock to a Api resource. operationId: AddApiLock parameters: - description: 'Unique identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' in: header name: opc-request-id required: false schema: type: string - description: 'For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource''s current etag value. ' in: header name: if-match schema: type: string - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/AddResourceLockDetailsBodyParam' responses: 200: description: Lock is added. headers: etag: description: 'etag for the returned Api resource. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/Api' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/DefaultError' summary: Adds a lock to a Api resource. tags: - apiGateway x-related-resource: '#/definitions/Api' /apis/{apiId}/actions/changeCompartment: post: description: Changes the API compartment. operationId: ChangeApiCompartment parameters: - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/RetryTokenHeader' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/OverrideLocksQueryParameter' responses: 202: description: The API compartment will be changed. headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Change the API compartment. tags: - apiGateway x-related-resource: '#/definitions/Api' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChangeApiCompartmentDetails' description: Details of the target compartment. required: true /apis/{apiId}/actions/removeLock: post: description: Removes a lock from a Api resource. operationId: RemoveApiLock parameters: - description: 'Unique identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' in: header name: opc-request-id required: false schema: type: string - description: 'For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource''s current etag value. ' in: header name: if-match schema: type: string - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/RemoveResourceLockDetailsBodyParam' responses: 200: description: Lock is removed. headers: etag: description: 'etag for the returned Api resource. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/Api' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/DefaultError' summary: Removes a lock to a Api resource. tags: - apiGateway x-related-resource: '#/definitions/Api' /apis/{apiId}/content: get: description: Get the raw API content. operationId: GetApiContent parameters: - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RangeHeader' responses: 200: description: Retrieves the raw API content with the given identifier. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' x-content-sha256: description: Base64 encoded Sha256 of the body. schema: type: string content: application/json: schema: format: binary type: string 206: description: Retrieves the raw API content byte range. headers: content-range: description: 'Content-Range header for range requests, per [RFC 7233](https://tools.ietf.org/html/rfc7233#section-4.2). ' schema: type: string etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: format: binary type: string 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 416: $ref: '#/components/responses/416' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Get raw API content tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/Api' /apis/{apiId}/deploymentSpecification: get: description: Gets an API Deployment specification by identifier. operationId: GetApiDeploymentSpecification parameters: - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/IfMatchHeader' responses: 200: description: Retrieves the API Deployments specification with the given identifier. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/ApiSpecification' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Get API Deployment specification based on the API. tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/ApiSpecification' /apis/{apiId}/validations: get: description: Gets the API validation results. operationId: GetApiValidations parameters: - $ref: '#/components/parameters/ApiIdentifierPathParam' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/IfMatchHeader' responses: 200: description: Retrieves the API validation results. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/ApiValidations' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Get API content tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/ApiValidations' /certificates: get: description: 'Returns a list of certificates. ' operationId: ListCertificates parameters: - $ref: '#/components/parameters/CompartmentIdQueryParam' - $ref: '#/components/parameters/DisplayNameQueryParam' - $ref: '#/components/parameters/CertificateLifecycleStateQueryParam' - $ref: '#/components/parameters/PaginationLimitQueryParam' - $ref: '#/components/parameters/PaginationTokenQueryParam' - $ref: '#/components/parameters/SortOrderQueryParam' - $ref: '#/components/parameters/SortByQueryParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: A page of Certificate objects. headers: opc-next-page: description: 'For list pagination. When this header appears in the response, additional pages of results remain. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' schema: type: string default: 'null' opc-prev-page: description: 'For list pagination. When this header appears in the response, additional pages of results were seen previously. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/CertificateCollection' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Gets a list of all Certificates in a compartment tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/Certificate' post: description: 'Creates a new Certificate. ' operationId: CreateCertificate parameters: - $ref: '#/components/parameters/RetryTokenHeader' - $ref: '#/components/parameters/RequestIdHeader' responses: 201: description: The certificate is being created. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' location: description: 'Location of the resource. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Certificate' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Creates a new Certificate tags: - apiGateway x-obmcs-client-retries-enabled: true requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCertificateDetails' description: Details for the new certificate required: true /certificates/{certificateId}: delete: description: Deletes the certificate with the given identifier. operationId: DeleteCertificate parameters: - $ref: '#/components/parameters/CertificateIdentifierPathParam' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/OverrideLocksQueryParameter' responses: 202: description: The certificate will be deleted. headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Delete a provisioned Certificate tags: - apiGateway x-related-resource: '#/definitions/Certificate' get: description: Gets a certificate by identifier. operationId: GetCertificate parameters: - $ref: '#/components/parameters/CertificateIdentifierPathParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: Retrieves the certificate with the given identifier. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Certificate' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Get Certificate tags: - apiGateway x-obmcs-client-retries-enabled: true put: description: Updates a certificate with the given identifier operationId: UpdateCertificate parameters: - $ref: '#/components/parameters/CertificateIdentifierPathParam' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/OverrideLocksQueryParameter' responses: 202: description: The certificate will be updated. headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Update Certificate by the identifier tags: - apiGateway x-related-resource: '#/definitions/Certificate' requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateCertificateDetails' description: The information to be updated. required: true /certificates/{certificateId}/actions/addLock: post: description: Adds a lock to a Certificate resource. operationId: AddCertificateLock parameters: - description: 'Unique identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' in: header name: opc-request-id required: false schema: type: string - description: 'For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource''s current etag value. ' in: header name: if-match schema: type: string - $ref: '#/components/parameters/CertificateIdentifierPathParam' - $ref: '#/components/parameters/AddResourceLockDetailsBodyParam' responses: 200: description: Lock is added. headers: etag: description: 'etag for the returned Certificate resource. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/Certificate' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/DefaultError' summary: Adds a lock to a Certificate resource. tags: - apiGateway x-related-resource: '#/definitions/Certificate' /certificates/{certificateId}/actions/changeCompartment: post: description: Changes the certificate compartment. operationId: ChangeCertificateCompartment parameters: - $ref: '#/components/parameters/CertificateIdentifierPathParam' - $ref: '#/components/parameters/RetryTokenHeader' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/OverrideLocksQueryParameter' responses: 204: description: The certificate's compartment was changed. headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Change the certificate compartment. tags: - apiGateway x-related-resource: '#/definitions/Certificate' requestBody: content: application/json: schema: $ref: '#/components/schemas/ChangeCertificateCompartmentDetails' description: Details of the target compartment. required: true /certificates/{certificateId}/actions/removeLock: post: description: Removes a lock from a Certificate resource. operationId: RemoveCertificateLock parameters: - description: 'Unique identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' in: header name: opc-request-id required: false schema: type: string - description: 'For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource''s current etag value. ' in: header name: if-match schema: type: string - $ref: '#/components/parameters/CertificateIdentifierPathParam' - $ref: '#/components/parameters/RemoveResourceLockDetailsBodyParam' responses: 200: description: Lock is removed. headers: etag: description: 'etag for the returned Certificate resource. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/Certificate' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/DefaultError' summary: Removes a lock to a Certificate resource. tags: - apiGateway x-related-resource: '#/definitions/Certificate' /sdkLanguageTypes: get: description: Lists programming languages in which SDK can be generated. operationId: ListSdkLanguageTypes parameters: - $ref: '#/components/parameters/DisplayNameQueryParam' - $ref: '#/components/parameters/PaginationLimitQueryParam' - $ref: '#/components/parameters/PaginationTokenQueryParam' - $ref: '#/components/parameters/SortOrderQueryParam' - $ref: '#/components/parameters/SortByQueryParam' - $ref: '#/components/parameters/CompartmentIdQueryParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: A list of programming languages in which SDK can be generated. headers: opc-next-page: description: 'For list pagination. When this header appears in the response, additional pages of results remain. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' schema: type: string default: 'null' opc-prev-page: description: 'For list pagination. When this header appears in the response, additional pages of results were seen previously. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/SdkLanguageTypeCollection' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Lists available SDK target languages. tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/SdkLanguageTypeSummary' /sdks: get: description: Returns list of generated SDKs. operationId: ListSdks parameters: - $ref: '#/components/parameters/SdkIdentifierQueryParam' - $ref: '#/components/parameters/DisplayNameQueryParam' - $ref: '#/components/parameters/SdkLifecycleStateQueryParam' - $ref: '#/components/parameters/PaginationLimitQueryParam' - $ref: '#/components/parameters/PaginationTokenQueryParam' - $ref: '#/components/parameters/SortOrderQueryParam' - $ref: '#/components/parameters/SortByQueryParam' - $ref: '#/components/parameters/ApiIdentifierQueryParam' - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: A list of existing SDKs. headers: opc-next-page: description: 'For list pagination. When this header appears in the response, additional pages of results remain. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' schema: type: string default: 'null' opc-prev-page: description: 'For list pagination. When this header appears in the response, additional pages of results were seen previously. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/SdkCollection' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Lists SDKs tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/Sdk' post: description: Creates a new SDK. operationId: CreateSdk parameters: - $ref: '#/components/parameters/RetryTokenHeader' - $ref: '#/components/parameters/RequestIdHeader' responses: 201: description: The SDK is being created. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' location: description: 'Location of the resource. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Sdk' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Creates an SDK tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/Sdk' requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateSdkDetails' description: Details for the new SDK. required: true /sdks/{sdkId}: parameters: - $ref: '#/components/parameters/SdkIdentifierPathParam' delete: description: Deletes provided SDK. operationId: DeleteSdk parameters: - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/OverrideLocksQueryParameter' responses: 202: description: SDK will be deleted. headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' opc-work-request-id: description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' schema: type: string default: 'null' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Deletes SDK tags: - apiGateway x-related-resource: '#/definitions/Sdk' get: description: Return object store downloadable URL and metadata. operationId: GetSdk parameters: - $ref: '#/components/parameters/RequestIdHeader' responses: 200: description: Metadata details including object store downloadable URL. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Sdk' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Downloadable link for the SDK. tags: - apiGateway x-obmcs-client-retries-enabled: true x-related-resource: '#/definitions/Sdk' put: description: Updates the SDK with the given identifier. operationId: UpdateSdk parameters: - $ref: '#/components/parameters/IfMatchHeader' - $ref: '#/components/parameters/RequestIdHeader' - $ref: '#/components/parameters/OverrideLocksQueryParameter' responses: 200: description: The SDK is updated. headers: etag: description: 'For optimistic concurrency control. See `if-match`. ' schema: type: string default: 'null' opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Sdk' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 409: $ref: '#/components/responses/409' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/default' summary: Update the SDK by the identifier tags: - apiGateway x-related-resource: '#/definitions/Sdk' requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateSdkDetails' description: The information to be updated. required: true /sdks/{sdkId}/actions/addLock: post: description: Adds a lock to a Sdk resource. operationId: AddSdkLock parameters: - description: 'Unique identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' in: header name: opc-request-id required: false schema: type: string - description: 'For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource''s current etag value. ' in: header name: if-match schema: type: string - $ref: '#/components/parameters/SdkIdentifierPathParam' - $ref: '#/components/parameters/AddResourceLockDetailsBodyParam' responses: 200: description: Lock is added. headers: etag: description: 'etag for the returned Sdk resource. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/Sdk' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/DefaultError' summary: Adds a lock to a Sdk resource. tags: - apiGateway x-related-resource: '#/definitions/Sdk' /sdks/{sdkId}/actions/removeLock: post: description: Removes a lock from a Sdk resource. operationId: RemoveSdkLock parameters: - description: 'Unique identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' in: header name: opc-request-id required: false schema: type: string - description: 'For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource''s current etag value. ' in: header name: if-match schema: type: string - $ref: '#/components/parameters/SdkIdentifierPathParam' - $ref: '#/components/parameters/RemoveResourceLockDetailsBodyParam' responses: 200: description: Lock is removed. headers: etag: description: 'etag for the returned Sdk resource. ' schema: type: string opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. ' schema: type: string content: application/json: schema: $ref: '#/components/schemas/Sdk' 400: $ref: '#/components/responses/400' 401: $ref: '#/components/responses/401' 404: $ref: '#/components/responses/404' 412: $ref: '#/components/responses/412' 429: $ref: '#/components/responses/429' 500: $ref: '#/components/responses/500' default: $ref: '#/components/responses/DefaultError' summary: Removes a lock to a Sdk resource. tags: - apiGateway x-related-resource: '#/definitions/Sdk' components: schemas: UpdateSdkDetails: description: The information to be updated. properties: definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object type: object RateLimitingPolicy: description: Limit the number of requests that should be handled for the specified window using a specfic key. properties: rateInRequestsPerSecond: description: The maximum number of requests per second to allow. type: integer rateKey: description: The key used to group requests together. enum: - CLIENT_IP - TOTAL type: string required: - rateInRequestsPerSecond - rateKey type: object RenameQueryParameterPolicyItem: description: 'The value will be a copy of the original value of the source parameter and will not be affected by any other transformation policies applied to that parameter. ' properties: from: description: 'The original case-sensitive name of the query parameter. This name must be unique across transformation policies. ' example: bookId maxLength: 2048 minLength: 1 type: string to: description: 'The new name of the query parameter. This name must be unique across transformation policies. ' example: bookIsbn maxLength: 2048 minLength: 1 type: string required: - from - to type: object Error: description: Error Information. properties: code: description: A short error code that defines the error, meant for programmatic parsing. type: string message: description: A human-readable error string. type: string required: - code - message type: object SetQueryParameterPolicyItem: description: 'Set will add a new query parameter if it was not in the original request. If the parameter already exists on the request, you can choose to override, append, or skip it. ' properties: ifExists: default: OVERWRITE description: 'If a query parameter with the same name already exists in the request, OVERWRITE will overwrite the value, APPEND will append to the existing value, or SKIP will keep the existing value. ' enum: - OVERWRITE - APPEND - SKIP type: string name: description: 'The case-sensitive name of the query parameter. This name must be unique across transformation policies. ' example: bookIsbn maxLength: 2048 minLength: 1 type: string values: description: 'A list of new values. Each value can be a constant or may include one or more expressions enclosed within ${} delimiters. ' items: example: ${request.headers[bookIsbn]} maxLength: 4096 minLength: 1 type: string maxItems: 10 minItems: 1 type: array required: - name - values type: object CertificateCollection: description: Collection of certificate summaries. properties: items: description: Certificate summaries. items: $ref: '#/components/schemas/CertificateSummary' type: array required: - items type: object MutualTlsDetails: description: 'Properties used to configure client mTLS verification when API Consumer makes connection to the gateway. ' properties: allowedSans: description: Allowed list of CN or SAN which will be used for verification of certificate. items: minLength: 1 type: string type: array isVerifiedCertificateRequired: default: false description: Determines whether to enable client verification when API Consumer makes connection to the gateway. type: boolean type: object DynamicAuthenticationPolicy: description: Policy on how to authenticate requests when multiple authentication options are configured for a deployment. For an incoming request, the value of selector specified under selectionSource will be matched against the keys specified for each authentication server. The authentication server whose key matches the value of selector will be used for authentication. properties: authenticationServers: description: List of authentication servers to choose from during dynamic authentication. items: $ref: '#/components/schemas/AuthenticationServerPolicy' minItems: 1 type: array selectionSource: $ref: '#/components/schemas/SelectionSourcePolicy' required: - selectionSource - authenticationServers type: object ValidationRequestPolicy: description: Top-level validation policy mixin (not directly used). properties: validationMode: default: ENFORCING description: 'Validation behavior mode. In `ENFORCING` mode, upon a validation failure, the request will be rejected with a 4xx response and not sent to the backend. In `PERMISSIVE` mode, the result of the validation will be exposed as metrics while the request will follow the normal path. `DISABLED` type turns the validation off. ' enum: - ENFORCING - PERMISSIVE - DISABLED type: string type: object RequestBodySizeValidationPolicy: description: Validate the size of the request body. properties: maximumBodySizeInBytes: description: The maximum size of the request body in bytes. format: int64 minimum: 0 type: integer unsizedBodyPolicy: description: The behavior of the gateway when a request is received without a known content length. enum: - BUFFER_AND_VALIDATE - REQUIRE_CONTENT_LENGTH - STREAM_WITH_VALIDATION type: string type: object RequestParameterValidation: description: Common parameter validation properties. properties: name: description: Parameter name. type: string required: - name type: object RenameHeaderPolicy: description: 'Rename HTTP headers as they pass through the gateway. ' properties: items: description: The list of headers. items: $ref: '#/components/schemas/RenameHeaderPolicyItem' maxItems: 20 minItems: 1 type: array required: - items type: object DynamicSelectionKey: description: Base policy for defining how to match the context variable in an incoming request with selection keys when dynamically routing and dynamically authenticating requests. discriminator: propertyName: type properties: isDefault: default: false description: Specifies whether to use the route or authentication server associated with this selection key as the default. The default is used if the value of a context variable in an incoming request does not match any of the other selection key values when dynamically routing and dynamically authenticating requests. type: boolean name: description: Name assigned to the branch. maxLength: 1024 minLength: 1 type: string type: default: ANY_OF description: Type of the selection key. enum: - ANY_OF - WILDCARD type: string required: - name type: object CertificateSummary: description: A summary of the certificate. properties: compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object id: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the resource. ' maxLength: 255 minLength: 1 type: string lifecycleDetails: description: 'A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state. ' type: string lifecycleState: description: The current state of the certificate. type: string x-obmcs-enumref: '#/definitions/Certificate/lifecycleState' locks: description: Locks associated with this resource. items: $ref: '#/components/schemas/ResourceLock' maxItems: 2 type: array subjectNames: description: The entity to be secured by the certificate and additional host names. items: type: string type: array systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only string type is supported. ' type: object description: 'Key-value pair representing system tags'' keys and values scoped to a namespace. Example: `{"bar-key": "value"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object timeCreated: description: The time this resource was created. An RFC3339 formatted datetime string. format: date-time type: string timeNotValidAfter: description: The date and time the certificate will expire. format: date-time type: string timeUpdated: description: The time this resource was last updated. An RFC3339 formatted datetime string. format: date-time type: string required: - id - compartmentId - displayName - subjectNames - timeNotValidAfter - timeCreated type: object QueryParameterValidationItem: allOf: - $ref: '#/components/schemas/RequestParameterValidation' - properties: required: default: false description: Determines if the parameter is required in the request. type: boolean type: object description: Query parameter validation properties. example: name: fields required: true SetHeaderPolicyItem: description: 'Set will add a new header if it was not in the original request. If the header already exists on the request, you can choose to override, append, or skip it. ' properties: ifExists: default: OVERWRITE description: 'If a header with the same name already exists in the request, OVERWRITE will overwrite the value, APPEND will append to the existing value, or SKIP will keep the existing value. ' enum: - OVERWRITE - APPEND - SKIP type: string name: description: 'The case-insensitive name of the header. This name must be unique across transformation policies. ' example: X-CorrelationID maxLength: 1024 minLength: 1 type: string values: description: 'A list of new values. Each value can be a constant or may include one or more expressions enclosed within ${} delimiters. ' items: example: ${request.headers[opc-request-id]} maxLength: 4096 minLength: 1 type: string maxItems: 10 minItems: 1 type: array required: - name - values type: object SelectionSourcePolicy: description: The type of selector to use when dynamically routing and dynamically authenticating requests. discriminator: propertyName: type properties: type: default: SINGLE description: Type of the Selection source to use. enum: - SINGLE type: string required: - type type: object ApiValidationDetails: allOf: - $ref: '#/components/schemas/ApiValidationResult' - properties: details: description: Details of validation. items: $ref: '#/components/schemas/ApiValidationDetail' type: array type: object description: Detail of an error or warning. CreateApiDetails: description: Information about the new API. properties: compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string content: description: API Specification content in json or yaml format type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object locks: description: Locks associated with this resource. items: $ref: '#/components/schemas/AddResourceLockDetails' maxItems: 1 type: array required: - compartmentId type: object HeaderTransformationPolicy: description: 'A set of transformations to apply to HTTP headers that pass through the gateway. ' properties: filterHeaders: $ref: '#/components/schemas/FilterHeaderPolicy' renameHeaders: $ref: '#/components/schemas/RenameHeaderPolicy' setHeaders: $ref: '#/components/schemas/SetHeaderPolicy' type: object ContentValidation: description: Content validation properties. discriminator: propertyName: validationType properties: validationType: default: NONE description: 'Validation type defines the content validation method. Make the validation to first parse the body as the respective format. ' enum: - NONE type: string required: - validationType type: object RemoveResourceLockDetails: description: 'Used to remove a resource lock. Resource locks are used to prevent certain APIs from being called for the resource. A full lock prevents both updating the resource and deleting the resource. A delete lock prevents deleting the resource. ' properties: type: description: Type of the lock. enum: - FULL - DELETE type: string required: - type type: object ApiValidationResult: description: The result of single validation. properties: name: description: Name of the validation. type: string result: description: Result of the validation. enum: - ERROR - WARNING - OK - FAILED type: string required: - name - result type: object UsagePlansPolicy: description: Usage plan policies for this deployment properties: tokenLocations: description: "A list of context variables specifying where API tokens may be located in a request.\nExample locations:\n - \"request.headers[token]\"\n - \"request.query[token]\"\n - \"request.auth[Token]\"\n - \"request.path[TOKEN]\"\n" items: maxLength: 255 minLength: 1 type: string maxItems: 10 minItems: 1 type: array required: - tokenLocations type: object RouteAuthorizationPolicy: description: 'If authentication has been performed, validate whether the request scope (if any) applies to this route. If no RouteAuthorizationPolicy is defined for a route, a policy with a type of AUTHENTICATION_ONLY is applied. ' discriminator: propertyName: type properties: type: default: AUTHENTICATION_ONLY description: 'Indicates how authorization should be applied. For a type of ANY_OF, an "allowedScope" property must also be specified. Otherwise, only a type is required. For a type of ANONYMOUS, an authenticated API must have the "isAnonymousAccessAllowed" property set to "true" in the authentication policy. ' enum: - ANONYMOUS - ANY_OF - AUTHENTICATION_ONLY type: string type: object RenameQueryParameterPolicy: description: 'Rename parameters on the query string as they pass through the gateway. ' properties: items: description: 'The list of query parameters. ' items: $ref: '#/components/schemas/RenameQueryParameterPolicyItem' maxItems: 20 minItems: 1 type: array required: - items type: object ApiValidationDetail: description: Detail of a single error or warning. properties: msg: description: Description of the warning/error. type: string severity: description: Severity of the issue. enum: - INFO - WARNING - ERROR type: string src: description: Position of the issue in the specification file (line, column). items: items: type: number type: array type: array type: object ChangeApiCompartmentDetails: description: The new compartment details for the API. properties: compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string required: - compartmentId type: object ExecutionLogPolicy: description: 'Configures the logging policies for the execution logs of an API Deployment. ' properties: isEnabled: default: false description: 'Enables pushing of execution logs to the legacy OCI Object Storage log archival bucket. Oracle recommends using the OCI Logging service to enable, retrieve, and query execution logs for an API Deployment. If there is an active log object for the API Deployment and its category is set to ''execution'' in OCI Logging service, the logs will not be uploaded to the legacy OCI Object Storage log archival bucket. Please note that the functionality to push to the legacy OCI Object Storage log archival bucket has been deprecated and will be removed in the future. ' type: boolean logLevel: default: INFO description: 'Specifies the log level used to control logging output of execution logs. Enabling logging at a given level also enables logging at all higher levels. ' enum: - INFO - WARN - ERROR type: string type: object ResponseCacheLookupPolicy: description: 'Base policy for Response Cache lookup. ' discriminator: propertyName: type properties: isEnabled: default: true description: 'Whether this policy is currently enabled. ' type: boolean isPrivateCachingEnabled: default: false description: "Set true to allow caching responses where the request has an Authorization header. Ensure you have configured your \ncache key additions to get the level of isolation across authenticated requests that you require.\n\nWhen false, any request with an Authorization header will not be stored in the Response Cache.\n\nIf using the CustomAuthenticationPolicy then the tokenHeader/tokenQueryParam are also subject to this check.\n" type: boolean type: description: Type of the Response Cache Store Policy. enum: - SIMPLE_LOOKUP_POLICY type: string required: - type SdkSummary: description: A summary of the SDK. properties: compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object id: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the resource. ' maxLength: 255 minLength: 1 type: string lifecycleState: description: The current state of the SDK. type: string x-obmcs-enumref: '#/definitions/Sdk/lifecycleState' locks: description: Locks associated with this resource. items: $ref: '#/components/schemas/ResourceLock' maxItems: 2 type: array systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only string type is supported. ' type: object description: 'Key-value pair representing system tags'' keys and values scoped to a namespace. Example: `{"bar-key": "value"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object targetLanguage: description: 'The string representing the target programming language for generating the SDK. ' type: string timeCreated: description: The time this resource was created. An RFC3339 formatted datetime string. format: date-time type: string timeUpdated: description: The time this resource was last updated. An RFC3339 formatted datetime string. format: date-time type: string required: - id - targetLanguage - timeCreated - displayName type: object ApiSpecificationRouteBackend: description: 'The backend to forward requests to. ' discriminator: propertyName: type properties: type: description: Type of the API backend. enum: - ORACLE_FUNCTIONS_BACKEND - HTTP_BACKEND - STOCK_RESPONSE_BACKEND - DYNAMIC_ROUTING_BACKEND - OAUTH2_LOGOUT_BACKEND - OAUTH2_LOGIN_BACKEND type: string required: - type type: object SetHeaderPolicy: description: 'Set HTTP headers as they pass through the gateway. ' properties: items: description: The list of headers. items: $ref: '#/components/schemas/SetHeaderPolicyItem' maxItems: 20 minItems: 1 type: array required: - items type: object AccessLogPolicy: description: 'Configures the logging policies for the access logs of an API Deployment. ' properties: isEnabled: default: false description: 'Enables pushing of access logs to the legacy OCI Object Storage log archival bucket. Oracle recommends using the OCI Logging service to enable, retrieve, and query access logs for an API Deployment. If there is an active log object for the API Deployment and its category is set to ''access'' in OCI Logging service, the logs will not be uploaded to the legacy OCI Object Storage log archival bucket. Please note that the functionality to push to the legacy OCI Object Storage log archival bucket has been deprecated and will be removed in the future. ' type: boolean type: object CreateSdkDetails: description: Information about the new SDK. properties: apiId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of API resource ' maxLength: 255 minLength: 1 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object locks: description: Locks associated with this resource. items: $ref: '#/components/schemas/AddResourceLockDetails' maxItems: 1 type: array parameters: additionalProperties: description: 'The value of the config. Only the String type is supported. ' type: string description: 'Additional optional configurations that can be passed to generate SDK Api. The applicable parameters are listed under "parameters" when "/sdkLanguageTypes" is called. Example: `{"configName": "configValue"}` ' type: object targetLanguage: description: 'The string representing the target programming language for generating the SDK. ' type: string required: - apiId - targetLanguage type: object UpdateApiDetails: description: The information to be updated. properties: content: description: API Specification content in json or yaml format type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object type: object SdkLanguageOptionalParametersAllowedValue: description: Allowed value object. properties: description: description: 'Description for the allowed value. ' type: string name: description: 'Name of the allowed value. ' type: string type: object CreateCertificateDetails: description: Information about a new certificate. properties: certificate: description: The data of the leaf certificate in pem format. type: string compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object intermediateCertificates: description: The intermediate certificate data associated with the certificate in pem format. type: string locks: description: Locks associated with this resource. items: $ref: '#/components/schemas/AddResourceLockDetails' maxItems: 1 type: array privateKey: description: The private key associated with the certificate in pem format. type: string required: - compartmentId - privateKey - certificate type: object QueryParameterTransformationPolicy: description: 'A set of transformations to apply to query parameters that pass through the gateway. ' properties: filterQueryParameters: $ref: '#/components/schemas/FilterQueryParameterPolicy' renameQueryParameters: $ref: '#/components/schemas/RenameQueryParameterPolicy' setQueryParameters: $ref: '#/components/schemas/SetQueryParameterPolicy' type: object SetQueryParameterPolicy: description: 'Set parameters on the query string as they pass through the gateway. ' properties: items: description: 'The list of query parameters. ' items: $ref: '#/components/schemas/SetQueryParameterPolicyItem' maxItems: 20 minItems: 1 type: array required: - items type: object ApiSpecificationRoute: description: 'A single route that forwards requests to a particular backend and may contain some additional policies. ' properties: backend: $ref: '#/components/schemas/ApiSpecificationRouteBackend' loggingPolicies: $ref: '#/components/schemas/ApiSpecificationLoggingPolicies' methods: default: - ANY description: 'A list of allowed methods on this route. ' items: enum: - ANY - HEAD - GET - POST - PUT - PATCH - DELETE - OPTIONS type: string type: array uniqueItems: true path: description: 'A URL path pattern that must be matched on this route. The path pattern may contain a subset of RFC 6570 identifiers to allow wildcard and parameterized matching. ' example: /todos type: string requestPolicies: $ref: '#/components/schemas/ApiSpecificationRouteRequestPolicies' responsePolicies: $ref: '#/components/schemas/ApiSpecificationRouteResponsePolicies' required: - path - backend type: object Certificate: description: 'A certificate contains information to be installed on a gateway to secure the traffic going through it. For more information, see [API Gateway Concepts](/iaas/Content/APIGateway/Concepts/apigatewayconcepts.htm). ' properties: certificate: description: The data of the leaf certificate in pem format. type: string compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object id: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the resource. ' maxLength: 255 minLength: 1 type: string intermediateCertificates: description: The intermediate certificate data associated with the certificate in pem format. type: string lifecycleDetails: description: 'A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state. ' type: string lifecycleState: description: The current state of the certificate. enum: - CREATING - ACTIVE - UPDATING - DELETING - DELETED - FAILED type: string locks: description: Locks associated with this resource. items: $ref: '#/components/schemas/ResourceLock' maxItems: 2 type: array subjectNames: description: The entity to be secured by the certificate and additional host names. items: type: string type: array systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only string type is supported. ' type: object description: 'Key-value pair representing system tags'' keys and values scoped to a namespace. Example: `{"bar-key": "value"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object timeCreated: description: The time this resource was created. An RFC3339 formatted datetime string. format: date-time type: string timeNotValidAfter: description: The date and time the certificate will expire. format: date-time type: string timeUpdated: description: The time this resource was last updated. An RFC3339 formatted datetime string. format: date-time type: string required: - id - compartmentId - subjectNames - timeNotValidAfter - certificate - displayName - timeCreated type: object UpdateCertificateDetails: description: The information to be updated. properties: definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object type: object SdkLanguageOptionalParameters: description: List of additional applicable parameters for any given target language. properties: allowedValues: description: 'List of allowed input values. Example: `[{"name": "name1", "description": "description1"}, ...]` ' items: $ref: '#/components/schemas/SdkLanguageOptionalParametersAllowedValue' type: array description: description: 'Description for the parameter. ' type: string displayName: description: 'Display name of the parameter. ' type: string inputType: description: 'The input type for this param. - Input type is ENUM when only specific list of input strings are allowed. - Input type is EMAIL when input type is an email ID. - Input type is URI when input type is an URI. - Input type is STRING in all other cases. ' enum: - ENUM - EMAIL - URI - STRING type: string isRequired: default: false description: 'Information on whether the parameter is required or not. ' type: boolean maxSize: description: 'Maximum size as input value for this parameter. ' type: number paramName: description: 'Name of the parameter. ' type: string required: - paramName type: object SdkLanguageTypeCollection: description: Collection of available SDK target languages. properties: items: description: SDK target language details. items: $ref: '#/components/schemas/SdkLanguageTypeSummary' type: array required: - items type: object FilterHeaderPolicy: description: 'Filter HTTP headers as they pass through the gateway. The gateway applies filters after other transformations, so any headers set or renamed must also be listed here when using an ALLOW type policy. ' properties: items: description: 'The list of headers. ' items: $ref: '#/components/schemas/FilterHeaderPolicyItem' maxItems: 20 minItems: 0 type: array type: default: BLOCK description: 'BLOCK drops any headers that are in the list of items, so it acts as an exclusion list. ALLOW permits only the headers in the list and removes all others, so it acts as an inclusion list. ' enum: - ALLOW - BLOCK type: string required: - type - items type: object SdkCollection: description: Collection of the existing SDKs. properties: items: description: SDK summaries. items: $ref: '#/components/schemas/SdkSummary' type: array required: - items type: object ApiSummary: description: A summary of the API. properties: compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object id: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the resource. ' maxLength: 255 minLength: 1 type: string lifecycleDetails: description: "A message describing the current lifecycleState in more detail. For ACTIVE\nstate it describes if the document has been validated and the possible values are:\n- 'New' for just updated API Specifications\n- 'Validating' for a document which is being validated.\n- 'Valid' the document has been validated without any errors or warnings\n- 'Warning' the document has been validated and contains warnings\n- 'Error' the document has been validated and contains errors\n- 'Failed' the document validation failed\n- 'Canceled' the document validation was canceled \n\nFor other states it may provide more details like actionable information.\n" type: string lifecycleState: description: The current state of the API. enum: - CREATING - ACTIVE - UPDATING - DELETING - DELETED - FAILED type: string locks: description: Locks associated with this resource. items: $ref: '#/components/schemas/ResourceLock' maxItems: 2 type: array specificationType: description: Type of API Specification file. type: string systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only string type is supported. ' type: object description: 'Key-value pair representing system tags'' keys and values scoped to a namespace. Example: `{"bar-key": "value"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object timeCreated: description: The time this resource was created. An RFC3339 formatted datetime string. format: date-time type: string timeUpdated: description: The time this resource was last updated. An RFC3339 formatted datetime string. format: date-time type: string validationResults: description: Status of each feature available from the API. items: $ref: '#/components/schemas/ApiValidationResult' type: array required: - id - compartmentId type: object BodyValidationRequestPolicy: allOf: - $ref: '#/components/schemas/ValidationRequestPolicy' - properties: content: additionalProperties: $ref: '#/components/schemas/ContentValidation' description: "The content of the request body. The key is a [media type range](https://tools.ietf.org/html/rfc7231#appendix-D)\nsubset restricted to the following schema\n\n key ::= (\n / ( \"*\" \"/\" \"*\" )\n / ( type \"/\" \"*\" )\n / ( type \"/\" subtype )\n )\n\nFor requests that match multiple keys, only the most specific key is applicable.\ne.g. `text/plain` overrides `text/*`\n" example: '*/*': validationType: NONE application/*: validationType: NONE application/json: validationType: NONE type: object required: default: false description: Determines if the request body is required in the request. type: boolean required: - content type: object description: Validate the payload body of the incoming API requests on a specific route. AuthenticationServerPolicy: description: Policy for the details regarding each authentication server under dynamic authentication. We specify the value of selectors for which this authentication server must be selected for a request under keys. We specify the configuration details of authentication server under authenticationServerDetail. properties: authenticationServerDetail: $ref: '#/components/schemas/AuthenticationPolicy' key: $ref: '#/components/schemas/DynamicSelectionKey' required: - key - authenticationServerDetail type: object ApiSpecification: description: The logical configuration of the API exposed by a deployment. properties: loggingPolicies: $ref: '#/components/schemas/ApiSpecificationLoggingPolicies' requestPolicies: $ref: '#/components/schemas/ApiSpecificationRequestPolicies' routes: description: A list of routes that this API exposes. items: $ref: '#/components/schemas/ApiSpecificationRoute' type: array type: object HeaderValidationItem: allOf: - $ref: '#/components/schemas/RequestParameterValidation' - properties: required: default: false description: Determines if the header is required in the request. type: boolean type: object description: Header validation properties. example: name: X-Client-Tokens required: true Api: allOf: - $ref: '#/components/schemas/ApiSummary' description: 'An API is simple container for an API Specification. For more information, see [API Gateway Concepts](/iaas/Content/APIGateway/Concepts/apigatewayconcepts.htm). ' ApiSpecificationRouteResponsePolicies: description: 'Behavior applied to any responses sent by the API for requests on this route. ' properties: headerTransformations: $ref: '#/components/schemas/HeaderTransformationPolicy' responseCacheStore: $ref: '#/components/schemas/ResponseCacheStorePolicy' type: object FilterHeaderPolicyItem: description: 'A header to drop (with BLOCK) or pass through (with ALLOW). ' properties: name: description: 'The case-insensitive name of the header. This name must be unique across transformation policies. ' example: User-Agent maxLength: 1024 minLength: 1 type: string required: - name type: object ResourceLock: description: 'Resource locks are used to prevent certain APIs from being called for the resource. A full lock prevents both updating the resource and deleting the resource. A delete lock prevents deleting the resource. ' properties: message: description: 'A message added by the creator of the lock. This is typically used to give an indication of why the resource is locked. ' type: string relatedResourceId: description: 'The id of the resource that is locking this resource. Indicates that deleting this resource will remove the lock. ' type: string timeCreated: description: When the lock was created. format: date-time type: string type: description: Type of the lock. enum: - FULL - DELETE type: string required: - type type: object SdkLanguageTypeSummary: description: SDK target language details. properties: description: description: 'Additional details. ' type: string displayName: description: 'Display name of the target programming language. ' type: string name: description: 'Name of the programming language. ' type: string parameters: description: 'List of optional configurations that can be used while generating SDK for the given target language. ' items: $ref: '#/components/schemas/SdkLanguageOptionalParameters' type: array version: description: 'Version string of the programming language defined in name. ' type: string required: - name - version type: object ResponseCacheStorePolicy: description: 'Base policy for how a response from a backend is cached in the Response Cache. ' discriminator: propertyName: type properties: type: description: Type of the Response Cache Store Policy. enum: - FIXED_TTL_STORE_POLICY type: string required: - type ApiCollection: description: Collection of API summaries. properties: items: description: API summaries. items: $ref: '#/components/schemas/ApiSummary' type: array required: - items type: object ChangeCertificateCompartmentDetails: description: The new compartment details for the certificate. properties: compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string required: - compartmentId type: object HeaderValidationRequestPolicy: allOf: - $ref: '#/components/schemas/ValidationRequestPolicy' - properties: headers: description: The List of Headers items: $ref: '#/components/schemas/HeaderValidationItem' minItems: 1 type: array uniqueItems: true type: object description: Validate the HTTP headers on the incoming API requests on a specific route. CorsPolicy: description: 'Enable CORS (Cross-Origin-Resource-Sharing) request handling. ' properties: allowedHeaders: default: [] description: 'The list of headers that will be allowed from the client via the Access-Control-Allow-Headers header. ''*'' will allow all headers. ' example: - '*' - Content-Type - X-Foo-Bar items: type: string maxItems: 50 type: array uniqueItems: true allowedMethods: default: [] description: 'The list of allowed HTTP methods that will be returned for the preflight OPTIONS request in the Access-Control-Allow-Methods header. ''*'' will allow all methods. ' example: - '*' - GET - POST items: type: string maxItems: 50 type: array uniqueItems: true allowedOrigins: description: 'The list of allowed origins that the CORS handler will use to respond to CORS requests. The gateway will send the Access-Control-Allow-Origin header with the best origin match for the circumstances. ''*'' will match any origins, and ''null'' will match queries from ''file:'' origins. All other origins must be qualified with the scheme, full hostname, and port if necessary. ' example: - '*' - 'null' - https://friendly.com:8080 items: type: string maxItems: 50 type: array uniqueItems: true exposedHeaders: default: [] description: 'The list of headers that the client will be allowed to see from the response as indicated by the Access-Control-Expose-Headers header. ''*'' will expose all headers. ' example: - '*' - opc-request-id items: type: string maxItems: 50 type: array isAllowCredentialsEnabled: default: false description: 'Whether to send the Access-Control-Allow-Credentials header to allow CORS requests with cookies. ' example: false type: boolean maxAgeInSeconds: default: 0 description: 'The time in seconds for the client to cache preflight responses. This is sent as the Access-Control-Max-Age if greater than 0. ' example: 600 minimum: 0 type: integer required: - allowedOrigins type: object RenameHeaderPolicyItem: description: 'The value will be a copy of the original value of the source header and will not be affected by any other transformation policies applied to that header. ' properties: from: description: 'The original case-insensitive name of the header. This name must be unique across transformation policies. ' example: X-Username maxLength: 1024 minLength: 1 type: string to: description: 'The new name of the header. This name must be unique across transformation policies. ' example: X-User-ID maxLength: 1024 minLength: 1 type: string required: - from - to type: object ApiSpecificationRouteRequestPolicies: description: 'Behavior applied to any requests received by the API on this route. ' properties: authorization: $ref: '#/components/schemas/RouteAuthorizationPolicy' bodyValidation: $ref: '#/components/schemas/BodyValidationRequestPolicy' cors: $ref: '#/components/schemas/CorsPolicy' headerTransformations: $ref: '#/components/schemas/HeaderTransformationPolicy' headerValidations: $ref: '#/components/schemas/HeaderValidationRequestPolicy' queryParameterTransformations: $ref: '#/components/schemas/QueryParameterTransformationPolicy' queryParameterValidations: $ref: '#/components/schemas/QueryParameterValidationRequestPolicy' requestBodySizeValidation: $ref: '#/components/schemas/RequestBodySizeValidationPolicy' responseCacheLookup: $ref: '#/components/schemas/ResponseCacheLookupPolicy' type: object Sdk: description: Information about the SDK. properties: apiId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of API resource ' maxLength: 255 minLength: 1 type: string artifactUrl: description: File location for generated SDK. type: string compartmentId: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object id: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the resource. ' maxLength: 255 minLength: 1 type: string lifecycleDetails: description: 'A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state. ' type: string lifecycleState: description: 'The current state of the SDK. - The SDK will be in CREATING state if the SDK creation is in progress. - The SDK will be in ACTIVE state if create is successful. - The SDK will be in FAILED state if the create, or delete fails. - The SDK will be in DELETING state if the deletion in in progress. - The SDK will be in DELETED state if the delete is successful. ' enum: - CREATING - ACTIVE - FAILED - DELETING - DELETED type: string locks: description: Locks associated with this resource. items: $ref: '#/components/schemas/ResourceLock' maxItems: 2 type: array parameters: additionalProperties: description: 'The value of the config. Only the String type is supported. ' type: string description: 'Additional optional configurations passed. The applicable config keys are listed under "parameters" when "/sdkLanguageTypes" is called. Example: `{"configName": "configValue"}` ' type: object systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only string type is supported. ' type: object description: 'Key-value pair representing system tags'' keys and values scoped to a namespace. Example: `{"bar-key": "value"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object targetLanguage: description: 'The string representing the target programming language for generating the SDK. ' type: string timeArtifactUrlExpiresAt: description: Expiry of artifact url. format: date-time type: string timeCreated: description: The time this resource was created. An RFC3339 formatted datetime string. format: date-time type: string timeUpdated: description: The time this resource was last updated. An RFC3339 formatted datetime string. format: date-time type: string required: - id - apiId - targetLanguage - displayName type: object ApiValidations: description: The result of validations conducted on the API. properties: validations: description: API validation results. items: $ref: '#/components/schemas/ApiValidationDetails' type: array required: - validations type: object FilterQueryParameterPolicyItem: description: 'A query parameter to drop (with BLOCK) or pass through (with ALLOW). ' properties: name: description: 'The case-sensitive name of the query parameter. ' example: bookIsbn maxLength: 2048 minLength: 1 type: string required: - name type: object AuthenticationPolicy: description: Information on how to authenticate incoming requests. discriminator: propertyName: type properties: isAnonymousAccessAllowed: default: false description: 'Whether an unauthenticated user may access the API. Must be "true" to enable ANONYMOUS route authorization. ' example: true type: boolean type: description: Type of the authentication policy to use. enum: - CUSTOM_AUTHENTICATION - JWT_AUTHENTICATION - TOKEN_AUTHENTICATION type: string required: - type type: object FilterQueryParameterPolicy: description: 'Filter parameters from the query string as they pass through the gateway. The gateway applies filters after other transformations, so any parameters set or renamed must also be listed here when using an ALLOW type policy. ' properties: items: description: 'The list of query parameters. ' items: $ref: '#/components/schemas/FilterQueryParameterPolicyItem' maxItems: 20 minItems: 0 type: array type: default: BLOCK description: 'BLOCK drops any query parameters that are in the list of items, so it acts as an exclusion list. ALLOW permits only the parameters in the list and removes all others, so it acts as an inclusion list. ' enum: - ALLOW - BLOCK type: string required: - type - items type: object AddResourceLockDetails: description: 'Used to add a resource lock. Resource locks are used to prevent certain APIs from being called for the resource. A full lock prevents both updating the resource and deleting the resource. A delete lock prevents deleting the resource. ' properties: message: description: 'A message added by the creator of the lock. This is typically used to give an indication of why the resource is locked. ' type: string type: description: Type of the lock. enum: - FULL - DELETE type: string required: - type type: object QueryParameterValidationRequestPolicy: allOf: - $ref: '#/components/schemas/ValidationRequestPolicy' - properties: parameters: description: The List of Query Parameters items: $ref: '#/components/schemas/QueryParameterValidationItem' minItems: 1 type: array uniqueItems: true type: object description: Validate the URL query parameters on the incoming API requests on a specific route. ApiSpecificationRequestPolicies: description: Global behavior applied to all requests received by the API. properties: authentication: $ref: '#/components/schemas/AuthenticationPolicy' cors: $ref: '#/components/schemas/CorsPolicy' dynamicAuthentication: $ref: '#/components/schemas/DynamicAuthenticationPolicy' mutualTls: $ref: '#/components/schemas/MutualTlsDetails' rateLimiting: $ref: '#/components/schemas/RateLimitingPolicy' requestBodySizeValidation: $ref: '#/components/schemas/RequestBodySizeValidationPolicy' usagePlans: $ref: '#/components/schemas/UsagePlansPolicy' type: object ApiSpecificationLoggingPolicies: description: 'Policies controlling the pushing of logs to OCI Public Logging. ' properties: accessLog: $ref: '#/components/schemas/AccessLogPolicy' executionLog: $ref: '#/components/schemas/ExecutionLogPolicy' type: object parameters: IfMatchHeader: description: 'For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource''s current etag value. ' in: header name: if-match schema: type: string default: 'null' SortOrderQueryParam: description: The sort order to use, either 'asc' or 'desc'. The default order depends on the sortBy value. in: query name: sortOrder schema: type: string enum: - ASC - DESC default: ASC ApiIdentifierQueryParam: description: The ocid of the API. This value must be present unless sdkId is present. in: query name: apiId schema: type: string default: 'null' RequestIdHeader: description: The client request id for tracing. in: header name: opc-request-id schema: type: string default: 'null' ApiIdentifierPathParam: description: The ocid of the API. in: path name: apiId required: true schema: type: string AddResourceLockDetailsBodyParam: description: AddResourceLockDetails body parameter in: body name: AddResourceLockDetails required: true schema: $ref: '#/components/schemas/AddResourceLockDetails' SortByQueryParam: description: 'The field to sort by. You can provide one sort order (`sortOrder`). Default order for `timeCreated` is descending. Default order for `displayName` is ascending. The `displayName` sort order is case sensitive. ' in: query name: sortBy schema: type: string enum: - timeCreated - displayName default: timeCreated SdkIdentifierPathParam: description: The ocid of the SDK. in: path name: sdkId required: true schema: type: string default: 'null' CertificateIdentifierPathParam: description: The ocid of the certificate. in: path name: certificateId required: true schema: type: string DisplayNameQueryParam: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Example: `My new resource` ' in: query name: displayName schema: type: string default: 'null' maxLength: 255 minLength: 1 SdkIdentifierQueryParam: description: The ocid of the SDK. This value must be present unless apiId is present. in: query name: sdkId schema: type: string default: 'null' PaginationTokenQueryParam: description: The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call. in: query name: page schema: type: string default: 'null' maxLength: 1024 minLength: 1 RangeHeader: description: 'The Range HTTP request header indicates the part of a document that the server should return. [RFC 7233](https://tools.ietf.org/html/rfc7233#section-3.1). Note that only a single range of bytes is supported. ' in: header name: range schema: type: string default: 'null' RetryTokenHeader: description: 'A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected. ' in: header name: opc-retry-token schema: type: string default: 'null' maxLength: 64 minLength: 1 CertificateLifecycleStateQueryParam: description: 'A filter to return only resources that match the given lifecycle state. Example: `ACTIVE` or `DELETED` ' in: query name: lifecycleState required: false x-obmcs-enumref: '#/definitions/Certificate/lifecycleState' schema: type: string default: 'null' SdkLifecycleStateQueryParam: description: 'A filter to return only resources that match the given lifecycle state. Example: `ACTIVE` or `DELETED` ' in: query name: lifecycleState required: false x-obmcs-enumref: '#/definitions/Sdk/lifecycleState' schema: type: string default: 'null' CompartmentIdQueryParam: description: The ocid of the compartment in which to list resources. in: query name: compartmentId required: true schema: type: string RemoveResourceLockDetailsBodyParam: description: RemoveResourceLockDetails body parameter in: body name: RemoveResourceLockDetails required: true schema: $ref: '#/components/schemas/RemoveResourceLockDetails' PaginationLimitQueryParam: description: The maximum number of items to return. in: query name: limit schema: type: integer default: 100 maximum: 1000 minimum: 1 ApiLifecycleStateQueryParam: description: 'A filter to return only resources that match the given lifecycle state. Example: `ACTIVE` ' in: query name: lifecycleState required: false x-obmcs-enumref: '#/definitions/ApiSummary/lifecycleState' schema: type: string default: 'null' OverrideLocksQueryParameter: description: Whether to override locks (if any exist). in: query name: isLockOverride schema: type: boolean default: false responses: DefaultError: description: UnknownError headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Error' default: description: UnknownError headers: opc-request-id: description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' schema: type: string default: 'null' content: application/json: schema: $ref: '#/components/schemas/Error' x-anchors: x-headers: etag: default: 'null' description: 'For optimistic concurrency control. See `if-match`. ' type: string location: default: 'null' description: 'Location of the resource. ' type: string opc-next-page: default: 'null' description: 'For list pagination. When this header appears in the response, additional pages of results remain. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' type: string opc-prev-page: default: 'null' description: 'For list pagination. When this header appears in the response, additional pages of results were seen previously. For important details about how pagination works, see [List Pagination](/iaas/Content/API/Concepts/usingapi.htm#nine). ' type: string opc-request-id: default: 'null' description: 'Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request id. ' type: string opc-work-request-id: default: 'null' description: 'The OCID of the work request. Use [GetWorkRequest](#/en/iaas/20190501/WorkRequests/GetWorkRequest) with this id to track the status of the request. ' type: string retry-after: description: 'A decimal number representing the number of seconds the client should wait before polling this endpoint again. ' format: integer type: number x-properties: apiOcid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of API resource ' maxLength: 255 minLength: 1 type: string compartmentOcid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the compartment in which the resource is created. ' maxLength: 255 minLength: 1 type: string definedTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only the String type is supported. ' type: object description: 'Key-value pair representing a defined tag key and value, scoped to a namespace. Example: `{"CostCenter": "42"}` ' type: object description: 'Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Operations": {"CostCenter": "42"}}` ' type: object deploymentOcid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of a deployment resource. ' maxLength: 255 minLength: 1 type: string description: description: 'A user-friendly description. To provide some insight about the resource. Avoid entering confidential information. ' maxLength: 400 type: string displayName: description: 'A user-friendly name. Does not have to be unique, and it''s changeable. Avoid entering confidential information. Example: `My new resource` ' type: string emptyableOcid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the resource which can be empty string. ' maxLength: 255 minLength: 0 type: string freeformTags: additionalProperties: type: string description: 'Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}` ' type: object functionOcid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the Oracle Functions function resource. ' maxLength: 255 minLength: 1 type: string networkSecurityGroupOcids: description: 'An array of Network Security Groups OCIDs associated with this API Gateway. ' items: maxLength: 255 minLength: 1 type: string maxItems: 5 type: array uniqueItems: true ocid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the resource. ' maxLength: 255 minLength: 1 type: string secretOcid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the Oracle Vault Service secret resource. ' maxLength: 255 minLength: 1 type: string subnetOcid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of the subnet in which related resources are created. ' maxLength: 255 minLength: 1 type: string systemTags: additionalProperties: additionalProperties: description: 'The value of the tag. Only string type is supported. ' type: object description: 'Key-value pair representing system tags'' keys and values scoped to a namespace. Example: `{"bar-key": "value"}` ' type: object description: 'System tags for this resource. Each key is predefined and scoped to a namespace. Example: `{"orcl-cloud": {"free-tier-retained": "true"}}` ' type: object timeCreated: description: The time this resource was created. An RFC3339 formatted datetime string. format: date-time type: string timeUpdated: description: The time this resource was last updated. An RFC3339 formatted datetime string. format: date-time type: string usagePlanOcid: description: 'The [OCID](/Content/General/Concepts/identifiers.htm) of a usage plan resource. ' maxLength: 255 minLength: 1 type: string x-oracle-package: com.oracle.pic.apigw