# Porkbun Integration via LowCodeAPI
**Last Updated**: February 10, 2026
## Overview
Domain registration
**Categories:**
- {'id': 'domain-hosting', 'name': 'Domain & Hosting'}
## Base Endpoint
https://api.lowcodeapi.com/porkbun
**Important**: Always include the provider name in the URL path after `api.lowcodeapi.com/`
## Authentication
**Type:** TOKEN
**Official Documentation:** https://porkbun.com/api/json/v3/documentation
## 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
### DNS Create Record
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/dns/create/{domain}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/create/{domain}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/create/domain?domain={domain}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| domain | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| type | enum | |
| content | string | |
| name | string | |
| ttl | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/dns/create/{domain}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#DNS%20Create%20Record
### DNS Edit Record by Domain and ID
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/dns/edit/{domain}/{id}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/edit/{domain}/{id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/edit/domain/id?domain={domain}&id={id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| domain | string | |
| id | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| type | enum | |
| content | string | |
| name | string | |
| ttl | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/dns/edit/{domain}/{id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#DNS%20Edit%20Record%20by%20Domain%20and%20ID
### DNS Edit Record by Domain, Subdomain and Type
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/dns/editByNameType/{domain}/{type}/{subdomain}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/editByNameType/{domain}/{type}/{subdomain}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/editbynametype/domain/type/subdomain?type={type}&domain={domain}&subdomain={subdomain}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| type | string | |
| domain | string | |
| subdomain | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| content | string | |
| ttl | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/dns/editByNameType/{domain}/{type}/{subdomain}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#DNS%20Edit%20Record%20by%20Domain,%20Subdomain%20and%20Type
### DNS Delete Record by Domain and ID
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/dns/delete/{domain}/{id}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/delete/{domain}/{id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/delete/domain/id?domain={domain}&id={id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| domain | string | |
| id | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/dns/delete/{domain}/{id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#DNS%20Delete%20Record%20by%20Domain%20and%20ID
### DNS Delete Records by Domain, Subdomain and Type
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/dns/deleteByNameType/{domain}/{type}/{subdomain}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/deleteByNameType/{domain}/{type}/{subdomain}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/deletebynametype/domain/type/subdomain?type={type}&domain={domain}&subdomain={subdomain}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| type | string | |
| domain | string | |
| subdomain | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/dns/deleteByNameType/{domain}/{type}/{subdomain}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#DNS%20Delete%20Records%20by%20Domain,%20Subdomain%20and%20Type
### DNS Retrieve Records by Domain or ID
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/dns/retrieve/{domain}/{id}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/retrieve/{domain}/{id}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/retrieve/domain/id?domain={domain}&id={id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| domain | string | |
| id | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/dns/retrieve/{domain}/{id}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#DNS%20Retrieve%20Records%20by%20Domain%20or%20ID
### DNS Retrieve Records by Domain, Subdomain and Type
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/dns/retrieveByNameType/{domain}/{type}/{subdomain}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/retrieveByNameType/{domain}/{type}/{subdomain}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/dns/retrievebynametype/domain/type/subdomain?type={type}&domain={domain}&id={id}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| type | string | |
| domain | string | |
| id | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/dns/retrieveByNameType/{domain}/{type}/{subdomain}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#DNS%20Retrieve%20Records%20by%20Domain,%20Subdomain%20and%20Type
### Domain Update Name Servers
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/domain/updateNs/{domain}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/domain/updateNs/{domain}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/domain/updatens/domain?domain={domain}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| domain | string | |
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| ns | array | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/domain/updateNs/{domain}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#Domain%20Update%20Name%20Servers
### Domain Get Name Servers
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/domain/getNs/{domain}
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/domain/getNs/{domain}?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/domain/getns/domain?domain={domain}&api_token=YOUR_API_TOKEN
**Path Parameters:**
| Parameter | Type | Description |
|-----------|------|-------------|
| domain | string | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/domain/getNs/{domain}?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#Domain%20Get%20Name%20Servers
### Domain List All
**Method:** POST
**LowCodeAPI Path:** /api/json/v3/domain/listAll
**New Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/domain/listAll?api_token=YOUR_API_TOKEN
**Old Format URL:**
https://api.lowcodeapi.com/porkbun/api/json/v3/domain/listall?api_token=YOUR_API_TOKEN
**Request Body:**
| Field | Type | Description |
|-------|------|-------------|
| includeLabels | boolean | |
| start | number | |
**Example Request (New Format):**
```bash
curl -X POST 'https://api.lowcodeapi.com/porkbun/api/json/v3/domain/listAll?api_token=YOUR_API_TOKEN'
```
**Official Documentation:** https://porkbun.com/api/json/v3/documentation#Domain%20List%20All
## 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/porkbun/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/porkbun/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/porkbun/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 |
|----------|--------|----------|
| DNS Create Record | POST | DNS Functionality |
| DNS Edit Record by Domain and ID | POST | DNS Functionality |
| DNS Edit Record by Domain, Subdomain and Type | POST | DNS Functionality |
| DNS Delete Record by Domain and ID | POST | DNS Functionality |
| DNS Delete Records by Domain, Subdomain and Type | POST | DNS Functionality |
| DNS Retrieve Records by Domain or ID | POST | DNS Functionality |
| DNS Retrieve Records by Domain, Subdomain and Type | POST | DNS Functionality |
| Domain Update Name Servers | POST | Domain Functionality |
| Domain Get Name Servers | POST | Domain Functionality |
| Domain List All | POST | Domain Functionality |
| Domain Add URL Forward | POST | Domain Functionality |
| Domain Get URL Forwarding | POST | Domain Functionality |
| Domain Delete URL Forward | POST | Domain Functionality |
| SSL Retrieve Bundle by Domain | POST | SSL Functionality |
## API Definition Endpoints
You can fetch the complete API specification for this provider:
**New Format (OpenAPI spec):**
```bash
curl 'https://backend.lowcodeapi.com/porkbun/openapi'
```
**Old Format (API definition):**
```bash
curl 'https://backend.lowcodeapi.com/porkbun/definition'
```
## Response Format
All responses are wrapped in a `data` key:
```json
{
"data": {
// Actual response from provider (object or array)
}
}
```