Overview
Find and organize companies without leaving ChatGPT. This app connects directly to Hunter to help you discover businesses that match your criteria, enrich them with reliable company-level data, and save the ones you care about. You can search for companies using natural language (for example, by location, industry, size, or technologies), review results with domain-level insights, and enrich any company to get structured information such as industry, headcount range, headquarters location, and tech stack. When a company looks relevant, you can save it straight to your Hunter Leads for later use. Designed for sales, marketing, and research workflows, the app focuses on fast exploration and clean company data. No personal data, no guesswork, just actionable company insights inside ChatGPT.
Tools
Add-Company-To-List
ChatGPTcompany_list_id and the company by company_id (a company already saved in the user's account). Both the list and the company must belong to the user's team, and the list must be static — dynamic lists collect companies automatically by their filters and cannot have companies added manually. Returns the added company (id, domain, created_at); surface the saved company's domain to confirm. Returns an invalid_input error (id validation_failed) if the company is already in the list, a not-found error if the list or company does not exist, belongs to another team, or the list is dynamic, or a forbidden error if the user is not allowed to modify this list. Free to call.Add-Sequence-Recipients
ChatGPTconfirmed: true performs the add. Free to call.Add-Tag-To-Lead
ChatGPTlead_id. Provide either tag_id (an existing tag) or tag_name; with tag_name, a tag that does not exist yet is created automatically with a random color. Call List-Lead-Tags first and suggest reusing an existing tag (by tag_id or its exact name) before introducing a near-duplicate name. The call is idempotent: re-adding a tag the lead already has still succeeds. Returns the lead's full current tag set (tags, each with id, name, and color) — surface it to confirm. Returns an invalid_input error (id tag_required) if neither tag_id nor tag_name is given, a not-found error if the lead or the tag does not exist or belongs to another team, or an invalid_input error (id validation_failed) if the new tag name is invalid. Free to call.Archive-Sequence
ChatGPTBulk-Copy-Companies
ChatGPTcompany_ids and/or by a source company_list_id (at least one is required); target_company_list_id is the static destination list. The copy runs asynchronously — the response reports the matched companies_count with status queued. The destination is modified, so a regular team member must own it (otherwise a forbidden error). Returns a not-found error if a list does not exist in the team and an invalid_input error if the destination is dynamic or no companies match the selection. Copying requires an explicit user confirmation: the first call returns a confirmation prompt stating the affected count without copying anything, and only re-issuing with confirmed: true performs the copy. Free to call.Bulk-Delete-Companies
ChatGPTcompany_ids and/or by a whole company_list_id. Deleting companies is permanent and cannot be undone; a regular team member only deletes their own companies. Selections of 10 or fewer companies are deleted synchronously and the response reports the exact deleted_count with status completed; larger selections are queued for asynchronous deletion (status queued with the matched requested_count). Returns a not-found error if the company list does not exist in the team and an invalid_input error when no companies match the selection. Deleting companies requires an explicit user confirmation: the first call returns a confirmation prompt stating the affected count without deleting anything, and only re-issuing with confirmed: true performs the deletion. Free to call.Bulk-Delete-Leads
ChatGPTlead_ids and/or by a whole leads_list_id. Deleting leads is permanent and cannot be undone. Selections of 10 or fewer leads are deleted synchronously and the response reports the exact deleted_count with status completed; larger selections are queued for asynchronous deletion (status queued with the matched requested_count). Returns a not-found error if the leads list does not exist in the team and an invalid_input error when no leads match the selection. Deleting leads requires an explicit user confirmation: the first call returns a confirmation prompt stating the affected count without deleting anything, and only re-issuing with confirmed: true performs the deletion. Free to call.Bulk-Move-Companies
ChatGPTcompany_ids optionally narrows the move to specific companies inside the source list, otherwise every company in the source list is moved. The move runs asynchronously — the response reports the matched companies_count with status queued. Both lists are modified, so a regular team member must own them (otherwise a forbidden error). Returns a not-found error if either list does not exist in the team and an invalid_input error if a list is dynamic or no companies match the selection. Moving companies requires an explicit user confirmation: the first call returns a confirmation prompt stating the affected count without moving anything, and only re-issuing with confirmed: true performs the move. Free to call.Bulk-Move-Leads
ChatGPTlead_ids optionally narrows the move to specific leads inside the source list, otherwise every lead in the source list is moved. The move runs asynchronously — the response reports the matched leads_count with status queued, and the leads appear in the destination list shortly after. Returns a not-found error if either list does not exist in the team and an invalid_input error if a list is dynamic or no leads match the selection. Moving leads requires an explicit user confirmation: the first call returns a confirmation prompt stating the affected count without moving anything, and only re-issuing with confirmed: true performs the move. Free to call.Combined-Enrichment
ChatGPTCompany-Enrichment
ChatGPTCount-Company-Emails
ChatGPTemails_count.personal (addresses tied to a named person), emails_count.generic (role-based addresses such as info@ or sales@), and emails_count.total. meta.total_emails sums the same counters across ALL matching companies, not just the current page. Returns counts only. Each company row has an emails_on_hunter link where the user can see the addresses on hunter.io. Provide either query (natural-language criteria, translated to filters exactly like Find-Companies) or domains (exact company domains, e.g. lifted from a Find-Companies result); when both are given, query takes precedence and domains is not sent. Free to call.Create-Company-List
ChatGPTname. By default the list is static (the user adds companies to it themselves). To create a dynamic list that automatically collects companies matching saved criteria, set type to dynamic and supply filters (a set of key/value criteria). Optionally place the list inside a folder with company_list_folder_id. Returns an invalid_input error (id validation_failed) if the name is missing, is already used by another list in the user's team, or a dynamic list is created without valid filters. Free to call.Create-Company-List-Folder
ChatGPTname and a color. color must be one of the allowed Hunter folder colors (hex without a leading '#'): 374151, 3489F9, 10B981, F5BA0B, EF4444, 7C3AED, F97316, E5E7EB, B4D9F7, BAE6B0, FDE68A, FBD0D0, D4C4F8, FFD79B. Returns an invalid_input error (id validation_failed) if the name is missing or already used by another folder in the user's team, or if the color is missing or not one of the allowed values. Free to call.Create-Custom-Attribute
ChatGPTCreate-Lead
ChatGPTleads_list_id to add the lead directly to a list. Free to call.Create-Lead-If-Missing
ChatGPTalreadyExisted: true and reports "already exists; no changes made"; otherwise creates the lead with the supplied fields. Never overwrites, never moves to a list, never enriches existing records. Use Create-Or-Update-Lead instead when the user explicitly wants to overwrite an existing lead. Free (no credits).Create-Lead-Tag
ChatGPTname; color is optional and must be one of the allowed Hunter tag colors (hex without a leading '#'): 374151, 3489F9, 10B981, F5BA0B, EF4444, 7C3AED, F97316, E5E7EB, B4D9F7, BAE6B0, FDE68A, FBD0D0, D4C4F8, FFD79B — when omitted, Hunter picks a random color from that palette. Tags are shared with the whole team. Returns an invalid_input error (id validation_failed) if the name is missing, longer than 255 characters, or already used by another lead tag in the user's team. Free to call.Create-Leads-List
ChatGPTCreate-Leads-List-Folder
ChatGPTname; color is optional and must be one of the allowed Hunter folder colors (hex without a leading '#'): 374151, 3489F9, 10B981, F5BA0B, EF4444, 7C3AED, F97316, E5E7EB, B4D9F7, BAE6B0, FDE68A, FBD0D0, D4C4F8, FFD79B — when omitted, Hunter picks a random color from that palette. A team can have at most 100 folders. Returns an invalid_input error (id validation_failed) if the name is missing or already used by another folder in the user's team, if the color is not one of the allowed values, or if the folder limit is reached. Free to call.Create-Message-Template
ChatGPTname and body are required; subject is optional and message_format defaults to html. The saved template can then pre-fill sequence steps via Create-Sequence-Follow-Up's message_template_id. Personalization placeholders like {{first_name}} are supported in the subject and body, and a fallback goes after a colon: {{first_name:"there"}}. The colon is the only separator that works — everything before it is read as the attribute name, so a piped form like {{first_name|fallback:"there"}} silently renders as an empty string. Placeholders carrying the literal fallback markers FALLBACK or DEFAULT are rejected with a validation error. Free to call.Create-Or-Update-Lead
ChatGPTCreate-Saved-Search
ChatGPTfilters payload verbatim and returns the created saved search; it also appears on the hunter.io Discover page. Names must be unique among the user's saved Discover searches — a duplicate name returns a validation error. There is no update endpoint: to change a saved search, delete it with Delete-Saved-Search and recreate it. Free to call.Create-Sequence
ChatGPTname is required; the sequence is created as a DRAFT that sends nothing until it is started. Lifecycle: draft → started (Start-Sequence) → paused/archived — the schedule and sender fields lock once started, so configure them while drafting. Optional fields: sender email_account_ids (connected email accounts — see List-Email-Accounts; unknown ids are rejected with unknown_email_account_ids), schedule_days (0=Monday..6=Sunday; a Monday-Friday schedule is [0, 1, 2, 3, 4], not [1, 2, 3, 4, 5]), the daily sending window schedule_time_start/schedule_time_end (seconds since midnight, start before end), a start_at date (YYYY-MM-DD, not in the past), bcc_recipient, and tracking toggles (tracked_links requires a premium plan). The introduction email (step 0) is created automatically with an empty subject and body, and Start-Sequence fails validation while it is blank — fill it in with Update-Sequence-Follow-Up, targeting the step whose step is 0 (get its id from List-Sequence-Follow-Ups). Typical next steps: write the introduction email with Update-Sequence-Follow-Up, append any further steps with Create-Sequence-Follow-Up, add recipients with Add-Sequence-Recipients, then launch with Start-Sequence (a connected email account, subject, and message body are required to start). Given a sending account that is already connected, the whole sequence can be built this way without opening the Hunter dashboard. Connecting a sending inbox is the one step that still needs the dashboard — the API only attaches an ALREADY-connected account, and email-account settings are read-only here. Free to call.Create-Sequence-Follow-Up
ChatGPTsubject and body with the user, set wait_days (days after the previous step, 0-999), create the step, then show the updated step list with List-Sequence-Follow-Ups. Also offer the team's saved templates (List-Message-Templates): passing message_template_id pre-fills whichever of subject, body, and message_format are left blank. The step number is assigned automatically after the current last step, so this tool always appends a new follow-up and can never target step 0 — to author the introduction email (step 0), or to rewrite any existing step, use Update-Sequence-Follow-Up instead. Omitting subject makes the step inherit the previous step's subject so the emails thread together. A sequence holds at most 6 steps in total (the introduction plus up to 5 follow-ups); exceeding that, or adding to an actively sending sequence (pause it first) or an archived one, is rejected with an invalid_input error. Free to call.Delete-Company-List
ChatGPTDelete-Company-List-Folder
ChatGPTDelete-Custom-Attribute
ChatGPTDelete-Lead
ChatGPTDelete-Lead-Tag
ChatGPTDelete-Leads-List
ChatGPTDelete-Leads-List-Folder
ChatGPTDelete-Message-Template
ChatGPTDelete-Saved-Search
ChatGPTDelete-Sequence
ChatGPTconfirmed: true actually deletes the sequence. Returns a not-found error if the sequence does not exist or belongs to another team. Free to call.Delete-Sequence-Follow-Up
ChatGPTDomain-Search
ChatGPTEmail-Count
ChatGPTEmail-Finder
ChatGPTEmail-Verifier
ChatGPTFavorite-Company-List
ChatGPTfavorited: true. Surface the favorited: true response to confirm the action succeeded. Returns a not-found error if the list does not exist or belongs to another team. Free to call.Favorite-Leads-List
ChatGPTfavorited: true. Surface the favorited: true response to confirm the action succeeded. Returns a not-found error if the list does not exist or belongs to another team. Free to call.Find-Companies
ChatGPToffset to paginate. The response includes meta.permalink — a link to the same query on hunter.io that the user can open to view all results with the inferred filters applied. Free to call. Do not use this when the user has already named a specific company — call Company-Enrichment directly with that company's domain.Get-Account-Details
ChatGPTGet-Company-List
ChatGPTname, type (static or dynamic), filters (for dynamic lists), company_list_folder_id, created_at, and companies_count (the number of companies currently in the list). Returns a not-found error if the list does not exist or belongs to another team. Free to call.Get-Connected-App
ChatGPTattribute_mappings — the list of target_field ↔ source_field pairs that map Hunter fields to the integration's fields. Present the mappings as a table or list. Also returns the provider, resolved name, category, provider_email, and connected_at / updated_at timestamps. Returns a not_found error if the app does not exist or belongs to a different team. Free to call.Get-Custom-Attribute
ChatGPTGet-Email-Account
ChatGPTsending_status, daily_limit, provider), it reports the sender_name shown on outgoing emails, whether it is the default_account, the email signature (sanitized HTML, null when none is stored), the owner's profile_picture_url, the team's custom_tracking_domain (null unless a verified custom tracking domain is configured), the default sending_schedule (days of week, HH:MM start/end times, and time zone) a new sequence sending from this account would run on, and the warmup state (enabled, status, end_date). Email account settings can NOT be changed through this API — inspection is read-only and settings writes are not yet available — so suggest changes for the user to apply in the hunter.io dashboard rather than offering to apply them. Returns a not-found error if the email account does not exist or is not one the user can manage. Free to call.Get-Lead
ChatGPTGet-Leads-List
ChatGPTGet-Message-Template
ChatGPTsubject, body, and message_format — for example to preview it before reusing it in a sequence follow-up (via Create-Sequence-Follow-Up's message_template_id), or to copy and adapt its content. Returns a not-found error if the template does not exist or belongs to another team. Free to call.Get-Saved-Search
ChatGPTfilters payload and describe it back to the user as a natural-language query for Find-Companies or Count-Company-Emails; this is an approximate rerun, because those tools accept only a query (or exact domains) and cannot re-apply the stored structured filters (locations, industries, funding, technologies, include/exclude lists) verbatim. Present the reformulated query and let the user confirm or refine before running it. Returns a not-found error if the saved search does not exist or belongs to another user. Free to call.Get-Sequence
ChatGPTstatus (draft, planned, active, paused, completed, preparing, error, or archived) plus the raw started/paused/archived booleans, the schedule (start_at date, daily sending window as HH:MM strings, days of week as integers 0=Monday..6=Sunday), the settings (open tracking, link tracking, unsubscribe link, AI assistant, BCC recipient), the sender email_account_ids, a follow_ups step summary (unique_steps_count and step numbers — use List-Sequence-Follow-Ups for the step contents), recipients_count, and the owner. Returns a not-found error if the sequence does not exist or belongs to another team. Free to call.Get-Sequence-Follow-Up
ChatGPTwait_days, subject, body, message_format (text or html), messages_sent, and variant (null, or A/B for A/B-tested steps). Unlike List-Sequence-Follow-Ups, subject is returned raw: a step that inherits the previous step's subject shows an inheritance placeholder instead of the resolved text. Returns a not-found error if the sequence or the step does not exist or belongs to another team. Free to call.Get-Sequence-Stats
ChatGPTsent, delivered, opened, clicked, replied, unsubscribed_recipients) count DISTINCT recipients — e.g. replied is the number of recipients who replied at least once, not the number of reply messages — and delivered is the recipients who received at least one non-bounced email (recipients_count is all recipients ever added to the sequence). bounced is message-based (a bounce is an SMTP-level event). The rate fields (open_rate, click_rate, reply_rate, bounce_rate, unsubscribed_recipients_rate) are floats in the 0.0-1.0 range — multiply by 100 to present them as percentages to the user — and are 0 when their denominator is 0; open_rate, click_rate, and reply_rate divide by distinct delivered recipients, while bounce_rate is message-based. The follow_ups array reports MESSAGE-based metrics per step (ordered by step, then variant; variant is null for the default follow-up or A/B for A/B-tested steps), so per-step counts do not sum to the recipient-based top-level totals. Returns a not-found error if the sequence does not exist or belongs to another team. Free to call.Get-Usage
ChatGPTsearches and verifications, plus a credits summary on plans with a single credits bucket — each with used, available, and remaining, and reset_date (the day the quota resets, i.e. the end of the current billing period). Reading usage consumes no credits and no requests. Free to call.Lead-Exists
ChatGPTList-Campaign-Recipients
ChatGPTList-Campaigns
ChatGPTList-Company-List-Folders
ChatGPTname, color (a hex color string), company_lists_count (how many lists are filed in it), and created_at. Folders are visible to the whole team. Supports limit and offset pagination. Free to call.List-Company-Lists
ChatGPTtype — static (a fixed set of companies the user adds manually) or dynamic (companies matched automatically by saved filters, which are included for dynamic lists) — along with its name, company_list_folder_id (the folder it lives in, or null), and created_at. Surface the type for each list, and for dynamic lists mention the filters for context. Supports limit and offset pagination. Free to call.List-Connected-Apps
ChatGPTprovider and resolved name clearly: canonical names like Google Sheets come from Hunter's internal catalog, while others fall back to the provider name. Each entry also includes category, provider_email, and the connected_at / updated_at timestamps. Supports limit and offset pagination. Returns an empty list if no apps are connected. To inspect a specific app's field mappings, follow up with Get-Connected-App using its id. Free to call.List-Custom-Attributes
ChatGPTList-Email-Account-Sequences
ChatGPTid, name, status (draft, planned, active, paused, or archived), recipients_allocated (recipients assigned to this account within the sequence, canceled recipients excluded), and emails_scheduled (emails still waiting to be sent from this account), most recent first. Archived sequences are excluded by default; pass include_archived: true to include them. Supports limit and offset pagination. Returns a not-found error if the email account does not exist or is not one the user can manage. Free to call.List-Email-Accounts
ChatGPTsending_status clearly: active means it is ready to send, paused means it is disconnected and will not send until reconnected, and warming means it is in ramp-up or warmup and currently sends a reduced volume. Each entry also includes the sender's email, name, daily sending limit, and provider (such as gmail or outlook). Supports limit and offset pagination. Free to call.List-Lead-Tags
ChatGPTname, color (a hex color string), and created_at. Supports limit and offset pagination (default limit 25, max 100). Free to call.List-Leads
ChatGPToffset to paginate. Free to call.List-Leads-List-Folders
ChatGPTname, color (a hex color string), leads_lists_count (how many lists are filed in it), and created_at. Supports limit and offset pagination (default 20, max 100). Free to call.List-Leads-Lists
ChatGPTList-Message-Templates
ChatGPTsubject, body, and message_format (text or html). To build a follow-up step from one, pass the chosen template's id as message_template_id to Create-Sequence-Follow-Up: the step's subject, body, and format are pre-filled from the template (any subject/body you pass explicitly wins over the template's). Supports limit and offset pagination (default 25 per page, max 100); templates are ordered newest first. Free to call.List-Saved-Searches
ChatGPTid, name, the stored filters payload, and timestamps, ordered newest first. To rerun one, read its filters and name and describe them to the user as a natural-language query for Find-Companies or Count-Company-Emails — that reformulation is approximate, since these tools take only a query (or exact domains) and cannot re-apply the stored structured filters (locations, industries, funding, technologies, include/exclude lists) verbatim. Supports limit and offset pagination (meta.total is the full count). Free to call.List-Sequence-Follow-Ups
ChatGPTwait_days (days to wait before sending), subject (the email subject; an inherited subject is resolved to the prior step's subject, so it is rarely empty), body, message_format (text or html), messages_sent, and variant (null, or A/B for A/B-tested steps). Supports limit and offset pagination. Returns a not-found error if the sequence does not exist or belongs to another team. Free to call.List-Sequence-Recipients
ChatGPTList-Sequences
ChatGPTstarted and/or archived state and paginate with limit/offset. New sequences can be created with Create-Sequence and inspected in full with Get-Sequence. Free to call.List-Webhooks
ChatGPTid, target_url (the endpoint Hunter POSTs the event payload to), and event — one of lead.created, message.sent, message.read, message.clicked, message.replied, export.completed, import.completed, sequence.paused, or sequence.resumed. Results are ordered newest first and support limit and offset pagination (meta.total carries the overall count). Returns an empty list when no webhooks are configured. Free to call.Merge-Leads-Lists
ChatGPTPause-Sequence
ChatGPTPerson-Enrichment
ChatGPTPlan-Prospecting-Flow
ChatGPTPush-Leads-To-CRM
ChatGPTid. Select the leads with EITHER lead_ids (specific leads) OR leads_list_id (every lead in that list); when both are provided the list takes precedence. The push is asynchronous: success only means the job was queued (status: "queued" plus the matched leads_count) — tell the user to check their CRM shortly for the synced leads. Returns a not-found error for an unknown connected app or leads list, and an invalid_input error when the app does not support lead syncing or no leads match the selection. Pushing writes lead data into the user's external CRM and requires an explicit user confirmation: the first call returns a confirmation prompt without pushing, and only re-issuing with confirmed: true actually queues the push. Free to call.Remove-Campaign-Recipients
ChatGPTRemove-Company-From-List
ChatGPTcompany_list_id and the company by company_id. This removes only the membership link between the company and the list; the company itself is not deleted and can be saved back to the list later, so the action is reversible. The list must be static (dynamic lists manage their members automatically). Succeeds with no content on success. Returns a not-found error if the list or company does not exist, belongs to another team, the list is dynamic, or the company is not in the list, or a forbidden error if the user is not allowed to modify this list. Free to call.Remove-Sequence-Recipients
ChatGPTRemove-Tag-From-Lead
ChatGPTlead_id and tag_id. This only detaches the tag from that lead; the tag itself is not deleted and stays available to re-apply later, so the action is reversible (to delete the tag everywhere, use Delete-Lead-Tag). The call is idempotent: removing a tag the lead does not have still succeeds. Succeeds with no content on success. Returns a not-found error if the lead or the tag does not exist or belongs to another team. Free to call.Report-API-Feedback
ChatGPTResume-Sequence
ChatGPTmessage describing the outcome — surface it and note that resuming is reversible (pause to stop sending). Returns a not-found error if the sequence does not exist or belongs to another user (this endpoint is owner-only). Free to call.Save-Company
ChatGPTStart-Campaign
ChatGPTconfirmed: true actually starts the campaign.Start-Sequence
ChatGPTconfirmed: true actually starts the sequence.Unfavorite-Company-List
ChatGPTfavorited: false. Surface the favorited: false response to confirm the favorite was removed. Returns a not-found error if the list does not exist or belongs to another team. Free to call.Unfavorite-Leads-List
ChatGPTfavorited: false. Surface the favorited: false response to confirm the favorite was removed. Returns a not-found error if the list does not exist or belongs to another team. Free to call.Update-Company-List
ChatGPTname), move it to a different folder (company_list_folder_id), and — for a dynamic list — change its filters. Renaming overwrites the previous name, which cannot be recovered from the API; if the user declines the rename, offer to create a new company list with the desired name instead. Succeeds with no content on success. Returns a not-found error if the list does not exist or belongs to another team, or an invalid_input error (id validation_failed) if the new name is empty or the filters are invalid. Free to call.Update-Company-List-Folder
ChatGPTname) and change its color. color must be one of the allowed Hunter folder colors (hex without a leading '#'): 374151, 3489F9, 10B981, F5BA0B, EF4444, 7C3AED, F97316, E5E7EB, B4D9F7, BAE6B0, FDE68A, FBD0D0, D4C4F8, FFD79B. Renaming overwrites the previous name, which cannot be recovered from the API; if the user declines the rename, offer to create a new folder with the desired name instead. Succeeds with no content on success. Only the folder's owner, a team admin, or the team owner may update it. Returns a not-found error if the folder does not exist, a forbidden error if the user is not allowed to update it, or an invalid_input error (id validation_failed) if the new name is duplicated or the color is not one of the allowed values. Free to call.Update-Custom-Attribute
ChatGPTUpdate-Lead
ChatGPTUpdate-Lead-Tag
ChatGPTcolor must be one of the allowed Hunter tag colors (hex without a leading '#'): 374151, 3489F9, 10B981, F5BA0B, EF4444, 7C3AED, F97316, E5E7EB, B4D9F7, BAE6B0, FDE68A, FBD0D0, D4C4F8, FFD79B. Returns the updated tag. Only the tag's owner, a team admin, or the team owner may update it. Returns a not-found error if the tag does not exist or belongs to another team, a forbidden error if the user is not allowed to update it, or an invalid_input error (id validation_failed) if the new name is empty, too long, or duplicated, or the color is not one of the allowed values. Free to call.Update-Leads-List
ChatGPTUpdate-Leads-List-Folder
ChatGPTname) and change its color. color must be one of the allowed Hunter folder colors (hex without a leading '#'): 374151, 3489F9, 10B981, F5BA0B, EF4444, 7C3AED, F97316, E5E7EB, B4D9F7, BAE6B0, FDE68A, FBD0D0, D4C4F8, FFD79B. Renaming overwrites the previous name, which cannot be recovered from the API; if the user declines the rename, offer to create a new folder with the desired name instead. Succeeds with no content on success. Only the folder's owner, a team admin, or the team owner may update it. Returns a not-found error if the folder does not exist, a forbidden error if the user is not allowed to update it, or an invalid_input error (id validation_failed) if the new name is duplicated or the color is not one of the allowed values. Free to call.Update-Message-Template
ChatGPTUpdate-Sequence
ChatGPTschedule_time_start, schedule_time_end, schedule_days, start_at, email_account_ids, bcc_recipient, tracked, or tracked_links is rejected with an invalid_input error (id sequence_locked) — only name and add_unsubscribe_link (a compliance lever) stay editable, and re-sending an unchanged value is tolerated. Other validation failures return field-specific errors (unknown_email_account_ids, invalid_schedule_days, invalid_schedule_window, start_at_in_the_past, tracked_links_requires_premium, ...). Returns the updated sequence. Returns a not-found error if the sequence does not exist or belongs to another team. Free to call.Update-Sequence-Follow-Up
ChatGPTsubject and body here — with a sending account already connected, that leaves nothing to do in the Hunter dashboard. Omitted fields are left unchanged on the step you target, with two documented side effects to relay to the user. First, changing a subject also rewrites the subject of every LATER step that still holds the old value verbatim (Hunter propagates a subject edit down the chain), and on a started sequence that regenerates the pending messages of the affected steps. This includes the ordinary build order: steps appended with no subject of their own are stored empty, so authoring step 0 afterwards propagates into every one of them. ALWAYS re-read the step list with List-Sequence-Follow-Ups after a subject change and tell the user which other steps moved. Second, setting message_format to text on a step that is currently html makes Hunter CONVERT the stored body even if you omit body: images are dropped, links collapse to bare URLs, and most HTML is stripped. That conversion is not reversible by setting the format back, so confirm it first, and show the user the converted body that comes back in the response. Editing is allowed on a draft or a paused sequence and is rejected with an invalid_input error while the sequence is actively sending (id sequence_active — pause it first), while it is scheduled to start (id sequence_planned), or once it is archived. wait_days accepts 0-999. Send 0 or omit it for step 0: the introduction always goes out first so the delay never delays anything, but a non-zero value still persists and inflates the delivery-time estimate Hunter shows for the sequence. CRITICAL — only pass subject when you are deliberately rewriting the subject line: never echo back a subject you just read from List-Sequence-Follow-Ups or Get-Sequence-Follow-Up while editing the body or the timing. On a step that inherits its subject from an earlier step, writing the value you read (the resolved text from the list, or the raw internal placeholder from the detail view) replaces the inheritance link with a fixed string and silently breaks subject threading for A/B recipients. Omit subject to keep inheriting. body must be non-blank when given. An empty-string subject is meaningful instead of invalid: on any step above 0 it RESTORES inheritance from the previous step, which is the only way to undo a concrete subject and re-thread the step. Never send an empty subject for step 0 — it has no previous step to inherit from, so it just clears the introduction subject and blocks Start-Sequence. Both fields are capped at 250 and 50000 characters respectively, because Hunter accepts a longer write and only rejects it at Start-Sequence. Note that Hunter normalizes a saved body even when you omit body: smart quotes are straightened and malformed links repaired. Merge fields must carry a fallback in the form {{first_name:"there"}}; a bare {{first_name}} or a pipe form like {{first_name|there}} is rejected or renders empty. Step 0 is created with message_format html, so send HTML in body or set message_format to text alongside a plain-text body. If the step you target has a non-null variant (an A/B test — visible in List-Sequence-Follow-Ups), this edits ONLY that arm; tell the user which arm changed. Requires that you own the sequence or are a team admin/owner. Returns the updated step. Returns a not-found error if the sequence or the step does not exist or belongs to another team. Free to call.Update-Webhook
ChatGPTtarget_url (the endpoint Hunter POSTs to) and/or subscribe it to a different event (one of lead.created, message.sent, message.read, message.clicked, message.replied, export.completed, import.completed, sequence.paused, or sequence.resumed). This OVERWRITES configuration another system may already rely on: an integration listening on the old URL or event stops receiving deliveries immediately, so review the webhook with List-Webhooks first and make sure the user really wants to change it. Provide at least one of target_url or event — a call with neither returns an invalid_input error without contacting the API. Returns the updated webhook. Fails with an invalid_input error when the new target_url is not a valid 12-500 character HTTP(S) URL or the event is not supported, and a not-found error if the webhook does not exist or is not visible to the account. Free to call.Capabilities
Example Prompts
Click any prompt to copy it.
Links
App Stats
103
Tools
3
Prompts
ChatGPT
Platforms
Category
Company ResearchWorks with
Similar Apps
Data refreshed daily





