Import jobs
Bulk imports, including Furnished Finder scraping runs.
7 endpoints. Every request needs an Authorization: Bearer mtro_... header, and responses follow the envelope described in Errors and conventions.
POST /ff-import/scrape
Start a Furnished Finder scrape through the Core proxy. This can create import data and should require owner confirmation when used by an agent.
Required scope: any valid API key for the entity.
MCP tool: ff_import_scrape
Request body
A JSON object. This endpoint's fields are not documented yet — send the same body the admin panel sends, or ask MTRO PRO for the field list.
Example
curl -X POST 'https://core.mtro.app/ff-import/scrape' \
-H 'Authorization: Bearer mtro_your_api_key' \
-H 'Content-Type: application/json' \
-d '{}'
POST /ff-import/upload-images
Upload Furnished Finder scraped images through the Core proxy. This writes media and should require owner confirmation when used by an agent.
Required scope: any valid API key for the entity.
MCP tool: ff_import_upload_images
Request body
A JSON object. This endpoint's fields are not documented yet — send the same body the admin panel sends, or ask MTRO PRO for the field list.
Example
curl -X POST 'https://core.mtro.app/ff-import/upload-images' \
-H 'Authorization: Bearer mtro_your_api_key' \
-H 'Content-Type: application/json' \
-d '{}'
POST /import-jobs
Create an async import job. This writes account data and should require owner confirmation when used by an agent.
Required scope: any valid API key for the entity.
MCP tool: import_jobs_create
Request body
Field names are taken from the Core handler, which reads exactly these. Types and which of them are required are not yet documented.
| Field | Type | Required | Description |
|---|---|---|---|
entityId | any | no |
Example
curl -X POST 'https://core.mtro.app/import-jobs' \
-H 'Authorization: Bearer mtro_your_api_key' \
-H 'Content-Type: application/json' \
-d '{}'
GET /import-jobs/{id}
Get an async import job by ID.
Required scope: any valid API key for the entity.
MCP tool: import_jobs_get
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | string | yes |
Example
curl -X GET 'https://core.mtro.app/import-jobs/<id>' \
-H 'Authorization: Bearer mtro_your_api_key'
POST /import-jobs/{id}/cancel
Cancel an async import job. This changes import state and should require owner confirmation when used by an agent.
Required scope: any valid API key for the entity.
MCP tool: import_jobs_cancel
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | string | yes |
Example
curl -X POST 'https://core.mtro.app/import-jobs/<id>/cancel' \
-H 'Authorization: Bearer mtro_your_api_key'
POST /import-jobs/{id}/mark-reviewed
Mark an async import job as reviewed. This writes account data and should require owner confirmation when used by an agent.
Required scope: any valid API key for the entity.
MCP tool: import_jobs_mark_reviewed
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | string | yes |
Example
curl -X POST 'https://core.mtro.app/import-jobs/<id>/mark-reviewed' \
-H 'Authorization: Bearer mtro_your_api_key'
GET /import-jobs/list
List async import jobs.
Required scope: any valid API key for the entity.
MCP tool: import_jobs_list
Example
curl -X GET 'https://core.mtro.app/import-jobs/list' \
-H 'Authorization: Bearer mtro_your_api_key'
Response
| Field | Type |
|---|---|
jobs | any[] |
error | boolean |