Diagram Projects API
The Projects API from Diagram — 4 operation(s) for projects.
The Projects API from Diagram — 4 operation(s) for projects.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/diagram-la:diagram-la-projects-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Diagram La Projects API
version: 1.0.0
description: 'Operations tagged Projects across 2 of this provider''s published API definitions: diagram-la-openapi.json, diagram-la-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://diagram.la/api/v1
security:
- bearer: []
tags:
- name: Projects
paths:
/projects:
get:
operationId: listProjects
summary: List projects you own or were added to
responses:
'200':
description: '{ projects }'
content:
application/json:
schema:
type: object
tags:
- Projects
post:
operationId: createProject
summary: Create a project
requestBody:
required: true
content:
application/json:
schema:
$schema: https://json-schema.org/draft/2020-12/schema
type: object
properties:
slug:
type: string
pattern: ^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$
name:
type: string
minLength: 1
maxLength: 120
org:
description: Org slug to put the project in; omit for a personal project
type: string
pattern: ^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$
required:
- slug
responses:
'201':
description: '{ project }'
content:
application/json:
schema:
type: object
tags:
- Projects
servers:
- url: https://diagram.la/api/v1
/projects/{slug}:
get:
operationId: getProject
summary: A project and its diagrams
parameters:
- name: slug
in: path
required: true
schema:
type: string
responses:
'200':
description: '{ project, diagrams }'
content:
application/json:
schema:
type: object
tags:
- Projects
servers:
- url: https://diagram.la/api/v1
/projects/{slug}/members:
post:
operationId: addMember
summary: Give an email read access
parameters:
- name: slug
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$schema: https://json-schema.org/draft/2020-12/schema
type: object
properties:
email:
type: string
format: email
pattern: ^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
required:
- email
responses:
'200':
description: '{ project }'
content:
application/json:
schema:
type: object
tags:
- Projects
delete:
operationId: removeMember
summary: Remove an email
parameters:
- name: slug
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$schema: https://json-schema.org/draft/2020-12/schema
type: object
properties:
email:
type: string
format: email
pattern: ^(?:[A-Za-z0-9_'+\-]+\.)*[A-Za-z0-9_'+\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$
required:
- email
responses:
'200':
description: '{ project }'
content:
application/json:
schema:
type: object
tags:
- Projects
servers:
- url: https://diagram.la/api/v1
/projects/{slug}/diagrams:
get:
operationId: listDiagrams
summary: List a project's diagrams
parameters:
- name: slug
in: path
required: true
schema:
type: string
responses:
'200':
description: '{ diagrams }'
content:
application/json:
schema:
type: object
tags:
- Projects
post:
operationId: createDiagram
summary: Create a diagram from self-contained HTML; returns its permanent url
parameters:
- name: slug
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$schema: https://json-schema.org/draft/2020-12/schema
type: object
properties:
title:
type: string
minLength: 1
maxLength: 200
html:
type: string
minLength: 1
visibility:
default: private
type: string
enum:
- public
- private
kind:
type: string
enum:
- flowchart
- sequence
- architecture
- data_flow
- data_model
- state
- mind_map
- tree
- timeline
- gantt
- wireframe
- chart
- comparison
- exploded_view
- map
- infographic
- other
description: 'What kind of diagram this is (its form, not its subject): flowchart (process or decision flow, user journey); sequence (sequence diagram: messages between parts over time); architecture (system, cloud, component, C4 or network diagram); data_flow (data flow, pipeline, ETL); data_model (ER diagram, database schema, class diagram); state (state machine or lifecycle); mind_map (mind map or concept map); tree (org chart, hierarchy, decision tree, sitemap); timeline (timeline or roadmap); gantt (Gantt chart or project schedule); wireframe (UI mockup, wireframe, screen flow); chart (bar, line or pie chart, dashboard); comparison (comparison table, matrix, quadrant, Venn); exploded_view (exploded view, assembly, cutaway of a physical object); map (map, floor plan, layout of a place); infographic (infographic, poster, explainer page); other (none of these)'
draft:
description: Start it as a draft only you can see, to publish later
type: boolean
required:
- title
- html
responses:
'201':
description: '{ diagram }'
content:
application/json:
schema:
type: object
tags:
- Projects
servers:
- url: https://diagram.la/api/v1
components:
securitySchemes:
bearer:
type: http
scheme: bearer
description: Diagram API key (dgm_...)
x-refined-from:
- diagram-la-openapi.json
- diagram-la-openapi.yml