Render · Capability

Render Public API — Services

Render Public API — Services. 25 operations. Lead operation: List services. Self-contained Naftiko capability covering one Render business surface.

Run with Naftiko RenderServices

What You Can Do

GET
Listservices — List services
/v1/services
POST
Createservice — Create service
/v1/services
GET
Retrieveservice — Retrieve service
/v1/services/{serviceid}
PATCH
Updateservice — Update service
/v1/services/{serviceid}
DELETE
Deleteservice — Delete service
/v1/services/{serviceid}
PUT
Autoscaleservice — Update autoscaling config
/v1/services/{serviceid}/autoscaling
DELETE
Deleteautoscalingconfig — Delete autoscaling config
/v1/services/{serviceid}/autoscaling
POST
Purgecache — Purge Web Service Cache
/v1/services/{serviceid}/cache/purge
GET
Getenvvarsforservice — List environment variables
/v1/services/{serviceid}/env-vars
PUT
Updateenvvarsforservice — Update environment variables
/v1/services/{serviceid}/env-vars
GET
Retrieveenvvar — Retrieve environment variable
/v1/services/{serviceid}/env-vars/{envvarkey}
PUT
Updateenvvar — Add or update environment variable
/v1/services/{serviceid}/env-vars/{envvarkey}
DELETE
Deleteenvvar — Delete environment variable
/v1/services/{serviceid}/env-vars/{envvarkey}
GET
Listevents — List events
/v1/services/{serviceid}/events
GET
Listinstances — List instances
/v1/services/{serviceid}/instances
POST
Previewservice — Create service preview (image-backed)
/v1/services/{serviceid}/preview
POST
Restartservice — Restart service
/v1/services/{serviceid}/restart
POST
Resumeservice — Resume service
/v1/services/{serviceid}/resume
POST
Scaleservice — Scale instance count
/v1/services/{serviceid}/scale
GET
Listsecretfilesforservice — List secret files
/v1/services/{serviceid}/secret-files
PUT
Updatesecretfilesforservice — Update secret files
/v1/services/{serviceid}/secret-files
GET
Retrievesecretfile — Retrieve secret file
/v1/services/{serviceid}/secret-files/{secretfilename}
PUT
Addorupdatesecretfile — Add or update secret file
/v1/services/{serviceid}/secret-files/{secretfilename}
DELETE
Deletesecretfile — Delete secret file
/v1/services/{serviceid}/secret-files/{secretfilename}
POST
Suspendservice — Suspend service
/v1/services/{serviceid}/suspend

MCP Tools

list-services

List services

read-only idempotent
create-service

Create service

retrieve-service

Retrieve service

read-only idempotent
update-service

Update service

idempotent
delete-service

Delete service

idempotent
update-autoscaling-config

Update autoscaling config

idempotent
delete-autoscaling-config

Delete autoscaling config

idempotent
purge-web-service-cache

Purge Web Service Cache

list-environment-variables

List environment variables

read-only idempotent
update-environment-variables

Update environment variables

idempotent
retrieve-environment-variable

Retrieve environment variable

read-only idempotent
add-update-environment-variable

Add or update environment variable

idempotent
delete-environment-variable

Delete environment variable

idempotent
list-events

List events

read-only idempotent
list-instances

List instances

read-only idempotent
create-service-preview-image-backed

Create service preview (image-backed)

restart-service

Restart service

resume-service

Resume service

scale-instance-count

Scale instance count

list-secret-files

List secret files

read-only idempotent
update-secret-files

Update secret files

idempotent
retrieve-secret-file

Retrieve secret file

read-only idempotent
add-update-secret-file

Add or update secret file

idempotent
delete-secret-file

Delete secret file

idempotent
suspend-service

Suspend service

Capability Spec

render-services.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Render Public API — Services
  description: 'Render Public API — Services. 25 operations. Lead operation: List services. Self-contained Naftiko capability
    covering one Render business surface.'
  tags:
  - Render
  - Services
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    RENDER_API_KEY: RENDER_API_KEY
capability:
  consumes:
  - type: http
    namespace: render-services
    baseUri: https://api.render.com/v1
    description: Render Public API — Services business capability. Self-contained, no shared references.
    resources:
    - name: services
      path: /services
      operations:
      - name: listservices
        method: GET
        description: List services
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createservice
        method: POST
        description: Create service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: services-serviceId
      path: /services/{serviceId}
      operations:
      - name: retrieveservice
        method: GET
        description: Retrieve service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateservice
        method: PATCH
        description: Update service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteservice
        method: DELETE
        description: Delete service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: services-serviceId-autoscaling
      path: /services/{serviceId}/autoscaling
      operations:
      - name: autoscaleservice
        method: PUT
        description: Update autoscaling config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteautoscalingconfig
        method: DELETE
        description: Delete autoscaling config
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: services-serviceId-cache-purge
      path: /services/{serviceId}/cache/purge
      operations:
      - name: purgecache
        method: POST
        description: Purge Web Service Cache
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: services-serviceId-env-vars
      path: /services/{serviceId}/env-vars
      operations:
      - name: getenvvarsforservice
        method: GET
        description: List environment variables
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateenvvarsforservice
        method: PUT
        description: Update environment variables
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: services-serviceId-env-vars-envVarKey
      path: /services/{serviceId}/env-vars/{envVarKey}
      operations:
      - name: retrieveenvvar
        method: GET
        description: Retrieve environment variable
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updateenvvar
        method: PUT
        description: Add or update environment variable
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteenvvar
        method: DELETE
        description: Delete environment variable
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: services-serviceId-events
      path: /services/{serviceId}/events
      operations:
      - name: listevents
        method: GET
        description: List events
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: services-serviceId-instances
      path: /services/{serviceId}/instances
      operations:
      - name: listinstances
        method: GET
        description: List instances
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: services-serviceId-preview
      path: /services/{serviceId}/preview
      operations:
      - name: previewservice
        method: POST
        description: Create service preview (image-backed)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: services-serviceId-restart
      path: /services/{serviceId}/restart
      operations:
      - name: restartservice
        method: POST
        description: Restart service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: services-serviceId-resume
      path: /services/{serviceId}/resume
      operations:
      - name: resumeservice
        method: POST
        description: Resume service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: services-serviceId-scale
      path: /services/{serviceId}/scale
      operations:
      - name: scaleservice
        method: POST
        description: Scale instance count
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: services-serviceId-secret-files
      path: /services/{serviceId}/secret-files
      operations:
      - name: listsecretfilesforservice
        method: GET
        description: List secret files
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatesecretfilesforservice
        method: PUT
        description: Update secret files
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: services-serviceId-secret-files-secretFileName
      path: /services/{serviceId}/secret-files/{secretFileName}
      operations:
      - name: retrievesecretfile
        method: GET
        description: Retrieve secret file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addorupdatesecretfile
        method: PUT
        description: Add or update secret file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletesecretfile
        method: DELETE
        description: Delete secret file
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: services-serviceId-suspend
      path: /services/{serviceId}/suspend
      operations:
      - name: suspendservice
        method: POST
        description: Suspend service
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: bearer
      token: '{{env.RENDER_API_KEY}}'
  exposes:
  - type: rest
    namespace: render-services-rest
    port: 8080
    description: REST adapter for Render Public API — Services. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/services
      name: services
      description: REST surface for services.
      operations:
      - method: GET
        name: listservices
        description: List services
        call: render-services.listservices
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createservice
        description: Create service
        call: render-services.createservice
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}
      name: services-serviceid
      description: REST surface for services-serviceId.
      operations:
      - method: GET
        name: retrieveservice
        description: Retrieve service
        call: render-services.retrieveservice
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateservice
        description: Update service
        call: render-services.updateservice
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteservice
        description: Delete service
        call: render-services.deleteservice
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/autoscaling
      name: services-serviceid-autoscaling
      description: REST surface for services-serviceId-autoscaling.
      operations:
      - method: PUT
        name: autoscaleservice
        description: Update autoscaling config
        call: render-services.autoscaleservice
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteautoscalingconfig
        description: Delete autoscaling config
        call: render-services.deleteautoscalingconfig
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/cache/purge
      name: services-serviceid-cache-purge
      description: REST surface for services-serviceId-cache-purge.
      operations:
      - method: POST
        name: purgecache
        description: Purge Web Service Cache
        call: render-services.purgecache
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/env-vars
      name: services-serviceid-env-vars
      description: REST surface for services-serviceId-env-vars.
      operations:
      - method: GET
        name: getenvvarsforservice
        description: List environment variables
        call: render-services.getenvvarsforservice
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateenvvarsforservice
        description: Update environment variables
        call: render-services.updateenvvarsforservice
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/env-vars/{envvarkey}
      name: services-serviceid-env-vars-envvarkey
      description: REST surface for services-serviceId-env-vars-envVarKey.
      operations:
      - method: GET
        name: retrieveenvvar
        description: Retrieve environment variable
        call: render-services.retrieveenvvar
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updateenvvar
        description: Add or update environment variable
        call: render-services.updateenvvar
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteenvvar
        description: Delete environment variable
        call: render-services.deleteenvvar
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/events
      name: services-serviceid-events
      description: REST surface for services-serviceId-events.
      operations:
      - method: GET
        name: listevents
        description: List events
        call: render-services.listevents
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/instances
      name: services-serviceid-instances
      description: REST surface for services-serviceId-instances.
      operations:
      - method: GET
        name: listinstances
        description: List instances
        call: render-services.listinstances
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/preview
      name: services-serviceid-preview
      description: REST surface for services-serviceId-preview.
      operations:
      - method: POST
        name: previewservice
        description: Create service preview (image-backed)
        call: render-services.previewservice
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/restart
      name: services-serviceid-restart
      description: REST surface for services-serviceId-restart.
      operations:
      - method: POST
        name: restartservice
        description: Restart service
        call: render-services.restartservice
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/resume
      name: services-serviceid-resume
      description: REST surface for services-serviceId-resume.
      operations:
      - method: POST
        name: resumeservice
        description: Resume service
        call: render-services.resumeservice
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/scale
      name: services-serviceid-scale
      description: REST surface for services-serviceId-scale.
      operations:
      - method: POST
        name: scaleservice
        description: Scale instance count
        call: render-services.scaleservice
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/secret-files
      name: services-serviceid-secret-files
      description: REST surface for services-serviceId-secret-files.
      operations:
      - method: GET
        name: listsecretfilesforservice
        description: List secret files
        call: render-services.listsecretfilesforservice
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatesecretfilesforservice
        description: Update secret files
        call: render-services.updatesecretfilesforservice
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/secret-files/{secretfilename}
      name: services-serviceid-secret-files-secretfilename
      description: REST surface for services-serviceId-secret-files-secretFileName.
      operations:
      - method: GET
        name: retrievesecretfile
        description: Retrieve secret file
        call: render-services.retrievesecretfile
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: addorupdatesecretfile
        description: Add or update secret file
        call: render-services.addorupdatesecretfile
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletesecretfile
        description: Delete secret file
        call: render-services.deletesecretfile
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/services/{serviceid}/suspend
      name: services-serviceid-suspend
      description: REST surface for services-serviceId-suspend.
      operations:
      - method: POST
        name: suspendservice
        description: Suspend service
        call: render-services.suspendservice
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: render-services-mcp
    port: 9090
    transport: http
    description: MCP adapter for Render Public API — Services. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: list-services
      description: List services
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: render-services.listservices
      outputParameters:
      - type: object
        mapping: $.
    - name: create-service
      description: Create service
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: render-services.createservice
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieve-service
      description: Retrieve service
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: render-services.retrieveservice
      outputParameters:
      - type: object
        mapping: $.
    - name: update-service
      description: Update service
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: render-services.updateservice
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-service
      description: Delete service
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: render-services.deleteservice
      outputParameters:
      - type: object
        mapping: $.
    - name: update-autoscaling-config
      description: Update autoscaling config
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: render-services.autoscaleservice
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-autoscaling-config
      description: Delete autoscaling config
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: render-services.deleteautoscalingconfig
      outputParameters:
      - type: object
        mapping: $.
    - name: purge-web-service-cache
      description: Purge Web Service Cache
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: render-services.purgecache
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-environment-variables
      description: List environment variables
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: render-services.getenvvarsforservice
      outputParameters:
      - type: object
        mapping: $.
    - name: update-environment-variables
      description: Update environment variables
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: render-services.updateenvvarsforservice
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieve-environment-variable
      description: Retrieve environment variable
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: render-services.retrieveenvvar
      outputParameters:
      - type: object
        mapping: $.
    - name: add-update-environment-variable
      description: Add or update environment variable
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: render-services.updateenvvar
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-environment-variable
      description: Delete environment variable
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: render-services.deleteenvvar
      outputParameters:
      - type: object
        mapping: $.
    - name: list-events
      description: List events
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: render-services.listevents
      outputParameters:
      - type: object
        mapping: $.
    - name: list-instances
      description: List instances
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: render-services.listinstances
      outputParameters:
      - type: object
        mapping: $.
    - name: create-service-preview-image-backed
      description: Create service preview (image-backed)
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: render-services.previewservice
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: restart-service
      description: Restart service
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: render-services.restartservice
      outputParameters:
      - type: object
        mapping: $.
    - name: resume-service
      description: Resume service
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: render-services.resumeservice
      outputParameters:
      - type: object
        mapping: $.
    - name: scale-instance-count
      description: Scale instance count
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: render-services.scaleservice
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-secret-files
      description: List secret files
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: render-services.listsecretfilesforservice
      outputParameters:
      - type: object
        mapping: $.
    - name: update-secret-files
      description: Update secret files
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: render-services.updatesecretfilesforservice
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: retrieve-secret-file
      description: Retrieve secret file
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: render-services.retrievesecretfile
      outputParameters:
      - type: object
        mapping: $.
    - name: add-update-secret-file
      description: Add or update secret file
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: render-services.addorupdatesecretfile
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-secret-file
      description: Delete secret file
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: render-services.deletesecretfile
      outputParameters:
      - type: object
        mapping: $.
    - name: suspend-service
      description: Suspend service
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: render-services.suspendservice
      outputParameters:
      - type: object
        mapping: $.