📚LDEV CMS API
Access content from the Lagden Development CMS including team members and projects! Our CMS API provides easy access to structured content about our people and projects.
🎯 Available Endpoints
People Endpoints
1. Get All People
GET /ldev-cms/people
Fetch all team members and their detailed profiles. Perfect for team pages and directory listings!
2. Get Specific Person
GET /ldev-cms/people/{slug}
Get detailed information about a specific team member using their unique slug.
Project Endpoints
1. Get All Projects
GET /ldev-cms/projects
Retrieve all projects in the CMS. Great for portfolio pages and project showcases!
2. Get Specific Project
GET /ldev-cms/projects/{slug}
Get comprehensive information about a specific project using its unique slug.
📊 Response Models
Person Model
{
"name": "Jane Doe",
"slug": "jane-doe",
"occupation": "Full Stack Developer",
"location": "Stockholm, Sweden",
"pronouns": "she/her",
"skills": ["Python", "React", "Docker"],
"links": [
{
"url": "https://github.com/janedoe",
"name": "GitHub"
}
],
"introduction": {
"content": [
// Rich text content
]
},
"picture_url": "https://images.ctfassets.net/..."
}
Project Model
{
"title": "Cool Project",
"slug": "cool-project",
"description": "A really cool project",
"tags": ["Python", "FastAPI", "React"],
"github_repo_url": "https://github.com/org/repo",
"website_url": "https://project.com",
"project_readme": {
"content": [
// Rich text content
]
},
"picture_url": "https://images.ctfassets.net/...",
"better_stack_status_id": "abc123",
"is_featured": true
}
🎯 Examples
Fetch All Team Members
GET /ldev-cms/people
Get Specific Team Member
GET /ldev-cms/people/jane-doe
Fetch All Projects
GET /ldev-cms/projects
Get Specific Project
GET /ldev-cms/projects/cool-project
❌ Error Responses
Not Found (404)
When requesting a specific person or project that doesn't exist:
{
"detail": "Person not found"
}
{
"detail": "Project not found"
}
Server Error (500)
When there's an issue fetching data from Contentful:
{
"detail": "Error fetching data from Contentful: [error details]"
}
💡 Field Details
Person Fields
slug
: URL-friendly version of the nameoccupation
: Current role or job titlelocation
: Geographical locationpronouns
: Preferred pronounsskills
: Array of technical skillslinks
: Array of relevant URLs (portfolio, social media, etc.)introduction
: Rich text content about the personpicture_url
: Profile image URL
Project Fields
slug
: URL-friendly version of titledescription
: Brief project overviewtags
: Technologies usedgithub_repo_url
: Optional GitHub repository linkwebsite_url
: Optional live project linkproject_readme
: Rich text project documentationpicture_url
: Project image URLbetter_stack_status_id
: Optional status page identifieris_featured
: Boolean for featured projects
🔮 Tips
Use slugs for consistent URL structures
Rich text content comes as structured JSON
Images are served via Contentful's CDN
Featured projects can be filtered using the
is_featured
field
Need help or found a bug? Contact the dev team! 🚀
Last updated