> ## Documentation Index
> Fetch the complete documentation index at: https://developers.hubspot.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

---
id: decec6de-22dc-4729-8623-5d07b5832e63
---

# Create a new custom action definition

> Create a new custom workflow action.

export const SupportedProducts = ({marketing, sales, service, cms, data, commerce, marketingLevel, salesLevel, serviceLevel, cmsLevel, dataLevel, commerceLevel}) => {
  const translations = {
    description: "Requires one of the following products or higher.",
    productNames: {
      marketing: "Marketing Hub",
      sales: "Sales Hub",
      service: "Service Hub",
      cms: "Content Hub",
      data: "Data Hub",
      commerce: "Revenue Hub"
    },
    tiers: {
      free: "Free",
      starter: "Starter",
      professional: "Professional",
      enterprise: "Enterprise"
    }
  };
  const translateTier = tier => {
    if (!tier) return '';
    const lowerTier = tier.toLowerCase();
    return translations.tiers[lowerTier] || tier;
  };
  const products = [{
    name: marketing ? translations.productNames.marketing : '',
    level: translateTier(marketingLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/marketing-bolt.svg",
    alt: "Marketing Hub"
  }, {
    name: sales ? translations.productNames.sales : '',
    level: translateTier(salesLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/sales-star.svg",
    alt: "Sales Hub"
  }, {
    name: service ? translations.productNames.service : '',
    level: translateTier(serviceLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/service-heart.svg",
    alt: "Service Hub"
  }, {
    name: cms ? translations.productNames.cms : '',
    level: translateTier(cmsLevel),
    icon: "https://mintlify-assets.b-cdn.net/Icons/content-play.svg",
    alt: "Content Hub"
  }, {
    name: data ? translations.productNames.data : '',
    level: translateTier(dataLevel),
    icon: "https://developers.hubspot.com/hubfs/Knowledge_Base_2023-24-25/subscription_key_icons/operations_icon.svg",
    alt: "Data Hub"
  }, {
    name: commerce ? translations.productNames.commerce : '',
    level: translateTier(commerceLevel),
    icon: "https://developers.hubspot.com/hubfs/Knowledge_Base/subscription_key_icons/commerce_icon.svg",
    alt: "Revenue Hub"
  }].filter(product => product.name && product.level);
  if (products.length === 0) return null;
  return <div>
      <div className="text-sm mb-2">{translations.description}</div>
      <div className={`grid ${products.length === 1 ? 'grid-cols-1' : 'grid-cols-2'} gap-1.5`}>
        {products.map((product, index) => <div key={index} style={{
    display: 'flex',
    alignItems: 'center'
  }}>
            <img src={product.icon} alt={product.alt} className="w-3.5 h-3.5 mr-1.5 mt-2.5 mb-2.5 flex-shrink-0 align-middle" />
            <span className="font-medium mr-1 text-sm">{product.name} -</span>
            <span className="text-sm">{product.level}</span>
          </div>)}
      </div>
    </div>;
};

<Accordion title="Supported products" defaultOpen="true" icon="cubes">
  <SupportedProducts marketing={true} sales={true} service={true} cms={true} marketingLevel="PROFESSIONAL" salesLevel="PROFESSIONAL" serviceLevel="PROFESSIONAL" cmsLevel="PROFESSIONAL" />
</Accordion>


## OpenAPI

````yaml specs/legacy/v4/automation-actions-v4-v4.json POST /automation/v4/actions/{appId}
openapi: 3.0.1
info:
  title: Automation Actions V4
  description: Basepom for all HubSpot Projects
  version: v4
  x-hubspot-product-tier-requirements:
    marketing: PROFESSIONAL
    sales: PROFESSIONAL
    service: PROFESSIONAL
    cms: PROFESSIONAL
    commerce: PROFESSIONAL
    crmHub: PROFESSIONAL
    dataHub: PROFESSIONAL
  x-hubspot-related-documentation:
    - name: Custom Workflow Actions Guide
      url: >-
        https://developers.hubspot.com/docs/guides/api/automation/custom-workflow-actions
servers:
  - url: https://api.hubapi.com
security: []
tags:
  - name: Callbacks
  - name: Definitions
  - name: Functions
  - name: Revisions
paths:
  /automation/v4/actions/{appId}:
    post:
      tags:
        - Definitions
      summary: Create a new custom action definition
      description: Create a new custom workflow action.
      operationId: post-/automation/v4/actions/{appId}_create
      parameters:
        - name: appId
          in: path
          description: The unique identifier for the app.
          required: true
          style: simple
          explode: false
          schema:
            type: integer
            format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PublicActionDefinitionEgg'
        required: true
      responses:
        '201':
          description: successful operation
          headers:
            Location:
              description: URL of the newly created resource
              style: simple
              explode: false
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicActionDefinition'
        default:
          $ref: '#/components/responses/Error'
          description: ''
      security:
        - oauth2:
            - developers-write
components:
  schemas:
    PublicActionDefinitionEgg:
      required:
        - actionUrl
        - functions
        - inputFields
        - labels
        - objectTypes
        - published
      type: object
      properties:
        actionUrl:
          type: string
          description: The URL endpoint where the action is executed.
        archivedAt:
          type: integer
          description: The timestamp indicating when the action was archived.
          format: int64
        executionRules:
          type: array
          items:
            $ref: '#/components/schemas/PublicExecutionTranslationRule'
        functions:
          type: array
          items:
            $ref: '#/components/schemas/PublicActionFunction'
        inputFieldDependencies:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicSingleFieldDependency'
              - $ref: '#/components/schemas/PublicConditionalSingleFieldDependency'
        inputFields:
          type: array
          items:
            $ref: '#/components/schemas/PublicInputFieldDefinition'
        labels:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/PublicActionLabels'
          description: >-
            Holds various labels associated with the action, including names and
            descriptions.
        objectRequestOptions:
          $ref: '#/components/schemas/PublicObjectRequestOptions'
        objectTypes:
          type: array
          items:
            type: string
        outputFields:
          type: array
          items:
            $ref: '#/components/schemas/OutputFieldDefinition'
        published:
          type: boolean
          description: Indicates whether the action is published and available for use.
    PublicActionDefinition:
      required:
        - actionUrl
        - functions
        - id
        - inputFields
        - labels
        - objectTypes
        - published
        - revisionId
      type: object
      properties:
        actionUrl:
          type: string
        archivedAt:
          type: integer
          format: int64
        executionRules:
          type: array
          items:
            $ref: '#/components/schemas/PublicExecutionTranslationRule'
        functions:
          type: array
          items:
            $ref: '#/components/schemas/PublicActionFunctionIdentifier'
        id:
          type: string
        inputFieldDependencies:
          type: array
          items:
            oneOf:
              - $ref: '#/components/schemas/PublicSingleFieldDependency'
              - $ref: '#/components/schemas/PublicConditionalSingleFieldDependency'
        inputFields:
          type: array
          items:
            $ref: '#/components/schemas/PublicInputFieldDefinition'
        labels:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/PublicActionLabels'
        objectRequestOptions:
          $ref: '#/components/schemas/PublicObjectRequestOptions'
        objectTypes:
          type: array
          items:
            type: string
        outputFields:
          type: array
          items:
            $ref: '#/components/schemas/OutputFieldDefinition'
        published:
          type: boolean
        revisionId:
          type: string
    PublicExecutionTranslationRule:
      required:
        - conditions
        - labelName
      type: object
      properties:
        conditions:
          type: object
          additionalProperties:
            type: object
            properties: {}
          description: >-
            Defines the conditions that must be met for the execution rule to
            apply.
        labelName:
          type: string
          description: Specifies the name of the label associated with the execution rule.
    PublicActionFunction:
      required:
        - functionSource
        - functionType
      type: object
      properties:
        functionSource:
          type: string
          description: The source code or script that defines the function's behavior.
        functionType:
          type: string
          description: >-
            The type of function, with accepted values: POST_ACTION_EXECUTION,
            POST_FETCH_OPTIONS, PRE_ACTION_EXECUTION, PRE_FETCH_OPTIONS.
          enum:
            - POST_ACTION_EXECUTION
            - POST_FETCH_OPTIONS
            - PRE_ACTION_EXECUTION
            - PRE_FETCH_OPTIONS
        id:
          type: string
          description: The unique identifier for the action function.
    PublicSingleFieldDependency:
      title: SINGLE_FIELD
      required:
        - controllingFieldName
        - dependencyType
        - dependentFieldNames
      type: object
      properties:
        controllingFieldName:
          type: string
          description: The name of the field that controls the dependency.
        dependencyType:
          type: string
          description: The type of dependency, with the default value being 'SINGLE_FIELD'.
          default: SINGLE_FIELD
          enum:
            - SINGLE_FIELD
        dependentFieldNames:
          type: array
          items:
            type: string
      x-hubspot-sub-type-impl: true
    PublicConditionalSingleFieldDependency:
      title: CONDITIONAL_SINGLE_FIELD
      required:
        - controllingFieldName
        - controllingFieldValue
        - dependencyType
        - dependentFieldNames
      type: object
      properties:
        controllingFieldName:
          type: string
          description: The name of the field that determines the dependency.
        controllingFieldValue:
          type: string
          description: The value of the controlling field that triggers the dependency.
        dependencyType:
          type: string
          description: >-
            The type of dependency, with the default value being
            CONDITIONAL_SINGLE_FIELD.
          default: CONDITIONAL_SINGLE_FIELD
          enum:
            - CONDITIONAL_SINGLE_FIELD
        dependentFieldNames:
          type: array
          items:
            type: string
      x-hubspot-sub-type-impl: true
    PublicInputFieldDefinition:
      required:
        - isRequired
        - typeDefinition
      type: object
      properties:
        isRequired:
          type: boolean
          description: Indicates whether the input field is mandatory.
        supportedValueTypes:
          type: array
          items:
            type: string
            enum:
              - STATIC_VALUE
              - OBJECT_PROPERTY
        typeDefinition:
          $ref: '#/components/schemas/PublicFieldTypeDefinition'
    PublicActionLabels:
      required:
        - actionName
      type: object
      properties:
        actionCardContent:
          type: string
          description: Content displayed on the action card.
        actionDescription:
          type: string
          description: A description of what the action does.
        actionName:
          type: string
          description: The name of the action.
        appDisplayName:
          type: string
          description: The display name of the application associated with the action.
        executionRules:
          type: object
          additionalProperties:
            type: string
          description: Rules that govern the execution of the action.
        inputFieldDescriptions:
          type: object
          additionalProperties:
            type: string
          description: Descriptions for each input field.
        inputFieldLabels:
          type: object
          additionalProperties:
            type: string
          description: Labels for the input fields.
        inputFieldOptionLabels:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: string
          description: Labels for the options available in input fields.
        outputFieldLabels:
          type: object
          additionalProperties:
            type: string
          description: Labels for the output fields.
    PublicObjectRequestOptions:
      required:
        - properties
      type: object
      properties:
        properties:
          type: array
          items:
            type: string
    OutputFieldDefinition:
      required:
        - typeDefinition
      type: object
      properties:
        typeDefinition:
          $ref: '#/components/schemas/FieldTypeDefinition'
    PublicActionFunctionIdentifier:
      required:
        - functionType
      type: object
      properties:
        functionType:
          type: string
          description: >-
            The type of function, with accepted values: POST_ACTION_EXECUTION,
            POST_FETCH_OPTIONS, PRE_ACTION_EXECUTION, PRE_FETCH_OPTIONS.
          enum:
            - POST_ACTION_EXECUTION
            - POST_FETCH_OPTIONS
            - PRE_ACTION_EXECUTION
            - PRE_FETCH_OPTIONS
        id:
          type: string
          description: The unique identifier for the function.
    Error:
      required:
        - category
        - correlationId
        - message
      type: object
      properties:
        category:
          type: string
          description: The error category
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Context about the error condition
          example: >-
            {invalidPropertyName=[propertyValue], missingScopes=[scope1,
            scope2]}
        correlationId:
          type: string
          description: >-
            A unique identifier for the request. Include this value with any
            error reports or support tickets
          format: uuid
          example: aeb5f871-7f07-4993-9211-075dc63e7cbf
        errors:
          type: array
          description: further information about the error
          items:
            $ref: '#/components/schemas/ErrorDetail'
        links:
          type: object
          additionalProperties:
            type: string
          description: >-
            A map of link names to associated URIs containing documentation
            about the error or recommended remediation steps
        message:
          type: string
          description: >-
            A human readable message describing the error along with remediation
            steps where appropriate
          example: An error occurred
        subCategory:
          type: string
          description: >-
            A specific category that contains more specific detail about the
            error
      example:
        message: Invalid input (details will vary based on the error)
        correlationId: aeb5f871-7f07-4993-9211-075dc63e7cbf
        category: VALIDATION_ERROR
        links:
          knowledge-base: https://www.hubspot.com/products/service/knowledge-base
    PublicFieldTypeDefinition:
      required:
        - name
        - options
        - type
      type: object
      properties:
        description:
          type: string
          description: A detailed explanation of the field's purpose.
        fieldType:
          type: string
          description: >-
            The type of field, with accepted values including booleancheckbox,
            calculation_equation, checkbox, date, file, html, number,
            phonenumber, radio, select, text, and textarea.
          enum:
            - booleancheckbox
            - calculation_equation
            - checkbox
            - date
            - file
            - html
            - number
            - phonenumber
            - radio
            - select
            - text
            - textarea
        helpText:
          type: string
          description: Additional information or guidance about the field.
        label:
          type: string
          description: A user-friendly name for the field.
        name:
          type: string
          description: The internal name used to identify the field.
        options:
          type: array
          items:
            $ref: '#/components/schemas/PublicOption'
        optionsUrl:
          type: string
          description: A URL that provides options for the field.
        referencedObjectType:
          type: string
          description: >-
            The type of object that the field references, with accepted values
            including OWNER.
          enum:
            - OWNER
        type:
          type: string
          description: >-
            The data type of the field, with accepted values including bool,
            date, datetime, enumeration, json, number, object_coordinates,
            phone_number, and string.
          enum:
            - bool
            - date
            - datetime
            - enumeration
            - json
            - number
            - object_coordinates
            - phone_number
            - string
    FieldTypeDefinition:
      required:
        - externalOptions
        - name
        - options
        - schema
        - type
        - useChirp
      type: object
      properties:
        description:
          type: string
          description: A detailed explanation of the field's purpose and usage.
        externalOptions:
          type: boolean
          description: Indicates whether the field's options are sourced externally.
        externalOptionsReferenceType:
          type: string
          description: Specifies the type of external reference for options.
        fieldType:
          type: string
          description: >-
            Describes the field's type in the UI, with accepted values like
            booleancheckbox, calculation_equation, checkbox, date, file, html,
            number, phonenumber, radio, select, text, textarea, unknown.
          enum:
            - booleancheckbox
            - calculation_equation
            - calculation_read_time
            - calculation_rollup
            - calculation_score
            - checkbox
            - date
            - file
            - html
            - number
            - phonenumber
            - radio
            - select
            - text
            - textarea
            - unknown
        helpText:
          type: string
          description: Additional information or guidance about the field.
        label:
          type: string
          description: The user-friendly label for the field.
        name:
          type: string
          description: The unique identifier for the field.
        options:
          type: array
          items:
            $ref: '#/components/schemas/Option'
        optionsUrl:
          type: string
          description: A URL that provides options for the field.
        referencedObjectType:
          type: string
          description: >-
            Indicates the type of object that the field references, with
            accepted values like OWNER.
          enum:
            - ABANDONED_CART
            - ACCEPTANCE_TEST
            - AD
            - AD_ACCOUNT
            - AD_CAMPAIGN
            - AD_GROUP
            - AI_FORECAST
            - ALL_PAGES
            - APPROVAL
            - APPROVAL_STEP
            - ATTRIBUTION
            - AUDIENCE
            - AUTOMATION_JOURNEY
            - AUTOMATION_PLATFORM_FLOW
            - AUTOMATION_PLATFORM_FLOW_ACTION
            - BET_ALERT
            - BET_DELIVERABLE_SERVICE
            - BLOG_LISTING_PAGE
            - BLOG_POST
            - CALL
            - CAMPAIGN
            - CAMPAIGN_BUDGET_ITEM
            - CAMPAIGN_SPEND_ITEM
            - CAMPAIGN_STEP
            - CAMPAIGN_TEMPLATE
            - CAMPAIGN_TEMPLATE_STEP
            - CART
            - CASE_STUDY
            - CHATFLOW
            - CLIP
            - CMS_URL
            - COMBO_EVENT_CONFIGURATION
            - COMMERCE_PAYMENT
            - COMMUNICATION
            - COMPANY
            - CONTACT
            - CONTACT_CREATE_ATTRIBUTION
            - CONTENT
            - CONTENT_AUDIT
            - CONTENT_AUDIT_PAGE
            - CONVERSATION
            - CONVERSATION_INBOX
            - CONVERSATION_SESSION
            - CRM_OBJECTS_DUMMY_TYPE
            - CRM_PIPELINES_DUMMY_TYPE
            - CTA
            - CTA_VARIANT
            - DATA_PRIVACY_CONSENT
            - DATA_SYNC_STATE
            - DEAL
            - DEAL_CREATE_ATTRIBUTION
            - DEAL_REGISTRATION
            - DEAL_SPLIT
            - DISCOUNT
            - DISCOUNT_CODE
            - DISCOUNT_TEMPLATE
            - EMAIL
            - ENGAGEMENT
            - EXPORT
            - EXTERNAL_WEB_URL
            - FEE
            - FEEDBACK_SUBMISSION
            - FEEDBACK_SURVEY
            - FILE_MANAGER_FILE
            - FILE_MANAGER_FOLDER
            - FOLDER
            - FORECAST
            - FORM
            - FORM_SUBMISSION_INBOUNDDB
            - GOAL_TARGET
            - GOAL_TARGET_GROUP
            - GOAL_TEMPLATE
            - GSC_PROPERTY
            - HUB
            - IMPORT
            - INVOICE
            - KEYWORD
            - KNOWLEDGE_ARTICLE
            - LANDING_PAGE
            - LEAD
            - LINE_ITEM
            - MARKETING_CALENDAR
            - MARKETING_CAMPAIGN_UTM
            - MARKETING_EMAIL
            - MARKETING_EVENT
            - MARKETING_EVENT_ATTENDANCE
            - MARKETING_SMS
            - MEDIA_BRIDGE
            - MEETING_EVENT
            - MIC
            - NOTE
            - OBJECT_LIST
            - ORDER
            - OWNER
            - PARTNER_ACCOUNT
            - PARTNER_CLIENT
            - PARTNER_CLIENT_REVENUE
            - PARTNER_SERVICE
            - PAYMENT_LINK
            - PAYMENT_SCHEDULE
            - PAYMENT_SCHEDULE_INSTALLMENT
            - PERMISSIONS_TESTING
            - PLAYBOOK
            - PLAYBOOK_QUESTION
            - PLAYBOOK_SUBMISSION
            - PLAYBOOK_SUBMISSION_ANSWER
            - PLAYLIST
            - PLAYLIST_FOLDER
            - PODCAST_EPISODE
            - PORTAL
            - PORTAL_OBJECT_SYNC_MESSAGE
            - POSTAL_MAIL
            - PRIVACY_SCANNER_COOKIE
            - PRODUCT
            - PRODUCT_OR_FOLDER
            - PROPERTY_INFO
            - PROSPECTING_AGENT_CONTACT_ASSIGNMENT
            - PUBLISHING_TASK
            - QUARANTINED_SUBMISSION
            - QUOTA
            - QUOTE
            - QUOTE_FIELD
            - QUOTE_MODULE
            - QUOTE_MODULE_FIELD
            - QUOTE_TEMPLATE
            - RESTORABLE_CRM_OBJECT
            - ROSTER
            - ROSTER_MEMBER
            - SALES_DOCUMENT
            - SALES_TASK
            - SALES_WORKLOAD
            - SALESFORCE_SYNC_ERROR
            - SCHEDULING_PAGE
            - SCHEMAS_BACKEND_TEST
            - SCORE_CONFIGURATION
            - SEQUENCE
            - SEQUENCE_ENROLLMENT
            - SEQUENCE_STEP
            - SEQUENCE_STEP_ENROLLMENT
            - SERVICE
            - SITE_PAGE
            - SNIPPET
            - SOCIAL_BROADCAST
            - SOCIAL_CHANNEL
            - SOCIAL_POST
            - SOCIAL_PROFILE
            - SOX_PROTECTED_DUMMY_TYPE
            - SOX_PROTECTED_TEST_TYPE
            - SUBMISSION_TAG
            - SUBSCRIPTION
            - TASK
            - TASK_TEMPLATE
            - TAX
            - TEMPLATE
            - TICKET
            - UNKNOWN
            - UNSUBSCRIBE
            - USER
            - VIEW
            - VIEW_BLOCK
            - WEB_INTERACTIVE
        schema:
          description: Defines the structure and constraints of the field.
          oneOf:
            - $ref: '#/components/schemas/IntegerFieldSchema'
            - $ref: '#/components/schemas/LongFieldSchema'
            - $ref: '#/components/schemas/DoubleFieldSchema'
            - $ref: '#/components/schemas/StringFieldSchema'
            - $ref: '#/components/schemas/BooleanFieldSchema'
            - $ref: '#/components/schemas/ArrayFieldSchema'
            - $ref: '#/components/schemas/ObjectFieldSchema'
            - $ref: '#/components/schemas/UnknownFieldSchema'
        type:
          type: string
          description: >-
            Specifies the data type of the field, with accepted values like
            bool, date, datetime, enumeration, json, number, object_coordinates,
            phone_number, string.
          enum:
            - bool
            - currency_number
            - date
            - datetime
            - enumeration
            - json
            - number
            - object_coordinates
            - phone_number
            - string
        useChirp:
          type: boolean
          description: Specifies whether the field uses the Chirp feature.
    ErrorDetail:
      required:
        - message
      type: object
      properties:
        code:
          type: string
          description: The status code associated with the error detail
        context:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Context about the error condition
          example: '{missingScopes=[scope1, scope2]}'
        in:
          type: string
          description: The name of the field or parameter in which the error was found.
        message:
          type: string
          description: >-
            A human readable message describing the error along with remediation
            steps where appropriate
        subCategory:
          type: string
          description: >-
            A specific category that contains more specific detail about the
            error
    PublicOption:
      required:
        - label
        - value
      type: object
      properties:
        description:
          type: string
          description: A description of the option.
        displayOrder:
          type: integer
          description: The position of the option relative to others in the list.
          format: int32
        label:
          type: string
          description: A user-friendly label that identifies the option.
        value:
          type: string
          description: The actual value of the option.
    Option:
      required:
        - description
        - displayOrder
        - doubleData
        - hidden
        - label
        - readOnly
        - value
      type: object
      properties:
        description:
          type: string
          description: A description of the option.
        displayOrder:
          type: integer
          description: The position of the item relative to others in the list.
          format: int32
        doubleData:
          type: number
          description: A numerical value associated with the option.
        hidden:
          type: boolean
          description: Whether the option is displayed in HubSpot's UI.
        label:
          type: string
          description: A user-friendly label that identifies the option.
        readOnly:
          type: boolean
          description: Whether the option is read-only.
        value:
          type: string
          description: The actual value of the option.
      description: A HubSpot property option
    IntegerFieldSchema:
      title: INTEGER
      required:
        - type
      type: object
      properties:
        maximum:
          type: integer
          description: The maximum value allowed for the integer field.
          format: int32
        minimum:
          type: integer
          description: The minimum value allowed for the integer field.
          format: int32
        type:
          type: string
          description: The type of the field, which is set to INTEGER.
          default: INTEGER
          enum:
            - INTEGER
      x-hubspot-sub-type-impl: true
    LongFieldSchema:
      title: LONG
      required:
        - type
      type: object
      properties:
        maximum:
          type: integer
          description: The maximum value allowed for the long field.
          format: int64
        minimum:
          type: integer
          description: The minimum value allowed for the long field.
          format: int64
        type:
          type: string
          description: The type of the field, which is LONG by default.
          default: LONG
          enum:
            - LONG
      x-hubspot-sub-type-impl: true
    DoubleFieldSchema:
      title: DOUBLE
      required:
        - type
      type: object
      properties:
        maximum:
          type: number
          description: The maximum allowable value for the double field.
        minimum:
          type: number
          description: The minimum allowable value for the double field.
        type:
          type: string
          description: Indicates the field type as DOUBLE.
          default: DOUBLE
          enum:
            - DOUBLE
      x-hubspot-sub-type-impl: true
    StringFieldSchema:
      title: STRING
      required:
        - type
      type: object
      properties:
        format:
          type: string
          description: >-
            Specifies the format of the string, with accepted values: DATE,
            DATE_TIME, OBJECT_COORDINATE, TIME, URI.
          enum:
            - DATE
            - DATE_TIME
            - OBJECT_COORDINATE
            - TIME
            - URI
        type:
          type: string
          description: >-
            Indicates that the type is a string, with the default value being
            STRING.
          default: STRING
          enum:
            - STRING
      x-hubspot-sub-type-impl: true
    BooleanFieldSchema:
      title: BOOLEAN
      required:
        - type
      type: object
      properties:
        type:
          type: string
          description: >-
            Specifies the field type as BOOLEAN, indicating that the field can
            hold a true or false value.
          default: BOOLEAN
          enum:
            - BOOLEAN
      x-hubspot-sub-type-impl: true
    ArrayFieldSchema:
      title: ARRAY
      required:
        - items
        - type
      type: object
      properties:
        items:
          description: >-
            Defines the type of elements contained within the array, which can
            be an integer, long, double, string, boolean, another array, or an
            object.
          oneOf:
            - $ref: '#/components/schemas/IntegerFieldSchema'
            - $ref: '#/components/schemas/LongFieldSchema'
            - $ref: '#/components/schemas/DoubleFieldSchema'
            - $ref: '#/components/schemas/StringFieldSchema'
            - $ref: '#/components/schemas/BooleanFieldSchema'
            - $ref: '#/components/schemas/ArrayFieldSchema'
            - $ref: '#/components/schemas/ObjectFieldSchema'
            - $ref: '#/components/schemas/UnknownFieldSchema'
        type:
          type: string
          description: Specifies that the field is of type 'ARRAY'.
          default: ARRAY
          enum:
            - ARRAY
      x-hubspot-sub-type-impl: true
    ObjectFieldSchema:
      title: OBJECT
      required:
        - properties
        - type
      type: object
      properties:
        properties:
          type: object
          properties: {}
          description: Contains the properties of the object.
        type:
          type: string
          description: Specifies the type of the field, which is 'OBJECT' by default.
          default: OBJECT
          enum:
            - OBJECT
      x-hubspot-sub-type-impl: true
    UnknownFieldSchema:
      title: UNKNOWN
      required:
        - type
      type: object
      properties:
        type:
          type: string
          default: UNKNOWN
          enum:
            - UNKNOWN
      x-hubspot-sub-type-impl: true
  responses:
    Error:
      description: An error occurred.
      content:
        '*/*':
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://app.hubspot.com/oauth/authorize
          tokenUrl: https://api.hubapi.com/oauth/v1/token
          scopes:
            automation: ''
            developers-read: ''
            developers-write: ''

````