FRD templates: Standard and API
Two FRD templates for different situations. Copy the one you need, fill in the sections, delete the prompts.
How to choose:
- Standard FRD — systems with UI, complex business logic, enterprise projects
- API FRD — API-first products, microservices, integrations
More on each format: FRD — the complete guide.
Standard FRD
Full template with seven sections. For systems with complex business rules and multiple integration points.
# FRD — [System Name]
## Overview
- **System Name:**
- **Author:**
- **Date:**
- **Version:**
- **Status:** Draft / In Review / Approved
- **Related PRD:** [link]
## 1. Introduction
### Purpose
What this document specifies and what system it describes.
### Scope
What is covered and what is explicitly excluded.
### Definitions and Acronyms
| Term | Definition |
|------|-----------|
| | |
### References
- PRD: [link]
- Architecture doc: [link]
- Design system: [link]
## 2. Functional Requirements
Use "shall" for must-have, "should" for optional requirements.
| ID | Requirement | Priority | Source | Acceptance Criteria |
|----|------------|----------|--------|-------------------|
| FR-001 | | Must / Should | PRD §X | |
| FR-002 | | | | |
| FR-003 | | | | |
### FR-001: [Requirement Name]
**Description:** [Detailed behavior description]
**Input:** [What triggers this behavior]
**Output:** [What the system produces]
**Business Rules:**
- [Rule 1]
- [Rule 2]
**Error States:**
- [What happens when X fails]
- [What happens when Y is invalid]
## 3. Non-Functional Requirements
| ID | Requirement | Category | Target |
|----|------------|----------|--------|
| NFR-001 | | Performance | |
| NFR-002 | | Security | |
| NFR-003 | | Availability | |
| NFR-004 | | Scalability | |
| NFR-005 | | Accessibility | |
## 4. Data Requirements
### Data Model
[Entity-relationship description or diagram reference]
### Data Dictionary
| Field | Type | Required | Constraints | Description |
|-------|------|----------|------------|------------|
| | | Yes / No | | |
### Data Retention
- [Retention policy for each data category]
## 5. Interface Requirements
### User Interface
- [UI specifications, screen flows, validation rules]
- [Link to wireframes/mockups in appendix]
### System Interfaces
| System | Protocol | Data Format | Direction |
|--------|----------|-------------|-----------|
| | REST / SOAP / MQ | | Inbound / Outbound / Both |
### External Integrations
| Service | Purpose | Authentication | SLA |
|---------|---------|---------------|-----|
| | | | |
## 6. Acceptance Criteria
| FR ID | Criterion | Test Method |
|-------|-----------|-------------|
| FR-001 | | Manual / Automated |
| FR-002 | | |
## 7. Appendices
### A. Wireframes / Mockups
[Links or embedded images]
### B. State Diagrams
[System state transitions]
### C. Glossary
| Term | Definition |
|------|-----------|
| | |
### D. Change Log
| Version | Date | Author | Changes |
|---------|------|--------|---------|
| 1.0 | | | Initial draft |
API FRD
Template for API-first products. Focus on endpoints, schemas, and error handling.
More: API FRD — guide.
# API FRD — [API Name]
- **Author:**
- **Date:**
- **API Version:**
- **Base URL:** `https://api.example.com/v1`
- **Related PRD:** [link]
## 1. API Overview
[What this API does, who consumes it, how it fits into the system.]
## 2. Authentication
| Aspect | Specification |
|--------|--------------|
| Method | |
| Token endpoint | |
| Token lifetime | |
| Authorization model | |
## 3. Endpoints
### POST /resource
**Description:**
**Auth:** Required / Optional
**Request body:**
```json
{
"field": "type (required/optional, constraints)"
}
Response 201:
{
"id": "string",
"created_at": "ISO 8601"
}
Response 422:
{
"error_code": "VALIDATION_ERROR",
"message": "string",
"details": []
}
GET /resource/:id
Description: Auth: Required Response 200: [schema] Response 404: [error schema]
[Repeat for each endpoint]
4. Error Handling
| HTTP Status | Error Code | Meaning |
|---|---|---|
| 400 | BAD_REQUEST | |
| 401 | UNAUTHORIZED | |
| 403 | FORBIDDEN | |
| 404 | NOT_FOUND | |
| 422 | VALIDATION_ERROR | |
| 429 | RATE_LIMITED | |
| 500 | INTERNAL_ERROR |
5. Rate Limiting
| Parameter | Value |
|---|---|
| Default limit | |
| Burst limit | |
| Headers | |
| Exceeded response |
6. Versioning
- Strategy: URL / Header
- Deprecation policy:
- Sunset timeline:
7. Data Models
[Shared schemas used across endpoints]
ModelName:
field_name: type (constraints)
---
## Resources
- [FRD — the complete guide](/product/guides/frd/) — when to use Standard vs API
- [API FRD guide](/product/guides/frd/api) — endpoint-level specification
- [FRD generator prompt](/product/prompts/frd-generator) — create an FRD using AI
- [Navigator prompt](/product/prompts/navigator) — find the right document type