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/yext-content-api-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 email required.
A second provider on the same verified email joins the account you already have.
openapi: 3.0.0
info:
title: Yext Admin Account Settings Content API API
version: '2.0'
servers:
- url: https://api.yextapis.com/v2
security:
- api_key: []
- api-key: []
tags:
- name: Content API
paths:
/accounts/{accountId}/content/{endpoint}/{ids}:
get:
operationId: contentGet
parameters:
- $ref: '#/components/parameters/accountId'
- $ref: '#/components/parameters/endpoint'
- $ref: '#/components/parameters/contentDocIds'
- $ref: '#/components/parameters/v'
tags:
- Content API
summary: 'Content: Get'
description: Retrieve records by ID from a Content Endpoint
responses:
'200':
$ref: '#/components/responses/StreamsResponse'
default:
$ref: '#/components/responses/ErrorResponse'
/accounts/{accountId}/content/{endpoint}:
get:
operationId: contentList
parameters:
- $ref: '#/components/parameters/accountId'
- $ref: '#/components/parameters/endpoint'
- $ref: '#/components/parameters/v'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/pageToken'
tags:
- Content API
summary: 'Content: List'
description: 'List records from a Content Endpoint
Content API provides the ability for a user to filter and sort records
by the contents of an indexed field. The filters and sorting parameters can
be provided as query parameters, in addition to the query parameters
documented here. If no filters are provided, the API returns all the records
(with pagination).
For example, with the parameter **`name=Alice`**, only records where the
field **`name`** has value **`Alice`** will be returned.
Similarly, adding the parameters **`name__in=Alice`** and **`name__in=Bob`**
will result in records with **`name`** equal to **`Alice`** OR **`name`**
equal to **`Bob`** being returned.
### Filters
Filters are supported on Text, Numeric, Date and DateTime fields, although
not all filters are supported by all fields. It is also possible to filter
on an array of strings, or a string field nested in an array of objects. In
this case, the record will be present in the response if one of the field
values in the array matches the filter.
Multiple filters on different fields and different filter types can be
combined in the same query. An indexed field with an object can be filtered
by using the dot notation, for example, **`address.city=Brooklyn`**.
A number of different types of filters are supported.
#### Equals
This can be specified as simple query parameter.
Supported Types: Text, Numeric, Date, DateTime, Fields within Arrays.
*Example:*
Adding **`&name=Alice`** as a query parameter will return records where the
name field matches Alice.
#### Not Equals
This can be specified with the **`neq`** modifier to the query parameter
key.
Supported Types: Text, Numeric, Date, DateTime, Fields within Arrays.
*Example:*
Adding **`&name__neq=Alice`** as a query parameter will return records where
the name field does not match Alice.
#### Equals Any Of
This is basically an `OR` clause for Equals on a given field. This can be
specified with the **`in`** modifier to the query parameter key.
Supported Types: Text, Numeric, Date, DateTime, Fields within Arrays.
*Example:*
Adding **`&name__in=Alice&name__in=Bob`** as a query parameter will return
records where the name field matches either Alice or Bob.
#### Comparison
The following comparison filters are supported:
* Greater Than with the modifier `gt`
* Greater Than Or Equals with the modifier `gte`
* Less Than with the modifier `lt`
* Less Than Or Equals with the modifier `lte`
Supported Types: Numeric, Date, DateTime.
*Example:*
Adding **`&createdDate__gt=2020-11-11&rating__gte=4`** as a query parameter
will return records where the `createdDate` is after `2020-11-11` and the
`rating` field has a value greater than or equal to `4`.
#### GeoSearch
Supports filtering to records for which the specified field is within the supplied radius to the supplied latitude and longitude.
Supported Types: Coordinates (ex: `yextDisplayCoordinate`, `displayCoordinate`, etc.).
GeoSearch queries are constructed by appending a `__geo` comparator to a coordinate field in the request. The details of the GeoSearch must then be included, comma separated, as part of the query value, optionally surrounded by parantheses.
The following parameters are supported:
* The latitude of the point to geosearch from, specified as `lat`
* The longitude of the point to geosearch from, specified as `lon`
* The numeric radius from the point which results will be filtered to, specifed as `radius`
* The unit of measurement for the radius, specified as `unit`. One of `km`, `mi`, `m`, `ft`. Defaults to `mi`
*Example:*
Adding **`&yextDisplayCoordinate__geo=(lat:40.740,lon:-73.987565,radius:50,unit:km)`** as a query parameter
will return records where the `yextDisplayCoordinate` field on the entities is within 50 km of the provided latitude and longitude.
Like all other filters, the field which is being geosearched upon must be specified in the `fieldIndexes` of the endpoint definition.
### Sorting
Content Endpoints support sorting by an indexed field. This can be enabled
by adding the `$sortBy` query parameter with field name as the value.
Optionally, the modifiers `asc` and `desc` can be added to indicate
sorting by ascending and descending orders respectively. If no modifier is
specified, the results will be returned in descending order.
Currently, sorting is only supported on a single field per request.
*Example:*
Adding **`&$sortBy__desc=createdDate`** as a query parameter will return
records with the most recent `createdDate` first.
### Additional Notes on Supported Types
Indexes are supported on String, Numeric, Date and DateTime types. The set
of supported filters for each type is documented in the previous section.
#### String
Content Endpoints support indexing UTF-8 strings with a maximum length of
256 characters.
#### Date and DateTime
* The timezone information on a DateTime, if present, will be stripped away
during indexing, without converting the time to another timezone.
* For indexing, the system expects to get [RFC3339 DateTime
format](https://datatracker.ietf.org/doc/html/rfc3339) for DateTimes and
`YYYY-MM-DD` for Dates.
* For querying, API accepts the following formats: `YYYY-MM-DD`,
`YYYY-MM-DDTHH`, `YYYY-MM-DDTHH:MM` and `YYYY-MM-DDTHH:MM:SS`.
'
responses:
'200':
$ref: '#/components/responses/StreamsResponse'
default:
$ref: '#/components/responses/ErrorResponse'
components:
responses:
StreamsResponse:
description: Content Response
content:
application/json:
schema:
title: ContentResponse
type: object
properties:
meta:
$ref: '#/components/schemas/ResponseMeta'
response:
type: object
required:
- count
properties:
count:
type: integer
description: '
Total number of documents that meet the filter criteria.
'
docs:
type: array
description: Documents containing the data for the relevant Content Endpoint and request.
items:
type: object
nextPageToken:
$ref: '#/components/schemas/NextPageToken'
ErrorResponse:
description: Error Response
content:
application/json:
schema:
title: ErrorResponse
type: object
properties:
meta:
$ref: '#/components/schemas/ResponseMetaWithError'
response:
type: object
parameters:
contentDocIds:
name: ids
in: path
required: true
schema:
type: array
items:
type: string
style: simple
description: 'The Content records to get. Multiple record IDs can be provided separated by commas.
'
v:
name: v
in: query
required: true
schema:
type: string
description: A date in `YYYYMMDD` format.
endpoint:
name: endpoint
in: path
required: true
schema:
type: string
description: The ID of the Content Endpoint to query.
accountId:
name: accountId
in: path
required: true
schema:
type: string
pageToken:
name: pageToken
in: query
schema:
type: string
required: false
description: 'If a response to a previous request contained the **`nextPageToken`** field, pass that field''s value as the **`pageToken`** parameter to retrieve the next page of data.
'
limit:
name: limit
in: query
schema:
type: integer
default: 10
maximum: 50
description: Number of results to return.
schemas:
NextPageToken:
type: string
description: "This field is only included if there is an additional page of data to display. To retrieve the next page of data, pass this field's value as the **``pageToken``** parameter in a subsequent request. \n"
ResponseMeta:
type: object
properties:
uuid:
type: string
example: 4f72b877-e2d0-4de4-9324-b9cf2c03e1a0
description: Unique ID for this request / response.
ResponseError:
type: object
properties:
name:
type: string
code:
type: integer
description: 'Code that uniquely identifies the error or warning.
'
type:
type: string
enum:
- FATAL_ERROR
- NON_FATAL_ERROR
- WARNING
message:
type: string
description: Message explaining the problem.
ResponseMetaWithError:
allOf:
- $ref: '#/components/schemas/ResponseMeta'
- type: object
properties:
errors:
type: array
description: List of errors and warnings.
items:
$ref: '#/components/schemas/ResponseError'
securitySchemes:
api_key:
type: apiKey
name: api_key
in: query
api-key:
type: apiKey
name: api-key
in: header