Here Not There Labs

Here Not There Labs (Here Not There, Inc., operating as hntlabs.com) is the a16z-backed company behind Towns Protocol, an open, decentralized messaging protocol built on Base (an Ethereum L2) that powers ownable, programmable group chat spaces, memberships, direct messages, and decentralized finance. The protocol is delivered to builders as a set of first-party TypeScript packages under the @towns-protocol npm scope (client SDK, React SDK, bot framework, encryption, and generated protobuf bindings), a Connect/gRPC Stream RPC surface defined in public .proto files, a bot/app framework with a webhook-driven event model, and end-to-end message encryption. Spaces, memberships, roles, and entitlements are enforced by on-chain smart contracts, and a network of Stream Nodes run by node operators carries encrypted message streams. This profile was surfaced as an a16z portfolio lead and enriched from the company's public developer surface (docs.towns.com, app.towns.com, the towns-protocol GitHub organization, and npm).

Here Not There Labs publishes 1 API on the APIs.io network. Tagged areas include Company, Messaging, Decentralized, Web3, and Blockchain.

The Here Not There Labs catalog on APIs.io includes 1 event-driven AsyncAPI specification.

Here Not There Labs’ developer surface includes documentation, API reference, getting-started guide, signup flow, CLI, authentication, and 13 more developer resources.

33.9/100 thin ▬ flat Agent 20/100 agent aware Full breakdown ↓
scored 2026-07-23 · rubric v0.5
1 APIs
CompanyMessagingDecentralizedWeb3BlockchainProtocolChatBotsEncryptionSDK

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-23 · rubric v0.5
Composite quality — 33.9/100 · thin
Contract Quality 5.7 / 25
Developer Ergonomics 13.0 / 20
Commercial Clarity 4.2 / 20
Operational Transparency 1.7 / 13
Governance 0.0 / 12
Discoverability 9.3 / 10
Agent readiness — 20/100 · agent aware
Machine-Readable Contract 0 / 18
Agentic Access Contract 0 / 15
MCP Server 0 / 12
Machine-Readable Auth 10 / 10
Idempotency 0 / 9
Stable Error Semantics 0 / 8
Request/Response Examples 0 / 7
Rate-Limit Signaling 0 / 7
Typed Event Surface 6 / 6
Agent Skills 5 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/here-not-there-labs: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 1

Individual APIs this provider publishes, each with its own machine-readable definition.

Towns Protocol

Towns Protocol is an open, decentralized messaging protocol built on Base. Builders integrate via first-party TypeScript SDKs, a React SDK of hooks, and a bot/app framework. Und...

Event Specifications 1

AsyncAPI definitions for this provider's event-driven and streaming APIs.

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Here Not There Labs Domain Security

TLSv1.3 · HSTS · DNSSEC · DMARC

SECURITY

Resources

Get Started 3

Portal, sign-up, and the first successful call

Documentation 2

Reference material describing how the API behaves

Agent Surfaces 2

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 3

Pagination, idempotency, versioning, errors, and events

Build 4

SDKs, sample code, and the tooling you integrate with

Access & Security 3

Authentication, authorization, and security posture

Company 1

The organization behind the API

Other 1

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: here-not-there-labs
name: Here Not There Labs
description: Here Not There Labs (Here Not There, Inc., operating as hntlabs.com) is the a16z-backed company behind Towns
  Protocol, an open, decentralized messaging protocol built on Base (an Ethereum L2) that powers ownable, programmable group
  chat spaces, memberships, direct messages, and decentralized finance. The protocol is delivered to builders as a set of
  first-party TypeScript packages under the @towns-protocol npm scope (client SDK, React SDK, bot framework, encryption, and
  generated protobuf bindings), a Connect/gRPC Stream RPC surface defined in public .proto files, a bot/app framework with
  a webhook-driven event model, and end-to-end message encryption. Spaces, memberships, roles, and entitlements are enforced
  by on-chain smart contracts, and a network of Stream Nodes run by node operators carries encrypted message streams. This
  profile was surfaced as an a16z portfolio lead and enriched from the company's public developer surface (docs.towns.com,
  app.towns.com, the towns-protocol GitHub organization, and npm).
url: https://raw.githubusercontent.com/api-evangelist/here-not-there-labs/refs/heads/main/apis.yml
accessModel:
  pricing: unknown
  onboarding: unknown
  trial: false
  try_now: false
  public: false
  label: Unknown
  confidence: low
  source:
  - authentication
  generated: '2026-07-22'
  method: derived
image: https://towns.com/ogtowns.jpg
x-type: company
x-source: vc-portfolio
x-backed-by:
- a16z
x-tier: profiled
x-tier-reason: portfolio-lead-enriched
specificationVersion: '0.20'
created: '2026-07-17'
modified: '2026-07-19'
tags:
- Company
- Messaging
- Decentralized
- Web3
- Blockchain
- Protocol
- Chat
- Bots
- Encryption
- SDK
apis:
- name: Towns Protocol
  description: Towns Protocol is an open, decentralized messaging protocol built on Base. Builders integrate via first-party
    TypeScript SDKs, a React SDK of hooks, and a bot/app framework. Under the hood the network exposes a Connect/gRPC Stream
    RPC service (StreamService, AppRegistryService, AuthenticationService) defined in public protobuf files, with end-to-end
    encrypted message streams carried by Stream Nodes and spaces/memberships/entitlements enforced by on-chain smart contracts.
  humanURL: https://docs.towns.com
  baseURL: https://app.towns.com
  tags:
  - Messaging
  - Web3
  - Protocol
  - Bots
  - gRPC
  properties:
  - type: Documentation
    url: https://docs.towns.com
  - type: GettingStarted
    url: https://docs.towns.com/build/bots/getting-started
  - type: Protobuf
    url: grpc/here-not-there-labs-protocol.proto
  - type: Protobuf
    url: grpc/here-not-there-labs-apps.proto
  - type: Protobuf
    url: grpc/here-not-there-labs-auth.proto
  - type: Protobuf
    url: grpc/here-not-there-labs-payloads.proto
  - type: Webhooks
    url: asyncapi/here-not-there-labs-bot-events.yml
  - type: Authentication
    url: authentication/here-not-there-labs-authentication.yml
  - type: Conventions
    url: conventions/here-not-there-labs-conventions.yml
common:
- type: DomainSecurity
  url: security/here-not-there-labs-domain-security.yml
- type: Website
  url: https://www.towns.com
- type: DeveloperPortal
  url: https://app.towns.com/developer
- type: Documentation
  url: https://docs.towns.com
- type: APIReference
  url: https://docs.towns.com/build/react-sdk/getting-started
- type: GettingStarted
  url: https://docs.towns.com/build/bots/getting-started
- type: GitHubOrganization
  url: https://github.com/towns-protocol
- type: SignUp
  url: https://app.towns.com/developer
- type: LLMsTxt
  url: llms/here-not-there-labs-llms.txt
- type: Packages
  url: packages/here-not-there-labs-packages.yml
- type: SDKs
  url: packages/here-not-there-labs-packages.yml
- type: CLI
  url: cli/here-not-there-labs-cli.yml
- type: Protobuf
  url: grpc/here-not-there-labs-protocol.proto
- type: Webhooks
  url: asyncapi/here-not-there-labs-bot-events.yml
- type: Conventions
  url: conventions/here-not-there-labs-conventions.yml
- type: Authentication
  url: authentication/here-not-there-labs-authentication.yml
- type: Conformance
  url: conformance/here-not-there-labs-conformance.yml
- type: Compliance
  url: conformance/here-not-there-labs-conformance.yml
- type: AgentSkill
  url: skills/_index.yml
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com
- FN: APIs.json
  email: info@apis.io
x-enrichment:
  date: '2026-07-19'
  status: backfilled
  pass: local-v1
  note: backfilled from .gitignore signal + verified work evidence