Skip to content

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Code First (code-first)

About this repository

This is not our API. This repository is an independent, third-party profile of a company's publicly available API surface, maintained by API Evangelist. API Evangelist does not operate, host, resell, or support this company's APIs, and is not affiliated with or endorsed by the company unless stated on the profile.

Where the information came from. Everything here is assembled from material a member of the public can reach with a browser and no credentials — the company's own website, developer portal and documentation, the specifications it publishes for public use (OpenAPI, AsyncAPI, JSON Schema, apis.json, llms.txt and similar), its public repositories, and its public status, pricing and changelog pages. Nothing here is obtained by breaching a system, defeating an access control, or using credentials of any kind.

The rating is an independent assessment. The Kin Score and Agent Readiness rating are independently calculated scores of a company's public API artifacts, produced by API Evangelist against a published rubric. They are not certifications, endorsements, security assessments, or audits, and they score published artifacts — not the quality, safety, or security of the software.

Corrections, re-scores, and removal are free. No partnership, contract, or purchase is required, and you do not need to justify the request.

  • Something wrong? Open an issue on this repository, or email info@apievangelist.com.
  • Published something new? Ask for a re-score and we will re-run the rating.
  • Want the listing taken down? Say so and we will honor it. The profile is reduced to your company name, a factual description, and a link to your own site, and the company is recorded as unrated — never scored zero for having asked.

Response times. Acknowledgement within one business day; removal or restriction within two business days; corrections and re-scores within five business days.

Not from the company, and here with a question? You are welcome here — we would rather be the front line and point you the right way than have a good report go nowhere. What this repository can answer is narrow, though, so it is worth knowing who you are actually looking for:

  • A question about how the API works, an account, billing, or a bug in the service — that is the company's own support, not us. We profile this API; we do not operate it and cannot see your account.
  • A bug in an open-source project we only catalog — file it on that project's own repository. This has happened with a real and correct bug report that reached us instead of the people who could fix it, which helped nobody.
  • Anything about this listing itself — the description, the tags, the rating, a missing or wrong artifact — is ours. Open an issue here.
  • Not sure, or something general about API Evangelist or APIs.io — open an issue on the APIs.io Inbox and we will route it.

This repository contains no software, and we will never ask you to download anything. There is no build, release, installer, or binary here — only text and machine-readable API descriptions, so there is nothing here that can be "corrupt" or need "repairing". Any issue, comment, or email claiming otherwise and offering a download link is not from us and is hostile. Do not follow the link; it is a lure. Report it to GitHub and, if you like, tell us at info@apievangelist.com so we can take it down.

On a security or compliance team? Email info@apievangelist.com with security in the subject line and you will get a person, not a form. We will tell you exactly which public URLs this profile was built from so your team can see the same surface we did, and we will take the listing down on request while you work through it.

Full detail: Where this data comes from

Code-first is an API design and software development approach where the application's source code is the primary source of truth and the API contract (OpenAPI document, GraphQL schema, gRPC proto, type definitions) is generated from that code via decorators, annotations, type inference, or runtime introspection. It contrasts with the design-first (or contract-first) approach in which a hand-authored OpenAPI/GraphQL/Proto contract is written first and code is scaffolded from it. Code-first approaches are widely used in TypeScript, Python, Java, Go, and C# ecosystems where strong type systems make schema generation reliable.

URL: Visit APIs.json URL

Scope

  • Type: Index (Topic)
  • Position: Consuming
  • Access: 3rd-Party

Tags

  • API Design
  • Code Generation
  • Code-First
  • Decorators
  • Development Methodology
  • Software Architecture
  • Type Safety

Timestamps

  • Created: 2025-01-01
  • Modified: 2026-04-26

Key Frameworks and Tooling

Framework Language Contract Generation
FastAPI Python OpenAPI 3.x from Pydantic models and type hints
NestJS TypeScript OpenAPI via @nestjs/swagger decorators
tRPC TypeScript End-to-end TypeScript types, no separate IDL
Hono RPC TypeScript TypeScript inference, optional OpenAPI via @hono/zod-openapi
Spring Boot + springdoc Java/Kotlin OpenAPI from JAX-RS/Spring annotations
Quarkus Java/Kotlin MicroProfile OpenAPI from JAX-RS annotations
Micronaut OpenAPI Java/Kotlin Compile-time AST inspection
ASP.NET Core C# Microsoft.AspNetCore.OpenApi / Swashbuckle
Huma Go OpenAPI from struct tags and reflection
Encore Go/TypeScript API contract inferred from typed handlers
zod-openapi TypeScript OpenAPI generated from Zod schemas
rswag Ruby on Rails OpenAPI from RSpec request specs
Scribe PHP / Laravel OpenAPI from controller introspection and PHPDoc
Pothos TypeScript GraphQL SDL from typed builders
grpc-gateway Go Proto + code; reverse-proxy to REST

Trade-offs

Pros

  • Single source of truth eliminates contract/code drift
  • Faster iteration - no separate OpenAPI editing step
  • Strong type safety end-to-end (especially in TypeScript and Python)
  • Familiar to backend engineers; low onboarding cost
  • IDE-friendly - routes and types surface natively

Cons

  • Contract changes are implicit and harder to review independently
  • Risk of leaking implementation details into the public contract
  • Cross-team or cross-organization governance is harder
  • Generated specs often lack examples, descriptions, and security details
  • Frontend or partner teams cannot start integration before code is written

When to Use

  • Internal services where the backend team owns producer and consumer
  • Rapid product development with tight feedback loops
  • TypeScript monorepos using tRPC or shared types
  • Python / FastAPI services where Pydantic already models the domain

When to Avoid

  • Public APIs with diverse external consumers
  • Government, banking, or other contract-bound API programs
  • Multi-team programs where contract review precedes implementation
  • SDK generation pipelines that need stable, reviewed schemas

Common Properties

Notes

This profile is a topic landscape, not a single API. No OpenAPI specification, JSON-LD vocabulary, Spectral ruleset, or Naftiko capability bundle is generated because there is no single contract to lint or describe; each framework above ships its own.

Maintainers

FN: Kin Lane

Email: kin@apievangelist.com

About

Code-first is an API design and software development approach where the application's source code is the primary source of truth and the API contract (OpenAPI document, GraphQL schema, gRPC proto, type definitions) is generated from that code via decorators, annotations, type inference, or runtime introspection.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors