A service is platform/service: linkedin/profile.info, reddit/subreddit.posts, googlemaps/place.search. It is the unit of the API, with one endpoint, one input contract, one output shape.
The service name is both the public name and the machine id, so there is no separate label or slug to translate between.

Naming

Service names follow entity.verb, lowercase, and are idiomatic to their platform: Reddit has subreddit.posts, Facebook has group.posts, YouTube has channel.videos, Instagram has reel.info. Where a name means the same thing everywhere it stays the same (profile.info on nine platforms). Where a platform has a real idiom, the name follows the platform, not an artificial cross-platform vocabulary. Published names are frozen, so a service is never silently repurposed.

Input kind

Each service declares what it consumes: There is no extract/search split any more: the input kind is a property of the service, published in the catalogue as input_kind / input_field. Sending queries to a URL service returns a 400 that names the field it actually wants.

Input formats

Each service declares the exact shape(s) it accepts, with a concrete example:
An input is valid if it matches any of the declared shapes. Validation happens at the edge, before routing and before billing: a company URL sent to profile.info returns 400 invalid_input_format and is never charged.

Typed options

Services declare their own parameters, with types and allowed values:
Options are validated at the edge. An unknown key, a wrong type or an out-of-enum value returns a corrective 400 naming the valid options, and they are never silently dropped. The declared option surface is the same across a service’s offers, so a request stays valid when the router falls over. An offer that doesn’t implement an option ignores it.

Discovery

All of it is derived from the live registry. Nothing is hand-maintained, so a newly implemented service appears everywhere at once.

Errors are written to be fixed

Every 4xx names the field, the expected shape, and the valid alternatives:
That matters most for LLM agents, which self-correct in one round trip instead of guessing.

Offers & routing

Who implements a service, and how the router picks.

Run a service

The endpoint reference.