evictionsapi-com Intake API

The Intake API from evictionsapi-com — 4 operation(s) for intake.

Operations 6

GET /v1/intake/address The organization's email intake address, `cases+@`: email sent to it by a… #
POST /v1/intake/address/rotate Replace the organization's email intake address with a new one. #
GET /v1/intake/files List the files waiting in the organization's intake inbox, oldest first: files… #
POST /v1/intake/files Keep a file in the organization's intake inbox until a case is started: a PDF… #
GET /v1/intake/files/{id} Download a waiting file of the intake inbox. #
DELETE /v1/intake/files/{id} Delete a waiting file of the intake inbox. Live only #

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/evictionsapi-com:evictionsapi-com-intake-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

evictionsapi-com-intake-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Evictionsapi Com Intake API
  version: 0.0.0
  contact:
    email: hello@evictionsapi.com
  description: 'Operations tagged Intake across 3 of this provider''s published API definitions: api.evictionsapi.com.json, evictionsapi-com-api-evictions-openapi.json, evictionsapi-com-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.evictionsapi.com
tags:
- name: Intake
paths:
  /v1/intake/address:
    get:
      summary: 'The organization''s email intake address, `cases+@`: email sent to it by a…'
      security:
      - ApiKey: []
      - SessionToken: []
      responses:
        '200':
          description: The address.
          content:
            application/json:
              schema:
                type: object
                required:
                - address
                properties:
                  address:
                    type: string
                    format: email
        '400':
          description: The request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The credential is missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: 'The credential is not allowed to do this (`forbidden`). For a signed-in session: `permission_denied`, the person''s role in the organization lacks the permission this needs (ask an owner); `no_organization`, the person belongs to no organization yet (start one with `POST /v1/me/organizations` or accept an invitation).'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: '`not_configured`: email intake is not set up on this server.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'The request conflicts with the current state: for a case, it is not in a state that allows this, or its details were erased (`erased`); for an API key, a limit or the key in use.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: The case did not pass a check.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Intake
      operationId: getV1IntakeAddress
      x-operation-id-source: derived
    servers:
    - url: https://api.evictionsapi.com
  /v1/intake/address/rotate:
    post:
      summary: Replace the organization's email intake address with a new one.
      security:
      - SessionToken: []
      responses:
        '200':
          description: The new address.
          content:
            application/json:
              schema:
                type: object
                required:
                - address
                properties:
                  address:
                    type: string
                    format: email
        '400':
          description: The request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The credential is missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: 'The credential is not allowed to do this (`forbidden`). For a signed-in session: `permission_denied`, the person''s role in the organization lacks the permission this needs (ask an owner); `no_organization`, the person belongs to no organization yet (start one with `POST /v1/me/organizations` or accept an invitation).'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: '`not_configured`: email intake is not set up on this server.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'The request conflicts with the current state: for a case, it is not in a state that allows this, or its details were erased (`erased`); for an API key, a limit or the key in use.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: The case did not pass a check.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Intake
      operationId: postV1IntakeAddressRotate
      x-operation-id-source: derived
    servers:
    - url: https://api.evictionsapi.com
  /v1/intake/files:
    get:
      summary: 'List the files waiting in the organization''s intake inbox, oldest first: files…'
      security:
      - ApiKey: []
      - SessionToken: []
      responses:
        '200':
          description: The waiting files, without their contents.
          content:
            application/json:
              schema:
                type: object
                required:
                - items
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/IntakeFile'
        '400':
          description: The request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The credential is missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: 'The credential is not allowed to do this (`forbidden`). For a signed-in session: `permission_denied`, the person''s role in the organization lacks the permission this needs (ask an owner); `no_organization`, the person belongs to no organization yet (start one with `POST /v1/me/organizations` or accept an invitation).'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'The request conflicts with the current state: for a case, it is not in a state that allows this, or its details were erased (`erased`); for an API key, a limit or the key in use.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: The case did not pass a check.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Intake
      operationId: getV1IntakeFiles
      x-operation-id-source: derived
    post:
      summary: 'Keep a file in the organization''s intake inbox until a case is started: a PDF…'
      security:
      - ApiKey: []
      - SessionToken: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                filename:
                  type: string
                  minLength: 1
                  maxLength: 255
                purpose:
                  type: string
                  enum:
                  - lease
                  - ledger
                  - correspondence
                  - other
                note:
                  type: string
                  minLength: 1
                  maxLength: 500
                contentBase64:
                  type: string
                  minLength: 1
                  maxLength: 5592408
              required:
              - filename
              - contentBase64
              additionalProperties: false
      responses:
        '201':
          description: 'The stored file, without its name or note: the list gives them back while the file waits.'
          content:
            application/json:
              schema:
                type: object
                required:
                - id
                - source
                - contentType
                - purposeGuess
                - receivedAt
                - expiresAt
                properties:
                  id:
                    type: string
                  source:
                    enum:
                    - email
                    - agent
                  contentType:
                    enum:
                    - application/pdf
                    - image/jpeg
                    - image/png
                  purposeGuess:
                    enum:
                    - lease
                    - ledger
                    - correspondence
                    - other
                  receivedAt:
                    type: string
                    format: date-time
                  expiresAt:
                    type: string
                    format: date-time
        '400':
          description: The request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The credential is missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: 'The credential is not allowed to do this (`forbidden`). For a signed-in session: `permission_denied`, the person''s role in the organization lacks the permission this needs (ask an owner); `no_organization`, the person belongs to no organization yet (start one with `POST /v1/me/organizations` or accept an invitation).'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: '`inbox_full`: the inbox already holds 50 waiting files. Start a case from them, or remove some, and send again.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '413':
          description: '`too_large`: the file is over 4 MB.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '415':
          description: '`unsupported_media_type`: the file is not a PDF, JPEG or PNG, decided from its contents.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: '`live_only`: a test key; the intake inbox is live only.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: '`rate_limited`: at most 60 files an hour per organization. `Retry-After` gives the seconds to wait.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Intake
      operationId: postV1IntakeFiles
      x-operation-id-source: derived
    servers:
    - url: https://api.evictionsapi.com
  /v1/intake/files/{id}:
    get:
      summary: Download a waiting file of the intake inbox.
      security:
      - ApiKey: []
      - SessionToken: []
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: 'The file''s bytes, with the stored `Content-Type`: `application/pdf`, `image/jpeg` or `image/png`, or `text/plain; charset=utf-8` for the text of a forwarded email, as an attachment.'
          content:
            application/pdf:
              schema:
                type: string
                format: binary
        '400':
          description: The request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The credential is missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: 'The credential is not allowed to do this (`forbidden`). For a signed-in session: `permission_denied`, the person''s role in the organization lacks the permission this needs (ask an owner); `no_organization`, the person belongs to no organization yet (start one with `POST /v1/me/organizations` or accept an invitation).'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'The request conflicts with the current state: for a case, it is not in a state that allows this, or its details were erased (`erased`); for an API key, a limit or the key in use.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: The case did not pass a check.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Intake
      operationId: getV1IntakeFilesById
      x-operation-id-source: derived
    delete:
      summary: Delete a waiting file of the intake inbox. Live only
      security:
      - ApiKey: []
      - SessionToken: []
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: The file is deleted.
        '400':
          description: The request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The credential is missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: 'The credential is not allowed to do this (`forbidden`). For a signed-in session: `permission_denied`, the person''s role in the organization lacks the permission this needs (ask an owner); `no_organization`, the person belongs to no organization yet (start one with `POST /v1/me/organizations` or accept an invitation).'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: 'The request conflicts with the current state: for a case, it is not in a state that allows this, or its details were erased (`erased`); for an API key, a limit or the key in use.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: The case did not pass a check.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Intake
      operationId: deleteV1IntakeFilesById
      x-operation-id-source: derived
    servers:
    - url: https://api.evictionsapi.com
components:
  schemas:
    IntakeFile:
      type: object
      description: 'A file waiting in the organization''s intake inbox for a case: a PDF, JPEG or PNG the customer already has, or the plain text of a forwarded email. It waits 30 days, then is deleted unless it was moved onto a case.'
      required:
      - id
      - source
      - filename
      - contentType
      - purposeGuess
      - note
      - receivedAt
      - expiresAt
      properties:
        id:
          type: string
        source:
          enum:
          - email
          - agent
          description: 'How it arrived: forwarded by email, or sent through the API (an AI agent or an integration).'
        filename:
          type: string
        contentType:
          enum:
          - application/pdf
          - image/jpeg
          - image/png
          - text/plain
          description: Decided from the file's first bytes, never from its name. `text/plain` only for the text of a forwarded email, stored by us.
        purposeGuess:
          enum:
          - lease
          - ledger
          - correspondence
          - other
          description: 'What the file is probably for: as sent, or guessed from its name. Confirmed when it is moved onto a case.'
        note:
          type:
          - string
          - 'null'
          description: The email's subject or the sender's note; null when none.
        receivedAt:
          type: string
          format: date-time
        expiresAt:
          type: string
          format: date-time
          description: When the file is deleted if it has not been moved onto a case.
    Error:
      type: object
      required:
      - error
      properties:
        error:
          type: object
          required:
          - code
          - message
          - details
          properties:
            code:
              type: string
            message:
              type: string
            details: {}
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      description: An organization API key (`eak_test_...` or `eak_live_...`).
    SessionToken:
      type: http
      scheme: bearer
      description: 'A session token (`ess_...`) from `POST /v1/auth/signup` or `/v1/auth/login`, valid for 30 days. On the case, webhook, API key and organization routes it acts for the organization the session is in (`POST /v1/me/organization` switches it) in the mode named by the `X-Evictions-Mode` header: `test` (the default) or `live`.'
    AttorneyToken:
      type: http
      scheme: bearer
      description: A user token (`eut_...`) of a verified attorney.
externalDocs:
  url: https://evictionsapi.com/docs
x-refined-from:
- api.evictionsapi.com.json
- evictionsapi-com-api-evictions-openapi.json
- evictionsapi-com-openapi.json