Documentation Index
Fetch the complete documentation index at: https://docs.apinizer.com/llms.txt
Use this file to discover all available pages before exploring further.
Endpoint
PUT /apiops/projects/{projectName}/apiProxies/url/
Authentication
Requires a Personal API Access Token.
Authorization: Bearer YOUR_TOKEN
Request
| Header | Value | Required |
|---|
| Authorization | Bearer | Yes |
| Content-Type | application/json | Yes |
Path Parameters
| Parameter | Type | Required | Description |
|---|
| projectName | string | Yes | Project name |
Request Body
Full JSON Body Example - Update OpenAPI
{
"apiProxyName": "petstore-api",
"apiProxyDescription": "Updated Petstore API Proxy",
"apiProxyCreationType": "OPEN_API",
"specUrl": "https://petstore.swagger.io/v2/swagger.json",
"clientRoute": {
"relativePathList": ["/api/v1"],
"virtualHostList": ["api.example.com"]
},
"routingInfo": {
"routingAddressList": [
{
"address": "https://backend.example.com",
"weight": 100,
"healthCheckEnabled": true
}
],
"routingEnabled": true,
"mirrorEnabled": false
},
"deploy": false,
"deployTargetEnvironmentNameList": ["production"],
"reParse": true,
"soapToRest": false,
"enableWSA": false,
"enableWSRM": false,
"backendApiVersion": "v2",
"maintenanceModeSetting": {
"enabled": false,
"httpStatusCode": 503,
"contentType": "application/json",
"message": "Service is under maintenance"
},
"specAuthorizationValueList": [
{
"headerName": "Authorization",
"headerValue": "Bearer token123"
}
]
}
Full JSON Body Example - Update WSDL
{
"apiProxyName": "soap-service",
"apiProxyDescription": "Updated SOAP Service",
"apiProxyCreationType": "WSDL",
"specUrl": "https://example.com/service.wsdl",
"clientRoute": {
"relativePathList": ["/soap"],
"virtualHostList": ["soap.example.com"]
},
"routingInfo": {
"routingAddressList": [
{
"address": "https://backend.example.com/soap",
"weight": 100,
"healthCheckEnabled": true
}
],
"routingEnabled": true,
"mirrorEnabled": false
},
"deploy": false,
"deployTargetEnvironmentNameList": ["production"],
"reParse": true,
"soapToRest": false,
"enableWSA": true,
"enableWSRM": false,
"backendApiVersion": null,
"maintenanceModeSetting": {
"enabled": false,
"httpStatusCode": 503,
"contentType": "text/xml",
"message": "Service is under maintenance"
},
"specAuthorizationValueList": []
}
Full JSON Body Example - Update Reverse Proxy
{
"apiProxyName": "reverse-proxy",
"apiProxyDescription": "Updated Reverse Proxy",
"apiProxyCreationType": "REVERSE_PROXY",
"specUrl": null,
"clientRoute": {
"relativePathList": ["/reverse"],
"virtualHostList": ["reverse.example.com"]
},
"routingInfo": {
"routingAddressList": [
{
"address": "https://backend.example.com",
"weight": 100,
"healthCheckEnabled": true
}
],
"routingEnabled": true,
"mirrorEnabled": false
},
"deploy": false,
"deployTargetEnvironmentNameList": ["production"],
"reParse": true,
"soapToRest": false,
"enableWSA": false,
"enableWSRM": false,
"backendApiVersion": null,
"maintenanceModeSetting": {
"enabled": false,
"httpStatusCode": 503,
"contentType": "application/json",
"message": "Service is under maintenance"
},
"specAuthorizationValueList": []
}
Request Body Fields
| Field | Type | Required | Default | Description |
|---|
| apiProxyName | string | Yes | - | API Proxy name (must exist for update) |
| apiProxyDescription | string | No | - | API Proxy description (if empty, keeps existing description) |
| apiProxyCreationType | string | Yes | - | API creation type. Must match existing API Proxy type. See EnumApiProxySpecType |
| specUrl | string | Yes* | - | Specification URL (required if not reverse proxy) |
| clientRoute | object | Yes | - | Client route configuration. See ClientRoute |
| routingInfo | object | No | - | Routing configuration. See RoutingInfo |
| deploy | boolean | No | false | Whether to deploy after update |
| deployTargetEnvironmentNameList | array | No | [] | List of environment names to deploy to |
| reParse | boolean | No | true | Whether to reparse API proxy (should be true for update) |
| soapToRest | boolean | No | false | Enable SOAP to REST transformation (cannot be changed if not set initially) |
| enableWSA | boolean | No | false | Enable WS-Addressing (SOAP only) |
| enableWSRM | boolean | No | false | Enable WS-ReliableMessaging (SOAP only) |
| backendApiVersion | string | No | - | Backend API version |
| maintenanceModeSetting | object | No | - | Maintenance mode settings. See MaintenanceModeSetting |
| specAuthorizationValueList | array | No | [] | Authorization headers for accessing spec URL. See SpecAuthorizationValue |
EnumApiProxySpecType (apiProxyCreationType)
OPEN_API - OpenAPI 3.0 specification
SWAGGER - Swagger 2.0 specification
WSDL - WSDL specification (SOAP)
REVERSE_PROXY - Reverse proxy (no specification)
ClientRoute (clientRoute)
| Field | Type | Required | Description |
|---|
| relativePathList | array | Yes | List of relative paths (at least one required, first cannot be empty) |
| virtualHostList | array | No | List of virtual hosts |
RoutingInfo (routingInfo)
| Field | Type | Required | Description |
|---|
| routingAddressList | array | No | List of routing addresses. See RoutingAddress |
| routingEnabled | boolean | No | Whether routing is enabled |
| mirrorEnabled | boolean | No | Whether mirroring is enabled |
RoutingAddress (routingInfo.routingAddressList item)
| Field | Type | Required | Description |
|---|
| address | string | Yes | Backend server address |
| weight | integer | No | Routing weight (for load balancing) |
| healthCheckEnabled | boolean | No | Enable health check |
MaintenanceModeSetting (maintenanceModeSetting)
| Field | Type | Required | Description |
|---|
| enabled | boolean | No | Whether maintenance mode is enabled |
| httpStatusCode | integer | No | HTTP status code for maintenance response |
| contentType | string | No | Content type for maintenance response |
| message | string | No | Maintenance message |
SpecAuthorizationValue (specAuthorizationValueList item)
| Field | Type | Required | Description |
|---|
| headerName | string | Yes | Header name (e.g., “Authorization”) |
| headerValue | string | Yes | Header value (e.g., “Bearer token123”) |
Notes
apiProxyName must exist (API Proxy will be updated, not created).
apiProxyCreationType must match the existing API Proxy type (cannot change type).
specUrl is required unless apiProxyCreationType is REVERSE_PROXY.
clientRoute.relativePathList must contain at least one path, and the first path cannot be empty.
reParse: true is recommended for updates to reparse the specification.
soapToRest cannot be enabled if the API Proxy was not created with this option initially.
- If
apiProxyDescription is empty, the existing description is preserved.
routingInfo is optional; if not provided, existing routing settings are preserved.
Response
Success Response (200 OK)
{
"success": true,
"deploymentResult": {
"success": true,
"deploymentResults": [
{
"environmentName": "production",
"success": true,
"message": "Deployment successful"
}
]
}
}
cURL Example
curl -X PUT \
"https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/url/" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"apiProxyName": "petstore-api",
"apiProxyDescription": "Updated Petstore API Proxy",
"apiProxyCreationType": "OPEN_API",
"specUrl": "https://petstore.swagger.io/v2/swagger.json",
"clientRoute": {
"relativePathList": ["/api/v1"]
},
"reParse": true,
"deploy": false
}'
Notes and Warnings
- Update vs Create:
- This endpoint updates an existing API Proxy (identified by
apiProxyName)
- If API Proxy does not exist, it will be created
- Use this endpoint to reparse and update API Proxy from specification URL
- Type Restrictions:
apiProxyCreationType must match the existing API Proxy type
- Cannot change from SOAP to REST or vice versa
- Cannot enable
soapToRest if not enabled initially
- Reparsing:
reParse: true re-parses the specification and updates endpoints
- Existing endpoints may be modified or removed if specification changes
- Policies and settings are preserved during reparse
- Client Route:
clientRoute.relativePathList must contain at least one path
- First path in the list cannot be empty
- Virtual hosts are optional
- Routing:
routingInfo is optional
- If not provided, existing routing settings are preserved
- Can update routing addresses, weights, and health checks
- Deployment:
- Set
deploy: true to automatically deploy after update
- Specify
deployTargetEnvironmentNameList for target environments
- Requires
API_MANAGEMENT + DEPLOY_UNDEPLOY permission if deploying
Permissions
User must have API_MANAGEMENT + MANAGE permission in the project. For deployment operations (when deploy: true is set), user must also have API_MANAGEMENT + DEPLOY_UNDEPLOY permission.
- Specification Authorization:
- Use
specAuthorizationValueList if specification URL requires authentication
- Common: Authorization header with Bearer token
- Headers are sent when fetching specification