Update a custom action

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://api-docs.kitsu.cloud/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "Kitsu API MCP server": {
    "url": "https://api-docs.kitsu.cloud/mcp"
  }
}

Close
PUT /data/custom-actions/{instance_id}

Update the fields of a custom action. Send only the fields to change. You cannot change id, created_at, updated_at. Dates use the ISO 8601 format. You cannot set the name to null. You must be an administrator.

Path parameters

  • instance_id string(uuid) Required

    Unique identifier of the custom action

application/json

Body Required

  • name string
  • url string

    URL that the action calls

  • entity_type string

    Type of the entities that show the action. The default value is all.

  • is_ajax boolean

    True if the action sends an AJAX request. The default value is false.

Responses

  • 200 application/json

    The updated custom action

    Hide response attributes Show response attributes object
    • id string(uuid)
    • name string
    • url string
    • entity_type string
    • is_ajax boolean
    • created_at string(date-time)
    • updated_at string(date-time)
  • 400

    The name is null, the body is not valid, a date is not valid, or a field breaks a database constraint

  • 403

    You are not an administrator

  • 404

    The custom action does not exist

PUT /data/custom-actions/{instance_id}
curl -X PUT "http://api.example.com/data/custom-actions/a24a6ea4-ce75-4665-a070-57453082c25" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Updated Custom Action Name",
  "url_pattern": "/api/actions/{id}"
}'
import requests

url = "http://api.example.com/data/custom-actions/a24a6ea4-ce75-4665-a070-57453082c25"
headers = {
    "Authorization": "Bearer YOUR_API_TOKEN",
    "Accept": "application/json",
    "Content-Type": "application/json"
}
params = {}
payload = {
    "name": "Updated Custom Action Name",
    "url_pattern": "/api/actions/{id}"
}

response = requests.put(
    url,
    headers=headers,
    params=params,
    json=payload
)

response.raise_for_status()

if response.content:
    print(response.json())
Request examples
{
  "name": "Updated Custom Action Name",
  "url": "https://example.com/hook",
  "entity_type": "all",
  "is_ajax": false
}
Response examples (200)
{
  "id": "a24a6ea4-ce75-4665-a070-57453082c250",
  "name": "Updated Custom Action Name",
  "url": "https://example.com/hook",
  "entity_type": "all",
  "is_ajax": false,
  "created_at": "2024-01-15T10:30:00Z",
  "updated_at": "2024-01-15T11:00:00Z"
}