---
title: "Poll GitHub lookup results"
method: POST
path: "/v1/github-lookup/poll"
tags: ["GitHub"]
---

# Poll GitHub lookup results

`POST /v1/github-lookup/poll`

Poll for the results of a GitHub lookup task. Returns progress breakdown and all completed results in a single response (no pagination).

<span>⚡ <strong>Rate limit:</strong> 120 requests per 1 minute</span>

## Request body

- object
  - `apiKey` string, required — Your Fiber API key
  - `githubAgentRunId` string, required — The ID of the GitHub lookup agent run which you got back from the trigger endpoint.

## Response `200`

Default Response

- object
  - `output` object, required
    - `githubAgentRunId` string, required — The ID of the GitHub lookup run these results belong to.
    - `overallStatus` 'NOT_STARTED' | 'STARTED' | 'DONE' | 'FAILED', required — The overall status of the lookup run.
    - `counts` object, required — Breakdown of lookup progress. All fields sum to the total number of people in the run.
      - `total` integer, required — Total number of people submitted in this run.
      - `found` integer, required — Number of people for whom a GitHub profile was found.
      - `notFound` integer, required — Number of people for whom no GitHub profile could be found after searching.
      - `invalidInput` integer, required — Number of people whose input could not be resolved (e.g. unresolvable LinkedIn URL, insufficient information).
      - `failed` integer, required — Number of people whose lookup failed due to a system error.
      - `pending` integer, required — Number of people still waiting to be processed.
    - `people` object[], required — All processed people sorted by outcome (found first). Pending people are not included.
      - `person` object, required — The original input person.
        - `fullName` string, required — The full name of the person.
        - `company` string, nullable — Company provided in the original input.
        - `jobTitle` string, nullable — Job title provided in the original input.
        - `workEmail` string, nullable — Work email provided in the original input.
        - `linkedInUrl` string, nullable — LinkedIn URL provided or resolved from the original input.
        - `linkedinUserId` string, nullable — LinkedIn numeric user ID if provided in the original input.
        - `customerProvidedId` string, nullable — The external ID echoed back from the input for joining results to the original dataset.
      - `githubProfile` union, required — The GitHub lookup result for this person.
        - object
          - `outcome` 'found', required
          - `username` string, required — The GitHub username (login) for the matched profile.
          - `githubUrl` string, uri, required — The GitHub profile URL.
          - `displayName` string, nullable — The user's display name on GitHub.
          - `profilePictureUrl` string, uri, nullable — URL to the user's GitHub profile picture.
          - `bio` string, nullable — One-line summary below the person's name on GitHub.
          - `location` string, nullable — Location as displayed on the GitHub profile.
          - `numRepositories` integer, nullable — Number of public repositories.
          - `numFollowers` integer, nullable — Number of followers on GitHub.
          - `confidenceOutOf10` integer, required — Confidence score between 1 and 10 denoting the match quality.
          - `rationale` string, nullable — Short explanation of why this GitHub profile was matched to the person, referencing details like name, company, or location.
        - object
          - `outcome` 'notFound', required
          - `message` string, required — A user-facing explanation of why no profile was found.
        - object
          - `outcome` 'invalidInput', required
          - `message` string, required — A user-facing explanation of why the lookup could not proceed.
        - object
          - `outcome` 'failed', required
          - `message` string, required — A user-facing explanation of the failure.
  - `chargeInfo` union, required
    - object — Credits were charged immediately for this operation
      - `method` 'charged-now', required
      - `creditsCharged` number, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits will be charged after the operation completes
      - `method` 'charging-later', required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits that were charged for an asynchronous operation
      - `method` 'charged-for-async-process', required
      - `creditsCharged` number, required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — No credits were charged for this operation
      - `method` 'free', required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
    - object — Credits were refunded for this operation
      - `method` 'credits-refunded', required
      - `creditsRefunded` number, required
      - `message` string, required
      - `lowCreditAlert` object, nullable — Contains a link to get more credits, a warning message, and the remaining credit count.
        - `getMoreCreditsUrl` string, uri, required — URL to top up credits or restart billing cycle to get fresh credits.
        - `message` string, required — Human-readable credits warning.
        - `availableCredits` number, required — Number of credits remaining in the current billing period.
  - `warnings` object[], nullable — Warnings about extraneous fields in request
    - `field` string, required — Full path to extraneous field (e.g., 'searchParams.ExtraField')
    - `message` string, required — Warning message
  - `advice` string[], nullable — Tips, recommendations, and suggestions for using this API effectively.

## Other responses

- `400` — Default Response
- `401` — Default Response
- `402` — Default Response
- `403` — Default Response
- `404` — Default Response
- `422` — Default Response
- `429` — Default Response
- `500` — Default Response
- `503` — Default Response

---

[API](https://skmtc.net/fiber/apis/fiber-ai-api.md) · [All operations](https://skmtc.net/fiber/apis/fiber-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fiber/fiber-ai-api/versions/0c537984b99f/schema)
