HitApply Admin API

The Admin API from HitApply — 22 operation(s) for admin.

GitHub OpenAPI

Operations 22

GET /api/admin/auto-apply/runs Admin Auto Apply Runs #
GET /api/admin/auto-apply/runs/{run_id}/log Admin Auto Apply Log #
GET /api/admin/auto-apply/runs/{run_id}/recording Admin Auto Apply Recording #
PATCH /api/admin/users/{target_user_id}/plan Admin Set Plan #
GET /api/admin/flags Admin Flag Count #
GET /api/admin/users/{target_user_id}/usage Admin User Usage #
GET /api/admin/me Admin Me #
GET /api/admin/egress Admin Egress #
GET /api/admin/users Admin List Users #
PATCH /api/admin/users/{target_user_id} Admin Update User #
POST /api/admin/users/{target_user_id}/assistants Admin Pause Assistants #
DELETE /api/admin/users/{target_user_id}/key Admin Revoke Key #
POST /api/admin/invite Admin Invite #
GET /api/admin/description-enrichment Admin Description Enrichment #
GET /api/admin/notifications Admin Notifications #
GET /api/admin/beta-requests Admin List Beta Requests #
GET /api/admin/public-board-clicks Admin Public Board Clicks #
POST /api/admin/beta-requests/{request_id}/invite Admin Invite Beta Request #
DELETE /api/admin/beta-requests/{request_id} Admin Dismiss Beta Request #
GET /api/admin/feedback Admin List Feedback #
PATCH /api/admin/feedback/{feedback_id} Admin Set Feedback Resolved #
POST /api/admin/users/{target_user_id}/llm-config Admin Set User Key #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/hitapply-app:hitapply-app-admin-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

hitapply-app-admin-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fast Admin API
  version: 0.1.0
tags:
- name: Admin
paths:
  /api/admin/auto-apply/runs:
    get:
      summary: Admin Auto Apply Runs
      description: Every user's runs of the last 30 days, and the canary's state per ATS (#1031).
      operationId: admin_auto_apply_runs_api_admin_auto_apply_runs_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/auto-apply/runs/{run_id}/log:
    get:
      summary: Admin Auto Apply Log
      operationId: admin_auto_apply_log_api_admin_auto_apply_runs__run_id__log_get
      parameters:
      - name: run_id
        in: path
        required: true
        schema:
          type: string
          title: Run Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/auto-apply/runs/{run_id}/recording:
    get:
      summary: Admin Auto Apply Recording
      description: A short-lived link to any user's recording; each opening is recorded on the run (#1031).
      operationId: admin_auto_apply_recording_api_admin_auto_apply_runs__run_id__recording_get
      parameters:
      - name: run_id
        in: path
        required: true
        schema:
          type: string
          title: Run Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/users/{target_user_id}/plan:
    patch:
      summary: Admin Set Plan
      operationId: admin_set_plan_api_admin_users__target_user_id__plan_patch
      parameters:
      - name: target_user_id
        in: path
        required: true
        schema:
          type: string
          title: Target User Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminPlanBody'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/flags:
    get:
      summary: Admin Flag Count
      description: 'How many users a limit flagged in the last week: the badge on Settings › Administration.'
      operationId: admin_flag_count_api_admin_flags_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/users/{target_user_id}/usage:
    get:
      summary: Admin User Usage
      operationId: admin_user_usage_api_admin_users__target_user_id__usage_get
      parameters:
      - name: target_user_id
        in: path
        required: true
        schema:
          type: string
          title: Target User Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/me:
    get:
      summary: Admin Me
      description: Lets the web app show/hide the admin UI for the current user.
      operationId: admin_me_api_admin_me_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/egress:
    get:
      summary: Admin Egress
      description: 'Aggregated outbound-byte counters for this process (see worker/egress.py).


        Counts and sizes only. The SQL figures are application-level estimates counted before

        execution, not billed bytes and not a guaranteed lower bound on them — worker/egress.py lists

        what they miss. Each instance keeps its own set in memory, so sum across instances and treat

        `process_started_at` moving as "this window is void, the process restarted".


        `?reset=true` reads and zeroes atomically, which is how you bound a measurement window:

        read-and-reset at the top of the hour, read again at the end.'
      operationId: admin_egress_api_admin_egress_get
      parameters:
      - name: reset
        in: query
        required: false
        schema:
          type: boolean
          default: false
          title: Reset
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/users:
    get:
      summary: Admin List Users
      operationId: admin_list_users_api_admin_users_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/users/{target_user_id}:
    patch:
      summary: Admin Update User
      description: 'Set a user''s tags (admin-only, in Supabase app_metadata), or suspend / unsuspend them.

        A suspended account can''t sign in or refresh a session, its assistants are refused

        (mcp_store._account_available), and it gets no new job alerts (notifications.run_checks).'
      operationId: admin_update_user_api_admin_users__target_user_id__patch
      parameters:
      - name: target_user_id
        in: path
        required: true
        schema:
          type: string
          title: Target User Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminUserBody'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/users/{target_user_id}/assistants:
    post:
      summary: Admin Pause Assistants
      description: 'Pause or resume a user''s assistants (#905), like suspend but for MCP only. Every tool then

        tells the assistant to contact support; the user can''t lift it, and resuming clears any pause.'
      operationId: admin_pause_assistants_api_admin_users__target_user_id__assistants_post
      parameters:
      - name: target_user_id
        in: path
        required: true
        schema:
          type: string
          title: Target User Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminAssistantsBody'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/users/{target_user_id}/key:
    delete:
      summary: Admin Revoke Key
      description: 'Remove the OpenRouter key a user pasted, from HitApply only (it belongs to their own

        OpenRouter account). They fall back to the server key and their credits.'
      operationId: admin_revoke_key_api_admin_users__target_user_id__key_delete
      parameters:
      - name: target_user_id
        in: path
        required: true
        schema:
          type: string
          title: Target User Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/invite:
    post:
      summary: Admin Invite
      operationId: admin_invite_api_admin_invite_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InviteBody'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/description-enrichment:
    get:
      summary: Admin Description Enrichment
      description: Safe backlog and resolver health; descriptions and URLs never leave this endpoint.
      operationId: admin_description_enrichment_api_admin_description_enrichment_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/notifications:
    get:
      summary: Admin Notifications
      description: Safe queue health only; no tenant content or destination configuration.
      operationId: admin_notifications_api_admin_notifications_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/beta-requests:
    get:
      summary: Admin List Beta Requests
      operationId: admin_list_beta_requests_api_admin_beta_requests_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/public-board-clicks:
    get:
      summary: Admin Public Board Clicks
      operationId: admin_public_board_clicks_api_admin_public_board_clicks_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/beta-requests/{request_id}/invite:
    post:
      summary: Admin Invite Beta Request
      operationId: admin_invite_beta_request_api_admin_beta_requests__request_id__invite_post
      parameters:
      - name: request_id
        in: path
        required: true
        schema:
          type: string
          title: Request Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/beta-requests/{request_id}:
    delete:
      summary: Admin Dismiss Beta Request
      operationId: admin_dismiss_beta_request_api_admin_beta_requests__request_id__delete
      parameters:
      - name: request_id
        in: path
        required: true
        schema:
          type: string
          title: Request Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/feedback:
    get:
      summary: Admin List Feedback
      operationId: admin_list_feedback_api_admin_feedback_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Admin
  /api/admin/feedback/{feedback_id}:
    patch:
      summary: Admin Set Feedback Resolved
      operationId: admin_set_feedback_resolved_api_admin_feedback__feedback_id__patch
      parameters:
      - name: feedback_id
        in: path
        required: true
        schema:
          type: string
          title: Feedback Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FeedbackResolvedBody'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
  /api/admin/users/{target_user_id}/llm-config:
    post:
      summary: Admin Set User Key
      description: Admin sets (or updates the model of) another user's OpenRouter key.
      operationId: admin_set_user_key_api_admin_users__target_user_id__llm_config_post
      parameters:
      - name: target_user_id
        in: path
        required: true
        schema:
          type: string
          title: Target User Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminKeyBody'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Admin
components:
  schemas:
    AdminAssistantsBody:
      properties:
        paused:
          type: boolean
          title: Paused
      type: object
      required:
      - paused
      title: AdminAssistantsBody
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    AdminKeyBody:
      properties:
        api_key:
          anyOf:
          - type: string
          - type: 'null'
          title: Api Key
        model:
          type: string
          title: Model
      type: object
      required:
      - model
      title: AdminKeyBody
    InviteBody:
      properties:
        email:
          type: string
          title: Email
      type: object
      required:
      - email
      title: InviteBody
    FeedbackResolvedBody:
      properties:
        resolved:
          type: boolean
          title: Resolved
      type: object
      required:
      - resolved
      title: FeedbackResolvedBody
    AdminPlanBody:
      properties:
        plan:
          anyOf:
          - type: string
            enum:
            - free
            - founding
            - plus
            - pro
          - type: 'null'
          title: Plan
        pro_until:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Pro Until
        ai_suspended:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Ai Suspended
      type: object
      title: AdminPlanBody
    AdminUserBody:
      properties:
        tags:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Tags
        suspended:
          anyOf:
          - type: boolean
          - type: 'null'
          title: Suspended
      type: object
      title: AdminUserBody