Skip to content

api_client.FormsApi.update() failing for forms created via new-editor web UI. #431

@robgero

Description

@robgero

Please note that this is an issue with the API in general, not specifically the Python SDK, as I get the same response when I run curl PUT or PATCH commands against the API.

To reproduce:

  1. Create a form via the web UI using the legacy editor
  2. Create a form via the web UI using the new editor
  3. Run the following script (replace placeholders)
import hubspot
from hubspot.marketing.forms import ApiException

client = hubspot.Client.create(access_token="PAT_TOKEN")

LEGACY_FORM_ID = "LEGACY_FORM_ID_HERE"
NEW_FORM_ID = "NEW_FORM_ID_HERE"

def main():
    # works as expected
    legacy_form_def = get_form_by_id(LEGACY_FORM_ID)
    legacy_form_def.name = "UPDATED_LEGACY_FORM_NAME"
    update_legacy_form_response = update_form(LEGACY_FORM_ID, legacy_form_def)

    # fails
    new_form_def = get_form_by_id(NEW_FORM_ID)
    new_form_def.name = "UPDATED_NEW_FORM_NAME"
    update_new_form_response = update_form(NEW_FORM_ID, new_form_def)

def update_form(form_id, form_data):
    try:
        api_response = client.marketing.forms.forms_api.update(form_id=form_id, hub_spot_form_definition_patch_request=form_data)
        return api_response
    except ApiException as e:
        print("Exception when calling forms_api->update: %s\n" % e)
        return None

def get_form_by_id(form_id):
    try:
        api_response = client.marketing.forms.forms_api.get_by_id(form_id=form_id)
        return api_response
    except ApiException as e:
        print("Exception when calling forms_api->get_by_id: %s\n" % e)
        return None

if __name__ == "__main__":
    main()

Response when trying to update the form created via the new editor:

HTTP response body: {"status":"error","message":"The client is not allowlisted to perform an operation to v4 forms","correlationId":"4821afe0-8303-4adc-a358-55cd48a70bfb","category":"BANNED"}

What I've tried so far:

  • Updated the URL from https://api.hubapi.com/marketing/v3/forms/{form_id} to https://api.hubapi.com/marketing/v4/forms/{form_id}
  • Finding v4 marketing->form docs online (can't find them)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions