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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/perchwell-member-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
openapi: 3.2.0
info:
title: Perchwell RESO Web Member API
version: v2
description: Perchwell's RESO Web API is a RESO Data Dictionary certified, OData 4.01 interface for transferring real estate data.
contact:
name: Perchwell Support
email: support@perchwell.com
url: https://docs.perchwell.com
servers:
- url: https://www.perchwell.com/api/v2/OData/{system}
description: Production (system is the originating system identifier)
variables:
system:
default: system
description: The originating system identifier for the MLS/dataset.
security:
- bearerAuth: []
tags:
- name: Member
description: RESO Member resource (agents).
paths:
/Member:
get:
operationId: queryMember
summary: Query Member records
tags:
- Member
parameters:
- $ref: '#/components/parameters/filter'
- $ref: '#/components/parameters/top'
- $ref: '#/components/parameters/skip'
- $ref: '#/components/parameters/select'
responses:
'200':
description: A collection of Member records.
content:
application/json:
schema:
$ref: '#/components/schemas/MemberCollection'
post:
operationId: createMember
summary: Create a Member record
tags:
- Member
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
responses:
'201':
description: Member created.
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
/Member('{id}'):
get:
operationId: getMember
summary: Get a Member by MemberKey
tags:
- Member
parameters:
- $ref: '#/components/parameters/id'
responses:
'200':
description: The Member record.
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
patch:
operationId: updateMember
summary: Update a Member by MemberKey
tags:
- Member
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
responses:
'200':
description: The updated Member record.
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
components:
parameters:
id:
name: id
in: path
required: true
description: The resource primary key value.
schema:
type: string
filter:
name: $filter
in: query
required: false
description: OData filter expression restricting returned items.
schema:
type: string
select:
name: $select
in: query
required: false
description: Comma-separated list of resource elements to return.
schema:
type: string
skip:
name: $skip
in: query
required: false
description: Number of matching items to skip (default 0).
schema:
type: integer
default: 0
top:
name: $top
in: query
required: false
description: Maximum number of matching items to return (default 10, max 200).
schema:
type: integer
default: 10
maximum: 200
schemas:
Member:
type: object
description: RESO Member resource (agent).
properties:
MemberKey:
type: string
MemberFirstName:
type: string
MemberLastName:
type: string
MemberMiddleName:
type: string
MemberEmail:
type: string
MemberAddress1:
type: string
MemberCity:
type: string
MemberStateOrProvince:
type: string
MemberPostalCode:
type: string
MemberOfficePhone:
type: string
MemberStateLicense:
type: string
MemberStatus:
type: string
OfficeKey:
type: string
ModificationTimestamp:
type: string
format: date-time
MemberCollection:
type: object
properties:
'@odata.context':
type: string
'@odata.count':
type: integer
value:
type: array
items:
$ref: '#/components/schemas/Member'
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: Simple token authentication via the Authorization Bearer header.