مستندات توسعه دهندگان

به روزرسانی مورد جذب لینک

POST/sites/{siteId}/outreach/{targetId}
Scope
actions:apply

Set an outreach target's status, note or tags The status date moves when the status changes; status and note stay through later refreshes. Send status, note, tags or a mix; an empty or null note clears it, and tags replaces the target's tags ([] clears them). Recorded in Activity as the key owner.

توضیح ها از سند OpenAPI می آیند و انگلیسی اند.

پارامترها

ناممحلتوضیح
siteIdاجباریpathstringWebsite id, from GET /sites.
targetIdاجباریpathstringOutreach target id, from GET /outreach.

بدنه درخواست

فیلدتوضیح
statusto_contact | contacted | added | declined · New status
notestring or null · at most 2000 characters; Your note, at most 2,000 characters; empty or null clears it
tagslist of string · at most 10 items; Replaces the target's tags; [] clears them
{
  "status": "contacted",
  "note": "Emailed the editor on Oct 2.",
  "tags": [
    "gear-review"
  ]
}

پاسخ

200 · application/json

فیلدتوضیح
targetobject · required
target.idstring
target.sourcestring
target.urlstring
target.domainstring
target.titlestring
target.scorenumber
target.classstring
target.reasonobject
target.reason.competitorslist of strings
target.reason.domainRanknumber
target.reason.ourRanknumber
target.reason.spamScorenumber
target.reason.outOfnumber
target.reason.backlinksnumber
target.reason.pageslist of objects
target.reason.pages[].competitorstring
target.reason.pages[].urlstring
target.reason.pages[].anchorstring
target.reason.pages[].titlestring
target.reason.pageKindstring
target.reason.pageKindBystring
target.statusstring
target.statusAtstring
target.statusAutotrue or false
target.notestring
target.tagslist of strings
target.firstSeenstring
target.lastSeenstring
target.gonetrue or false
target.checkobject
target.check.atstring
target.check.oktrue or false
target.check.statusnumber
target.check.linksUstrue or false
target.check.mentionsUstrue or false
target.check.matchedlist of strings
target.linkstring

نکته ها

GET /sites/{siteId}/outreach صفحه ها و سایت هایی را لیست می کند که ارزش دارد از آن ها لینک یا منشن بخواهید، به ترتیب: اول موردهای باز بر اساس score (از 0 تا 100)، بعد پیام داده شده ها، اضافه شده ها و ردشده ها. موردهایی که منبعشان دیگر پیدایشان نمی کند (gone) آخر می آیند. MonoRanks ایمیل نمی فرستد و دنبال اطلاعات تماس هم نمی گردد: موردها را لیست می کند، شما سراغشان می روید و نتیجه را ثبت می کنید.

مورد توضیح
source ai_source (پاسخ های هوش مصنوعی به سؤال های شما به صفحه ارجاع می دهند ولی اسم شما را نمی آورند)، best_list (فهرست «بهترین X» که اسم رقبای شما را آورده ولی شما را نه)، link_gap (سایتی که به دو رقیب یا بیشتر لینک داده ولی به شما نه)، lost_link (سایت قوی ای که لینکش به شما را برداشته و راه حل این است که از آن ها بخواهید لینک را به روز کنند) یا manual (دستی اضافه شده).
reason دلیل را می گوید، با فیلدهایی که منبعش می داند: مثلاً questions، models و timesCited؛ keyword و position؛ competitors، domainRank، spamScore و outOf؛ یا lostAt.
status to_contact، contacted، added یا declined. با status و source فیلتر کنید. counts جمع هر وضعیت و هر منبع را دارد.
اسپم موردهایی که امتیاز اسپمشان بالای 60 است کنار گذاشته می شوند، مگر اینکه spam=1 بفرستید؛ counts.spamHidden می گوید چندتا کنار رفته اند.
نوشتن POST /sites/{siteId}/outreach/{targetId} مقدار status و/یا note را می گیرد (حداکثر 2,000 کاراکتر؛ یادداشت خالی آن را پاک می کند). تغییر به نام صاحب کلید در Activity سایت ثبت می شود. وقتی منبع، مورد را به روز می کند، وضعیت و یادداشت سر جایشان می مانند.
اضافه شدن خودکار MonoRanks هفته ای یک بار هر صفحه باز را دوباره و رایگان می خواند. اگر صفحه حالا به سایت لینک بدهد یا اسمش را بیاورد، مورد added می شود و statusAuto برابر true است.

خطاها

کدمعنی
400Bad request. Codes: nothing_to_change, bad_status, bad_note, note_too_long, bad_tags.
401Missing, unknown or revoked key. Codes: missing_key, invalid_key.
403The key lacks the scope, covers another website, or its owner lost access. Codes: missing_scope, other_site, owner_left, no_owner, forbidden.
404Not found. Codes: not_found.
429Too many requests this hour for this key. Codes: rate_limited.

نمونه درخواست

curl -X POST \
  -H "Authorization: Bearer mr_ws_…" \
  -H "Content-Type: application/json" \
  -d '{"status":"contacted","note":"Emailed the editor on Oct 2.","tags":["gear-review"]}' \
  "https://app.monoranks.com/api/v1/sites/SITE_ID/outreach/TARGET_ID"

نمونه پاسخ

{
  "target": {
    "id": "0b2d4f6a-8c0e-4a2c-9e4a-8c0e2a4c6e8a",
    "source": "link_gap",
    "url": "https://rideguide.example/best-bike-shops/",
    "domain": "rideguide.example",
    "title": "The best online bike shops",
    "score": 82,
    "class": "editorial",
    "reason": {
      "competitors": [
        "bikeworld.example",
        "cyclehub.example"
      ],
      "domainRank": 47,
      "ourRank": 33,
      "spamScore": 4,
      "outOf": 2,
      "backlinks": 5,
      "pages": [
        {
          "competitor": "bikeworld.example",
          "url": "https://rideguide.example/best-bike-shops/",
          "anchor": "Bike World",
          "title": "The best online bike shops"
        }
      ],
      "pageKind": "review",
      "pageKindBy": "ai"
    },
    "status": "contacted",
    "statusAt": "2026-10-02T09:30:00.000Z",
    "statusAuto": false,
    "note": "Emailed the editor on Oct 2.",
    "tags": [
      "gear-review"
    ],
    "firstSeen": "2026-09-14T03:00:00.000Z",
    "lastSeen": "2026-10-05T03:00:00.000Z",
    "gone": false,
    "check": {
      "at": "2026-10-05T03:10:00.000Z",
      "ok": true,
      "status": 200,
      "linksUs": false,
      "mentionsUs": false,
      "matched": []
    },
    "link": "https://app.monoranks.com/sites/3f6c2a1e-8b4d-4c7a-9e21-5d0b7a6f4c13/outreach?open=0b2d4f6a-8c0e-4a2c-9e4a-8c0e2a4c6e8a"
  }
}

سرور MCP همین کار را با ابزار update_outreach_target انجام می دهد.