swagger: '2.0' info: description: 'The API described in this document is subject to change. ' version: 1.17.0 title: WP Engine Hosting Platform Account Offload Settings API termsOfService: https://wpengine.com/legal/terms-of-service/ host: api.wpengineapi.com basePath: /v1 schemes: - https tags: - name: Offload Settings paths: /installs/{install_id}/offload_settings/largefs_validation_file: get: tags: - Offload Settings summary: Get the validation file needed to configure LargeFS description: Returns the validation filename and contents necessary to configure an S3 bucket for LargeFS operationId: getLargeFSValidationFile produces: - application/json parameters: - $ref: '#/parameters/authorization' - name: install_id in: path format: uuid description: ID of install required: true type: string x-example: 294deacc-d8b8-4005-82c4-0727ba8ddde0 responses: '200': description: LargeFS validation filename and contents schema: $ref: '#/definitions/LargeFSValidationFile' '401': description: Authentication Error schema: $ref: '#/definitions/AuthenticationErrorResponse' '403': description: Not authorized schema: $ref: '#/definitions/ForbiddenErrorResponse' '404': description: Not found schema: $ref: '#/definitions/NotFoundErrorResponse' '429': $ref: '#/definitions/TooManyRequestsOperation' '503': $ref: '#/definitions/ServiceUnavailableOperation' security: - basicAuth: [] x-amazon-apigateway-integration: uri: https://my.wpengine.com/capi/v1/installs/{install_id}/offload_settings/largefs_validation_file responses: '200': statusCode: '200' '401': statusCode: '401' '403': statusCode: '403' '404': statusCode: '404' '429': statusCode: '429' '503': statusCode: '503' default: statusCode: '500' requestParameters: integration.request.header.X-Request-ID: context.requestId integration.request.header.sourceIp: context.identity.sourceIp integration.request.header.authorization: method.request.header.Authorization integration.request.path.install_id: method.request.path.install_id passthroughBehavior: when_no_match httpMethod: GET type: http /installs/{install_id}/offload_settings/files: get: tags: - Offload Settings summary: Get the offload settings for an install description: Returns the offload settings configuration for a specific install operationId: getOffloadSettings produces: - application/json parameters: - $ref: '#/parameters/authorization' - name: install_id in: path format: uuid description: ID of install required: true type: string x-example: 294deacc-d8b8-4005-82c4-0727ba8ddde0 responses: '200': description: LargeFS offload settings configuration schema: $ref: '#/definitions/LargeFSConfig' '401': description: Authentication Error schema: $ref: '#/definitions/AuthenticationErrorResponse' '403': description: Not authorized schema: $ref: '#/definitions/ForbiddenErrorResponse' '404': description: Not found schema: $ref: '#/definitions/NotFoundErrorResponse' '429': $ref: '#/definitions/TooManyRequestsOperation' '503': $ref: '#/definitions/ServiceUnavailableOperation' security: - basicAuth: [] x-amazon-apigateway-integration: uri: https://my.wpengine.com/capi/v1/installs/{install_id}/offload_settings/files responses: '200': statusCode: '200' '401': statusCode: '401' '403': statusCode: '403' '404': statusCode: '404' '429': statusCode: '429' '503': statusCode: '503' default: statusCode: '500' requestParameters: integration.request.header.X-Request-ID: context.requestId integration.request.header.sourceIp: context.identity.sourceIp integration.request.header.authorization: method.request.header.Authorization integration.request.path.install_id: method.request.path.install_id passthroughBehavior: when_no_match httpMethod: GET type: http post: tags: - Offload Settings summary: Configure offload settings for an install description: Updates the offload settings configuration for a specific install operationId: updateOffloadSettings consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/authorization' - name: install_id in: path format: uuid description: ID of install required: true type: string x-example: 294deacc-d8b8-4005-82c4-0727ba8ddde0 - in: body name: body description: '##### Properties * large_fs_config - **required** - The configuration for offloaded storage ' required: true schema: $ref: '#/definitions/LargeFSConfig' responses: '202': description: Accepted '400': description: Bad Request schema: $ref: '#/definitions/BadRequestErrorResponse' '401': description: Authentication Error schema: $ref: '#/definitions/AuthenticationErrorResponse' '403': description: Not authorized schema: $ref: '#/definitions/ForbiddenErrorResponse' '404': description: Not found schema: $ref: '#/definitions/NotFoundErrorResponse' '429': description: Too many requests '503': $ref: '#/definitions/ServiceUnavailableOperation' security: - basicAuth: [] x-amazon-apigateway-integration: uri: https://my.wpengine.com/capi/v1/installs/{install_id}/offload_settings/files responses: '202': statusCode: '202' '400': statusCode: '400' '401': statusCode: '401' '403': statusCode: '403' '404': statusCode: '404' '429': statusCode: '429' '503': statusCode: '503' default: statusCode: '500' requestParameters: integration.request.header.X-Request-ID: context.requestId integration.request.header.sourceIp: context.identity.sourceIp integration.request.header.authorization: method.request.header.Authorization integration.request.path.install_id: method.request.path.install_id passthroughBehavior: when_no_match httpMethod: POST type: http patch: tags: - Offload Settings summary: Update specific offload settings for an install description: Partially updates the offload settings configuration for a specific install operationId: patchOffloadSettings consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/authorization' - name: install_id in: path format: uuid description: ID of install required: true type: string x-example: 294deacc-d8b8-4005-82c4-0727ba8ddde0 - in: body name: body description: '##### Properties * large_fs_config - **required** - The configuration for offloaded storage ' required: true schema: $ref: '#/definitions/LargeFSConfig' responses: '202': description: Accepted '400': description: Bad Request schema: $ref: '#/definitions/BadRequestErrorResponse' '401': description: Authentication Error schema: $ref: '#/definitions/AuthenticationErrorResponse' '403': description: Not authorized schema: $ref: '#/definitions/ForbiddenErrorResponse' '404': description: Not found schema: $ref: '#/definitions/NotFoundErrorResponse' '429': description: Too many requests '503': $ref: '#/definitions/ServiceUnavailableOperation' security: - basicAuth: [] x-amazon-apigateway-integration: uri: https://my.wpengine.com/capi/v1/installs/{install_id}/offload_settings/files responses: '202': statusCode: '202' '400': statusCode: '400' '401': statusCode: '401' '403': statusCode: '403' '404': statusCode: '404' '429': statusCode: '429' '503': statusCode: '503' default: statusCode: '500' requestParameters: integration.request.header.X-Request-ID: context.requestId integration.request.header.sourceIp: context.identity.sourceIp integration.request.header.authorization: method.request.header.Authorization integration.request.path.install_id: method.request.path.install_id passthroughBehavior: when_no_match httpMethod: PATCH type: http definitions: NotFoundErrorResponse: type: object required: - message properties: message: type: string description: A message regarding the error that occurred on the server example: Not Found documentation_url: type: string description: (Optional) A URL where documentation regarding this specific error can be found LargeFSConfig: type: object properties: largefs_settings: type: object properties: cloud: type: string enum: - s3 bucket: type: string bucket_region: type: string path_settings: type: array items: type: object properties: path: type: string excluded_paths: type: array items: type: string redirect_type: type: string enum: - break - permanent LargeFSValidationFile: type: object properties: name: type: string example: 64f1250c.largefs content: type: string example: e4ccd0696cff6f94 BadRequestErrorResponse: type: object required: - message properties: message: type: string description: A message regarding the error that occurred on the server example: 'Invalid Site: Name cannot be empty.' documentation_url: type: string description: (Optional) A URL where documentation regarding this specific error can be found errors: type: array description: An array of error objects describing specific errors that arose when servicing the request items: $ref: '#/definitions/ResourceError' TooManyRequestsOperation: description: Too many requests ResourceError: type: object required: - resource - field - type - code - message properties: resource: type: string description: The name of the resource that was being processed when the error occurred example: Site field: type: string description: (Optional) The specific field associated with the error example: name type: type: string description: (Optional) A type associated with the error. `invalid_value`, `access_error`, `value_unavailable` example: invalid_value code: type: string description: (Optional) A machine code relating to the error that occurred with the field and resource example: too_long message: type: string description: (Optional) A human-readable message relating to the error that occurred with the field and resource example: Name is too long (maximum is 40 characters) ServiceUnavailableOperation: description: Service unavailable ForbiddenErrorResponse: type: object required: - message properties: message: type: string description: A message regarding the error that occurred on the server example: You don't have permission to perform that action documentation_url: type: string description: (Optional) A URL where documentation regarding this specific error can be found AuthenticationErrorResponse: type: object required: - message properties: message: type: string description: A message regarding the error that occurred on the server example: Bad Credentials documentation_url: type: string description: (Optional) A URL where documentation regarding this specific error can be found parameters: authorization: name: Authorization in: header type: string format: uuid securityDefinitions: basicAuth: type: basic description: 'API username and password from Portal''s API Access page: https://my.wpengine.com/api_access'