Sequenzy Design.md API

The design.md API from Sequenzy — 1 operation(s) for design.md.

Operations 2

GET /design-md Get design.md #
PUT /design-md Update design.md #

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sequenzy:sequenzy-design-md-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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 Specification

sequenzy-design-md-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Sequenzy Design.md API
  description: Sequenzy API for managing subscribers, tags, events, sequences, and transactional emails
  version: 1.0.0
servers:
- url: https://api.sequenzy.com/api/v1
  description: Production server
- url: https://api.sequenzy.com/v1
  description: Legacy production server alias
security:
- bearerAuth: []
tags:
- name: design.md
paths:
  /design-md:
    get:
      operationId: getDesignMd
      summary: Get design.md
      description: Returns the company's design.md, its email design brief as one Markdown document. YAML frontmatter holds the exact values AI-generated emails use (logo, colors, fonts, buttons, cornerRadius, layout tokens), shown as the values emails actually get. The body holds the Voice and Design direction sections the AI writer follows, plus a read-only Reference email section naming the saved AI style. design.md is a view over existing company fields, not a separate store.
      tags:
      - design.md
      responses:
        '200':
          description: design.md returned
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  markdown:
                    type: string
                    description: The full design.md document.
                  version:
                    type: string
                    description: Content version. Pass it as expectedVersion when saving so a concurrent change fails instead of being overwritten.
                    example: 3f9a2c1d8e7b6a50
                  designSystem:
                    $ref: '#/components/schemas/EmailDesignSystem'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: The API key lacks account:read, or the caller cannot access the company
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Company not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          $ref: '#/components/responses/TransientDatabaseUnavailable'
    put:
      operationId: updateDesignMd
      summary: Update design.md
      description: Saves an edited design.md. Only values that differ from the current document are written. A frontmatter value left exactly as returned is not written and keeps its current behavior; a changed buttons.radius, cornerRadius or fonts.heading is pinned so layout defaults no longer override it; a changed layout token is written into the design direction ahead of its prose. A key or section you remove is left unchanged, and an empty Voice or Design direction section clears that field (an empty direction returns to brand-derived defaults). Other level-2 sections are kept as part of the design direction. The Reference email section is read-only. Requires company_profile:manage, including for dry runs.
      tags:
      - design.md
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - markdown
              properties:
                markdown:
                  type: string
                  maxLength: 100000
                  description: The full design.md document, usually the markdown from GET /design-md with your edits.
                expectedVersion:
                  type: string
                  description: Version from GET /design-md. When it no longer matches, the save fails with 409 and nothing is written. Recommended.
                dryRun:
                  type: boolean
                  description: true validates the document and reports changes and warnings without saving.
            examples:
              change-voice-and-color:
                summary: Change the voice and pin a primary color
                value:
                  markdown: "---\ncolors:\n  primary: \"#1f4fff\"\n---\n\n# Acme email design\n\n## Voice\n\nPlain and direct. Setup steps first.\n"
                  expectedVersion: 3f9a2c1d8e7b6a50
              dry-run:
                summary: Preview what a save would change
                value:
                  markdown: '## Design direction


                    Editorial and calm. One idea per email.

                    '
                  dryRun: true
      responses:
        '200':
          description: design.md saved, unchanged, or validated (dry run)
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  message:
                    type: string
                    example: 'Saved design.md: changed colors.primary, voice.'
                  saved:
                    type: boolean
                    description: True when this request wrote changes.
                  dryRun:
                    type: boolean
                  changes:
                    type: array
                    items:
                      type: string
                    description: Changed fields in document terms, such as colors.primary, fonts.heading, buttons.radius, cornerRadius, logo, voice, designDirection or layout.spine.
                    example:
                    - colors.primary
                    - voice
                  warnings:
                    type: array
                    description: Non-blocking notes, such as ignored unknown keys, edits to the read-only Reference email section, or theme values a saved AI style overrides.
                    items:
                      $ref: '#/components/schemas/DesignMdIssue'
                  markdown:
                    type: string
                    description: The document as it reads after the save, or would read for a dry run.
                  version:
                    type: string
                    description: The current version. Unchanged for a dry run or when nothing changed.
                  designSystem:
                    $ref: '#/components/schemas/EmailDesignSystem'
        '400':
          description: The document has errors, such as invalid YAML, a color that is not a hex value, or an unknown layout token. Nothing is saved.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                    example: 'design.md has 1 error: line 3: colors.primary must be a hex color such as "#1f4fff". Quote it: # starts a YAML comment.'
                  code:
                    type: string
                    example: DESIGN_MD_BAD_REQUEST
                  issues:
                    type: array
                    items:
                      $ref: '#/components/schemas/DesignMdIssue'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: The API key lacks company_profile:manage, or the caller's workspace role cannot change settings
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Company not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: design.md changed since expectedVersion was read. Get it again, reapply your edits, and retry with the new version.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: false
                  error:
                    type: string
                  code:
                    type: string
                    example: DESIGN_MD_CONFLICT
                  howToFix:
                    type: string
        '422':
          description: The request body is not an object with a markdown string of at most 100,000 characters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          $ref: '#/components/responses/TransientDatabaseUnavailable'
components:
  headers:
    RetryAfter:
      description: Number of seconds to wait before retrying the request.
      schema:
        type: integer
        minimum: 1
        example: 1
  responses:
    TransientDatabaseUnavailable:
      description: The database was temporarily unavailable. The request may be retried after the delay in Retry-After.
      headers:
        Retry-After:
          $ref: '#/components/headers/RetryAfter'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            success: false
            error: The service could not reach its database for a moment. Retry the request.
            code: SERVICE_UNAVAILABLE
  schemas:
    Error:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: string
          example: Error message
        code:
          type: string
          description: Optional stable machine-readable error discriminator when available.
          example: COMPANY_CREATE_REQUIRES_PERSONAL_KEY
        retryable:
          type: boolean
          description: Whether retrying the request can recover from the error.
        issues:
          type: array
          description: Field-level problems with the request, when the endpoint reports them. Up to ten entries; `error` summarizes the first three.
          items:
            $ref: '#/components/schemas/InputIssue'
      required:
      - error
    InputIssue:
      type: object
      properties:
        path:
          type: string
          description: Dotted field path, such as `audience.subscriberIds[0]`. Empty when the problem is with the request body itself.
          example: kind
        message:
          type: string
          description: What is wrong with the field.
          example: must be "add_tags"
        allowedValues:
          type: array
          description: Accepted values when the field only takes a fixed set of values.
          items: {}
          example:
          - add_tags
      required:
      - path
      - message
    DesignMdIssue:
      type: object
      required:
      - message
      properties:
        message:
          type: string
          example: Unknown key "shadows" was ignored.
        line:
          type: integer
          description: 1-based line in the document, when the issue maps to one.
          example: 2
    EmailDesignSystem:
      type: object
      description: The visual identity every AI-generated email renders inside, parsed from the company's design direction text.
      required:
      - version
      - designCode
      - compositionSpine
      - source
      properties:
        version:
          type: integer
          example: 1
        designCode:
          type: object
          description: The locked visual grammar applied to every generated email.
          required:
          - version
          - kickerStyle
          - titleAlignment
          - buttonShape
          - dividerStyle
          - density
          - openerTreatments
          properties:
            version:
              type: integer
              example: 1
            kickerStyle:
              type: string
              enum:
              - chip
              - letterspaced
              - none
            titleAlignment:
              type: string
              enum:
              - left
              - center
            buttonShape:
              type: string
              enum:
              - rounded
              - pill
            dividerStyle:
              type: string
              enum:
              - line
              - space
            density:
              type: string
              enum:
              - airy
              - compact
            openerTreatments:
              type: array
              items:
                type: string
                enum:
                - hero-image
                - hero-color
                - header-hero
                - editorial-masthead
                - title-led
        compositionSpine:
          type: string
          enum:
          - hero-led
          - editorial
          - product-spec
          description: Which worked-example skeleton anchors email composition.
        source:
          type: string
          enum:
          - derived
          - custom
          description: derived when every token comes from brand derivation; custom when the direction text carries the identity.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key passed as Bearer token