The Things Network / The Things Stack · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Things Stack — Identity Server Entity Registry Search API
11 actions
11 updates
phrasing
extends
openapi/the-things-network-entityregistrysearch-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for The Things Network / The Things Stack's API. It is a proposal applied on top of the contract, not a document The Things Network / The Things Stack publishes.
What the actions change
x-apievangelist-phrasing
Targets 11
$.info
$.paths['/applications/{application_ids.application_id}/collaborators/search'].get
$.paths['/clients/{client_ids.client_id}/collaborators/search'].get
$.paths['/gateways/{gateway_ids.gateway_id}/collaborators/search'].get
$.paths['/organizations/{organization_ids.organization_id}/collaborators/search'].get
$.paths['/search/accounts'].get
$.paths['/search/applications'].get
$.paths['/search/clients'].get
$.paths['/search/gateways'].get
$.paths['/search/organizations'].get
$.paths['/search/users'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Things Stack — Identity Server Entity Registry Search API
version: 1.0.0
extends: openapi/the-things-network-entityregistrysearch-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 10
- target: $.paths['/applications/{application_ids.application_id}/collaborators/search'].get
update:
x-apievangelist-phrasing:
intent: Search accounts to add to an application
effect: read
questions:
- How do I find a user or organization to add as a collaborator on my application?
- Can I exclude people who are already collaborators on the application?
instructions:
- text: Search accounts matching {query} for application {application_id}.
slots:
query: query.query
application_id: path.application_ids.application_id
- text: Find only users matching {query} who are not yet on application {application_id}, with complement set to {complement}.
slots:
query: query.query
application_id: path.application_ids.application_id
complement: query.complement_collaborators
method: generated
generated: '2026-09-26'
- target: $.paths['/clients/{client_ids.client_id}/collaborators/search'].get
update:
x-apievangelist-phrasing:
intent: Search accounts for an OAuth client
effect: read
questions:
- Can I search for accounts to add as collaborators on an OAuth client?
- Which users match a name when I'm managing a client's members?
instructions:
- text: Search accounts matching {query} for OAuth client {client_id}.
slots:
query: query.query
client_id: path.client_ids.client_id
- text: Find users only, matching {query}, to add to OAuth client {client_id}; only_users {only_users}.
slots:
query: query.query
client_id: path.client_ids.client_id
only_users: query.only_users
method: generated
generated: '2026-09-26'
- target: $.paths['/gateways/{gateway_ids.gateway_id}/collaborators/search'].get
update:
x-apievangelist-phrasing:
intent: Search accounts for a gateway
effect: read
questions:
- How can I look up a user or organization to share my gateway with?
- Can I search only users, not organizations, for a gateway's collaborators?
instructions:
- text: Search accounts matching {query} for gateway {gateway_id}.
slots:
query: query.query
gateway_id: path.gateway_ids.gateway_id
- text: Find only users named like {query} for gateway {gateway_id}, only_users {only_users}.
slots:
query: query.query
gateway_id: path.gateway_ids.gateway_id
only_users: query.only_users
method: generated
generated: '2026-09-26'
- target: $.paths['/organizations/{organization_ids.organization_id}/collaborators/search'].get
update:
x-apievangelist-phrasing:
intent: Search accounts for an organization
effect: read
questions:
- How do I search for people to invite into my organization?
- Can I leave out accounts that are already members of the organization?
instructions:
- text: Search accounts matching {query} for organization {organization_id}.
slots:
query: query.query
organization_id: path.organization_ids.organization_id
- text: Find people matching {query} who are not yet members of organization {organization_id}, complement {complement}.
slots:
query: query.query
organization_id: path.organization_ids.organization_id
complement: query.complement_collaborators
method: generated
generated: '2026-09-26'
- target: $.paths['/search/accounts'].get
update:
x-apievangelist-phrasing:
intent: Search user and organization accounts
effect: read
questions:
- How do I search all user and organization accounts by name?
- Can I search accounts without tying it to a specific entity?
instructions:
- text: Search accounts matching {query}.
slots:
query: query.query
- text: Look up user accounts only matching {query}, only_users {only_users}.
slots:
query: query.query
only_users: query.only_users
method: generated
generated: '2026-09-26'
- target: $.paths['/search/applications'].get
update:
x-apievangelist-phrasing:
intent: Search applications
effect: read
questions:
- Which of my applications have an ID or name containing a word?
- Can I search applications by description text?
- Does application search include deleted applications?
instructions:
- text: Search applications whose name contains {name}.
slots:
name: query.name_contains
- text: Find applications with an ID containing {id}.
slots:
id: query.id_contains
method: generated
generated: '2026-09-26'
- target: $.paths['/search/clients'].get
update:
x-apievangelist-phrasing:
intent: Search OAuth clients
effect: read
questions:
- How do I find OAuth clients by name or ID?
- Can I filter OAuth clients by their approval state?
instructions:
- text: Search OAuth clients whose name contains {name}.
slots:
name: query.name_contains
- text: Find OAuth clients in state {state}.
slots:
state: query.state
method: generated
generated: '2026-09-26'
- target: $.paths['/search/gateways'].get
update:
x-apievangelist-phrasing:
intent: Search gateways
effect: read
questions:
- Can I search my gateways by part of their EUI?
- Which gateways have a description mentioning a keyword?
instructions:
- text: Search gateways with an EUI containing {eui}.
slots:
eui: query.eui_contains
- text: Find gateways whose name contains {name}.
slots:
name: query.name_contains
method: generated
generated: '2026-09-26'
- target: $.paths['/search/organizations'].get
update:
x-apievangelist-phrasing:
intent: Search organizations
effect: read
questions:
- How can I find an organization by part of its name?
- Can I search organizations by ID fragment?
instructions:
- text: Search organizations whose name contains {name}.
slots:
name: query.name_contains
- text: Find organizations with an ID containing {id}.
slots:
id: query.id_contains
method: generated
generated: '2026-09-26'
- target: $.paths['/search/users'].get
update:
x-apievangelist-phrasing:
intent: Search users (admin only)
effect: read
questions:
- As an admin, how do I search user accounts by name?
- Can I find users in a particular state, like those awaiting approval?
instructions:
- text: Search users whose name contains {name}.
slots:
name: query.name_contains
- text: Find users in state {state}.
slots:
state: query.state
method: generated
generated: '2026-09-26'
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/the-things-network-entityregistrysearch-api-phrasing-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.