> ## Documentation Index
> Fetch the complete documentation index at: https://api-tools.memories.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Import from Creator Profile — Public

> Scrape the most recent N videos from a creator profile into the shared Public Video Library.

<Info>
  **Product**: Visual Search
  **Use case**: Upload videos and images, auto-index them, then search by natural language, image, or transcript phrase
  **Host**: `https://api.memories.ai/serve/api/v1`
  **Auth**: `Authorization: sk-mavi-...` (no `Bearer` prefix)
</Info>

Scrape the most recent N videos from any TikTok, YouTube, or Instagram creator profile into the **Public Video Library** — shared with all Memories.ai users.

<Warning>
  Videos contributed to the public library are **permanent and visible to all users**. Use [Import from Creator Profile — Private](/visual-search/upload-from-creator-profile) if you want a private copy instead.
</Warning>

## Prerequisites

* You have [created a memories.ai API key](/visual-search/create-your-key).

## Request Example

```python theme={null}
import requests

headers = {"Authorization": "sk-mavi-..."}
payload = {
    "username": "https://www.tiktok.com/@cutshall73",
    "scraper_cnt": 10,
    "callback_url": "https://your.app/callback"
}
response = requests.post(
    "https://api.memories.ai/serve/api/v1/scraper_public",
    json=payload,
    headers=headers
)
print(response.json())
```

## Parameters

<ParamField body="username" type="string" required>
  Full URL of the creator's profile page.
</ParamField>

<ParamField body="scraper_cnt" type="integer">
  Number of most recent posts to ingest.
</ParamField>

<ParamField body="callback_url" type="string">
  URL to receive POST notifications on task and per-video indexing progress.
</ParamField>

## Response Example

```json theme={null}
{
    "code": "0000",
    "msg": "success",
    "data": {
        "taskId": "31b0fccb-d6f9-4135-922d-1e8828499812"
    },
    "success": true,
    "failed": false
}
```

## Response Fields

<ResponseField name="code" type="string">Business status code. `0000` indicates success.</ResponseField>
<ResponseField name="msg" type="string">Human-readable status message.</ResponseField>
<ResponseField name="data.taskId" type="string">Unique identifier for the import task. Use with [Get Task Status](/visual-search/get-task-status).</ResponseField>

## Notes & Limits

* **Permanent contribution**: Videos uploaded here are visible to all users and cannot be deleted.
* **Free for duplicates**: Importing a creator's video that already exists in the public library is a no-op metadata refresh.
* **Rate limiting**: See [Rate limits](/visual-search/rate-limits).
