# Netlify Integration via LowCodeAPI
**Last Updated**: February 10, 2026
## Overview
Web hosting and deployment
**Categories:**
- {'id': 'developer-tools', 'name': 'Developer Tools'}
## Base Endpoint
https://api.lowcodeapi.com/netlify
**Important**: Always include the provider name in the URL path after `api.lowcodeapi.com/`
## Authentication
**Type:** TOKEN
**Official Documentation:** https://docs.netlify.com/api/get-started
## URL Format (Important)
LowCodeAPI supports two URL formats. **Always try the New Format first**, then fall back to Old Format if needed.
### New Format (Priority)
- Path parameters stay in the URL path
- Do NOT include path parameters as query parameters
- Example: `https://api.lowcodeapi.com/{provider}/resource/{id}?api_token=XXX`
### Old Format (Fallback)
- Path parameters become query parameters
- Example: `https://api.lowcodeapi.com/{provider}/resource/id?id={id}&api_token=XXX`
### Decision Flow for AI Agents
1. Always use **New Format** first - keep path parameters in the URL path
2. If you get a 404 or error, try **Old Format** with sanitized path
3. Log which format worked for future requests to this provider
## API Categories
## Common Endpoints
### List sites
**Method:** GET
**LowCodeAPI Path:** /api/v1/sites
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites?api_token=YOUR_API_TOKEN
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| filter | string | |
| name | string | |
| page | integer | |
| per_page | integer | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/netlify/api/v1/sites?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#list-sites
### Create a site
**Method:** POST
**LowCodeAPI Path:** /api/v1/sites
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites?api_token=YOUR_API_TOKEN
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| configure_dns | boolean | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| build_settings | object | |
| custom_domain | string | |
| force_ssl | boolean | |
| managed_dns | boolean | |
| name | string | |
| password | string | |
| plan | string | |
| repo | object | |
| ssl_url | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/netlify/api/v1/sites?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#create-a-site
### Get a site
**Method:** GET
**LowCodeAPI Path:** /api/v1/sites/{site_id}
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/site_id?site_id={site_id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| site_id | string | |
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| feature_flags | string | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#get-site-information
### Update a site
**Method:** PATCH
**LowCodeAPI Path:** /api/v1/sites/{site_id}
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/site_id?site_id={site_id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| site_id | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| build_settings | object | |
| custom_domain | string | |
| force_ssl | boolean | |
| managed_dns | boolean | |
| name | string | |
| password | string | |
| plan | string | |
| repo | object | |
| ssl_url | string | |
**Example Request (New Format):**
```bash
curl -X PATCH 'https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#update-a-site
### Delete a site
**Method:** DELETE
**LowCodeAPI Path:** /api/v1/sites/{site_id}
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/site_id?site_id={site_id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| site_id | string | |
**Example Request (New Format):**
```bash
curl -X DELETE 'https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#delete-a-site
### List deploys for a site
**Method:** GET
**LowCodeAPI Path:** /api/v1/sites/{site_id}/deploys
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}/deploys?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/site_id/deploys?site_id={site_id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| site_id | string | |
**Query Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| branch | string | |
| page | integer | |
| per_page | integer | |
| state | string | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}/deploys?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#list-deploys
### Create a new deploy
**Method:** POST
**LowCodeAPI Path:** /api/v1/sites/{site_id}/deploys
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}/deploys?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/site_id/deploys?site_id={site_id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| site_id | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| async | boolean | |
| branch | string | |
| draft | boolean | |
| files | object | |
| function_schedules | array | |
| functions | object | |
| title | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}/deploys?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#create-a-deploy
### Get a deploy
**Method:** GET
**LowCodeAPI Path:** /api/v1/deploys/{deploy_id}
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/deploys/{deploy_id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/deploys/deploy_id?deploy_id={deploy_id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| deploy_id | string | |
**Example Request (New Format):**
```bash
curl -X GET 'https://api.lowcodeapi.com/netlify/api/v1/deploys/{deploy_id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#get-deploy
### Cancel a deploy
**Method:** POST
**LowCodeAPI Path:** /api/v1/deploys/{deploy_id}/cancel
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/deploys/{deploy_id}/cancel?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/deploys/deploy_id/cancel?deploy_id={deploy_id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| deploy_id | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/netlify/api/v1/deploys/{deploy_id}/cancel?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#cancel-a-deploy
### Restore a deploy
**Method:** POST
**LowCodeAPI Path:** /api/v1/sites/{site_id}/deploys/{deploy_id}/restore
**New Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}/deploys/{deploy_id}/restore?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/netlify/api/v1/sites/site_id/deploys/deploy_id/restore?deploy_id={deploy_id}&site_id={site_id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| deploy_id | string | |
| site_id | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/netlify/api/v1/sites/{site_id}/deploys/{deploy_id}/restore?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://docs.netlify.com/api/get-started/#restore-a-deploy
## Usage Examples
### Example 1: Basic API Request (New Format)
Making a simple GET request to retrieve resources:
```bash
# Get a list of resources - no path parameters needed
curl -X GET "https://api.lowcodeapi.com/netlify/endpoint?api_token=YOUR_API_TOKEN"
```
### Example 2: Request with Path Parameters (New Format)
Retrieving a specific resource using its ID:
```bash
# Get specific resource by ID - replace RESOURCE_ID with actual ID from previous response
curl -X GET "https://api.lowcodeapi.com/netlify/endpoint/{RESOURCE_ID}?api_token=YOUR_API_TOKEN"
# Note: RESOURCE_ID typically comes from a previous list request or from the provider dashboard
```
### Example 3: POST Request with Body (New Format)
Creating a new resource:
```bash
# Create a new resource
curl -X POST "https://api.lowcodeapi.com/netlify/endpoint?api_token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"field": "value", "another_field": "another_value"}'
```
## Error Handling
LowCodeAPI returns standard HTTP status codes. Common errors:
| Status Code | Description |
|-------------|-------------|
| 200 | Success - Request completed successfully |
| 400 | Bad Request - Invalid parameters or request body |
| 401 | Unauthorized - Invalid or missing API token |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Endpoint or resource doesn't exist |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Server Error - Provider API error |
All error responses include error details:
```json
{
"data": {
"error": {
"message": "Error description",
"code": "ERROR_CODE"
}
}
}
```
## Complete Endpoint Reference
| Endpoint | Method | Category |
|----------|--------|----------|
| List sites | GET | Sites |
| Create a site | POST | Sites |
| Get a site | GET | Sites |
| Update a site | PATCH | Sites |
| Delete a site | DELETE | Sites |
| List deploys for a site | GET | Deploys |
| Create a new deploy | POST | Deploys |
| Get a deploy | GET | Deploys |
| Cancel a deploy | POST | Deploys |
| Restore a deploy | POST | Deploys |
| Lock a deploy | POST | Deploys |
| Unlock a deploy | POST | Deploys |
| List forms for a site | GET | Forms |
| Get a form | GET | Forms |
| List form submissions | GET | Submissions |
| List submissions for a form | GET | Submissions |
| Delete a submission | DELETE | Submissions |
| List functions for a site | GET | Functions |
| List environment variables | GET | Environment Variables |
| Create environment variables | POST | Environment Variables |
| Get environment variable | GET | Environment Variables |
| Update environment variable | PUT | Environment Variables |
| Delete environment variable | DELETE | Environment Variables |
| List build hooks | GET | Build Hooks |
| Create a build hook | POST | Build Hooks |
| Get a build hook | GET | Build Hooks |
| Update a build hook | PUT | Build Hooks |
| Delete a build hook | DELETE | Build Hooks |
| List DNS zones | GET | DNS |
| Provision TLS certificate | POST | SSL |
| List TLS certificates | GET | SSL |
| List snippets | GET | Snippets |
| Create a snippet | POST | Snippets |
| Get a snippet | GET | Snippets |
| Update a snippet | PUT | Snippets |
| Delete a snippet | DELETE | Snippets |
| Rollback a deploy | POST | Deploys |
| Unlink repository | PUT | Sites |
| List deployed branches | GET | Deploys |
| List site files | GET | Files |
| Get a file | GET | Files |
| List assets | GET | Assets |
| Get an asset | GET | Assets |
| Update site metadata | PUT | Sites |
| List hooks | GET | Hooks |
| Create a hook | POST | Hooks |
| Get a hook | GET | Hooks |
| Update a hook | PUT | Hooks |
| Delete a hook | DELETE | Hooks |
| Enable a hook | POST | Hooks |
| List hook types | GET | Hooks |
| Get a build | GET | Builds |
| Get build log | GET | Builds |
| Start a build | POST | Builds |
| List builds | GET | Builds |
| Get deploy validations report | GET | Deploys |
| Get deploy file | GET | Deploys |
| Get deploy function | GET | Deploys |
| Install a plugin | POST | Plugins |
| Uninstall a plugin | DELETE | Plugins |
| Get latest plugin run | GET | Plugins |
| List plugin runs for a deploy | GET | Plugins |
| Purge cache | POST | Cache |
| Get account builds status | GET | Builds |
| Get asset public signature | GET | Assets |
| Delete environment variable value | DELETE | Environment Variables |
## API Definition Endpoints
You can fetch the complete API specification for this provider:
**New Format (OpenAPI spec):**
```bash
curl 'https://backend.lowcodeapi.com/netlify/openapi'
```
**Old Format (API definition):**
```bash
curl 'https://backend.lowcodeapi.com/netlify/definition'
```
## Response Format
All responses are wrapped in a `data` key:
```json
{
"data": {
// Actual response from provider (object or array)
}
}
```