{
  "service": "builder_io",
  "displayName": "Builder.io",
  "categories": [
    "Design & Media",
    "Marketing"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "Private API Key",
      "placeholder": "BUILDER_IO_PRIVATE_KEY",
      "description": "Builder.io private API key used with the Authorization Bearer header for Write API requests. Find private and public keys in your Builder.io organization settings: https://builder.io/account/organization.",
      "extraFields": []
    }
  ],
  "homepageUrl": "https://www.builder.io",
  "actions": [
    {
      "id": "builder_io.create_content",
      "service": "builder_io",
      "name": "create_content",
      "description": "Create a Builder.io content entry for a model using the Write API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io model name to create content under."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The human-readable Builder.io content name."
          },
          "data": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Builder.io content data object."
          },
          "published": {
            "type": "string",
            "description": "The Builder.io published state to set on the content."
          },
          "query": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A MongoDB-style Builder.io query object. Use Builder.io field names and operators."
          }
        },
        "additionalProperties": false,
        "required": [
          "model",
          "name",
          "data"
        ],
        "description": "Input for creating a Builder.io content entry through the Write API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "content": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The Builder.io content ID."
              },
              "name": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io content name, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "modelId": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io model ID, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "published": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io published state, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "data": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The Builder.io content data object."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "A Builder.io object with provider-defined fields."
              }
            },
            "additionalProperties": true,
            "required": [
              "id",
              "data",
              "raw"
            ],
            "description": "A normalized Builder.io content entry."
          }
        },
        "additionalProperties": false,
        "required": [
          "content"
        ],
        "description": "A Builder.io content entry result."
      }
    },
    {
      "id": "builder_io.delete_content",
      "service": "builder_io",
      "name": "delete_content",
      "description": "Delete a Builder.io content entry by model and content ID using the Write API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io model name that owns the content entry."
          },
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io content ID to delete."
          }
        },
        "additionalProperties": false,
        "required": [
          "model",
          "id"
        ],
        "description": "Input for deleting a Builder.io content entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The Builder.io content ID that was deleted."
          },
          "deleted": {
            "type": "boolean",
            "description": "Whether the connector sent the delete request successfully."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Builder.io object with provider-defined fields."
          }
        },
        "additionalProperties": false,
        "required": [
          "id",
          "deleted",
          "raw"
        ],
        "description": "A Builder.io content delete result."
      }
    },
    {
      "id": "builder_io.get_content",
      "service": "builder_io",
      "name": "get_content",
      "description": "Fetch a single Builder.io content entry by model and content ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io model name, such as `page` or `announcement-bar`."
          },
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io content ID."
          },
          "publicKey": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io public API key for Content API reads. If omitted, the connected private key is used."
          },
          "userAttributes": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "User attributes used by Builder.io targeting when resolving content."
          },
          "options": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "Additional Builder.io Content API options."
          },
          "includeRefs": {
            "type": "boolean",
            "description": "Whether Builder.io should include referenced content."
          },
          "noTargeting": {
            "type": "boolean",
            "description": "Whether to bypass Builder.io targeting rules."
          }
        },
        "additionalProperties": false,
        "required": [
          "model",
          "id"
        ],
        "description": "Input for fetching a single Builder.io content entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "content": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The Builder.io content ID."
              },
              "name": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io content name, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "modelId": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io model ID, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "published": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io published state, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "data": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The Builder.io content data object."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "A Builder.io object with provider-defined fields."
              }
            },
            "additionalProperties": true,
            "required": [
              "id",
              "data",
              "raw"
            ],
            "description": "A normalized Builder.io content entry."
          }
        },
        "additionalProperties": false,
        "required": [
          "content"
        ],
        "description": "A Builder.io content entry result."
      }
    },
    {
      "id": "builder_io.list_content",
      "service": "builder_io",
      "name": "list_content",
      "description": "List Builder.io content entries for a model using the Content API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io model name, such as `page` or `announcement-bar`."
          },
          "publicKey": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io public API key for Content API reads. If omitted, the connected private key is used."
          },
          "query": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A MongoDB-style Builder.io query object. Use Builder.io field names and operators."
          },
          "userAttributes": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "User attributes used by Builder.io targeting when resolving content."
          },
          "options": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "Additional Builder.io Content API options."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The maximum number of content entries to return."
          },
          "offset": {
            "type": "integer",
            "minimum": 0,
            "description": "The number of entries to skip."
          },
          "includeRefs": {
            "type": "boolean",
            "description": "Whether Builder.io should include referenced content."
          },
          "noTargeting": {
            "type": "boolean",
            "description": "Whether to bypass Builder.io targeting rules."
          },
          "sort": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Builder.io sort object, such as { createdDate: -1 } or { name: 1 }."
          }
        },
        "additionalProperties": false,
        "required": [
          "model"
        ],
        "description": "Filters and pagination controls for listing Builder.io content."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The Builder.io content ID."
                },
                "name": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The Builder.io content name, when returned."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "modelId": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The Builder.io model ID, when returned."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "published": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The Builder.io published state, when returned."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "data": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "The Builder.io content data object."
                },
                "raw": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "A Builder.io object with provider-defined fields."
                }
              },
              "additionalProperties": true,
              "required": [
                "id",
                "data",
                "raw"
              ],
              "description": "A normalized Builder.io content entry."
            },
            "description": "The content entries returned by Builder.io."
          },
          "count": {
            "type": "integer",
            "description": "The number of content entries returned in this response."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Builder.io object with provider-defined fields."
          }
        },
        "additionalProperties": false,
        "required": [
          "results",
          "count",
          "raw"
        ],
        "description": "A Builder.io content list result."
      }
    },
    {
      "id": "builder_io.update_content",
      "service": "builder_io",
      "name": "update_content",
      "description": "Update a Builder.io content entry by model and content ID using the Write API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io model name that owns the content entry."
          },
          "id": {
            "type": "string",
            "minLength": 1,
            "description": "The Builder.io content ID to update."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "description": "The updated human-readable Builder.io content name."
          },
          "data": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Builder.io content data object."
          },
          "published": {
            "type": "string",
            "description": "The updated Builder.io published state."
          },
          "query": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A MongoDB-style Builder.io query object. Use Builder.io field names and operators."
          }
        },
        "additionalProperties": false,
        "required": [
          "model",
          "id"
        ],
        "description": "Input for updating a Builder.io content entry through the Write API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "content": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The Builder.io content ID."
              },
              "name": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io content name, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "modelId": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io model ID, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "published": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The Builder.io published state, when returned."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "data": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The Builder.io content data object."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "A Builder.io object with provider-defined fields."
              }
            },
            "additionalProperties": true,
            "required": [
              "id",
              "data",
              "raw"
            ],
            "description": "A normalized Builder.io content entry."
          }
        },
        "additionalProperties": false,
        "required": [
          "content"
        ],
        "description": "A Builder.io content entry result."
      }
    }
  ]
}
