GetYourJob Users API

The users API from GetYourJob — 3 operation(s) for users.

GitHub OpenAPI

Operations 4

POST /v1/v1/internal/users Create Or Sync User #
GET /v1/v1/internal/users/{user_id}/usage Get User Usage #
PATCH /v1/v1/internal/users/{user_id}/pay-as-you-go Toggle Pay As You Go #
GET /v1/v1/internal/users/{user_id}/pay-as-you-go Get Pay As You Go Status #

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/getyourjob-pro:getyourjob-pro-users-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

getyourjob-pro-users-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: MatchingAgent Users API
  description: 'AI-powered candidate-job matching API.


    ## Features


    - **Match candidates against offers** - Get scored matches with detailed analysis

    - **Explainable results** - Understand why a match is good or bad

    - **Flexible input** - Accept various data formats


    ## MVP Endpoints


    - `POST /v1/match` - Match a candidate against multiple offers

    - `GET /v1/health` - Health check


    ## Coming Soon


    - `POST /v1/enrich` - Enrich candidate profiles with external data

    - `POST /v1/parse-document` - Parse CV/resume documents'
  version: mvp-1.0.0
tags:
- name: Users
paths:
  /v1/v1/internal/users:
    post:
      tags:
      - Users
      summary: Create Or Sync User
      description: 'Create a new user or sync existing user data.


        Called by Next.js after OAuth authentication.

        If user already exists (by email or provider_id), updates their info.


        Args:

        data: User data from OAuth provider

        session: Database session


        Returns:

        User information'
      operationId: create_or_sync_user_v1_v1_internal_users_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUserRequest'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/v1/internal/users/{user_id}/usage:
    get:
      tags:
      - Users
      summary: Get User Usage
      description: 'Get usage statistics for a user.


        Returns current billing period usage.


        Args:

        user_id: User UUID

        auth: Authentication context

        session: Database session


        Returns:

        Usage statistics


        Raises:

        HTTPException: 403 if user tries to access another user''s stats'
      operationId: get_user_usage_v1_v1_internal_users__user_id__usage_get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          title: User Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsageStatsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/v1/internal/users/{user_id}/pay-as-you-go:
    patch:
      tags:
      - Users
      summary: Toggle Pay As You Go
      description: 'Enable or disable pay-as-you-go overflow for a user''s subscription.


        When enabled, allows users to continue using the API beyond their

        monthly quota at pay-as-you-go rates (€0.001/match).


        Args:

        user_id: User UUID

        data: Request with enabled flag

        auth: Authentication context

        session: Database session


        Returns:

        Updated pay-as-you-go status


        Raises:

        HTTPException: 403 if user tries to modify another user''s settings

        HTTPException: 404 if no active subscription found'
      operationId: toggle_pay_as_you_go_v1_v1_internal_users__user_id__pay_as_you_go_patch
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          title: User Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayAsYouGoRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayAsYouGoResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    get:
      tags:
      - Users
      summary: Get Pay As You Go Status
      description: 'Get pay-as-you-go overflow status for a user.


        Args:

        user_id: User UUID

        auth: Authentication context

        session: Database session


        Returns:

        Current pay-as-you-go status


        Raises:

        HTTPException: 403 if user tries to access another user''s settings'
      operationId: get_pay_as_you_go_status_v1_v1_internal_users__user_id__pay_as_you_go_get
      parameters:
      - name: user_id
        in: path
        required: true
        schema:
          type: string
          title: User Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayAsYouGoResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    CreateUserRequest:
      properties:
        email:
          type: string
          format: email
          title: Email
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
        picture_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Picture Url
        provider:
          type: string
          title: Provider
          default: google
        provider_id:
          type: string
          title: Provider Id
      type: object
      required:
      - email
      - provider_id
      title: CreateUserRequest
      description: Request to create or sync a user.
    PayAsYouGoRequest:
      properties:
        enabled:
          type: boolean
          title: Enabled
      type: object
      required:
      - enabled
      title: PayAsYouGoRequest
      description: Request to toggle pay-as-you-go overflow.
    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
    PayAsYouGoResponse:
      properties:
        pay_as_you_go_enabled:
          type: boolean
          title: Pay As You Go Enabled
        message:
          type: string
          title: Message
      type: object
      required:
      - pay_as_you_go_enabled
      - message
      title: PayAsYouGoResponse
      description: Response for pay-as-you-go toggle.
    UserResponse:
      properties:
        id:
          type: string
          title: Id
        email:
          type: string
          title: Email
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
        picture_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Picture Url
        provider:
          type: string
          title: Provider
        created_at:
          type: string
          title: Created At
      type: object
      required:
      - id
      - email
      - name
      - picture_url
      - provider
      - created_at
      title: UserResponse
      description: User information response.
    UsageStatsResponse:
      properties:
        user_id:
          type: string
          title: User Id
        plan_tier:
          type: string
          title: Plan Tier
        monthly_quota:
          anyOf:
          - type: integer
          - type: 'null'
          title: Monthly Quota
        matches_used:
          type: integer
          title: Matches Used
        cost_eur:
          type: number
          title: Cost Eur
        period_start:
          anyOf:
          - type: string
          - type: 'null'
          title: Period Start
        period_end:
          anyOf:
          - type: string
          - type: 'null'
          title: Period End
      type: object
      required:
      - user_id
      - plan_tier
      - monthly_quota
      - matches_used
      - cost_eur
      - period_start
      - period_end
      title: UsageStatsResponse
      description: User usage statistics.