Affectiva · OpenAPI Overlay 1.0.0
API Evangelist enhancements — Affectiva EaaS entries
18 actions
18 updates
documentation
extends
openapi/affectiva-eaas-entries.json
Derived by API Evangelist
Built from the contracts Affectiva publishes. Affectiva did not publish this file.
What the actions change
operationIdresponsescontactx-api-evangelist-notehostx-observed-base-url
Targets 10
$.info
$
$.paths['/entries'].post
$.paths['/entries/{entryID}'].get
$.paths['/entries/{entryID}'].put
$.paths['/entries/{entryID}'].delete
$.paths['/entries/search_by_annotation'].get
$.paths['/entries/{entryID}/annotations'].post
$.paths['/entries/{entryID}/annotations/{annotationID}'].put
$.paths['/entries/{entryID}/annotations/{annotationID}'].delete
OpenAPI Overlay
overlay: 1.0.0
info:
title: API Evangelist enhancements — Affectiva EaaS entries
version: 1.0.0
extends: openapi/affectiva-eaas-entries.json
x-generated: '2026-09-12'
x-method: generated
x-source: openapi/affectiva-eaas-entries.json
x-note: Non-destructive enhancements to the verbatim Affectiva contract. The published document ships no operationIds,
no host, no contact and no 401 response even though every operation is behind HTTP Basic. These actions record
what we observed; the original is never mutated.
actions:
- target: $.info
description: Name the operator and the live host the contract omits.
update:
contact:
name: Affectiva (Smart Eye / iMotions)
url: https://www.affectiva.com/contact-us/
x-api-evangelist-note: Contract harvested verbatim from https://index.affectiva.com/swagger/templates/entries.json
on 2026-09-12.
- target: $
description: Record the host the Swagger UI actually calls; the published document sets only basePath "/".
update:
host: index.affectiva.com
x-observed-base-url: https://index.affectiva.com
- target: $.paths['/entries'].post
description: Add the missing operationId for POST /entries.
update:
operationId: create_entries
- target: $.paths['/entries'].post
description: Declare the 401 the live API actually returns; the published contract omits it on every operation.
update:
responses:
'401':
description: Unauthorized. HTTP Basic credentials required; realm "Affectiva Facial Coding API". Observed
live 2026-09-12.
- target: $.paths['/entries/{entryID}'].get
description: Add the missing operationId for GET /entries/{entryID}.
update:
operationId: get_entries
- target: $.paths['/entries/{entryID}'].get
description: Declare the 401 the live API actually returns; the published contract omits it on every operation.
update:
responses:
'401':
description: Unauthorized. HTTP Basic credentials required; realm "Affectiva Facial Coding API". Observed
live 2026-09-12.
- target: $.paths['/entries/{entryID}'].put
description: Add the missing operationId for PUT /entries/{entryID}.
update:
operationId: update_entries
- target: $.paths['/entries/{entryID}'].put
description: Declare the 401 the live API actually returns; the published contract omits it on every operation.
update:
responses:
'401':
description: Unauthorized. HTTP Basic credentials required; realm "Affectiva Facial Coding API". Observed
live 2026-09-12.
- target: $.paths['/entries/{entryID}'].delete
description: Add the missing operationId for DELETE /entries/{entryID}.
update:
operationId: delete_entries
- target: $.paths['/entries/{entryID}'].delete
description: Declare the 401 the live API actually returns; the published contract omits it on every operation.
update:
responses:
'401':
description: Unauthorized. HTTP Basic credentials required; realm "Affectiva Facial Coding API". Observed
live 2026-09-12.
- target: $.paths['/entries/search_by_annotation'].get
description: Add the missing operationId for GET /entries/search_by_annotation.
update:
operationId: list_entries_search_by_annotation
- target: $.paths['/entries/search_by_annotation'].get
description: Declare the 401 the live API actually returns; the published contract omits it on every operation.
update:
responses:
'401':
description: Unauthorized. HTTP Basic credentials required; realm "Affectiva Facial Coding API". Observed
live 2026-09-12.
- target: $.paths['/entries/{entryID}/annotations'].post
description: Add the missing operationId for POST /entries/{entryID}/annotations.
update:
operationId: create_entries_annotations
- target: $.paths['/entries/{entryID}/annotations'].post
description: Declare the 401 the live API actually returns; the published contract omits it on every operation.
update:
responses:
'401':
description: Unauthorized. HTTP Basic credentials required; realm "Affectiva Facial Coding API". Observed
live 2026-09-12.
- target: $.paths['/entries/{entryID}/annotations/{annotationID}'].put
description: Add the missing operationId for PUT /entries/{entryID}/annotations/{annotationID}.
update:
operationId: update_entries_annotations
- target: $.paths['/entries/{entryID}/annotations/{annotationID}'].put
description: Declare the 401 the live API actually returns; the published contract omits it on every operation.
update:
responses:
'401':
description: Unauthorized. HTTP Basic credentials required; realm "Affectiva Facial Coding API". Observed
live 2026-09-12.
- target: $.paths['/entries/{entryID}/annotations/{annotationID}'].delete
description: Add the missing operationId for DELETE /entries/{entryID}/annotations/{annotationID}.
update:
operationId: delete_entries_annotations
- target: $.paths['/entries/{entryID}/annotations/{annotationID}'].delete
description: Declare the 401 the live API actually returns; the published contract omits it on every operation.
update:
responses:
'401':
description: Unauthorized. HTTP Basic credentials required; realm "Affectiva Facial Coding API". Observed
live 2026-09-12.
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.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 overlay
curl "https://apis.io/api/v1/overlays/affectiva-eaas-entries-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.