OutboundProfiles

Summary

Outbound profiles

Description

The outbound profile provides configuration for the backend. The _default profile applies to all outbound, backend API calls. However, methods may be overridden using the OutboundProfile.

The outbound profile overrides are used as part of the VirtualizedAPI definition and alters the normal API proxy behavior, allowing complete control over the backend. Using the OutboundProfiles, it is possible to provide backend authentication by setting authenticationProfile to the name of a configured AuthenticationProfile. Optionally, a completely different API and method may be invoked using a reference to a different apiId and apiMethodId from a valid APIDefinition. Parameters can be added/removed using parameters, or their values changed completely. It is also possible to apply a requestPolicy or responsePolicy that has been configured in Policy Studio. For total control, the routeType can be changed to proxy and use the reoutePolicy to route to a policy instead of a backend service.

Fields

Field Name Type Since Version Description
authenticationProfile String Outbound authentication credentials if routeType is 'proxy'. Can be null to indicate no credentials.
routeType String The route type. Values are either: 'proxy' or 'policy'. Can be null and defaults to proxy.
requestPolicy String Request policy that applies to all outbound requests. Can be null to indicate no policy.
responsePolicy String Response policy that applies to all responses from outbound requests. Can be null to indicate no policy.
routePolicy String Route policy if the routeType is 'policy', in which case it must be a valid policy ID. Can be null if routeType is 'proxy'.
apiId String Route to a different API. Can be null. Ignored on the 'default' outbound profile.
apiMethodId String Route to a different API method. Can be null. Ignored on the 'default' outbound profile.
parameters [ParamValue] A list of outbound parameters values - maps from frontend parameters to backend parameters.

Example JSON

{
  "authenticationProfile" : "My Backend",
  "routeType" : "proxy",
  "requestPolicy" : null,
  "responsePolicy" : null,
  "routePolicy" : null,
  "apiId" : "9064396e-7743-4644-a0b7-d30b421e2b30",
  "apiMethodId" : "7fd18d9a-1258-4031-a168-d7f6bf612dc1",
  "parameters" : [ {
    "name" : "id",
    "paramType" : "query",
    "type" : "string",
    "value" : "${params.path.id}",
    "required" : true,
    "exclude" : false,
    "additional" : false
  } ]
}