Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions apps/docs/components/icons.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10459,3 +10459,43 @@ export function PlaneIcon(props: SVGProps<SVGSVGElement>) {
</svg>
)
}

/** HuntAPI logo, as used by the HuntAPI block. */
export function HuntApiIcon(props: SVGProps<SVGSVGElement>) {
return (
<svg viewBox='-0.3 1.7 20.6 20.6' fill='none' xmlns='http://www.w3.org/2000/svg' {...props}>
<title>HuntAPI</title>
<g clipPath='url(#huntapi-clip0_78_1795)'>
<path
d='M12.544 2.527L10.578 2L8.921 8.185L7.424 2.601L5.458 3.128L7.074 9.161L3.048 5.135L1.608 6.574L6.025 10.991L0.525 9.517L-0.002 11.483L6.007 13.094C5.939 12.797 5.902 12.488 5.902 12.17C5.902 9.921 7.725 8.098 9.974 8.098C12.223 8.098 14.046 9.921 14.046 12.17C14.046 12.486 14.01 12.793 13.942 13.088L19.403 14.551L19.93 12.585L13.897 10.968L19.397 9.494L18.87 7.528L12.837 9.144L16.864 5.118L15.424 3.678L11.069 8.034L12.544 2.527Z'
fill='#6BB666'
/>
<path
d='M13.936 13.111C13.768 13.823 13.412 14.464 12.923 14.977L16.88 18.933L18.319 17.494L13.936 13.111Z'
fill='#6BB666'
/>
<path
d='M12.883 15.018C12.389 15.523 11.764 15.9 11.064 16.094L12.504 21.467L14.47 20.94L12.883 15.018Z'
fill='#6BB666'
/>
<path
d='M10.99 16.114C10.665 16.197 10.325 16.242 9.974 16.242C9.598 16.242 9.233 16.191 8.888 16.095L7.447 21.473L9.413 22L10.99 16.114Z'
fill='#6BB666'
/>
<path
d='M8.818 16.075C8.128 15.872 7.515 15.49 7.03 14.984L3.064 18.95L4.504 20.39L8.818 16.075Z'
fill='#6BB666'
/>
<path
d='M6.998 14.949C6.522 14.439 6.175 13.807 6.01 13.105L0.531 14.574L1.058 16.54L6.998 14.949Z'
fill='#6BB666'
/>
</g>
<defs>
<clipPath id='huntapi-clip0_78_1795'>
<rect width='20' height='24' fill='white' />
</clipPath>
</defs>
</svg>
)
}
2 changes: 2 additions & 0 deletions apps/docs/components/ui/icon-mapping.ts
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,7 @@ import {
HubspotIcon,
HuggingFaceIcon,
HumanInTheLoopIcon,
HuntApiIcon,
HunterIOIcon,
IAMIcon,
IcypeasIcon,
Expand Down Expand Up @@ -483,6 +484,7 @@ export const blockTypeToIconMap: Record<string, IconComponent> = {
huggingface: HuggingFaceIcon,
human_in_the_loop: HumanInTheLoopIcon,
human_in_the_loop_v2: HumanInTheLoopIcon,
huntapi: HuntApiIcon,
hunter: HunterIOIcon,
iam: IAMIcon,
icypeas: IcypeasIcon,
Expand Down
123 changes: 123 additions & 0 deletions apps/docs/content/docs/integrations/huntapi.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
---
title: HuntAPI
description: Download videos and audio from public video URLs
integration:
type: "huntapi"
color: "#FFFFFF"
---

import { ReferenceDetails } from "@/components/ui/reference-details"


{/* MANUAL-CONTENT-START:intro */}
[HuntAPI](https://www.huntapi.com/) downloads video and audio from public video URLs, with the video's metadata.

With the HuntAPI block, you can:

- **Download videos**: start a download in a chosen quality and format, with or without sound
- **Extract audio**: start extracting a video's audio track as MP3, M4A or WAV
- **Get the file**: check a download job and, once it completes, get the link to the file with the video's title, duration, uploader and view counts

Downloads run as jobs: Download Video and Download Audio return a job ID, and Get Job returns the file link once the job's status is CompletedJob.

Create an API key in the [HuntAPI dashboard](https://app.huntapi.com/) and paste it into the block.

In Sim, the HuntAPI block lets your agents transcribe videos, archive content and collect video metadata.
{/* MANUAL-CONTENT-END */}

## Use the block [#usage-instructions]

Start a download of a public video in a chosen quality and format, or extract its audio track, then check the job to get a link to the file with the video's title, duration, channel and view counts.

## Actions

### HuntAPI Download Video

Start downloading a public video in a chosen quality and format. Returns a job ID; use Get Job to get the file link once the job completes.

<ReferenceDetails>

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `url` | string | Yes | URL of the public video \(e.g., "https://www.youtube.com/watch?v=jNQXAC9IVRw") |
| `videoQuality` | string | No | Quality: best, 1080p, 720p, 480p or 360p \(defaults to "best"\); videos over an hour are capped at 720p |
| `videoFormat` | string | No | Preferred format: mp4, webm or mkv \(defaults to "mp4"\) |
| `downloadType` | string | No | audio_video for the video with sound, video for the picture only \(defaults to "audio_video"\) |
| `maxDuration` | number | No | Maximum duration in seconds; longer content is cut at this length |
| `apiKey` | string | Yes | HuntAPI API key |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `jobId` | string | ID of the download job, to pass to Get Job |

</ReferenceDetails>

### HuntAPI Download Audio

Start extracting the audio track of a public video as MP3 or another format. Returns a job ID; use Get Job to get the file link once the job completes.

<ReferenceDetails>

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `url` | string | Yes | URL of the public video \(e.g., "https://www.youtube.com/watch?v=jNQXAC9IVRw") |
| `audioQuality` | string | No | Quality: best, 320kbps, 256kbps or 128kbps \(defaults to "best"\) |
| `audioFormat` | string | No | Preferred format: mp3, m4a or wav \(defaults to "mp3"\) |
| `maxDuration` | number | No | Maximum duration in seconds; longer content is cut at this length |
| `apiKey` | string | Yes | HuntAPI API key |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `jobId` | string | ID of the download job, to pass to Get Job |

</ReferenceDetails>

### HuntAPI Get Job

Get a download job's status and progress and, once it completes, the link to the file with the video's metadata.

<ReferenceDetails>

#### Input

| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `jobId` | string | Yes | The job ID returned by Download Video or Download Audio |
| `apiKey` | string | Yes | HuntAPI API key |

#### Output

| Parameter | Type | Description |
| --------- | ---- | ----------- |
| `jobId` | string | ID of the download job |
| `status` | string | Status of the job, CompletedJob once the file is ready |
| `progress` | number | Progress of the job, from 0 to 100 |
| `fileUrl` | string | Link to the downloaded file, once the job completes |
| `createdAt` | string | When the job was created |
| `completedAt` | string | When the job completed |
| `durationMs` | number | Time the job took, in milliseconds |
| `metadata` | object | Metadata of the video, once the job completes |
| ↳ `title` | string | Title of the video |
| ↳ `description` | string | Description of the video |
| ↳ `duration` | number | Duration of the video in seconds |
| ↳ `extension` | string | File extension of the download |
| ↳ `thumbnail` | string | URL of the video thumbnail |
| ↳ `uploader` | string | Name of the uploader |
| ↳ `uploaderUrl` | string | URL of the uploader's page |
| ↳ `viewCount` | number | Number of views |
| ↳ `likeCount` | number | Number of likes |
| ↳ `commentCount` | number | Number of comments |
| ↳ `uploadDate` | number | Upload date as a Unix timestamp in seconds |
| ↳ `webpageUrl` | string | URL of the video page |

</ReferenceDetails>


1 change: 1 addition & 0 deletions apps/docs/content/docs/integrations/meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@
"hubspot-service-account",
"hubspot-setup",
"huggingface",
"huntapi",
"hunter",
"iam",
"icypeas",
Expand Down
Loading