{
  "name": "CreateHubspotLineItem",
  "fully_qualified_name": "HubspotCrmApi.CreateHubspotLineItem@0.1.0",
  "description": "Create a new line item in HubSpot CRM.\n\nThis tool creates a line item in HubSpot CRM with specified properties and returns the complete object, including its ID. Use this when you need to add a line item to HubSpot.",
  "toolkit": {
    "name": "ArcadeHubspotCrmApi",
    "description": null,
    "version": "0.1.0"
  },
  "input": {
    "parameters": [
      {
        "name": "line_item_details",
        "required": true,
        "description": "JSON object containing key-value pairs for properties and associations to define a new line item in HubSpot CRM.",
        "value_schema": {
          "val_type": "json",
          "inner_val_type": null,
          "enum": null,
          "properties": {
            "associations": {
              "val_type": "array",
              "inner_val_type": "json",
              "enum": null,
              "properties": null,
              "inner_properties": {
                "types": {
                  "val_type": "array",
                  "inner_val_type": "json",
                  "enum": null,
                  "properties": null,
                  "inner_properties": {
                    "associationCategory": {
                      "val_type": "string",
                      "inner_val_type": null,
                      "enum": [
                        "HUBSPOT_DEFINED",
                        "USER_DEFINED",
                        "INTEGRATOR_DEFINED"
                      ],
                      "properties": null,
                      "inner_properties": null,
                      "description": "The category of the association, such as \"HUBSPOT_DEFINED\"."
                    },
                    "associationTypeId": {
                      "val_type": "integer",
                      "inner_val_type": null,
                      "enum": null,
                      "properties": null,
                      "inner_properties": null,
                      "description": "The ID representing the specific type of association."
                    }
                  },
                  "description": null
                },
                "to": {
                  "val_type": "json",
                  "inner_val_type": null,
                  "enum": null,
                  "properties": {
                    "id": {
                      "val_type": "string",
                      "inner_val_type": null,
                      "enum": null,
                      "properties": null,
                      "inner_properties": null,
                      "description": null
                    }
                  },
                  "inner_properties": null,
                  "description": null
                }
              },
              "description": null
            },
            "properties": {
              "val_type": "json",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "Key-value pairs for setting properties for the new object."
            }
          },
          "inner_properties": null,
          "description": ""
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "requestBody"
      }
    ]
  },
  "output": {
    "description": "Response from the API endpoint 'post-/crm/v3/objects/line_items_create'.",
    "available_modes": [
      "value",
      "error",
      "null"
    ],
    "value_schema": {
      "val_type": "json",
      "inner_val_type": null,
      "enum": null,
      "properties": null,
      "inner_properties": null,
      "description": null
    }
  },
  "requirements": {
    "authorization": {
      "provider_id": "arcade-hubspot",
      "provider_type": "oauth2",
      "id": null,
      "oauth2": {
        "scopes": [
          "crm.objects.line_items.write"
        ]
      }
    },
    "secrets": null,
    "metadata": null
  },
  "deprecation_message": null,
  "metadata": {
    "object_type": "api_wrapper_tool",
    "version": "1.1.0",
    "description": "Tools that enable LLMs to interact directly with the hubspot_crm API."
  },
  "http_endpoint": {
    "metadata": {
      "object_type": "http_endpoint",
      "version": "1.2.0",
      "description": ""
    },
    "url": "https://api.hubapi.com/crm/v3/objects/line_items",
    "http_method": "POST",
    "headers": {},
    "parameters": [
      {
        "name": "requestBody",
        "tool_parameter_name": "line_item_details",
        "description": "",
        "value_schema": {
          "val_type": "json",
          "inner_val_type": null,
          "enum": null,
          "properties": {
            "associations": {
              "val_type": "array",
              "inner_val_type": "json",
              "enum": null,
              "properties": null,
              "inner_properties": {
                "types": {
                  "val_type": "array",
                  "inner_val_type": "json",
                  "enum": null,
                  "properties": null,
                  "inner_properties": {
                    "associationCategory": {
                      "val_type": "string",
                      "inner_val_type": null,
                      "enum": [
                        "HUBSPOT_DEFINED",
                        "USER_DEFINED",
                        "INTEGRATOR_DEFINED"
                      ],
                      "properties": null,
                      "inner_properties": null,
                      "description": "The category of the association, such as \"HUBSPOT_DEFINED\"."
                    },
                    "associationTypeId": {
                      "val_type": "integer",
                      "inner_val_type": null,
                      "enum": null,
                      "properties": null,
                      "inner_properties": null,
                      "description": "The ID representing the specific type of association."
                    }
                  },
                  "description": null
                },
                "to": {
                  "val_type": "json",
                  "inner_val_type": null,
                  "enum": null,
                  "properties": {
                    "id": {
                      "val_type": "string",
                      "inner_val_type": null,
                      "enum": null,
                      "properties": null,
                      "inner_properties": null,
                      "description": null
                    }
                  },
                  "inner_properties": null,
                  "description": null
                }
              },
              "description": null
            },
            "properties": {
              "val_type": "json",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "Key-value pairs for setting properties for the new object."
            }
          },
          "inner_properties": null,
          "description": ""
        },
        "accepted_as": "body",
        "required": true,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      }
    ],
    "documentation_urls": [],
    "secrets": [
      {
        "arcade_key": "auth_token",
        "parameter_name": "Authorization",
        "accepted_as": "header",
        "formatted_value": "Bearer {authorization}",
        "description": "The OAuth token to use for authentication.",
        "is_auth_token": true
      }
    ],
    "request_body_spec": "{\n  \"content\": {\n    \"application/json\": {\n      \"schema\": {\n        \"required\": [\n          \"properties\"\n        ],\n        \"type\": \"object\",\n        \"properties\": {\n          \"associations\": {\n            \"type\": \"array\",\n            \"items\": {\n              \"required\": [\n                \"to\",\n                \"types\"\n              ],\n              \"type\": \"object\",\n              \"properties\": {\n                \"types\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"required\": [\n                      \"associationCategory\",\n                      \"associationTypeId\"\n                    ],\n                    \"type\": \"object\",\n                    \"properties\": {\n                      \"associationCategory\": {\n                        \"type\": \"string\",\n                        \"description\": \"The category of the association, such as \\\"HUBSPOT_DEFINED\\\".\",\n                        \"enum\": [\n                          \"HUBSPOT_DEFINED\",\n                          \"USER_DEFINED\",\n                          \"INTEGRATOR_DEFINED\"\n                        ]\n                      },\n                      \"associationTypeId\": {\n                        \"type\": \"integer\",\n                        \"description\": \"The ID representing the specific type of association.\",\n                        \"format\": \"int32\"\n                      }\n                    },\n                    \"description\": \"Defines the type, direction, and details of the relationship between two CRM objects.\"\n                  }\n                },\n                \"to\": {\n                  \"required\": [\n                    \"id\"\n                  ],\n                  \"type\": \"object\",\n                  \"properties\": {\n                    \"id\": {\n                      \"type\": \"string\"\n                    }\n                  }\n                }\n              }\n            }\n          },\n          \"properties\": {\n            \"type\": \"object\",\n            \"additionalProperties\": {\n              \"type\": \"string\"\n            },\n            \"description\": \"Key-value pairs for setting properties for the new object.\"\n          }\n        },\n        \"description\": \"Is the input object used to create a new CRM object, containing the properties to be set and optional associations to link the new record with other CRM objects.\"\n      }\n    }\n  },\n  \"required\": true\n}",
    "use_request_body_schema_mode": true,
    "validate_request_body_schema": true
  }
}
