Netlify · Capability
Netlify Netlify's API documentation — Deploy
Netlify Netlify's API documentation — Deploy. 12 operations. Lead operation: Deploy. Self-contained Naftiko capability covering one Netlify business surface.
What You Can Do
GET
Getdeploy
— getdeploy
/v1/deploys/{deploy-id}
DELETE
Deletedeploy
— deletedeploy
/v1/deploys/{deploy-id}
POST
Cancelsitedeploy
— cancelsitedeploy
/v1/deploys/{deploy-id}/cancel
POST
Lockdeploy
— lockdeploy
/v1/deploys/{deploy-id}/lock
POST
Unlockdeploy
— unlockdeploy
/v1/deploys/{deploy-id}/unlock
GET
Listsitedeploys
— listsitedeploys
/v1/sites/{site-id}/deploys
POST
Createsitedeploy
— createsitedeploy
/v1/sites/{site-id}/deploys
GET
Getsitedeploy
— getsitedeploy
/v1/sites/{site-id}/deploys/{deploy-id}
PUT
Updatesitedeploy
— updatesitedeploy
/v1/sites/{site-id}/deploys/{deploy-id}
DELETE
Deletesitedeploy
— deletesitedeploy
/v1/sites/{site-id}/deploys/{deploy-id}
POST
Restoresitedeploy
— restoresitedeploy
/v1/sites/{site-id}/deploys/{deploy-id}/restore
PUT
Rollbacksitedeploy
— rollbacksitedeploy
/v1/sites/{site-id}/rollback
MCP Tools
getdeploy
getdeploy
read-only
idempotent
deletedeploy
deletedeploy
idempotent
cancelsitedeploy
cancelsitedeploy
lockdeploy
lockdeploy
unlockdeploy
unlockdeploy
listsitedeploys
listsitedeploys
read-only
idempotent
createsitedeploy
createsitedeploy
getsitedeploy
getsitedeploy
read-only
idempotent
updatesitedeploy
updatesitedeploy
idempotent
deletesitedeploy
deletesitedeploy
idempotent
restoresitedeploy
restoresitedeploy
rollbacksitedeploy
rollbacksitedeploy
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Netlify Netlify's API documentation — Deploy
description: 'Netlify Netlify''s API documentation — Deploy. 12 operations. Lead operation: Deploy. Self-contained Naftiko
capability covering one Netlify business surface.'
tags:
- Netlify
- Deploy
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
NETLIFY_API_KEY: NETLIFY_API_KEY
capability:
consumes:
- type: http
namespace: netlify-deploy
baseUri: https://api.netlify.com/api/v1
description: Netlify Netlify's API documentation — Deploy business capability. Self-contained, no shared references.
resources:
- name: deploys-deploy_id
path: /deploys/{deploy_id}
operations:
- name: getdeploy
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: deploy_id
in: path
type: string
required: true
- name: deletedeploy
method: DELETE
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: deploy_id
in: path
type: string
required: true
- name: deploys-deploy_id-cancel
path: /deploys/{deploy_id}/cancel
operations:
- name: cancelsitedeploy
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: deploy_id
in: path
type: string
required: true
- name: deploys-deploy_id-lock
path: /deploys/{deploy_id}/lock
operations:
- name: lockdeploy
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: deploy_id
in: path
type: string
required: true
- name: deploys-deploy_id-unlock
path: /deploys/{deploy_id}/unlock
operations:
- name: unlockdeploy
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: deploy_id
in: path
type: string
required: true
- name: sites-site_id-deploys
path: /sites/{site_id}/deploys
operations:
- name: listsitedeploys
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: site_id
in: path
type: string
required: true
- name: deploy-previews
in: query
type: boolean
- name: production
in: query
type: boolean
- name: state
in: query
type: string
- name: branch
in: query
type: string
- name: latest-published
in: query
type: boolean
- name: page
in: query
type: integer
- name: per_page
in: query
type: integer
- name: createsitedeploy
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: site_id
in: path
type: string
required: true
- name: deploy-previews
in: query
type: boolean
- name: production
in: query
type: boolean
- name: state
in: query
type: string
- name: branch
in: query
type: string
- name: latest-published
in: query
type: boolean
- name: title
in: query
type: string
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: sites-site_id-deploys-deploy_id
path: /sites/{site_id}/deploys/{deploy_id}
operations:
- name: getsitedeploy
method: GET
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: site_id
in: path
type: string
required: true
- name: deploy_id
in: path
type: string
required: true
- name: updatesitedeploy
method: PUT
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: site_id
in: path
type: string
required: true
- name: deploy_id
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deletesitedeploy
method: DELETE
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: deploy_id
in: path
type: string
required: true
- name: site_id
in: path
type: string
required: true
- name: sites-site_id-deploys-deploy_id-restore
path: /sites/{site_id}/deploys/{deploy_id}/restore
operations:
- name: restoresitedeploy
method: POST
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: site_id
in: path
type: string
required: true
- name: deploy_id
in: path
type: string
required: true
- name: sites-site_id-rollback
path: /sites/{site_id}/rollback
operations:
- name: rollbacksitedeploy
method: PUT
description: ''
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: site_id
in: path
type: string
required: true
authentication:
type: bearer
token: '{{env.NETLIFY_API_KEY}}'
exposes:
- type: rest
namespace: netlify-deploy-rest
port: 8080
description: REST adapter for Netlify Netlify's API documentation — Deploy. One Spectral-compliant resource per consumed
operation, prefixed with /v1.
resources:
- path: /v1/deploys/{deploy-id}
name: deploys-deploy-id
description: REST surface for deploys-deploy_id.
operations:
- method: GET
name: getdeploy
description: getdeploy
call: netlify-deploy.getdeploy
with:
deploy_id: rest.deploy_id
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletedeploy
description: deletedeploy
call: netlify-deploy.deletedeploy
with:
deploy_id: rest.deploy_id
outputParameters:
- type: object
mapping: $.
- path: /v1/deploys/{deploy-id}/cancel
name: deploys-deploy-id-cancel
description: REST surface for deploys-deploy_id-cancel.
operations:
- method: POST
name: cancelsitedeploy
description: cancelsitedeploy
call: netlify-deploy.cancelsitedeploy
with:
deploy_id: rest.deploy_id
outputParameters:
- type: object
mapping: $.
- path: /v1/deploys/{deploy-id}/lock
name: deploys-deploy-id-lock
description: REST surface for deploys-deploy_id-lock.
operations:
- method: POST
name: lockdeploy
description: lockdeploy
call: netlify-deploy.lockdeploy
with:
deploy_id: rest.deploy_id
outputParameters:
- type: object
mapping: $.
- path: /v1/deploys/{deploy-id}/unlock
name: deploys-deploy-id-unlock
description: REST surface for deploys-deploy_id-unlock.
operations:
- method: POST
name: unlockdeploy
description: unlockdeploy
call: netlify-deploy.unlockdeploy
with:
deploy_id: rest.deploy_id
outputParameters:
- type: object
mapping: $.
- path: /v1/sites/{site-id}/deploys
name: sites-site-id-deploys
description: REST surface for sites-site_id-deploys.
operations:
- method: GET
name: listsitedeploys
description: listsitedeploys
call: netlify-deploy.listsitedeploys
with:
site_id: rest.site_id
deploy-previews: rest.deploy-previews
production: rest.production
state: rest.state
branch: rest.branch
latest-published: rest.latest-published
page: rest.page
per_page: rest.per_page
outputParameters:
- type: object
mapping: $.
- method: POST
name: createsitedeploy
description: createsitedeploy
call: netlify-deploy.createsitedeploy
with:
site_id: rest.site_id
deploy-previews: rest.deploy-previews
production: rest.production
state: rest.state
branch: rest.branch
latest-published: rest.latest-published
title: rest.title
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/sites/{site-id}/deploys/{deploy-id}
name: sites-site-id-deploys-deploy-id
description: REST surface for sites-site_id-deploys-deploy_id.
operations:
- method: GET
name: getsitedeploy
description: getsitedeploy
call: netlify-deploy.getsitedeploy
with:
site_id: rest.site_id
deploy_id: rest.deploy_id
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updatesitedeploy
description: updatesitedeploy
call: netlify-deploy.updatesitedeploy
with:
site_id: rest.site_id
deploy_id: rest.deploy_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletesitedeploy
description: deletesitedeploy
call: netlify-deploy.deletesitedeploy
with:
deploy_id: rest.deploy_id
site_id: rest.site_id
outputParameters:
- type: object
mapping: $.
- path: /v1/sites/{site-id}/deploys/{deploy-id}/restore
name: sites-site-id-deploys-deploy-id-restore
description: REST surface for sites-site_id-deploys-deploy_id-restore.
operations:
- method: POST
name: restoresitedeploy
description: restoresitedeploy
call: netlify-deploy.restoresitedeploy
with:
site_id: rest.site_id
deploy_id: rest.deploy_id
outputParameters:
- type: object
mapping: $.
- path: /v1/sites/{site-id}/rollback
name: sites-site-id-rollback
description: REST surface for sites-site_id-rollback.
operations:
- method: PUT
name: rollbacksitedeploy
description: rollbacksitedeploy
call: netlify-deploy.rollbacksitedeploy
with:
site_id: rest.site_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: netlify-deploy-mcp
port: 9090
transport: http
description: MCP adapter for Netlify Netlify's API documentation — Deploy. One tool per consumed operation, routed inline
through this capability's consumes block.
tools:
- name: getdeploy
description: getdeploy
hints:
readOnly: true
destructive: false
idempotent: true
call: netlify-deploy.getdeploy
with:
deploy_id: tools.deploy_id
outputParameters:
- type: object
mapping: $.
- name: deletedeploy
description: deletedeploy
hints:
readOnly: false
destructive: true
idempotent: true
call: netlify-deploy.deletedeploy
with:
deploy_id: tools.deploy_id
outputParameters:
- type: object
mapping: $.
- name: cancelsitedeploy
description: cancelsitedeploy
hints:
readOnly: false
destructive: false
idempotent: false
call: netlify-deploy.cancelsitedeploy
with:
deploy_id: tools.deploy_id
outputParameters:
- type: object
mapping: $.
- name: lockdeploy
description: lockdeploy
hints:
readOnly: false
destructive: false
idempotent: false
call: netlify-deploy.lockdeploy
with:
deploy_id: tools.deploy_id
outputParameters:
- type: object
mapping: $.
- name: unlockdeploy
description: unlockdeploy
hints:
readOnly: false
destructive: false
idempotent: false
call: netlify-deploy.unlockdeploy
with:
deploy_id: tools.deploy_id
outputParameters:
- type: object
mapping: $.
- name: listsitedeploys
description: listsitedeploys
hints:
readOnly: true
destructive: false
idempotent: true
call: netlify-deploy.listsitedeploys
with:
site_id: tools.site_id
deploy-previews: tools.deploy-previews
production: tools.production
state: tools.state
branch: tools.branch
latest-published: tools.latest-published
page: tools.page
per_page: tools.per_page
outputParameters:
- type: object
mapping: $.
- name: createsitedeploy
description: createsitedeploy
hints:
readOnly: false
destructive: false
idempotent: false
call: netlify-deploy.createsitedeploy
with:
site_id: tools.site_id
deploy-previews: tools.deploy-previews
production: tools.production
state: tools.state
branch: tools.branch
latest-published: tools.latest-published
title: tools.title
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: getsitedeploy
description: getsitedeploy
hints:
readOnly: true
destructive: false
idempotent: true
call: netlify-deploy.getsitedeploy
with:
site_id: tools.site_id
deploy_id: tools.deploy_id
outputParameters:
- type: object
mapping: $.
- name: updatesitedeploy
description: updatesitedeploy
hints:
readOnly: false
destructive: false
idempotent: true
call: netlify-deploy.updatesitedeploy
with:
site_id: tools.site_id
deploy_id: tools.deploy_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: deletesitedeploy
description: deletesitedeploy
hints:
readOnly: false
destructive: true
idempotent: true
call: netlify-deploy.deletesitedeploy
with:
deploy_id: tools.deploy_id
site_id: tools.site_id
outputParameters:
- type: object
mapping: $.
- name: restoresitedeploy
description: restoresitedeploy
hints:
readOnly: false
destructive: false
idempotent: false
call: netlify-deploy.restoresitedeploy
with:
site_id: tools.site_id
deploy_id: tools.deploy_id
outputParameters:
- type: object
mapping: $.
- name: rollbacksitedeploy
description: rollbacksitedeploy
hints:
readOnly: false
destructive: false
idempotent: true
call: netlify-deploy.rollbacksitedeploy
with:
site_id: tools.site_id
outputParameters:
- type: object
mapping: $.