ARVX Readings API

The Readings API from ARVX — 1 operation(s) for readings.

Operations 1

POST /v1/readings/two-person-fit Read two people from the emails between them #

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/arvx-ai:arvx-ai-readings-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

arvx-ai-readings-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Arvx Ai Readings API
  version: 1.0.0
  contact:
    email: help@arvx.ai
    url: https://developer.arvx.ai/docs
  termsOfService: https://developer.arvx.ai/terms
  description: 'Operations tagged Readings across 2 of this provider''s published API definitions: developer.arvx.ai-openapi.json, arvx-ai-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.arvx.ai
  description: ARVX for Developers
security:
- key: []
- bearer: []
tags:
- name: Readings
paths:
  /v1/readings/two-person-fit:
    post:
      operationId: twoPersonFit
      summary: Read two people from the emails between them
      description: user is the person your tool works for; other is the person they work with. Email addresses are never stored and never sent to an AI model; names are swapped for placeholders, and addresses, links and phone numbers inside the emails are replaced with labels.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReadingRequest'
      responses:
        '200':
          description: The Reading. See https://developer.arvx.ai/sample
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Reading'
        '400':
          description: A field is missing or wrong. error names the field.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: No key, or a key we don't recognize.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '402':
          description: 'Free Readings are used up or paused for today, or the balance is too low. Add funds on your account page. Reasons: free_used, add_funds, free_paused.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: 'The account needs a current statement of intended use, or the key is switched off. error says what to do. Reasons: statement_required, revoked, suspended, inactive.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: 'Too fast (over 30 a minute from one key; wait the seconds in Retry-After) or the account''s daily limit of 1,000 (days end at midnight Eastern time). Reasons: too_fast, daily_limit.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          headers:
            Retry-After:
              schema:
                type: integer
        '503':
          description: 'Readings are paused for now. Try again later. Reasons: paused.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Too few emails, or the emails show too little to read one of the people.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Readings
    servers:
    - url: https://api.arvx.ai
      description: ARVX for Developers
components:
  schemas:
    Error:
      type: object
      required:
      - error
      properties:
        error:
          type: string
          description: A sentence you can show.
        reason:
          type: string
    Email:
      type: object
      required:
      - from
      - body
      properties:
        from:
          type: string
          enum:
          - user
          - other
        body:
          type: string
          maxLength: 20000
        sentAt:
          type: string
          format: date-time
    Other:
      type: object
      required:
      - name
      - email
      description: The person your user works with.
      properties:
        name:
          type: string
          maxLength: 100
          description: Swapped for a placeholder before anything reaches a model.
        email:
          type: string
          format: email
          description: Ties the record to this pair. Never stored, never sent to an AI model.
        title:
          type: string
          maxLength: 150
        company:
          type: string
          maxLength: 150
          description: Switches on company news.
        country:
          type: string
          enum:
          - US
          description: Two-letter code. US switches on U.S. holidays. ARVX reads people in the United States only; any other country is refused.
        city:
          type: string
          description: With state, switches on severe weather warnings.
        state:
          type: string
          minLength: 2
          maxLength: 2
          description: Two-letter code, such as MI.
        scores:
          $ref: '#/components/schemas/Scores'
    Scores:
      type: object
      description: Results from a personality assessment the person agreed to, used as given in place of reading that person from their emails. Each trait 1 to 10, at least 5 of the 9 traits. Leave out traits you don't have. Never results collected for a hiring decision, and never clinical tests.
      properties:
        ocean:
          type: object
          properties:
            extraversion:
              type: integer
              minimum: 1
              maximum: 10
            agreeableness:
              type: integer
              minimum: 1
              maximum: 10
            conscientiousness:
              type: integer
              minimum: 1
              maximum: 10
            openness:
              type: integer
              minimum: 1
              maximum: 10
            emotional_stability:
              type: integer
              minimum: 1
              maximum: 10
        disc:
          type: object
          description: DISC's C goes in calculativeness.
          properties:
            dominance:
              type: integer
              minimum: 1
              maximum: 10
            influence:
              type: integer
              minimum: 1
              maximum: 10
            steadiness:
              type: integer
              minimum: 1
              maximum: 10
            calculativeness:
              type: integer
              minimum: 1
              maximum: 10
    ReadingRequest:
      type: object
      required:
      - user
      - other
      - emails
      properties:
        user:
          $ref: '#/components/schemas/User'
        other:
          $ref: '#/components/schemas/Other'
        emails:
          type: array
          minItems: 1
          maxItems: 200
          description: Oldest first. At least 3 written by the user, and 3 by the other person unless you send their scores. Each person is read from their own latest 20 emails, the first 3,000 characters of each.
          items:
            $ref: '#/components/schemas/Email'
        record:
          type: string
          description: 'From the 2nd Reading on: the record from the last Reading on this pair, unchanged. Opens only for the same account and the same two people; anything else starts the pair fresh, and notes says so.'
    User:
      type: object
      required:
      - name
      - email
      description: The person your tool works for.
      properties:
        name:
          type: string
          maxLength: 100
          description: Swapped for a placeholder before anything reaches a model.
        email:
          type: string
          format: email
          description: Ties the record to this pair. Never stored, never sent to an AI model.
        title:
          type: string
          maxLength: 150
        teamSize:
          type: integer
          minimum: 1
          description: People on the account, counting the user. Without it, a colleague seen in the emails counts as a team.
        company:
          type: string
          maxLength: 150
          description: Lets the Reading tell when the other person is chasing your user's company.
        scores:
          $ref: '#/components/schemas/Scores'
    Area:
      type: string
      enum:
      - clarity
      - cadence
      - responsiveness
      - benchStrength
      - meaningfulMoments
    Reading:
      type: object
      properties:
        reading:
          type: string
          enum:
          - two_person_fit
        statement:
          type: string
          description: A line to show with every Reading.
        areas:
          type: array
          description: 'How this exchange fits this person, area by area: green on target, yellow drifting, red off.'
          items:
            type: object
            properties:
              area:
                $ref: '#/components/schemas/Area'
              color:
                $ref: '#/components/schemas/Color'
        team:
          type: object
          properties:
            status:
              type: string
              enum:
              - team
              - solo
              - team unknown
            note:
              type:
              - string
              - 'null'
              description: For team unknown, says how to switch bench strength on.
        predictions:
          type: array
          maxItems: 3
          description: What we expect next, based on what we see today.
          items:
            type: object
            properties:
              area:
                $ref: '#/components/schemas/Area'
              text:
                type: string
                description: The text to show.
        sinceLast:
          type:
          - string
          - 'null'
          description: What moved since the last Reading on this pair. Empty on a first Reading.
        rightNow:
          type: array
          maxItems: 2
          description: 'What is acting on the other person this week: company news, severe weather, a U.S. holiday.'
          items: {}
        record:
          type: string
          description: Sealed. Only ARVX can open it. Store it with the pair and send it with the next Reading.
        notes:
          type: array
          items:
            type: string
          description: Which lookups were off, and the field that switches each on.
    Color:
      type: string
      enum:
      - green
      - yellow
      - red
      - not applicable
      - not enough evidence
  securitySchemes:
    key:
      type: apiKey
      in: header
      name: x-arvx-key
    bearer:
      type: http
      scheme: bearer
externalDocs:
  url: https://developer.arvx.ai/docs
x-refined-from:
- developer.arvx.ai-openapi.json
- arvx-ai-openapi.json