Edits history of script submission #14435 for ' Get user (box)'

  • bun
    One script reply has been approved by the moderators
    Ap­pro­ved
    //native
    type Box = {
      token: string;
    };
    /**
     * Get user
     * Retrieves information about a user in the enterprise.
    
    The application and the authenticated user need to
    have the permission to look up users in the entire
    enterprise.
    
    This endpoint also returns a limited set of information
    for external users who are collaborated on content
    owned by the enterprise for authenticated users with the
    right scopes. In this case, disallowed fields will return
    null instead.
     */
    export async function main(
      auth: Box,
      user_id: string,
      fields: string | undefined,
    ) {
      const url = new URL(`https://api.box.com/2.0/users/${user_id}`);
      for (const [k, v] of [["fields", fields]]) {
        if (v !== undefined && v !== "" && k !== undefined) {
          url.searchParams.append(k, v);
        }
      }
      const response = await fetch(url, {
        method: "GET",
        headers: {
          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 235 days ago