Bỏ qua để đến nội dung
Rankupedia
RankupediaĐăng ký

Mục nhập: API

API công cụ kiểm tra DR: mọi tham số và trường, được giải thích

Tài liệu tham khảo về cấu trúc yêu cầu và hai trường mà mọi phản hồi đã xác thực đều có. Các hàng cụ thể theo hành động có thể khác nhau, vì vậy hãy thử một lệnh gọi trước khi phân tích cú pháp.

Cầu đá đại diện cho URL cơ sở API với một công nhân cầm một chìa khóa sắt để xác thực

Dịch vụ là một REST API trả về JSON. CORS được mở. Một trang trình duyệt có thể gọi nó trực tiếp. Các khóa bắt đầu bằng sk_ và được lấy từ trang tài khoản sau khi đăng nhập bằng Google.

URL cơ sở là https://rankupedia.com/api.php. Xác thực bằng key=sk_... trong chuỗi truy vấn hoặc với tiêu đề Authorization: Bearer sk_..., tùy thuộc vào trình khách của bạn. Bốn hành động không yêu cầu xác thực: domain, overview, stats và suggest.

Công cụ kiểm tra DR chỉ hữu ích khi bạn có thể phân tích cú pháp kết quả đầu ra của nó. Mẫu dưới đây là trường hợp hữu ích nhỏ nhất, và các phần sau đó bao gồm các phần mà mọi người thường hiểu sai.

Một lệnh gọi, đã được chú thích

Hành động overview miễn phí. Thay thế tên miền bằng tên miền của bạn.

bash
curl "https://rankupedia.com/api.php?action=overview&q=nytimes.com"

# authenticated listing, 100 rows per page:
curl -H "Authorization: Bearer sk_live_..." \
  "https://rankupedia.com/api.php?action=refdomains&q=nytimes.com&per=100&page=1&order=desc"

Giải phẫu của một yêu cầu

01

Chọn hành động

Giá trị action chọn thao tác và giá. Các hành động miễn phí được liệt kê trong bảng giá.

02

Đặt tên cho mục tiêu

Giá trị q là một tên miền trần như nytimes.com, không có lược đồ hoặc đường dẫn.

03

Thêm thông tin xác thực nếu hành động là trả phí

Hoặc key trong chuỗi truy vấn hoặc tiêu đề Bearer. Tiêu đề giữ khóa khỏi nhật ký máy chủ và lịch sử trình duyệt.

04

Phân trang và sắp xếp

page và per chia nhỏ kết quả và sort với order sắp xếp chúng. Phân trang dừng ở 50.000 hàng.

Chuẩn bị danh sách tên miền trước lệnh gọi đầu tiên

Nhiều kết quả kỳ lạ bắt đầu bằng đầu vào thay vì máy chủ. Làm sạch danh sách một lần, sau đó gửi nó.

Loại bỏ mọi thứ không phải là tên miền trần. Một địa chỉ dán có đường dẫn thêm các ký tự mà giá trị q không mong đợi, vì vậy hãy loại bỏ lược đồ, đường dẫn và bất kỳ dấu gạch chéo cuối nào.

Loại bỏ lược đồ và đường dẫn

Chuyển đổi https://shop.example.org/blog/ thành shop.example.org trước khi gọi. Giá trị q nhận một tên miền trần, vì vậy đường dẫn bị loại bỏ ở đây thay vì được gửi.

Bảng tính ẩn những chi tiết này bên trong một ô. Bộ lọc nhanh cho dấu gạch chéo và dấu hai chấm sẽ bắt được hầu hết chúng.

Chuyển đổi tên thành chữ thường và loại bỏ các bản sao

Tên miền không phân biệt chữ hoa chữ thường, vì vậy Example.COM và example.com chỉ một mục tiêu. Gửi cả hai sẽ tiêu tốn hai lần tín dụng cho một câu trả lời.

Loại bỏ trùng lặp trước khi đếm lệnh gọi. Một danh sách 2.100 tên với 300 bản sao cần hai lệnh gọi bulk_dr thô, nhưng sau khi loại bỏ trùng lặp, 1.800 tên duy nhất của nó vừa với một lệnh gọi.

Quyết định giữa tên miền gốc và tên miền phụ

Một tên miền phụ như blog.example.org là một tên riêng trong danh sách của bạn. Quyết định xem câu hỏi của bạn là về cái nào trước khi gửi bất cứ điều gì.

Nếu câu hỏi bao gồm toàn bộ trang web, hãy gửi tên gốc. Nếu nó bao gồm một tên miền phụ, hãy kiểm tra chính xác tên đó và đọc câu trả lời thuộc về nó một mình.

Viết quyết định vào ghi chú của công việc, để lần chạy tiếp theo, có thể bởi một người khác, áp dụng cùng một quy tắc.

Các tham số truy vấn

Tham sốÝ nghĩaGhi chú
actionThao tác nào cần chạyBắt buộc; xem bảng giá
qTên miền mục tiêuVí dụ: nytimes.com
keyKhóa APIHoặc sử dụng tiêu đề Bearer
pageSố trang của kết quảPhân trang sâu bị giới hạn ở 50.000
perSố hàng mỗi trangChấp nhận từ 10 đến 5000; một lệnh gọi là một khoản phí, ở bất kỳ số hàng nào
sortCột để sắp xếp theoCác cột có sẵn phụ thuộc vào hành động
orderasc hoặc descSử dụng cùng với sort
domainsDanh sách cho bulk_drTối đa 2.000 tên miền mỗi lần, qua GET hoặc cơ thể POST
Công nhân sử dụng một thước lớn để đo các hàng thùng gỗ trên băng chuyền

Phân trang qua một danh sách dài

Các hành động liệt kê trả về các hàng theo trang. Hai tham số kiểm soát phần lát: page chọn lát nào, và per đặt số hàng nó giữ. Per chấp nhận các giá trị từ 10 đến 5000.

Chọn kích thước trang trước. Một giá trị per lớn hơn cắt giảm số lượng lệnh gọi, và tính phí tính theo lệnh gọi thay vì hàng.

Sắp xếp trước khi phân trang

Sort và order quyết định hàng nào rơi vào trang một. Đặt cả hai trên mọi lệnh gọi trong một chuỗi, để mỗi trang đến từ cùng một thứ tự.

Sử dụng desc trên một cột số liệu khi bạn muốn các hàng mạnh nhất trước, và asc khi bạn tìm kiếm những hàng yếu nhất. Tên cột có sẵn phụ thuộc vào hành động.

Xác nhận thứ tự với một bài kiểm tra nhỏ gồm hai trang trước khi bạn tin tưởng một lần chạy dài.

Dừng ở giới hạn 50.000 hàng

Phân trang sâu dừng ở 50.000 hàng. Vượt qua điểm đó, lệnh gọi trả về không có gì mới, vì vậy một vòng lặp liên tục phân trang đang lãng phí tín dụng.

Thu hẹp câu hỏi hoặc chia công việc thành các lần chạy nhỏ hơn. Một truy vấn thứ hai với một mục tiêu khác thường sạch hơn một trang sâu hơn.

Giới hạn chiều sâu là một thuộc tính của danh sách, vì vậy nó áp dụng cho mọi khách hàng gọi nó.

Kết thúc vòng lặp trên một trang ngắn

Dừng lại khi một trang trả về ít hàng hơn per. Đó là dấu hiệu thông thường rằng danh sách đã hết.

Kết hợp thử nghiệm đó với kiểm tra số dư trong mục nhập khắc phục sự cố, để vòng lặp kết thúc ở trang cuối cùng hoặc trên số dư thấp, tùy thuộc vào cái nào đến trước.

Các trường có mặt trong mọi phản hồi

ok

Một boolean. Đúng có nghĩa là lệnh gọi đã hoàn thành. Sai có nghĩa là nó không, và trạng thái HTTP cho bạn biết lý do.

_credits

Xuất hiện trên các lệnh gọi đã xác thực. Nó báo cáo chi phí của lệnh gọi này và số dư còn lại của bạn theo tín dụng, cho phép bạn dừng vòng lặp trước khi số dư hết.

Những gì chúng tôi không tài liệu ở đây

Tên trường cấp hàng cho mỗi hành động có thể thấy trong phản hồi trực tiếp. Chúng tôi không sao chép chúng trong mục nhập này để nó không bị trôi khỏi dịch vụ.

Kiểm tra một lệnh gọi trước khi viết một vòng lặp

01

Chọn một tên miền bạn biết

Chọn một trang web mà hồ sơ của bạn có thể đánh giá từ các trang của chính nó. Một tên miền bạn biết khiến một số kỳ lạ dễ bị phát hiện.

02

Gửi một lệnh gọi miễn phí

Chạy overview hoặc domain không có khóa. Phản hồi hiển thị hình dạng thực tế của JSON, đáng tin cậy hơn bất kỳ mô tả nào, bao gồm cả cái này.

03

Gửi một lệnh gọi trả phí với trang nhỏ nhất

Sử dụng per=10 trên một hành động liệt kê. Bạn sẽ thấy các trường hàng và giá trị _credits trước khi mở rộng.

04

Đọc _credits, sau đó mở rộng

Nhân chi phí của một lệnh gọi với số lệnh gọi trong kế hoạch của bạn. Nếu tổng lớn hơn số dư, hãy thu nhỏ kế hoạch trước khi vòng lặp bắt đầu.

Trước khi triển khai khách hàng

  • Kiểm tra ok trước khi đọc bất kỳ trường nào khác
  • Ghi lại _credits trên mọi lệnh gọi
  • Xem dữ liệu như một bản chụp hàng tháng
  • Xử lý 401 và 402 riêng biệt, xem mục nhập khắc phục sự cố
  • Giữ khóa khỏi mã front-end
Người làm vườn lắc một cái rây để lọc đá phổ biến khỏi đống đá

Ghi chú về việc ghép lô

Hành động bulk_dr chấp nhận tối đa 2.000 tên miền mỗi lệnh gọi. Gửi chúng dưới dạng giá trị truy vấn domains, hoặc dưới dạng cơ thể POST khi danh sách quá dài cho một URL.

compare chấp nhận tối đa 20 tên miền và intersect chấp nhận từ 2 đến 10. Intersect trả lời một câu hỏi: trang web nào liên kết đến tất cả các tên miền bạn đặt.

Vì tính phí theo lệnh gọi, các lô lớn hơn luôn rẻ hơn mỗi hàng. Chúng cũng thất bại như một đơn vị. Chia thành các kích thước bạn có thể thử lại.

Danh sách dài có thể nằm trong cơ thể POST. Đọc ok trước bất cứ điều gì khác trong phản hồi, vì một lô bị từ chối không có hàng nào bạn có thể sử dụng.

Đọc JSON mà không có giả định

Trình phân tích cú pháp bị hỏng trên các trường mà một phản hồi để trống. Mã mong đợi mọi khóa trên mọi hàng là dễ vỡ, và một hàng ngắn có thể dừng toàn bộ công việc.

Xem các trường bị thiếu là bình thường

Các trường hàng phụ thuộc vào hành động, vì vậy một trường có mặt trong một danh sách này có thể vắng mặt trong danh sách khác. Gán cho mỗi trường một giá trị mặc định và tiếp tục.

Ghi lại trường nào bị thiếu, không chỉ là có lỗi. Nhật ký đó cho thấy xem lược đồ hoặc mã của bạn đã thay đổi.

Giữ phản hồi thô cho một mẫu

Lưu JSON thô của vài lệnh gọi đầu tiên trong mỗi công việc mới. Khi một số sau đó trông sai, văn bản được lưu giải quyết câu hỏi nhanh hơn trí nhớ.

Lưu mẫu với ngày và tên hành động của nó. Một bản làm mới hàng tháng có nghĩa là cùng một lệnh gọi có thể trả về các hàng khác nhau vào tháng sau.

Các hành động theo gia đình

Gia đìnhCác hành độngSử dụng điển hình
Miễn phídomain, overview, stats, suggestTra cứu nhanh và tự động hoàn thành
Đánh giábulk_dr, compare, dr_distributionLọc danh sách và bộ đối thủ
Liệt kêrefdomains, backlinks, anchors, toppages, anchor_cloudKiểm toán một trang web
Tìm kiếmsearch, keyword, intersectTìm kiếm ai liên kết với một neo nhất định hoặc đến một vài đối thủ
Giới hạn của mục nhập này

Tên trường cấp hàng khác nhau theo hành động và không được liệt kê ở đây. Gọi điểm cuối với một hành động miễn phí trên một tên miền bạn biết và đọc JSON, đó là nguồn có thẩm quyền duy nhất.

Các câu hỏi tham số mà nhà phát triển hỏi

Bốn câu hỏi tham số bao gồm hầu hết tuần đầu tiên với API.

Tôi có cần một khóa cho mọi lệnh gọi không?

Không. Các hành động domain, overview, stats và suggest không cần khóa. Các hành động trả phí cần một khóa, được gửi dưới dạng tham số key hoặc dưới dạng tiêu đề Bearer.

Tôi có thể gửi khóa trong URL không?

Có, tham số key hoạt động trong chuỗi truy vấn. Tiêu đề giữ khóa khỏi địa chỉ chính mình, điều mà nhiều nhóm ưu tiên cho nhật ký và liên kết chia sẻ.

Nếu tôi muốn per trên 5000 thì sao?

Phạm vi được tài liệu hóa là 10 đến 5000. Các giá trị bên ngoài nó nằm ngoài những gì mục nhập này mô tả, vì vậy hãy giữ giá trị trong phạm vi và phân trang cho nhiều hơn.

Chữ cái có quan trọng trong q không?

Tên miền không phân biệt chữ hoa chữ thường, vì vậy hãy chuyển đổi giá trị thành chữ thường trước khi gửi nó. Một cách viết hoa làm cho kết quả dễ so sánh hơn giữa các lần chạy.