{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "tool": {
    "slug": "dynapictures",
    "name": "DynaPictures",
    "vendor": "DynaPictures GmbH",
    "vendorUrl": "https://dynapictures.com",
    "kind": "http-api",
    "category": "design-assets",
    "summary": "DynaPictures, from DynaPictures GmbH in Freiburg, fills templates made in its no-code editor with data to produce images, multi-page PDFs, countdown timer GIFs and AI images, through a REST API, image URLs, forms and a remote MCP server.",
    "url": "https://www.anchorterminal.com/tools/dynapictures",
    "markdownUrl": "https://www.anchorterminal.com/tools/dynapictures.md",
    "slimMarkdownUrl": "https://www.anchorterminal.com/tools/dynapictures.min.md",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/dynapictures.json",
    "dns": "dynapictures.grade.anchorterminal.com",
    "license": "Closed service under the DynaPictures terms of use (revision 2/2026)",
    "transports": [
      "http",
      "streamable-http"
    ],
    "remoteUrl": "https://api.dynapictures.com",
    "packages": [],
    "auth": "api-key",
    "authNotes": "One API key per user, copied from the account page and sent as `Authorization: Bearer`, for both the REST API and the MCP server at mcp.dynapictures.com/mcp. The key carries the user's full access, with no workspace or action limits, and a new key is requested by email. No OAuth.",
    "pricing": "freemium",
    "pricingNotes": "Free plan, and a 14-day trial with 30 API credits, neither needing a card. Lite from 250 images a month and Pro from 2,000, priced through a FastSpring checkout whose amounts are drawn by script. One credit per image or PDF page. AI credit packs from $20 for 1,000 credits (about 250 images), which never expire.",
    "priceSummary": "$0.02 / credit",
    "where": "hosted",
    "x402": {
      "level": "no",
      "evidence": "Subscriptions and credit packs through FastSpring. No x402, MPP or L402 in the OpenAPI, llms.txt, auth.md or the agent skill (checked 2026-11-06). A spent quota returns 403 and missing AI credits 402, with no payment requirements.",
      "endpoints": []
    },
    "toolCount": null,
    "popularity": {
      "githubStars": null,
      "npmWeekly": null,
      "pypiWeekly": null,
      "asOf": "2026-11-06"
    },
    "docsUrl": "https://dynapictures.com/docs/",
    "mcpTools": {
      "url": "https://mcp.dynapictures.com/mcp",
      "checkedAt": "2026-11-07T01:43:58.466398541Z",
      "status": "error",
      "note": "Post \"https://mcp.dynapictures.com/mcp\": dial tcp: lookup mcp.dynapictures.com on 192.168.1.1:53: no such host",
      "changedAt": "2026-11-07T01:43:58.466398541Z"
    },
    "llmsTxt": "https://dynapictures.com/llms.txt",
    "openapi": "https://dynapictures.com/openapi.json",
    "capabilities": [
      "design.templates",
      "design.render",
      "pdf.generate",
      "image.generate"
    ],
    "tags": [
      "hosted",
      "openapi",
      "llms-txt",
      "mcp",
      "remote-mcp",
      "api-key",
      "freemium",
      "free-tier",
      "no-card",
      "sla",
      "eu"
    ],
    "graded": true,
    "anchor": {
      "graded": true,
      "score": 43.2,
      "grade": "E",
      "agentReady": false,
      "rank": 1239,
      "ranked": true,
      "rankOf": 1486,
      "categoryRank": 13,
      "methodology": "0.7",
      "run": "2026-10-01",
      "scores": {
        "ergonomics": 45,
        "maintenance": 4,
        "payments": 30,
        "reliability": 42,
        "schema": 82,
        "security": 26,
        "transparency": 63
      },
      "pending": [
        "performance",
        "tasks"
      ],
      "breakdown": [
        {
          "key": "reliability",
          "name": "Reliability",
          "weight": 16,
          "effectiveWeight": 20,
          "score": 42,
          "points": 8.4,
          "reason": "Hosted lines. No status page found in the docs, llms.txt or footer (0). No readable incident history (5). The monthly image quota is reported in RateLimit headers on generation, but no per-second or per-minute limit is published (5 of 15). The agent skill gives a status table with what to do for each, GET /links sends Retry-After on 503, and the docs warn that generation isn't idempotent and to check before retrying a 504 (12 of 15). The terms guarantee 94 per cent annual availability, a low figure but a published SLA (10). Nothing is labelled beta (10). 0 + 5 + 5 + 12 + 10 + 10 = 42.",
          "checked": "2026-11-06"
        },
        {
          "key": "performance",
          "name": "Performance",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
        },
        {
          "key": "schema",
          "name": "Schema \u0026 documentation",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 82,
          "points": 13.33,
          "reason": "OpenAPI 3.1 at dynapictures.com/openapi.json with 20 paths (25). llms.txt, auth.md and an agent skill in Markdown (10). llms.txt says when to use the product and when it's a poor fit, and the skill gives call order for each job (17 of 20). Enums for formats and options, with layer overrides keyed by layer name (12 of 15). Request examples throughout and a status table in the skill, but the API reference's Errors section is unedited Slate template text about kittens (9 of 15). No URL version, additive changes, removals announced six months ahead with Deprecation and Sunset headers, and no changelog (9 of 15). 25 + 10 + 17 + 12 + 9 + 9 = 82.",
          "checked": "2026-11-06"
        },
        {
          "key": "ergonomics",
          "name": "Agent ergonomics",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 45,
          "points": 7.31,
          "reason": "The MCP tool definitions weren't read (listing them needs a session), and llms.txt describes groups that include layer-by-layer design authoring, so the count is unknown. REST responses are small objects with image URLs (12 of 25). Template and generated-image listings, with no field selection documented (10 of 20). Errors are JSON with a `message` and documented statuses, without codes (12 of 20). Requests aren't idempotent, by the vendor's own note, though identical image URLs are served from cache without a credit (6 of 20). An Editor SDK for embedding the editor, and no API client SDKs (5 of 15). 12 + 10 + 12 + 6 + 5 = 45.",
          "checked": "2026-11-06"
        },
        {
          "key": "security",
          "name": "Security \u0026 auth",
          "weight": 14,
          "effectiveWeight": 17.5,
          "score": 26,
          "points": 4.55,
          "reason": "One API key per user with the user's full access, not limited to workspaces or actions; a new key is requested by email to support, with no rotation in the account (10 of 30). No read-only mode, and the MCP server can author and change designs (3 of 20). Tools return the account's own templates and renders; image layers accept outside URLs (10 of 15). A list of generated images, with no audit log documented (3 of 15). No security.txt, disclosure policy, bug bounty or certification found (0). 10 + 3 + 10 + 3 + 0 = 26.",
          "checked": "2026-11-06"
        },
        {
          "key": "payments",
          "name": "Payments \u0026 pricing",
          "weight": 10,
          "effectiveWeight": 12.5,
          "score": 30,
          "points": 3.75,
          "reason": "No x402, MPP or L402 (0). Image allowances per plan and AI credit packs ($20 for 1,000 credits) are public, but plan prices are filled in by the FastSpring script and weren't readable (10 of 20). Free plan and a 14-day trial with 30 API credits, no card (20). auth.md says a person has to copy the key; there is no OAuth or programmatic key (0). 0 + 10 + 20 + 0 = 30.",
          "checked": "2026-11-06"
        },
        {
          "key": "tasks",
          "name": "Task success",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
        },
        {
          "key": "maintenance",
          "name": "Maintenance \u0026 community",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 4,
          "points": 0.35,
          "reason": "No changelog, release notes or dated API change was found, and the MCP server card gives version 1.0.0 with no date (0). No dated changes since 8 August (0). Support by email and contact form, not tested (4 of 15). Not in the official MCP registry and no API SDKs (0). No public package or repository (0). 0 + 0 + 4 + 0 + 0 = 4.",
          "checked": "2026-11-06"
        },
        {
          "key": "transparency",
          "name": "Transparency \u0026 trust",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 63,
          "points": 5.51,
          "note": "editorial 63, provenance 63",
          "reason": "Closed service under terms (revision 2/2026) from DynaPictures GmbH in Freiburg, for business customers (15). The privacy policy names the controller, keeps generated images as long as needed or until deleted, gives plan image retention (3 months on Lite), and says the named AI providers don't train on API inputs under their API terms; other periods follow bookkeeping law (20 of 30). The OpenAPI file commits to six months' notice before removing an endpoint or field, with Deprecation and Sunset headers (16 of 20). AI sub-processors named with addresses (OpenAI, Google, Black Forest Labs, Replicate) and FastSpring for payments, while hosting providers aren't named (12 of 20). 15 + 20 + 16 + 12 = 63.",
          "checked": "2026-11-06"
        }
      ],
      "assessment": {
        "date": "2026-11-06",
        "basis": "public evidence",
        "confidence": "medium",
        "notes": {
          "ergonomics": "The MCP tool definitions weren't read (listing them needs a session), and llms.txt describes groups that include layer-by-layer design authoring, so the count is unknown. REST responses are small objects with image URLs (12 of 25). Template and generated-image listings, with no field selection documented (10 of 20). Errors are JSON with a `message` and documented statuses, without codes (12 of 20). Requests aren't idempotent, by the vendor's own note, though identical image URLs are served from cache without a credit (6 of 20). An Editor SDK for embedding the editor, and no API client SDKs (5 of 15). 12 + 10 + 12 + 6 + 5 = 45.",
          "maintenance": "No changelog, release notes or dated API change was found, and the MCP server card gives version 1.0.0 with no date (0). No dated changes since 8 August (0). Support by email and contact form, not tested (4 of 15). Not in the official MCP registry and no API SDKs (0). No public package or repository (0). 0 + 0 + 4 + 0 + 0 = 4.",
          "payments": "No x402, MPP or L402 (0). Image allowances per plan and AI credit packs ($20 for 1,000 credits) are public, but plan prices are filled in by the FastSpring script and weren't readable (10 of 20). Free plan and a 14-day trial with 30 API credits, no card (20). auth.md says a person has to copy the key; there is no OAuth or programmatic key (0). 0 + 10 + 20 + 0 = 30.",
          "reliability": "Hosted lines. No status page found in the docs, llms.txt or footer (0). No readable incident history (5). The monthly image quota is reported in RateLimit headers on generation, but no per-second or per-minute limit is published (5 of 15). The agent skill gives a status table with what to do for each, GET /links sends Retry-After on 503, and the docs warn that generation isn't idempotent and to check before retrying a 504 (12 of 15). The terms guarantee 94 per cent annual availability, a low figure but a published SLA (10). Nothing is labelled beta (10). 0 + 5 + 5 + 12 + 10 + 10 = 42.",
          "schema": "OpenAPI 3.1 at dynapictures.com/openapi.json with 20 paths (25). llms.txt, auth.md and an agent skill in Markdown (10). llms.txt says when to use the product and when it's a poor fit, and the skill gives call order for each job (17 of 20). Enums for formats and options, with layer overrides keyed by layer name (12 of 15). Request examples throughout and a status table in the skill, but the API reference's Errors section is unedited Slate template text about kittens (9 of 15). No URL version, additive changes, removals announced six months ahead with Deprecation and Sunset headers, and no changelog (9 of 15). 25 + 10 + 17 + 12 + 9 + 9 = 82.",
          "security": "One API key per user with the user's full access, not limited to workspaces or actions; a new key is requested by email to support, with no rotation in the account (10 of 30). No read-only mode, and the MCP server can author and change designs (3 of 20). Tools return the account's own templates and renders; image layers accept outside URLs (10 of 15). A list of generated images, with no audit log documented (3 of 15). No security.txt, disclosure policy, bug bounty or certification found (0). 10 + 3 + 10 + 3 + 0 = 26.",
          "transparency": "Closed service under terms (revision 2/2026) from DynaPictures GmbH in Freiburg, for business customers (15). The privacy policy names the controller, keeps generated images as long as needed or until deleted, gives plan image retention (3 months on Lite), and says the named AI providers don't train on API inputs under their API terms; other periods follow bookkeeping law (20 of 30). The OpenAPI file commits to six months' notice before removing an endpoint or field, with Deprecation and Sunset headers (16 of 20). AI sub-processors named with addresses (OpenAI, Google, Black Forest Labs, Replicate) and FastSpring for payments, while hosting providers aren't named (12 of 20). 15 + 20 + 16 + 12 = 63."
        },
        "sources": [
          {
            "what": "OpenAPI 3.1",
            "url": "https://dynapictures.com/openapi.json",
            "seen": "2026-11-06"
          },
          {
            "what": "API reference",
            "url": "https://dynapictures.com/docs/",
            "seen": "2026-11-06"
          },
          {
            "what": "llms.txt",
            "url": "https://dynapictures.com/llms.txt",
            "seen": "2026-11-06"
          },
          {
            "what": "authentication for agents",
            "url": "https://dynapictures.com/auth.md",
            "seen": "2026-11-06"
          },
          {
            "what": "agent skill",
            "url": "https://dynapictures.com/.well-known/agent-skills/dynapictures-api/SKILL.md",
            "seen": "2026-11-06"
          },
          {
            "what": "MCP server card",
            "url": "https://dynapictures.com/.well-known/mcp/server-card.json",
            "seen": "2026-11-06"
          },
          {
            "what": "pricing",
            "url": "https://dynapictures.com/p/pricing",
            "seen": "2026-11-06"
          },
          {
            "what": "about page, team",
            "url": "https://dynapictures.com/p/about",
            "seen": "2026-11-06"
          },
          {
            "what": "terms of use and SLA",
            "url": "https://dynapictures.com/p/terms",
            "seen": "2026-11-06"
          },
          {
            "what": "privacy policy and sub-processors",
            "url": "https://dynapictures.com/p/privacy-policy",
            "seen": "2026-11-06"
          },
          {
            "what": "official MCP registry search (no entry)",
            "url": "https://registry.modelcontextprotocol.io/v0/servers?search=dynapictures",
            "seen": "2026-11-06"
          }
        ],
        "openQuestions": [
          "unchecked: the MCP server's tool list and annotations, because listing them needs an MCP session.",
          "unchecked: plan prices, which the FastSpring checkout script fills in.",
          "Whether API calls are included on the free plan beyond the trial's 30 credits.",
          "The rate limit per second or minute, which isn't published."
        ]
      },
      "negative": 0,
      "verdict": "An OpenAPI 3.1 file, an agent skill and a six-month removal notice with Sunset headers make DynaPictures' template rendering easy to plan around, with a free plan and no-card trial. The single API key opens the whole account, requests aren't idempotent, and no changelog, status page or dated release was found.",
      "bestFor": "Personalised images and PDFs per record, image URLs in emails and pages, and email countdown timers, for marketing teams in the EU.",
      "strengths": [
        "OpenAPI 3.1 with 20 paths, llms.txt, auth.md and an agent skill written for agents",
        "Removals announced six months ahead with Deprecation and Sunset headers",
        "Free plan and a 14-day trial with 30 API credits, no card",
        "Identical image URLs return a cached image without using another credit",
        "Terms guarantee 94 per cent annual availability; AI sub-processors named in the privacy policy"
      ],
      "weaknesses": [
        "One API key per user with full account access and no scopes; a new key needs an email to support",
        "Generation requests aren't idempotent, so a retry can spend a second credit",
        "No changelog, status page or dated release found",
        "The docs' Errors section is unedited template text",
        "Not in the official MCP registry, and plan prices are drawn by script"
      ],
      "agentNotes": [
        "Use `GET /templates` to find a template UID and its layer names before generating",
        "Check whether an image exists before retrying a timed-out `POST /designs/{UID}`; retries can be charged",
        "Treat 403 as a spent quota or expired trial and stop; wait for `Retry-After` only on 503",
        "Poll `GET /ai/generate/{jobUid}` about every 2 seconds and download the result, since the URL may expire",
        "Keep the API key out of image URLs; use signed or public links for embedding"
      ],
      "metrics": {
        "kind": "remote",
        "measured": false
      },
      "reviewCount": 0,
      "avgRating": 0,
      "history": [
        {
          "basis": "public evidence",
          "confidence": "medium",
          "grade": "E",
          "methodology": "0.7",
          "pending": [
            "performance",
            "tasks"
          ],
          "run": "2026-10-01",
          "runLabel": "October 2026 research run",
          "score": 43.2
        }
      ],
      "editorialScores": {
        "ergonomics": 45,
        "maintenance": 4,
        "payments": 30,
        "reliability": 42,
        "schema": 82,
        "security": 26,
        "transparency": 63
      },
      "provenanceScore": 63,
      "checked": {
        "categories": {
          "ergonomics": "2026-11-06",
          "maintenance": "2026-11-06",
          "payments": "2026-11-06",
          "reliability": "2026-11-06",
          "schema": "2026-11-06",
          "security": "2026-11-06",
          "transparency": "2026-11-06"
        },
        "last": "2026-11-06",
        "oldest": "2026-11-06",
        "stale": false,
        "staleAfterDays": 90
      },
      "scoreHistory": [
        {
          "date": "2026-11-06",
          "grade": "E",
          "kind": "listed",
          "method": "0.7",
          "score": 43.2
        }
      ]
    },
    "connect": {
      "http": "curl https://api.dynapictures.com/workspaces -H \"Authorization: Bearer YOUR_API_KEY\"",
      "config": {
        "mcpServers": {
          "dynapictures": {
            "headers": {
              "Authorization": "Bearer YOUR_API_KEY"
            },
            "url": "https://mcp.dynapictures.com/mcp"
          }
        }
      }
    },
    "letme": {
      "capability": "https://letme.dev/design.templates",
      "tool": "https://letme.dev/dynapictures"
    },
    "notable": [
      "OpenAPI 3.1 with 20 paths, from generation and batch jobs to layer-by-layer design authoring, workspaces, media and hooks (https://dynapictures.com/openapi.json)",
      "Removals are announced at least 6 months ahead in the API reference, with `Deprecation` and `Sunset` headers in that time, and changes are otherwise additive (https://dynapictures.com/openapi.json)",
      "llms.txt, auth.md and an agent skill say when to use the API, that requests aren't idempotent, and how to handle each error status (https://dynapictures.com/.well-known/agent-skills/dynapictures-api/SKILL.md)",
      "The terms guarantee 94 per cent annual availability, with maintenance windows outside working hours (https://dynapictures.com/p/terms)",
      "The API reference's Errors section is unedited template text about kittens, not DynaPictures' errors (https://dynapictures.com/docs/)",
      "AI images go to OpenAI, Google, Black Forest Labs or Replicate as named sub-processors (https://dynapictures.com/p/privacy-policy)"
    ],
    "area": "design-diagrams",
    "details": [
      {
        "label": "Surface listed",
        "value": "The REST API at api.dynapictures.com and the remote MCP server at mcp.dynapictures.com/mcp, read from the OpenAPI file, the API reference, llms.txt, auth.md, the agent skill, the MCP server card, the pricing, about, terms and privacy pages on 6 November 2026. No account was made, no tool was listed or called"
      },
      {
        "label": "MCP tools",
        "value": "Per llms.txt, tools list workspaces and designs, generate images, build image links, run AI image generation, manage media and author designs layer by layer. The tool list wasn't read, since that needs an MCP session"
      },
      {
        "label": "Outputs",
        "value": "PNG, JPEG, WEBP or AVIF images, multi-page PDFs, countdown timer GIFs for email, and standalone AI images"
      },
      {
        "label": "Limits",
        "value": "Monthly image quota reported in RateLimit-Limit, RateLimit-Remaining and RateLimit-Reset on generation; 403 when it is used up. GET /links answers 503 with Retry-After when busy"
      },
      {
        "label": "Legal entity",
        "value": "DynaPictures GmbH, Zasiusstr. 6a, 79102 Freiburg im Breisgau, Germany, per the terms and privacy policy. Sales through FastSpring as reseller"
      }
    ],
    "unitPrices": [
      {
        "item": "AI credit pack",
        "unit": "credit",
        "usd": 0.02,
        "note": "$20 for 1,000 AI credits, about 250 AI images; packs never expire"
      }
    ],
    "provenance": {
      "legalEntity": "DynaPictures GmbH",
      "domain": "dynapictures.com",
      "domainRegistered": "2021-03-14",
      "endpointOnVendorDomain": true,
      "terms": "https://dynapictures.com/p/terms",
      "privacy": "https://dynapictures.com/p/privacy-policy",
      "statusPage": "",
      "changelog": "",
      "securityTxt": "none",
      "checked": "2026-11-06",
      "notes": [
        "The terms (revision 2/2026) and privacy policy name DynaPictures GmbH, Zasiusstr. 6a, 79102 Freiburg im Breisgau, Germany. The terms apply to business customers only and guarantee 94 per cent annual availability.",
        "No clause on automated access to the website was found in the terms.",
        "dynapictures.com/robots.txt disallows only the /tools/r/ paths. api.dynapictures.com/robots.txt answers 401.",
        "RDAP gives dynapictures.com a registration date of 14 March 2021.",
        "/.well-known/security.txt returns 404. No status page or changelog found."
      ],
      "score": 63,
      "checks": [
        {
          "check": "Legal entity named",
          "value": "DynaPictures GmbH",
          "points": 20,
          "max": 20,
          "state": "ok"
        },
        {
          "check": "Domain age",
          "value": "dynapictures.com, registered 2021-03-14 (5 years)",
          "points": 11,
          "max": 15,
          "state": "part"
        },
        {
          "check": "Endpoint on the vendor's domain",
          "value": "api.dynapictures.com",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Terms of service",
          "value": "read, states 3 of the 7 things a reader expects",
          "points": 6.6,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Privacy policy",
          "value": "read, states 5 of the 8 things a reader expects",
          "points": 7.8,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Status page",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "Changelog",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "security.txt",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "People named",
          "value": "1 named with their role, none with a public profile",
          "points": 7,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Support route",
          "value": "a support address, help pages",
          "points": 5,
          "max": 5,
          "state": "ok"
        }
      ],
      "policies": [
        {
          "kind": "terms",
          "url": "https://dynapictures.com/p/terms",
          "state": "read",
          "readAt": "2026-11-06",
          "words": 1929,
          "points": 6.6,
          "max": 10,
          "expected": [
            {
              "key": "terms.date",
              "label": "Gives the date it was last updated",
              "found": false
            },
            {
              "key": "terms.law",
              "label": "Names the governing law or courts",
              "found": false
            },
            {
              "key": "terms.liability",
              "label": "States a limit on its liability",
              "found": false
            },
            {
              "key": "terms.termination",
              "label": "Says how the agreement or account can be ended",
              "found": true,
              "quote": "The Customer has the special right to terminate this contract in case of bad service provided."
            },
            {
              "key": "terms.changes",
              "label": "Says how changes to the terms are announced",
              "found": false
            },
            {
              "key": "terms.use",
              "label": "Lists what users may not do",
              "found": true,
              "quote": "The Customer shall use AI image generation features only in accordance with the Provider's Acceptable Use Policy, available at https://dynapictures.com/p/acceptable-use."
            },
            {
              "key": "terms.sla",
              "label": "Refers to a service level or uptime commitment",
              "found": true,
              "quote": "There are no availability guarantees during the 14-day trial period."
            }
          ]
        },
        {
          "kind": "privacy",
          "url": "https://dynapictures.com/p/privacy-policy",
          "state": "read",
          "readAt": "2026-11-06",
          "words": 4133,
          "points": 7.8,
          "max": 10,
          "expected": [
            {
              "key": "privacy.date",
              "label": "Gives the date it was last updated",
              "found": false
            },
            {
              "key": "privacy.collected",
              "label": "Says what personal data is collected",
              "found": false
            },
            {
              "key": "privacy.retention",
              "label": "Says how long data is kept",
              "found": true,
              "quote": "Data will be deleted no later than 6 months after processing the request.",
              "says": "Names a period of 6 months"
            },
            {
              "key": "privacy.processors",
              "label": "Says who else receives the data",
              "found": true,
              "quote": "the operating system used, the domain name of your Internet service provider,"
            },
            {
              "key": "privacy.sale",
              "label": "Says whether personal data is sold or shared for advertising",
              "found": false
            },
            {
              "key": "privacy.rights",
              "label": "Says what rights people have over their data",
              "found": true,
              "quote": "Responsible in the sense of the data protection laws, in particular the EU General Data Protection Regulation (GDPR), is:"
            },
            {
              "key": "privacy.contact",
              "label": "Gives a privacy contact",
              "found": true,
              "quote": "To contact us regarding this matter, please use the contact details given at the end of this Privacy Policy."
            },
            {
              "key": "privacy.transfers",
              "label": "Says where data is transferred or stored",
              "found": true,
              "quote": "transfers are safeguarded by the EU Standard Contractual Clauses and/or the providers' certification",
              "says": "Relies on standard contractual clauses"
            }
          ]
        }
      ]
    },
    "humans": {
      "slug": "dynapictures",
      "checked": "2026-11-06",
      "company": "DynaPictures GmbH",
      "people": [
        {
          "name": "Alexander Vushkan",
          "role": "Managing Director",
          "page": "/people/alexander-vushkan/"
        }
      ],
      "peopleNote": "The about page, read 6 November 2026, lists Alexander Vushkan as Managing Director, with others in marketing, partnerships, DevOps and product roles, links no personal accounts and says DynaPictures was founded in 2020 as a spin-off. No DynaPictures page calls anyone a founder. A web search turned up a Product Hunt profile that describes Oleksandr Vushkan as a co-founder of DynaPictures, but Product Hunt answered with a bot check, so it wasn't read and no founder flag is set. The terms and privacy policy name DynaPictures GmbH, Zasiusstr. 6a, 79102 Freiburg im Breisgau. Investors were looked for on the about page, the sitemap, llms.txt, the legal pages and in that search; none is named, and no round, total or valuation is stated anywhere read.",
      "companySocial": {
        "linkedin": "https://www.linkedin.com/company/dynapictures/",
        "x": "https://x.com/AskDynaPictures"
      },
      "support": {
        "emails": [
          "info@dynapictures.com"
        ],
        "urls": [
          "https://dynapictures.com/p/contact",
          "https://dynapictures.com/docs/"
        ],
        "contactEmails": [
          "info@dynapictures.com"
        ]
      },
      "sources": [
        "https://dynapictures.com/p/about",
        "https://dynapictures.com/p/terms",
        "https://dynapictures.com/p/privacy-policy",
        "https://dynapictures.com/llms.txt"
      ],
      "ownership": {
        "status": "private",
        "checked": "2026-11-06",
        "sources": [
          "https://dynapictures.com/p/terms",
          "https://dynapictures.com/p/privacy-policy"
        ]
      }
    },
    "pageJsonUrl": "https://www.anchorterminal.com/tools/dynapictures.json",
    "live": {
      "slug": "dynapictures",
      "probe": {
        "target": "https://api.dynapictures.com",
        "method": "get",
        "lastAt": "2026-11-07T18:20:21.965331454Z",
        "lastOk": true,
        "lastStatus": 200,
        "lastMs": 339,
        "authRequired": false,
        "uptime24h": 100,
        "uptime30d": 100,
        "p50ms24h": 220,
        "p95ms24h": 337,
        "samples24h": 200,
        "samples30d": 200,
        "days": [
          {
            "date": "2026-11-06",
            "probes": 13,
            "ok": 13
          },
          {
            "date": "2026-11-07",
            "probes": 187,
            "ok": 187
          }
        ]
      },
      "securityTxt": {
        "url": "https://dynapictures.com/.well-known/security.txt",
        "state": "none",
        "checkedAt": "2026-11-07T16:01:15.164343855Z"
      },
      "llmsTxt": {
        "url": "https://dynapictures.com/llms.txt",
        "ok": true,
        "status": 200,
        "checkedAt": "2026-11-07T15:32:20.007030228Z"
      },
      "pages": [
        {
          "url": "https://dynapictures.com/p/privacy-policy",
          "kind": "privacy",
          "status": 200,
          "checkedAt": "2026-11-07T14:09:06.124953966Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "ef81a0377c7a"
        },
        {
          "url": "https://dynapictures.com/p/terms",
          "kind": "terms",
          "status": 200,
          "checkedAt": "2026-11-07T14:09:08.231434531Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "6e15c5e4788d"
        }
      ],
      "mcpTools": {
        "url": "https://mcp.dynapictures.com/mcp",
        "checkedAt": "2026-11-07T01:43:58.466398541Z",
        "status": "error",
        "note": "Post \"https://mcp.dynapictures.com/mcp\": dial tcp: lookup mcp.dynapictures.com on 192.168.1.1:53: no such host",
        "changedAt": "2026-11-07T01:43:58.466398541Z"
      },
      "updatedAt": "2026-11-07T18:20:21.965331454Z"
    }
  }
}
