Skip to main content

Introduction

The MTB Backend API is built on Strapi CMS and provides structured content types for managing mountain biking club information, news, registrations, and communications. Each content type represents a data model with specific attributes, validations, and relationships.

What are Content Types?

Content types in Strapi define the structure of your data. They specify:
  • Attributes: The fields and their data types
  • Validations: Required fields, min/max values, and constraints
  • Options: Draft/publish functionality, collection vs single type
  • Relationships: Connections between different content types

Available Content Types

The MTB Backend API includes the following content types:

Club

Manages mountain biking club information including branding, contact details, and organizational data.

Noticia

News articles with rich content, images, and publishing controls for club announcements and updates.

Inscripcion

Registration records with payment tracking and Flow integration for event sign-ups.

Inscrito

Confirmed participant records with category and type classifications for race management.

Mensaje

Contact form submissions with response tracking for member communications.

Content Type Categories

Club Management

  • Club: Core organizational information and branding

Content & Communications

  • Noticia: News and announcements
  • Mensaje: Contact form submissions and messages

Registration & Participants

  • Inscripcion: Payment and registration processing
  • Inscrito: Confirmed participant records

Common Features

Draft and Publish

Most content types support Strapi’s draft and publish workflow:
  • Club, Noticia, Inscrito, Mensaje: Support draft/publish
  • Inscripcion: Does not support draft/publish (immediate processing)
Content with draftAndPublish enabled can be saved as a draft and published later. Use the publicationState query parameter to filter published vs draft entries.

Collection Types

All content types are collection types, meaning they can have multiple entries. Each entry has:
  • Unique id
  • Timestamps: createdAt, updatedAt
  • Publication state (if draft/publish enabled): publishedAt

API Structure

Each content type is accessible via REST and GraphQL APIs:
# REST API Pattern
GET    /api/{plural-name}           # List entries
GET    /api/{plural-name}/:id       # Get single entry
POST   /api/{plural-name}           # Create entry
PUT    /api/{plural-name}/:id       # Update entry
DELETE /api/{plural-name}/:id       # Delete entry

Authentication

All API endpoints require authentication. Use JWT tokens in the Authorization header:
Authorization: Bearer YOUR_JWT_TOKEN
Obtain JWT tokens through the Strapi authentication endpoints. See the Authentication section for details.

Data Types Reference

Common data types used across content types:
TypeDescriptionExample
stringText field”Club MTB”
textLong text”This is a longer description…”
emailEmail address[email protected]
integerWhole number25
booleanTrue/falsetrue
dateDate only”2026-03-15”
datetimeDate and time”2026-03-15T10:30:00Z”
uidUnique identifier”my-news-article”
enumerationPredefined values”Pendiente”, “Pagado”
blocksRich text editorStructured content blocks
mediaFile uploadImages, videos, documents

Next Steps

Explore Content Types

Dive into each content type to understand fields, validations, and API usage.

API Endpoints

Learn about REST API endpoints, query parameters, and filtering options.

Build docs developers (and LLMs) love