openapi: 3.0.2 info: title: Render Public Audit Logs Services API description: Manage everything about your Render services version: 1.0.0 contact: name: Render API url: https://community.render.com email: support@render.com servers: - url: https://api.render.com/v1 security: - BearerAuth: [] tags: - name: Services description: '[Services](https://render.com/docs/service-types) allow you to manage your web services, private services, background workers, cron jobs, and static sites. ' paths: /services: get: summary: List services description: 'List services matching the provided filters. If no filters are provided, returns all services you have permissions to view. ' operationId: list-services tags: - Services parameters: - $ref: '#/components/parameters/nameParam' - $ref: '#/components/parameters/serviceTypeParam' - $ref: '#/components/parameters/environmentIdParam' - $ref: '#/components/parameters/envParam' - $ref: '#/components/parameters/regionParam' - $ref: '#/components/parameters/suspendedParam' - $ref: '#/components/parameters/createdBeforeParam' - $ref: '#/components/parameters/createdAfterParam' - $ref: '#/components/parameters/updatedBeforeParam' - $ref: '#/components/parameters/updatedAfterParam' - $ref: '#/components/parameters/ownerIdParam' - $ref: '#/components/parameters/includePreviewsParam' - $ref: '#/components/parameters/cursorParam' - $ref: '#/components/parameters/limitParam' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/serviceList' '401': $ref: '#/components/responses/401Unauthorized' '406': $ref: '#/components/responses/406NotAcceptable' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' post: summary: Create service description: 'Creates a new Render service in the specified workspace with the specified configuration. ' operationId: create-service tags: - Services requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/servicePOST' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/serviceAndDeploy' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '402': $ref: '#/components/responses/402PaymentRequired' '406': $ref: '#/components/responses/406NotAcceptable' '409': $ref: '#/components/responses/409Conflict' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}: parameters: - $ref: '#/components/parameters/serviceIdParam' get: summary: Retrieve service description: 'Retrieve the service with the provided ID. ' operationId: retrieve-service tags: - Services responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/service' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' patch: summary: Update service description: 'Update the service with the provided ID. ' operationId: update-service tags: - Services requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/servicePATCH' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/service' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '402': $ref: '#/components/responses/402PaymentRequired' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '409': $ref: '#/components/responses/409Conflict' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' delete: summary: Delete service description: 'Delete the service with the provided ID. ' operationId: delete-service tags: - Services responses: '204': description: Service deleted '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/cache/purge: parameters: - $ref: '#/components/parameters/serviceIdParam' post: summary: Purge Web Service Cache description: 'Trigger cache purge for the web service if caching is enabled. ' operationId: purge-cache tags: - Services requestBody: required: false content: {} responses: '202': description: Cache purge request accepted '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '409': $ref: '#/components/responses/409Conflict' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/env-vars: parameters: - $ref: '#/components/parameters/serviceIdParam' get: summary: List environment variables description: 'List all environment variables for the service with the provided ID. ' operationId: get-env-vars-for-service tags: - Services parameters: - $ref: '#/components/parameters/cursorParam' - $ref: '#/components/parameters/limitParam' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/envVarWithCursor' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' put: summary: Update environment variables description: Replace all environment variables for a service with the provided list of environment variables. operationId: update-env-vars-for-service tags: - Services requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/envVarInputArray' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/envVarWithCursor' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/env-vars/{envVarKey}: parameters: - $ref: '#/components/parameters/serviceIdParam' - $ref: '#/components/parameters/envVarKeyParam' get: summary: Retrieve environment variable description: 'Retrieve a particular environment variable for a particular service. This only applies to environment variables set directly on the service, not to environment variables in a linked environment group. ' operationId: retrieve-env-var tags: - Services responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/envVar' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' put: summary: Add or update environment variable description: 'Add or update a particular environment variable for a particular service. This only applies to environment variables set directly on the service, not to environment variables in a linked environment group. ' operationId: update-env-var tags: - Services requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/addUpdateEnvVarInput' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/envVar' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' delete: summary: Delete environment variable description: 'Delete a particular environment variable from a particular service. This only applies to environment variables set directly on the service, not to environment variables in a linked environment group. ' operationId: delete-env-var tags: - Services responses: '204': description: Environment variable deleted '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/secret-files: parameters: - $ref: '#/components/parameters/serviceIdParam' get: summary: List secret files description: 'List all secret files for the service with the provided ID. ' operationId: list-secret-files-for-service tags: - Services parameters: - $ref: '#/components/parameters/cursorParam' - $ref: '#/components/parameters/limitParam' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/secretFileWithCursor' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' put: summary: Update secret files description: 'Replace all secret files for a service with the provided list of secret files. **Any of the service''s existing secret files not included in this request will be deleted.** This only applies to secret files set directly on the service, not to secret files in a linked environment group. ' operationId: update-secret-files-for-service tags: - Services requestBody: required: true content: application/json: schema: type: array items: $ref: '#/components/schemas/secretFileInput' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/secretFileWithCursor' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/secret-files/{secretFileName}: parameters: - $ref: '#/components/parameters/serviceIdParam' - name: secretFileName in: path required: true description: The file name of the secret file schema: type: string get: summary: Retrieve secret file description: 'Retrieve a particular secret file for a particular service. This only applies to secret files set directly on the service, not to secret files in a linked environment group. ' operationId: retrieve-secret-file tags: - Services responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/secretFile' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' put: summary: Add or update secret file description: 'Add or update a particular secret file for a particular service. This only applies to secret files set directly on the service, not to secret files in a linked environment group. ' operationId: add-or-update-secret-file tags: - Services requestBody: required: true content: application/json: schema: properties: content: type: string responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/secretFile' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' delete: summary: Delete secret file description: 'Delete a particular secret file from a particular service. This only applies to secret files set directly on the service, not to secret files in a linked environment group. ' operationId: delete-secret-file tags: - Services responses: '204': description: Secret file deleted '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/events: get: tags: - Services summary: List events description: List recent events that occurred for the service with the provided ID. operationId: list-events parameters: - $ref: '#/components/parameters/serviceIdParam' - $ref: '#/components/parameters/eventTypeParam' - $ref: '#/components/parameters/startTimeParam' - $ref: '#/components/parameters/endTimeParam' - $ref: '#/components/parameters/cursorParam' - $ref: '#/components/parameters/limitParam' responses: '200': description: Successful response content: application/json: schema: type: array items: $ref: '#/components/schemas/serviceEventWithCursor' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '404': $ref: '#/components/responses/404NotFound' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/suspend: parameters: - $ref: '#/components/parameters/serviceIdParam' post: summary: Suspend service description: 'Suspend the service with the provided ID. ' operationId: suspend-service tags: - Services responses: '202': description: Service suspended successfully '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/resume: parameters: - $ref: '#/components/parameters/serviceIdParam' post: summary: Resume service description: 'Resume the service with the provided ID (if it''s currently suspended). ' operationId: resume-service tags: - Services responses: '202': description: Service resumed successfully '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/restart: parameters: - $ref: '#/components/parameters/serviceIdParam' post: summary: Restart service description: 'Restart the service with the provided ID. Not supported for cron jobs. ' operationId: restart-service tags: - Services responses: '200': description: Service restarted '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/scale: parameters: - $ref: '#/components/parameters/serviceIdParam' post: summary: Scale instance count description: '[Scale](https://render.com/docs/scaling#manual-scaling) the service with the provided ID to a fixed number of instances. Render ignores this value as long as autoscaling is enabled for the service. ' operationId: scale-service tags: - Services requestBody: required: true content: application/json: schema: type: object required: - numInstances properties: numInstances: type: integer example: 3 responses: '202': description: Service scaled successfully '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/autoscaling: parameters: - $ref: '#/components/parameters/serviceIdParam' put: summary: Update autoscaling config description: 'Update the [autoscaling](https://render.com/docs/scaling#autoscaling) config for the service with the provided ID. ' operationId: autoscale-service tags: - Services requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' responses: '200': description: Autoscaling configuration updated content: application/json: schema: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' delete: summary: Delete autoscaling config description: 'Delete the autoscaling config for a service given the service id. ' operationId: delete-autoscaling-config tags: - Services responses: '204': description: Autoscaling config deleted '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '406': $ref: '#/components/responses/406NotAcceptable' '410': $ref: '#/components/responses/410Gone' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/preview: parameters: - $ref: '#/components/parameters/serviceIdParam' post: summary: Create service preview (image-backed) description: 'Create a preview instance for an image-backed service. The preview uses the settings of the base service (referenced by `serviceId`), except settings overridden via provided parameters. View all active previews from your service''s Previews tab in the Render Dashboard. Note that you can''t create previews for Git-backed services using the Render API. ' operationId: preview-service tags: - Services requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/previewInput' responses: '200': description: Created content: application/json: schema: $ref: '#/components/schemas/serviceAndDeploy' '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '403': $ref: '#/components/responses/403Forbidden' '404': $ref: '#/components/responses/404NotFound' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' /services/{serviceId}/instances: parameters: - $ref: '#/components/parameters/serviceIdParam' get: summary: List instances description: List instances for the provided service. operationId: list-instances tags: - Services responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/serviceInstance' '401': $ref: '#/components/responses/401Unauthorized' '404': $ref: '#/components/responses/404NotFound' '429': $ref: '#/components/responses/429RateLimit' '500': $ref: '#/components/responses/500InternalServerError' '503': $ref: '#/components/responses/503ServiceUnavailable' components: schemas: cronJobDetailsPATCH: type: object properties: envSpecificDetails: $ref: '#/components/schemas/envSpecificDetailsPATCH' plan: $ref: '#/components/schemas/paidPlan' schedule: type: string runtime: $ref: '#/components/schemas/serviceRuntime' serviceEventWithCursor: type: object description: A service event with a cursor required: - event - cursor properties: event: type: object required: - id - timestamp - serviceId - type - details properties: id: $ref: '#/paths/~1events~1%7BeventId%7D/parameters/0/schema' timestamp: type: string format: date-time serviceId: type: string type: $ref: '#/components/parameters/eventTypeParam/schema/anyOf/0' details: title: Service Event Details oneOf: - title: Autoscaling Config Changed type: object required: - toConfig properties: fromConfig: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' toConfig: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' - title: Autoscaling Ended type: object required: - fromInstances - toInstances properties: fromInstances: type: integer toInstances: type: integer - title: Autoscaling Started type: object required: - fromInstances - toInstances properties: fromInstances: type: integer toInstances: type: integer currentCPU: type: integer x-go-type: int64 targetCPU: type: integer x-go-type: int64 currentMemory: type: integer x-go-type: int64 targetMemory: type: integer x-go-type: int64 - title: Branch Deleted type: object required: - deletedBranch - newBranch properties: deletedBranch: type: string newBranch: type: string - title: Build Ended type: object required: - buildId - status - reason - buildStatus properties: buildId: type: string buildStatus: type: string enum: - succeeded - failed - canceled reason: type: object properties: buildFailed: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/4/properties/reason/properties/newBuild' newBuild: type: object required: - id properties: id: type: string newDeploy: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/4/properties/reason/properties/newBuild' failure: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/7/properties/reason' status: deprecated: true type: integer - title: Build Started type: object required: - buildId - trigger properties: buildId: type: string trigger: type: object required: - firstBuild - envUpdated - manual - deployedByRender - clearCache - rollback properties: firstBuild: description: Deploy was triggered by service creation type: boolean envUpdated: description: Deploy was triggered by an environment update type: boolean manual: description: Deploy was triggered manually from the dashboard type: boolean user: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/7/properties/user' updatedProperty: description: Updated property that triggered the deploy type: string newCommit: description: Commit that triggered the deploy type: string deployedByRender: description: Deploy was triggered by Render type: boolean clearCache: description: Whether the cache was cleared for the deploy type: boolean rollback: description: Whether the deploy was triggered by a rollback type: boolean rollbackTargetDeployId: description: Deploy ID that was rolled back to type: string - title: Commit Ignored type: object required: - id - url properties: id: description: the commit id type: string url: description: the commit url type: string - title: Cron Job Run Ended type: object required: - cronJobRunId - status properties: cronJobRunId: type: string status: type: string enum: - canceled - pending - successful - unsuccessful reason: type: object required: - evicted properties: evicted: type: boolean nonZeroExit: type: integer description: If present, the application exited with the specified non-zero status. earlyExit: type: boolean description: If true, the application exited early. Services besides cron jobs should not exit unless receiving a `SIGTERM` signal from Render. oomKilled: type: object required: - memoryLimit properties: memoryLimit: type: string timedOutSeconds: type: integer format: int64 unhealthy: type: string timedOutReason: type: string user: type: object description: User who triggered the action required: - id - email properties: id: type: string email: type: string - title: Cron Job Run Started type: object required: - cronJobRunId properties: cronJobRunId: type: string - title: Deploy Ended type: object required: - deployId - reason - status - deployStatus properties: deployId: type: string reason: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/4/properties/reason' deployStatus: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/4/properties/buildStatus' status: deprecated: true type: integer - title: Deploy Started type: object required: - deployId - trigger properties: deployId: type: string trigger: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/5/properties/trigger' - title: Disk Created type: object required: - diskId - sizeGB properties: diskId: $ref: '#/paths/~1disks~1%7BdiskId%7D/parameters/0/schema' sizeGB: type: integer - title: Disk Updated type: object required: - diskId - fromSizeGB - toSizeGB properties: diskId: $ref: '#/paths/~1disks~1%7BdiskId%7D/parameters/0/schema' fromSizeGB: type: integer toSizeGB: type: integer - title: Disk Deleted type: object required: - diskId properties: diskId: $ref: '#/paths/~1disks~1%7BdiskId%7D/parameters/0/schema' - title: Image Pull Failed type: object required: - message - imageURL properties: message: type: string imageURL: type: string - title: Initial Deploy Hook Started type: object required: - deployId properties: deployId: type: string - title: Initial Deploy Hook Ended type: object required: - deployId properties: deployId: type: string - title: Instance Count Changed type: object required: - fromInstances - toInstances properties: fromInstances: type: integer toInstances: type: integer - title: Job Run Ended type: object required: - jobId - status properties: jobId: $ref: '#/paths/~1services~1%7BserviceId%7D~1jobs~1%7BjobId%7D/parameters/1/schema' status: $ref: '#/paths/~1services~1%7BserviceId%7D~1jobs/get/parameters/2/schema/items' reason: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/7/properties/reason' - title: Maintenance Mode Enabled type: object required: - enabled properties: enabled: type: boolean - title: Maintenance Mode URI Updated type: object required: - fromURI - toURI properties: fromURI: type: string toURI: type: string - title: Maintenance Ended type: object - title: Maintenance Started type: object required: - trigger properties: trigger: type: object required: - manual - startedByRender properties: user: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/7/properties/user' manual: description: Maintenance was triggered manually type: boolean startedByRender: description: Maintenance was triggered by Render type: boolean - title: Pipeline Minutes Exhausted type: object required: - buildId - trigger properties: buildId: type: string trigger: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/5/properties/trigger' - title: Instance Type Changed type: object required: - from - to properties: from: type: string to: type: string - title: Pre Deploy Ended type: object required: - deployCommandExecutionId - deployId - status - preDeployStatus - reason properties: deployCommandExecutionId: type: string deployId: type: string preDeployStatus: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/4/properties/buildStatus' reason: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/4/properties/reason' status: deprecated: true type: integer - title: Pre Deploy Started type: object required: - deployCommandExecutionId - deployId properties: deployCommandExecutionId: type: string deployId: type: string - title: Server Available type: object - title: Server Failed type: object properties: instanceID: type: string pattern: ^srv-[0-9a-z]{20}-[0-9a-z]{5}$ example: srv-d0cjkelq67qs70c2pugg-sbpkm reason: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/7/properties/reason' - title: Server Hardware Failure type: object - title: Server Restarted type: object required: - triggeredByUser properties: triggeredByUser: type: string nullable: true - title: Service Resumed type: object - title: Service Suspended type: object - title: Suspender Added type: object required: - actor properties: actor: type: string suspendedByUser: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/7/properties/user' - title: Suspender Removed type: object required: - actor properties: actor: type: string resumedByUser: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/7/properties/user' - title: Zero Downtime Redeploy Ended type: object - title: Zero Downtime Redeploy Started type: object required: - trigger properties: trigger: type: string - title: Edge Cache Disabled type: object required: - trigger properties: trigger: type: object required: - manual - system properties: manual: description: Edge Cache change was triggered manually from the dashboard type: boolean user: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/7/properties/user' system: description: Edge Cache Change was triggered by Render type: boolean - title: Edge Cache Enabled type: object required: - trigger properties: trigger: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/37/properties/trigger' - title: Edge Cache Purged required: - trigger properties: trigger: $ref: '#/components/schemas/serviceEventWithCursor/properties/event/properties/details/oneOf/37/properties/trigger' cache: type: object required: - profile properties: profile: type: string enum: - no-cache - origin-controlled - origin-controlled-all default: no-cache webServiceDetails: type: object required: - env - runtime - envSpecificDetails - plan - region - numInstances - buildPlan - healthCheckPath - openPorts - url properties: autoscaling: type: object required: - enabled - min - max - criteria properties: enabled: type: boolean default: false min: type: integer description: The minimum number of instances for the service max: type: integer description: The maximum number of instances for the service criteria: type: object required: - cpu - memory properties: cpu: type: object required: - enabled - percentage properties: enabled: type: boolean default: false percentage: type: integer description: 'Determines when your service will be scaled. If the average resource utilization is significantly above/below the target, we will increase/decrease the number of instances. ' memory: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling/properties/criteria/properties/cpu' cache: $ref: '#/components/schemas/cache' disk: type: object required: - id - name - sizeGB - mountPath properties: id: $ref: '#/paths/~1disks~1%7BdiskId%7D/parameters/0/schema' name: type: string sizeGB: type: integer mountPath: type: string env: $ref: '#/components/schemas/serviceEnv' envSpecificDetails: $ref: '#/components/schemas/envSpecificDetails' healthCheckPath: type: string ipAllowList: type: array items: $ref: '#/components/schemas/cidrBlockAndDescription' maintenanceMode: $ref: '#/components/schemas/maintenanceMode' numInstances: type: integer description: For a *manually* scaled service, this is the number of instances the service is scaled to. DOES NOT indicate the number of running instances for an *autoscaled* service. openPorts: type: array items: $ref: '#/components/schemas/serverPort' parentServer: $ref: '#/components/schemas/resource' plan: $ref: '#/components/schemas/plan' pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' region: $ref: '#/components/schemas/region' runtime: $ref: '#/components/schemas/serviceRuntime' sshAddress: $ref: '#/components/schemas/sshAddress' url: type: string buildPlan: $ref: '#/components/schemas/buildPlan' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' renderSubdomainPolicy: $ref: '#/components/schemas/renderSubdomainPolicy' cidrBlockAndDescription: type: object required: - cidrBlock - description properties: cidrBlock: type: string description: description: User-provided description of the CIDR block type: string serviceEnv: type: string enum: - docker - elixir - go - node - python - ruby - rust - image deprecated: true description: This field has been deprecated, runtime should be used in its place. serviceDisk: type: object required: - name - mountPath properties: name: type: string mountPath: type: string sizeGB: type: integer minimum: 1 description: Defaults to 1 envVarInput: type: object oneOf: - $ref: '#/components/schemas/envVarKeyValue' - $ref: '#/components/schemas/envVarKeyGenerateValue' renderSubdomainPolicy: type: string enum: - enabled - disabled description: Controls whether render.com subdomains are available for the service webServiceDetailsPOST: type: object required: - runtime properties: autoscaling: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' disk: $ref: '#/components/schemas/serviceDisk' env: $ref: '#/components/schemas/serviceEnv' runtime: $ref: '#/components/schemas/serviceRuntime' envSpecificDetails: $ref: '#/components/schemas/envSpecificDetailsPOST' healthCheckPath: type: string maintenanceMode: $ref: '#/components/schemas/maintenanceMode' numInstances: type: integer minimum: 1 description: Defaults to 1 plan: $ref: '#/components/schemas/plan' default: starter description: The instance type to use. If omitted, defaults to `starter` when creating a new service. preDeployCommand: type: string pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' region: $ref: '#/components/schemas/region' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' renderSubdomainPolicy: $ref: '#/components/schemas/renderSubdomainPolicy' ipAllowList: type: array items: $ref: '#/components/schemas/cidrBlockAndDescription' envVarGenerateValue: type: object required: - generateValue properties: generateValue: type: boolean suspenderType: type: string enum: - admin - billing - user - parent_service - stuck_crashlooping - hipaa_enablement - unknown previewInput: type: object required: - imagePath properties: imagePath: type: string example: docker.io/library/nginx:latest description: 'Must be either a full URL or the relative path to an image. If a relative path, Render uses the base service''s image URL as its root. For example, if the base service''s image URL is `docker.io/library/nginx:latest`, then valid values are: `docker.io/library/nginx:`, `library/nginx:`, or `nginx:`. Note that the path must match (only the tag or SHA can vary).' name: type: string example: preview description: A name for the service preview instance. If not specified, Render generates the name using the base service's name and the specified tag or SHA. plan: $ref: '#/components/schemas/plan' maintenanceMode: type: object required: - enabled - uri properties: enabled: type: boolean uri: type: string description: The page to be served when [maintenance mode](https://render.com/docs/maintenance-mode) is enabled. When empty, the default maintenance mode page is served. registryCredentialSummary: type: object required: - id - name properties: id: type: string name: type: string previews: type: object properties: generation: type: string enum: - 'off' - manual - automatic default: 'off' description: Defaults to "off" privateServiceDetails: type: object required: - env - runtime - envSpecificDetails - plan - region - numInstances - buildPlan - openPorts - url properties: autoscaling: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' disk: $ref: '#/components/schemas/webServiceDetails/properties/disk' env: $ref: '#/components/schemas/serviceEnv' envSpecificDetails: $ref: '#/components/schemas/envSpecificDetails' numInstances: type: integer description: For a *manually* scaled service, this is the number of instances the service is scaled to. DOES NOT indicate the number of running instances for an *autoscaled* service. openPorts: type: array items: $ref: '#/components/schemas/serverPort' parentServer: $ref: '#/components/schemas/resource' plan: $ref: '#/components/schemas/plan' pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' region: $ref: '#/components/schemas/region' runtime: $ref: '#/components/schemas/serviceRuntime' sshAddress: $ref: '#/components/schemas/sshAddress' url: type: string buildPlan: $ref: '#/components/schemas/buildPlan' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' serviceWithCursor: type: object required: - service - cursor properties: service: $ref: '#/components/schemas/service' cursor: $ref: '#/components/schemas/cursor' envSpecificDetailsPOST: oneOf: - $ref: '#/components/schemas/dockerDetailsPOST' - $ref: '#/components/schemas/nativeEnvironmentDetailsPOST' serviceRuntime: type: string enum: - docker - elixir - go - node - python - ruby - rust - image description: Runtime envVarKeyGenerateValue: type: object required: - key - generateValue properties: key: type: string generateValue: type: boolean servicePOST: type: object required: - type - name - ownerId properties: type: $ref: '#/components/schemas/serviceType' name: type: string description: The service's name. Must be unique within the workspace. ownerId: type: string description: The ID of the workspace the service belongs to. Obtain your workspace's ID from its Settings page in the Render Dashboard. repo: type: string example: https://github.com/render-examples/flask-hello-world description: The service's repository URL. Do not specify a branch in this string (use the `branch` parameter instead). autoDeploy: $ref: '#/components/schemas/autoDeploy' branch: type: string description: The repo branch to pull, build, and deploy. If omitted, uses the repository's default branch. image: $ref: '#/components/schemas/image' buildFilter: $ref: '#/components/schemas/buildFilter' rootDir: type: string envVars: $ref: '#/components/schemas/envVarInputArray' secretFiles: type: array items: $ref: '#/components/schemas/secretFileInput' environmentId: type: string description: The ID of the environment the service belongs to, if any. Obtain an environment's ID from its Settings page in the Render Dashboard. serviceDetails: oneOf: - $ref: '#/components/schemas/staticSiteDetailsPOST' - $ref: '#/components/schemas/webServiceDetailsPOST' - $ref: '#/components/schemas/privateServiceDetailsPOST' - $ref: '#/components/schemas/backgroundWorkerDetailsPOST' - $ref: '#/components/schemas/cronJobDetailsPOST' registryCredential: type: object required: - id - name - username - registry - updatedAt properties: id: type: string description: Unique identifier for this credential name: type: string description: Descriptive name for this credential registry: $ref: '#/components/schemas/registryCredentialRegistry' username: type: string description: The username associated with the credential updatedAt: type: string format: date-time description: Last updated time for the credential privateServiceDetailsPOST: type: object required: - runtime properties: autoscaling: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' disk: $ref: '#/components/schemas/serviceDisk' env: $ref: '#/components/schemas/serviceEnv' runtime: $ref: '#/components/schemas/serviceRuntime' envSpecificDetails: $ref: '#/components/schemas/envSpecificDetailsPOST' numInstances: type: integer minimum: 1 default: 1 description: Defaults to 1 plan: $ref: '#/components/schemas/paidPlan' preDeployCommand: type: string pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' region: $ref: '#/components/schemas/region' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' staticSiteDetailsPATCH: type: object properties: buildCommand: type: string publishPath: type: string pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' renderSubdomainPolicy: $ref: '#/components/schemas/renderSubdomainPolicy' ipAllowList: type: array items: $ref: '#/components/schemas/cidrBlockAndDescription' error: type: object properties: id: type: string message: type: string maxShutdownDelaySeconds: type: integer description: The maximum amount of time (in seconds) that Render waits for your application process to exit gracefully after sending it a SIGTERM signal. minimum: 1 maximum: 300 default: 30 envVarValue: type: object required: - value properties: value: type: string addUpdateEnvVarInput: type: object oneOf: - $ref: '#/components/schemas/envVarValue' - $ref: '#/components/schemas/envVarGenerateValue' paidPlan: type: string enum: - starter - standard - pro - pro_plus - pro_max - pro_ultra default: starter description: Defaults to `starter` when creating a new database. resource: required: - id - name type: object properties: id: type: string name: type: string backgroundWorkerDetailsPOST: type: object required: - runtime properties: autoscaling: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' disk: $ref: '#/components/schemas/serviceDisk' env: $ref: '#/components/schemas/serviceEnv' runtime: $ref: '#/components/schemas/serviceRuntime' envSpecificDetails: $ref: '#/components/schemas/envSpecificDetailsPOST' numInstances: type: integer minimum: 1 default: 1 description: Defaults to 1 plan: $ref: '#/components/schemas/paidPlan' preDeployCommand: type: string pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' region: $ref: '#/components/schemas/region' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' secretFileWithCursor: type: object required: - secretFile - cursor properties: secretFile: $ref: '#/components/schemas/secretFile' cursor: $ref: '#/components/schemas/cursor' envVar: type: object required: - key - value properties: key: type: string value: type: string serviceList: type: array items: $ref: '#/components/schemas/serviceWithCursor' nativeEnvironmentDetailsPATCH: type: object properties: buildCommand: type: string startCommand: type: string nativeEnvironmentDetails: type: object required: - buildCommand - startCommand properties: buildCommand: type: string startCommand: type: string preDeployCommand: type: string secretFileInput: type: object required: - name - content properties: name: type: string content: type: string servicePATCH: type: object properties: autoDeploy: $ref: '#/components/schemas/autoDeploy' repo: type: string branch: type: string image: $ref: '#/components/schemas/image' name: type: string buildFilter: $ref: '#/components/schemas/buildFilter' rootDir: type: string serviceDetails: oneOf: - $ref: '#/components/schemas/staticSiteDetailsPATCH' - $ref: '#/components/schemas/webServiceDetailsPATCH' - $ref: '#/components/schemas/privateServiceDetailsPATCH' - $ref: '#/components/schemas/backgroundWorkerDetailsPATCH' - $ref: '#/components/schemas/cronJobDetailsPATCH' headerInput: type: object required: - path - name - value properties: path: type: string description: The request path to add the header to. Wildcards will cause headers to be applied to all matching paths. example: /static/* name: type: string description: Header name example: Cache-Control value: type: string description: Header value example: public, max-age=604800 envSpecificDetails: oneOf: - $ref: '#/components/schemas/dockerDetails' - $ref: '#/components/schemas/nativeEnvironmentDetails' dockerDetailsPOST: type: object properties: dockerCommand: type: string dockerContext: type: string dockerfilePath: type: string description: Defaults to "./Dockerfile" registryCredentialId: type: string serverPort: type: object required: - port - protocol properties: port: type: integer example: 10000 protocol: type: string enum: - TCP - UDP staticSiteDetailsPOST: type: object properties: buildCommand: type: string headers: type: array items: $ref: '#/components/schemas/headerInput' publishPath: type: string description: Defaults to "public" pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' routes: type: array items: $ref: '#/components/schemas/routePost' renderSubdomainPolicy: $ref: '#/components/schemas/renderSubdomainPolicy' ipAllowList: type: array items: $ref: '#/components/schemas/cidrBlockAndDescription' backgroundWorkerDetails: type: object required: - env - runtime - envSpecificDetails - plan - region - numInstances - buildPlan properties: autoscaling: $ref: '#/components/schemas/webServiceDetails/properties/autoscaling' disk: $ref: '#/components/schemas/webServiceDetails/properties/disk' env: $ref: '#/components/schemas/serviceEnv' envSpecificDetails: $ref: '#/components/schemas/envSpecificDetails' numInstances: type: integer description: For a *manually* scaled service, this is the number of instances the service is scaled to. DOES NOT indicate the number of running instances for an *autoscaled* service. parentServer: $ref: '#/components/schemas/resource' plan: $ref: '#/components/schemas/plan' pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' region: $ref: '#/components/schemas/region' runtime: $ref: '#/components/schemas/serviceRuntime' sshAddress: $ref: '#/components/schemas/sshAddress' buildPlan: $ref: '#/components/schemas/buildPlan' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' secretFile: type: object required: - name - content properties: name: type: string content: type: string autoDeploy: type: string enum: - 'yes' - 'no' default: 'yes' cronJobDetails: required: - env - runtime - envSpecificDetails - plan - region - schedule - buildPlan type: object properties: env: $ref: '#/components/schemas/serviceEnv' envSpecificDetails: $ref: '#/components/schemas/envSpecificDetails' lastSuccessfulRunAt: type: string format: date-time plan: $ref: '#/components/schemas/plan' region: $ref: '#/components/schemas/region' runtime: $ref: '#/components/schemas/serviceRuntime' schedule: type: string buildPlan: $ref: '#/components/schemas/buildPlan' dockerDetails: type: object required: - dockerCommand - dockerContext - dockerfilePath properties: dockerCommand: type: string dockerContext: type: string dockerfilePath: type: string preDeployCommand: type: string registryCredential: $ref: '#/components/schemas/registryCredential' notifySetting: type: string enum: - default - notify - ignore serviceType: type: string enum: - static_site - web_service - private_service - background_worker - cron_job plan: type: string enum: - starter - starter_plus - standard - standard_plus - pro - pro_plus - pro_max - pro_ultra - free - custom example: starter description: The instance type to use. Note that base services on any paid instance type can't create preview instances with the `free` instance type. envVarInputArray: type: array items: $ref: '#/components/schemas/envVarInput' dockerDetailsPATCH: type: object properties: dockerCommand: type: string dockerContext: type: string dockerfilePath: type: string registryCredentialId: type: string registryCredentialRegistry: type: string enum: - GITHUB - GITLAB - DOCKER - GOOGLE_ARTIFACT - AWS_ECR description: The registry to use this credential with cronJobDetailsPOST: type: object required: - runtime - schedule properties: env: $ref: '#/components/schemas/serviceEnv' runtime: $ref: '#/components/schemas/serviceRuntime' envSpecificDetails: $ref: '#/components/schemas/envSpecificDetails' plan: $ref: '#/components/schemas/paidPlan' region: $ref: '#/components/schemas/region' schedule: type: string cursor: type: string webServiceDetailsPATCH: type: object properties: envSpecificDetails: $ref: '#/components/schemas/envSpecificDetailsPATCH' healthCheckPath: type: string maintenanceMode: $ref: '#/components/schemas/maintenanceMode' plan: $ref: '#/components/schemas/plan' preDeployCommand: type: string pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' runtime: $ref: '#/components/schemas/serviceRuntime' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' renderSubdomainPolicy: $ref: '#/components/schemas/renderSubdomainPolicy' ipAllowList: type: array items: $ref: '#/components/schemas/cidrBlockAndDescription' cache: $ref: '#/components/schemas/cache' envVarWithCursor: type: object required: - envVar - cursor properties: envVar: $ref: '#/components/schemas/envVar' cursor: $ref: '#/components/schemas/cursor' privateServiceDetailsPATCH: type: object properties: envSpecificDetails: $ref: '#/components/schemas/envSpecificDetailsPATCH' plan: $ref: '#/components/schemas/paidPlan' preDeployCommand: type: string pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' runtime: $ref: '#/components/schemas/serviceRuntime' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' serviceInstance: type: object required: - id - createdAt properties: id: type: string createdAt: type: string format: date-time backgroundWorkerDetailsPATCH: type: object properties: envSpecificDetails: $ref: '#/components/schemas/envSpecificDetailsPATCH' plan: $ref: '#/components/schemas/paidPlan' preDeployCommand: type: string pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' runtime: $ref: '#/components/schemas/serviceRuntime' maxShutdownDelaySeconds: $ref: '#/components/schemas/maxShutdownDelaySeconds' region: type: string enum: - frankfurt - oregon - ohio - singapore - virginia default: oregon description: Defaults to "oregon" buildPlan: type: string enum: - starter - performance default: starter nativeEnvironmentDetailsPOST: type: object required: - buildCommand - startCommand properties: buildCommand: type: string startCommand: type: string description: Fields for native environment (runtime) services routeType: type: string enum: - redirect - rewrite envSpecificDetailsPATCH: oneOf: - $ref: '#/components/schemas/dockerDetailsPATCH' - $ref: '#/components/schemas/nativeEnvironmentDetailsPATCH' serviceAndDeploy: type: object properties: service: $ref: '#/components/schemas/service' deployId: type: string service: type: object required: - id - name - ownerId - type - createdAt - dashboardUrl - updatedAt - suspended - suspenders - autoDeploy - notifyOnFail - slug - serviceDetails - rootDir properties: id: type: string autoDeploy: $ref: '#/components/schemas/autoDeploy' branch: type: string buildFilter: $ref: '#/components/schemas/buildFilter' createdAt: type: string format: date-time dashboardUrl: type: string description: The URL to view the service in the Render Dashboard environmentId: type: string imagePath: type: string name: type: string notifyOnFail: $ref: '#/components/schemas/notifySetting' ownerId: type: string registryCredential: $ref: '#/components/schemas/registryCredentialSummary' repo: type: string example: https://github.com/render-examples/flask-hello-world rootDir: type: string slug: type: string suspended: type: string enum: - suspended - not_suspended suspenders: type: array items: $ref: '#/components/schemas/suspenderType' type: $ref: '#/components/schemas/serviceType' updatedAt: type: string format: date-time serviceDetails: oneOf: - $ref: '#/components/schemas/staticSiteDetails' - $ref: '#/components/schemas/webServiceDetails' - $ref: '#/components/schemas/privateServiceDetails' - $ref: '#/components/schemas/backgroundWorkerDetails' - $ref: '#/components/schemas/cronJobDetails' envVarKeyValue: type: object required: - key - value properties: key: type: string value: type: string routePost: type: object required: - type - source - destination properties: type: $ref: '#/components/schemas/routeType' source: type: string example: /:bar/foo destination: type: string example: /foo/:bar priority: type: integer description: Redirect and Rewrite Rules are applied in priority order starting at 0. Defaults to last in the priority list. image: type: object required: - imagePath - ownerId properties: ownerId: type: string description: The ID of the owner for this image. This should match the owner of the service as well as the owner of any specified registry credential. registryCredentialId: type: string description: Optional reference to the registry credential passed to the image repository to retrieve this image. imagePath: type: string description: Path to the image used for this server (e.g docker.io/library/nginx:latest). buildFilter: type: object required: - paths - ignoredPaths properties: paths: type: array items: type: string ignoredPaths: type: array items: type: string pullRequestPreviewsEnabled: type: string enum: - 'yes' - 'no' default: 'no' deprecated: true description: This field has been deprecated. previews.generation should be used in its place. staticSiteDetails: type: object required: - buildCommand - publishPath - url - buildPlan properties: buildCommand: type: string ipAllowList: type: array items: $ref: '#/components/schemas/cidrBlockAndDescription' parentServer: $ref: '#/components/schemas/resource' publishPath: type: string pullRequestPreviewsEnabled: $ref: '#/components/schemas/pullRequestPreviewsEnabled' previews: $ref: '#/components/schemas/previews' url: type: string buildPlan: $ref: '#/components/schemas/buildPlan' renderSubdomainPolicy: $ref: '#/components/schemas/renderSubdomainPolicy' sshAddress: type: string description: The SSH address for the service. Only present for services that have SSH enabled. parameters: eventTypeParam: name: type in: query description: The type of event to filter to required: false schema: anyOf: - type: string enum: - autoscaling_config_changed - autoscaling_ended - autoscaling_started - branch_deleted - build_ended - build_started - commit_ignored - cron_job_run_ended - cron_job_run_started - deploy_ended - deploy_started - disk_created - disk_updated - disk_deleted - image_pull_failed - initial_deploy_hook_ended - initial_deploy_hook_started - instance_count_changed - job_run_ended - maintenance_mode_enabled - maintenance_mode_uri_updated - maintenance_ended - maintenance_started - pipeline_minutes_exhausted - plan_changed - pre_deploy_ended - pre_deploy_started - server_available - server_failed - server_hardware_failure - server_restarted - service_resumed - service_suspended - suspender_added - suspender_removed - zero_downtime_redeploy_ended - zero_downtime_redeploy_started envParam: name: env in: query schema: type: array items: $ref: '#/components/schemas/serviceRuntime' style: form explode: false required: false deprecated: true description: Filter for environments (runtimes) of services (deprecated; use `runtime` instead) createdBeforeParam: name: createdBefore in: query schema: type: string format: date-time required: false description: Filter for resources created before a certain time (specified as an ISO 8601 timestamp) example: '2021-06-17T08:15:30Z' environmentIdParam: name: environmentId in: query schema: type: array items: type: string style: form explode: false required: false description: Filter for resources that belong to an environment nameParam: name: name in: query schema: type: array items: type: string style: form explode: false required: false description: Filter by name includePreviewsParam: name: includePreviews in: query schema: type: boolean default: true required: false description: Include previews in the response updatedAfterParam: name: updatedAfter in: query schema: type: string format: date-time required: false description: Filter for resources updated after a certain time (specified as an ISO 8601 timestamp) example: '2021-06-17T08:15:30Z' serviceTypeParam: name: type in: query schema: type: array items: $ref: '#/components/schemas/serviceType' style: form explode: false required: false description: Filter for types of services createdAfterParam: name: createdAfter in: query schema: type: string format: date-time required: false description: Filter for resources created after a certain time (specified as an ISO 8601 timestamp) example: '2021-02-17T08:15:30Z' serviceIdParam: name: serviceId in: path required: true description: The ID of the service schema: type: string regionParam: name: region in: query schema: type: array items: $ref: '#/components/schemas/region' style: form explode: false required: false description: Filter by resource region limitParam: name: limit in: query required: false description: The maximum number of items to return. For details, see [Pagination](https://api-docs.render.com/reference/pagination). schema: type: integer default: 20 minimum: 1 maximum: 100 description: Defaults to 20 updatedBeforeParam: name: updatedBefore in: query schema: type: string format: date-time required: false description: Filter for resources updated before a certain time (specified as an ISO 8601 timestamp) example: '2021-06-17T08:15:30Z' suspendedParam: name: suspended in: query schema: type: array items: type: string enum: - suspended - not_suspended style: form explode: false required: false description: Filter resources based on whether they're suspended or not suspended envVarKeyParam: name: envVarKey in: path required: true schema: type: string description: The name of the environment variable cursorParam: name: cursor in: query required: false description: The position in the result list to start from when fetching paginated results. For details, see [Pagination](https://api-docs.render.com/reference/pagination). schema: type: string endTimeParam: name: endTime in: query schema: type: string format: date-time example: '2021-06-17T08:30:30Z' required: false description: Epoch/Unix timestamp of end of time range to return. Defaults to `now()`. ownerIdParam: name: ownerId in: query description: The ID of the workspaces to return resources for schema: type: array items: type: string style: form explode: false required: false startTimeParam: name: startTime in: query schema: type: string format: date-time example: '2021-06-17T08:15:30Z' required: false description: Epoch/Unix timestamp of start of time range to return. Defaults to `now() - 1 hour`. responses: 503ServiceUnavailable: description: Server currently unavailable. content: application/json: schema: $ref: '#/components/schemas/error' 402PaymentRequired: description: You must enter payment information to perform this request. content: application/json: schema: $ref: '#/components/schemas/error' 401Unauthorized: description: Authorization information is missing or invalid. content: application/json: schema: $ref: '#/components/schemas/error' 410Gone: description: The requested resource is no longer available. content: application/json: schema: $ref: '#/components/schemas/error' 429RateLimit: description: Rate limit has been surpassed. content: application/json: schema: $ref: '#/components/schemas/error' 403Forbidden: description: You do not have permissions for the requested resource. content: application/json: schema: $ref: '#/components/schemas/error' 400BadRequest: description: The request could not be understood by the server. content: application/json: schema: $ref: '#/components/schemas/error' 409Conflict: description: The current state of the resource conflicts with this request. content: application/json: schema: $ref: '#/components/schemas/error' 404NotFound: description: Unable to find the requested resource. content: application/json: schema: $ref: '#/components/schemas/error' 406NotAcceptable: description: Unable to generate preferred media types as specified by Accept request header. content: application/json: schema: $ref: '#/components/schemas/error' 500InternalServerError: description: An unexpected server error has occurred. content: application/json: schema: $ref: '#/components/schemas/error' securitySchemes: BearerAuth: type: http scheme: bearer x-readme: metrics-enabled: false