Edits history of script submission #5141 for ' Get Domains Rank details (cloudflare)'

  • nativets
    One script reply has been approved by the moderators
    Ap­pro­ved
    type Cloudflare = {
      token: string;
      email: string;
      key: string;
    };
    /**
     * Get Domains Rank details
     * Gets Domains Rank details. 
        Cloudflare provides an ordered rank for the top 100 domains, but for the remainder it only provides ranking buckets
        like top 200 thousand, top one million, etc.. These are available through Radar datasets endpoints.
     */
    export async function main(
      auth: Cloudflare,
      domain: string,
      limit: string | undefined,
      rankingType: "POPULAR" | "TRENDING_RISE" | "TRENDING_STEADY" | undefined,
      name: string | undefined,
      date: string | undefined,
      format: "JSON" | "CSV" | undefined
    ) {
      const url = new URL(
        `https://api.cloudflare.com/client/v4/radar/ranking/domain/${domain}`
      );
      for (const [k, v] of [
        ["limit", limit],
        ["rankingType", rankingType],
        ["name", name],
        ["date", date],
        ["format", format],
      ]) {
        if (v !== undefined && v !== "") {
          url.searchParams.append(k, v);
        }
      }
      const response = await fetch(url, {
        method: "GET",
        headers: {
          "X-AUTH-EMAIL": auth.email,
          "X-AUTH-KEY": auth.key,
          Authorization: "Bearer " + auth.token,
        },
        body: undefined,
      });
      if (!response.ok) {
        const text = await response.text();
        throw new Error(`${response.status} ${text}`);
      }
      return await response.json();
    }
    

    Submitted by hugo697 383 days ago

  • nativets
    type Cloudflare = {
      token: string;
      email: string;
      key: string;
    };
    /**
     * Get Domains Rank details
     * Gets Domains Rank details. 
        Cloudflare provides an ordered rank for the top 100 domains, but for the remainder it only provides ranking buckets
        like top 200 thousand, top one million, etc.. These are available through Radar datasets endpoints.
     */
    export async function main(
      auth: Cloudflare,
      domain: string,
      limit: string | undefined,
      rankingType: "POPULAR" | "TRENDING_RISE" | "TRENDING_STEADY" | undefined,
      name: string | undefined,
      date: string | undefined,
      format: "JSON" | "CSV" | undefined
    ) {
      const url = new URL(
        `https://api.cloudflare.com/client/v4/radar/ranking/domain/${domain}`
      );
      for (const [k, v] of [
        ["limit", limit],
        ["rankingType", rankingType],
        ["name", name],
        ["date", date],
        ["format", format],
      ]) {
        if (v !== undefined && v !== "") {
          url.searchParams.append(k, v);
        }
      }
      const response = await fetch(url, {
        method: "GET",
        headers: {
          "X-AUTH-EMAIL": auth.email,
          "X-AUTH-KEY": auth.key,
          Authorization: "Bearer " + auth.token,
        },
        body: undefined,
      });
      if (!response.ok) {
        const text = await response.text();
        throw new Error(`${response.status} ${text}`);
      }
      return await response.json();
    }
    

    Submitted by hugo697 920 days ago