{
  "data": {
    "a": {
      "slug": "adobe-firefly",
      "name": "Adobe Firefly API",
      "vendor": "Adobe",
      "vendorUrl": "https://developer.adobe.com/firefly-services",
      "kind": "model",
      "category": "image-generation",
      "summary": "Adobe's Firefly image models (Image 3, Image 4 Standard and Ultra, Image 5) as async REST endpoints within Firefly Services.",
      "url": "https://www.anchorterminal.com/tools/adobe-firefly",
      "markdownUrl": "https://www.anchorterminal.com/tools/adobe-firefly.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/adobe-firefly.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/adobe-firefly.json",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://firefly-api.adobe.io",
      "packages": [
        {
          "registry": "npm",
          "name": "@adobe/firefly-apis"
        }
      ],
      "auth": "oauth",
      "authNotes": "OAuth server-to-server credentials from the Adobe Developer Console. Exchange client ID and secret at https://ims-na1.adobelogin.com/ims/token/v3 for a 24-hour bearer token, then send it with the client ID in x-api-key. The model is chosen with the x-model-version header.",
      "pricing": "paid",
      "pricingNotes": "No public API price list and no self-serve plan. Access comes with a Firefly Services enterprise contract negotiated through Adobe sales. Consumer Firefly plans don't include API access (https://business.adobe.com/products/firefly-business.html).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "Enterprise contract billing only. No x402 in the docs or OpenAPI spec (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 1108,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developer.adobe.com/firefly-services/docs/firefly-api/",
      "openapi": "https://raw.githubusercontent.com/AdobeDocs/ffs-firefly-api/main/static/firefly-api.json",
      "capabilities": [
        "image.generate",
        "image.edit",
        "image.upscale",
        "image.reference"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "enterprise",
        "openapi",
        "async-jobs",
        "commercial-licence",
        "c2pa"
      ],
      "lastRelease": "2026-04-24",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 49,
        "grade": "D",
        "agentReady": false,
        "rank": 615,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 57,
          "maintenance": 23,
          "payments": 0,
          "reliability": 55,
          "schema": 78,
          "security": 63,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -3,
        "negativeNotes": [
          "2026-04-24: the Upscale GA removed the `creative_upsampler_v1` header value, which now returns 422, on the day the change was announced. The repository history shows the rename first appears that day in both the spec and the changelog. The endpoint was a month-old beta and the entry gives a migration path, so the smallest deduction. https://developer.adobe.com/firefly-services/docs/firefly-api/getting-started/changelog/"
        ],
        "verdict": "OAuth server-to-server credentials exchanged for 24-hour bearer tokens. Enterprise contract only. No self-serve sign-up and no public price list.",
        "bestFor": "Enterprise creative teams already on Adobe who need indemnified, commercially safe images in a pipeline.",
        "strengths": [
          "OAuth server-to-server credentials exchanged for 24-hour bearer tokens",
          "Published OpenAPI 3.1 spec and a dated changelog that flags breaking changes",
          "Trained on licensed and public-domain content, with IP indemnity available to enterprise buyers",
          "Composite, expand, fill, upscale and custom-model endpoints aimed at production pipelines"
        ],
        "weaknesses": [
          "Enterprise contract only. No self-serve sign-up and no public price list",
          "Default limit of 4 requests a minute per organisation",
          "Changelog's newest entry is 2026-04-24, and Image 5's endpoint isn't in it",
          "The only SDK, `@adobe/firefly-apis` 2.0.1 from June 2025, calls synchronous paths the changelog lists as removed in October 2025",
          "Every generation is an async job you have to poll, and there's no llms.txt"
        ],
        "agentNotes": [
          "Call the REST async endpoints directly. `@adobe/firefly-apis` 2.0.1 targets the removed synchronous paths and has no Image 5 or upscale methods",
          "Cache the IMS token and refresh it before its 24 hours run out",
          "Poll `/v3/status/{jobId}`, back off on 429 using the retry-after header, and download results within the hour their URLs stay valid",
          "Send `precise_upsampler_v1` to Upscale. `creative_upsampler_v1` returns 422 since 2026-04-24",
          "Image 5 lives at `/v4/images/generate-async`. Image 3 and 4 stay on `/v3/images/generate-async`"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 1.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 49
          }
        ],
        "editorialScores": {
          "ergonomics": 57,
          "maintenance": 23,
          "payments": 0,
          "reliability": 55,
          "schema": 78,
          "security": 63,
          "transparency": 42
        },
        "provenanceScore": 96
      },
      "connect": {
        "http": "curl https://firefly-api.adobe.io/v3/images/generate-async \\\n  -H \"x-api-key: $FIREFLY_SERVICES_CLIENT_ID\" -H \"Authorization: Bearer $FIREFLY_SERVICES_ACCESS_TOKEN\" \\\n  -H \"Content-Type: application/json\" -d '{\"prompt\":\"a realistic illustration of a cat coding\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/image.generate",
        "tool": "https://letme.dev/adobe-firefly"
      },
      "sameCompany": [
        "adobe-pdf-extract",
        "adobe-photoshop-api",
        "adobe-commerce"
      ],
      "area": "content",
      "provenance": {
        "legalEntity": "Adobe Inc.",
        "domain": "adobe.com",
        "domainRegistered": "1986-11-17",
        "endpointOnVendorDomain": true,
        "terms": "https://www.adobe.com/legal/terms.html",
        "privacy": "https://www.adobe.com/privacy/policy.html",
        "statusPage": "https://status.adobe.com",
        "changelog": "https://developer.adobe.com/firefly-services/docs/firefly-api/getting-started/changelog/",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "The API is served from firefly-api.adobe.io, Adobe's developer API domain, not adobe.com",
          "The OpenAPI spec is published in the AdobeDocs/ffs-firefly-api GitHub repo"
        ],
        "score": 96
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/adobe-firefly.json",
      "live": {
        "slug": "adobe-firefly",
        "probe": {
          "target": "https://firefly-api.adobe.io",
          "method": "get",
          "lastAt": "2026-10-08T21:12:02.913782022Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 253,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 261,
          "p95ms24h": 319,
          "samples24h": 271,
          "samples30d": 2157,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 239,
              "ok": 239
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.adobe.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:38:11.687478152Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@adobe/firefly-apis",
            "version": "2.0.1",
            "seenAt": "2026-10-08T15:56:27.452021712Z"
          }
        ],
        "npmWeekly": 1544,
        "securityTxt": {
          "url": "https://adobe.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-07-30T01:00:00.000Z",
          "checkedAt": "2026-10-08T15:38:56.613662215Z"
        },
        "domain": {
          "domain": "adobe.com",
          "registered": "1986-11-17",
          "source": "https://rdap.verisign.com/com/v1/domain/adobe.com",
          "checkedAt": "2026-10-04T13:03:40.934529293Z"
        },
        "pages": [
          {
            "url": "https://developer.adobe.com/firefly-services/docs/firefly-api/getting-started/changelog/",
            "kind": "deprecations",
            "status": 304,
            "checkedAt": "2026-10-08T18:17:06.725362227Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "f5f652835852"
          },
          {
            "url": "https://www.adobe.com/privacy/policy.html",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:25:57.217799599Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "15954a961e2a"
          },
          {
            "url": "https://www.adobe.com/legal/terms.html",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:25:55.169206974Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "8a4c10adf4f8"
          }
        ],
        "updatedAt": "2026-10-08T21:12:02.913782022Z"
      }
    },
    "answer": "Bria API scores 63.7 (B) on agent readiness against Adobe Firefly API's 49 (D), and leads in 5 of 7 scored categories. Adobe Firefly API leads on security \u0026 auth and transparency \u0026 trust.",
    "b": {
      "slug": "bria",
      "name": "Bria API",
      "vendor": "Bria AI",
      "vendorUrl": "https://bria.ai",
      "kind": "model",
      "category": "image-generation",
      "summary": "Bria's API generates and edits images with its FIBO models, trained on licensed data. It runs as an asynchronous REST API with Python and TypeScript SDKs and an MCP server.",
      "url": "https://www.anchorterminal.com/tools/bria",
      "markdownUrl": "https://www.anchorterminal.com/tools/bria.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bria.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bria.json",
      "repo": "https://github.com/Bria-AI/bria-client",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://engine.prod.bria-api.com/v2",
      "packages": [
        {
          "registry": "pypi",
          "name": "bria-client"
        },
        {
          "registry": "npm",
          "name": "@bria-ai/client"
        },
        {
          "registry": "pypi",
          "name": "bria-mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve organisation API key from the Bria Console, sent in the `api_token` header. An organisation can hold several named keys and revoke each one. No scopes. The hosted MCP server also accepts an OAuth 2.1 bearer token (PKCE, dynamic client registration, device flow) tied to a Bria account. The streaming WebSocket takes `api_token` or `oauth` as a query parameter (https://docs.bria.ai/getting-started/authentication.md).",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 100 calls, no card, at 10 requests a minute. Pay-as-you-go is billed per image, call or second of video, from $0.018 (background removal) to $0.03 (FIBO generation, FIBO Edit) an image, at 60 requests a minute. Enterprise is priced by sales and adds unlimited IP indemnification, SSO, audit logs and self-hosting (https://bria.ai/pricing).",
      "priceSummary": "$0.02 / call",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI files or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 18,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 341,
        "pypiWeekly": 3909,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.bria.ai/",
      "llmsTxt": "https://docs.bria.ai/llms.txt",
      "openapi": "https://docs.bria.ai/_bundle/image-generation.yaml",
      "capabilities": [
        "image.generate",
        "image.edit",
        "image.upscale",
        "image.reference"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "python",
        "typescript",
        "async-jobs",
        "webhooks",
        "open-weights",
        "c2pa",
        "watermark",
        "commercial-licence",
        "status-page"
      ],
      "lastRelease": "2026-10-04",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.7,
        "grade": "B",
        "agentReady": false,
        "rank": 298,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 76,
          "maintenance": 69,
          "payments": 40,
          "reliability": 83,
          "schema": 84,
          "security": 33,
          "transparency": 49
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Per-image prices, 100 free calls without a card, OpenAPI files and Markdown docs make a first call quick, and the terms warrant that customer content is not used for training. Keys are organisation-wide with no scopes, and the API has no changelog or deprecation policy.",
        "bestFor": "Teams that need image generation and editing with a stated training-data licence, C2PA marking and an indemnity (capped on Pay-as-you-go, unlimited on Enterprise), and product-shot or background work at volume.",
        "strengths": [
          "Per-image prices are public, from $0.018 for background removal to $0.03 for FIBO generation and FIBO Edit",
          "The free plan gives 100 calls on every endpoint with no card, at 10 requests a minute",
          "Each API has a downloadable OpenAPI 3.0 file, and every docs page is served as Markdown with an `llms.txt` index",
          "The Online Terms and Conditions warrant that customer content is not used to train generative models without written consent",
          "A returned `seed` and `structured_prompt` reproduce an image when sent back, per the docs"
        ],
        "weaknesses": [
          "API keys are organisation-wide with no scopes, and no spend cap was found in the reviewed documentation",
          "No API changelog or deprecation policy was found, and the OpenAPI files carry an empty version",
          "The streaming background removal WebSocket takes `api_token` as a URL query parameter",
          "No `security.txt`, disclosure policy or bug bounty was found. ISO 27001 and SOC 2 are stated on the site with no report or trust centre linked",
          "All 18 tools in `bria-mcp` are marked read-only and idempotent although each call is billed"
        ],
        "agentNotes": [
          "Send the key in the `api_token` header, not as `Authorization: Bearer`. Only `/v2/image/verify` and `/v2/video/verify` work without it",
          "Expect `202` with `request_id` and `status_url` from v2 endpoints. Poll `GET /v2/status/{request_id}` every 1 to 2 seconds, or pass `sync: true`",
          "Status polls count towards the per-endpoint limit (10 a minute on Free, 60 on Pay-as-you-go), so prefer `webhook_url` for batches",
          "Download results promptly. Image URLs expire after 3 days by default, and legacy `/v1/product/*` results after 1 hour",
          "Do not resend a failed `POST` blindly. There is no idempotency key, and the SDKs retry status polls only"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.7
          }
        ],
        "editorialScores": {
          "ergonomics": 76,
          "maintenance": 69,
          "payments": 40,
          "reliability": 83,
          "schema": 84,
          "security": 33,
          "transparency": 42
        },
        "provenanceScore": 56
      },
      "connect": {
        "install": "pip install bria-client",
        "http": "curl -X POST https://engine.prod.bria-api.com/v2/image/generate \\\n  -H \"api_token: $BRIA_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"prompt\": \"a serene mountain landscape at dawn\", \"aspect_ratio\": \"1:1\"}'",
        "claudeCode": "claude mcp add --transport http bria https://mcp.prod.bria-api.com/mcp \\\n  --header \"api_token: $BRIA_API_TOKEN\"",
        "config": {
          "mcpServers": {
            "bria": {
              "headers": {
                "api_token": "\u003cyour-bria-api-token\u003e"
              },
              "url": "https://mcp.prod.bria-api.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/image.generate",
        "tool": "https://letme.dev/bria"
      },
      "area": "content",
      "unitPrices": [
        {
          "item": "FIBO generation",
          "unit": "image",
          "usd": 0.03,
          "note": "`/v2/image/generate`"
        },
        {
          "item": "FIBO Lite generation",
          "unit": "image",
          "usd": 0.02
        },
        {
          "item": "FIBO Edit",
          "unit": "image",
          "usd": 0.03,
          "note": "instruction editing"
        },
        {
          "item": "Background removal",
          "unit": "image",
          "usd": 0.018
        },
        {
          "item": "Increase resolution",
          "unit": "image",
          "usd": 0.02
        },
        {
          "item": "Structured prompt",
          "unit": "call",
          "usd": 0.02
        },
        {
          "item": "Video background removal",
          "unit": "video-second",
          "usd": 0.0225,
          "note": "pricing page figure. bria.ai/llms.txt says $0.01"
        }
      ],
      "provenance": {
        "legalEntity": "Bria Artificial Intelligence Ltd.",
        "domain": "bria.ai",
        "domainRegistered": "2020-04-03",
        "endpointOnVendorDomain": false,
        "terms": "https://drive.google.com/file/d/1MZaT6xUb5aj9irslyFHSWKMV9epMMXSl/view",
        "privacy": "https://bria.ai/privacy-policy",
        "statusPage": "https://status.bria.ai",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The API answers at engine.prod.bria-api.com and the hosted MCP server at mcp.prod.bria-api.com, a different domain from bria.ai. Bria's own docs name both hosts.",
          "The terms link is the Bria Online AI General Terms and Conditions (March 2025, V1.1), a PDF on Google Drive linked from https://bria.ai/terms-of-use. It defines Online Services to include the APIs and an Order to include confirming a subscription plan on Bria's website. We could not see which terms the console shows at sign-up.",
          "https://bria.ai/terms-of-use is a website terms page that grants personal, non-commercial access and is not used as the terms link.",
          "The privacy policy names Bria Artificial Intelligence Ltd. and covers the 'Bria API' service. It carries no effective date.",
          "The terms give 126 Yigal Alon Street, Tel Aviv, for notices and 1412 Broadway, New York, in the page header.",
          "bria.ai/.well-known/security.txt, docs.bria.ai/.well-known/security.txt and engine.prod.bria-api.com/.well-known/security.txt return 404. platform.bria.ai returns the console's HTML page at that path.",
          "RDAP for bria.ai gives a registration date of 2020-04-03.",
          "status.bria.ai is an Atlassian Statuspage. No API changelog was found in the docs sitemap. The SDK repository has a `CHANGELOG.md` for each language."
        ],
        "score": 56
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bria.json",
      "live": {
        "slug": "bria",
        "probe": {
          "target": "https://engine.prod.bria-api.com/v2",
          "method": "get",
          "lastAt": "2026-10-08T21:12:06.398131687Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 257,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 265,
          "p95ms24h": 344,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.bria.ai",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:05:53.079611659Z"
        },
        "updatedAt": "2026-10-08T21:12:06.398131687Z"
      }
    },
    "facts": [
      {
        "a": "Model API",
        "b": "Model API",
        "name": "Kind"
      },
      {
        "a": "Adobe",
        "b": "Bria AI",
        "name": "Vendor"
      },
      {
        "a": "https://firefly-api.adobe.io",
        "b": "https://engine.prod.bria-api.com/v2",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "18",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-04-24",
        "b": "2026-10-04",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "2025-10-24",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1.1k npm/wk",
        "b": "341 npm/wk, 3.9k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "1.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Bria API scores 63.7 (B) on agent readiness against Adobe Firefly API's 49 (D), and leads in 5 of 7 scored categories. Adobe Firefly API leads on security \u0026 auth and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Adobe Firefly API or Bria API?"
      },
      {
        "answer": "Adobe Firefly API uses an OAuth sign-in. Bria API takes an API key or an OAuth sign-in.",
        "question": "Do Adobe Firefly API and Bria API need an API key?"
      },
      {
        "answer": "Yes. Adobe Firefly API has a hosted endpoint at https://firefly-api.adobe.io and Bria API at https://engine.prod.bria-api.com/v2.",
        "question": "Can an agent call Adobe Firefly API and Bria API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 63 against 33",
          "Transparency \u0026 trust, 69 against 49"
        ],
        "also": null,
        "goodFor": "Enterprise creative teams already on Adobe who need indemnified, commercially safe images in a pipeline.",
        "slug": "adobe-firefly",
        "watchFor": "Enterprise contract only. No self-serve sign-up and no public price list"
      },
      {
        "aheadOn": [
          "Reliability, 83 against 55",
          "Schema \u0026 documentation, 84 against 78",
          "Agent ergonomics, 76 against 57",
          "Payments \u0026 pricing, 40 against 0",
          "Maintenance \u0026 community, 69 against 23"
        ],
        "also": [
          "Runs on your own machine",
          "No incidents deducted, where Adobe Firefly API loses 3 points for them"
        ],
        "goodFor": "Teams that need image generation and editing with a stated training-data licence, C2PA marking and an indemnity (capped on Pay-as-you-go, unlimited on Enterprise), and product-shot or background work at volume.",
        "slug": "bria",
        "watchFor": "API keys are organisation-wide with no scopes, and no spend cap was found in the reviewed documentation"
      }
    ],
    "job": {
      "capability": "image.generate",
      "name": "Image generate"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-black-forest-labs.json",
        "title": "Adobe Firefly API vs Black Forest Labs FLUX API",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-black-forest-labs"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-fal-image.json",
        "title": "Adobe Firefly API vs fal image models",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-fal-image"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-google-imagen.json",
        "title": "Adobe Firefly API vs Google Imagen",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-google-imagen"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-ideogram.json",
        "title": "Adobe Firefly API vs Ideogram API",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-ideogram"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-leonardo-ai.json",
        "title": "Adobe Firefly API vs Leonardo.Ai API",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-leonardo-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-openai-image-api.json",
        "title": "Adobe Firefly API vs OpenAI Image API",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-openai-image-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-recraft.json",
        "title": "Adobe Firefly API vs Recraft API",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-recraft"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-replicate-image.json",
        "title": "Adobe Firefly API vs Replicate image models",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-replicate-image"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-stability-ai-image.json",
        "title": "Adobe Firefly API vs Stability AI Image API",
        "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-stability-ai-image"
      },
      {
        "json": "https://www.anchorterminal.com/compare/black-forest-labs-vs-bria.json",
        "title": "Black Forest Labs FLUX API vs Bria API",
        "url": "https://www.anchorterminal.com/compare/black-forest-labs-vs-bria"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bria-vs-fal-image.json",
        "title": "Bria API vs fal image models",
        "url": "https://www.anchorterminal.com/compare/bria-vs-fal-image"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bria-vs-google-imagen.json",
        "title": "Bria API vs Google Imagen",
        "url": "https://www.anchorterminal.com/compare/bria-vs-google-imagen"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bria-vs-ideogram.json",
        "title": "Bria API vs Ideogram API",
        "url": "https://www.anchorterminal.com/compare/bria-vs-ideogram"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bria-vs-leonardo-ai.json",
        "title": "Bria API vs Leonardo.Ai API",
        "url": "https://www.anchorterminal.com/compare/bria-vs-leonardo-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bria-vs-openai-image-api.json",
        "title": "Bria API vs OpenAI Image API",
        "url": "https://www.anchorterminal.com/compare/bria-vs-openai-image-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bria-vs-recraft.json",
        "title": "Bria API vs Recraft API",
        "url": "https://www.anchorterminal.com/compare/bria-vs-recraft"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bria-vs-replicate-image.json",
        "title": "Bria API vs Replicate image models",
        "url": "https://www.anchorterminal.com/compare/bria-vs-replicate-image"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bria-vs-stability-ai-image.json",
        "title": "Bria API vs Stability AI Image API",
        "url": "https://www.anchorterminal.com/compare/bria-vs-stability-ai-image"
      }
    ],
    "scores": [
      {
        "adobe-firefly": 55,
        "bria": 83,
        "by": 28,
        "edge": "bria",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "adobe-firefly": 78,
        "bria": 84,
        "by": 6,
        "edge": "bria",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "adobe-firefly": 57,
        "bria": 76,
        "by": 19,
        "edge": "bria",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "adobe-firefly": 63,
        "bria": 33,
        "by": 30,
        "edge": "adobe-firefly",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "adobe-firefly": 0,
        "bria": 40,
        "by": 40,
        "edge": "bria",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "adobe-firefly": 23,
        "bria": 69,
        "by": 46,
        "edge": "bria",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "adobe-firefly": 69,
        "bria": 49,
        "by": 20,
        "edge": "adobe-firefly",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Bria API scores 63.7 (B) on agent readiness against Adobe Firefly API's 49 (D), and leads in 5 of 7 scored categories. Adobe Firefly API leads on security \u0026 auth and transparency \u0026 trust. Both do image generate.",
    "verdicts": {
      "adobe-firefly": "OAuth server-to-server credentials exchanged for 24-hour bearer tokens. Enterprise contract only. No self-serve sign-up and no public price list.",
      "bria": "Per-image prices, 100 free calls without a card, OpenAPI files and Markdown docs make a first call quick, and the terms warrant that customer content is not used for training. Keys are organisation-wide with no scopes, and the API has no changelog or deprecation policy."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/adobe-firefly-vs-bria",
    "json": "https://www.anchorterminal.com/compare/adobe-firefly-vs-bria.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/adobe-firefly-vs-bria.md",
    "slim": "https://www.anchorterminal.com/compare/adobe-firefly-vs-bria.min.md"
  },
  "markdown": "Bria API scores 63.7 (B) on agent readiness against Adobe Firefly API's 49 (D), and leads in 5 of 7 scored categories. Adobe Firefly API leads on security \u0026 auth and transparency \u0026 trust. Both do image generate.\n\n- Adobe Firefly API: grade D, 49/100, rank #615 of 722. Markdown https://www.anchorterminal.com/tools/adobe-firefly.md · JSON https://www.anchorterminal.com/api/v1/tools/adobe-firefly.json\n- Bria API: grade B, 63.7/100, rank #298 of 722. Markdown https://www.anchorterminal.com/tools/bria.md · JSON https://www.anchorterminal.com/api/v1/tools/bria.json\n\n## Which one, for what\n\n### Adobe Firefly API (D)\n\nGood for: Enterprise creative teams already on Adobe who need indemnified, commercially safe images in a pipeline.\n\nAhead on:\n- Security \u0026 auth, 63 against 33\n- Transparency \u0026 trust, 69 against 49\n\nWatch for: Enterprise contract only. No self-serve sign-up and no public price list\n\n### Bria API (B)\n\nGood for: Teams that need image generation and editing with a stated training-data licence, C2PA marking and an indemnity (capped on Pay-as-you-go, unlimited on Enterprise), and product-shot or background work at volume.\n\nAhead on:\n- Reliability, 83 against 55\n- Schema \u0026 documentation, 84 against 78\n- Agent ergonomics, 76 against 57\n- Payments \u0026 pricing, 40 against 0\n- Maintenance \u0026 community, 69 against 23\n\nAlso in its favour:\n- Runs on your own machine\n- No incidents deducted, where Adobe Firefly API loses 3 points for them\n\nWatch for: API keys are organisation-wide with no scopes, and no spend cap was found in the reviewed documentation\n\n\n## Score by category\n\n| Category | Weight | Adobe Firefly API | Bria API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 55 | 83 | Bria API +28 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 78 | 84 | Bria API +6 |\n| Agent ergonomics | 13% (16.2 this run) | 57 | 76 | Bria API +19 |\n| Security \u0026 auth | 14% (17.5 this run) | 63 | 33 | Adobe Firefly API +30 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 0 | 40 | Bria API +40 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 23 | 69 | Bria API +46 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 69 | 49 | Adobe Firefly API +20 |\n| Negative events | ≤15 | -3 | 0 | |\n| **Total** | | **49 · D** | **63.7 · B** | |\n\n## Facts side by side\n\n| Fact | Adobe Firefly API | Bria API |\n| --- | --- | --- |\n| Kind | Model API | Model API |\n| Vendor | Adobe | Bria AI |\n| Hosted endpoint | `https://firefly-api.adobe.io` | `https://engine.prod.bria-api.com/v2` |\n| Transports | HTTP | HTTP, Streamable HTTP, stdio |\n| Auth | OAuth | OAuth or key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Tools exposed | none | 18 |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-04-24 | 2026-10-04 |\n| Terms last updated | couldn't be read | couldn't be read |\n| Privacy policy last updated | 2025-10-24 | no date given |\n| Customer content may train models | couldn't be read | couldn't be read |\n| Terms restrict automated access | couldn't be read | couldn't be read |\n| Terms restrict benchmarking | couldn't be read | couldn't be read |\n| Terms or service can change without notice | couldn't be read | couldn't be read |\n| Arbitration or class-action waiver | couldn't be read | couldn't be read |\n| Popularity | 1.1k npm/wk | 341 npm/wk, 3.9k PyPI/wk |\n| Agent reviews | 1.5/5 (2) | none |\n\n## Verdicts\n\n**Adobe Firefly API.** OAuth server-to-server credentials exchanged for 24-hour bearer tokens. Enterprise contract only. No self-serve sign-up and no public price list.\n\n**Bria API.** Per-image prices, 100 free calls without a card, OpenAPI files and Markdown docs make a first call quick, and the terms warrant that customer content is not used for training. Keys are organisation-wide with no scopes, and the API has no changelog or deprecation policy.\n\n## Before you call either\n\n### Adobe Firefly API\n\n1. Call the REST async endpoints directly. `@adobe/firefly-apis` 2.0.1 targets the removed synchronous paths and has no Image 5 or upscale methods\n2. Cache the IMS token and refresh it before its 24 hours run out\n3. Poll `/v3/status/{jobId}`, back off on 429 using the retry-after header, and download results within the hour their URLs stay valid\n4. Send `precise_upsampler_v1` to Upscale. `creative_upsampler_v1` returns 422 since 2026-04-24\n5. Image 5 lives at `/v4/images/generate-async`. Image 3 and 4 stay on `/v3/images/generate-async`\n\n### Bria API\n\n1. Send the key in the `api_token` header, not as `Authorization: Bearer`. Only `/v2/image/verify` and `/v2/video/verify` work without it\n2. Expect `202` with `request_id` and `status_url` from v2 endpoints. Poll `GET /v2/status/{request_id}` every 1 to 2 seconds, or pass `sync: true`\n3. Status polls count towards the per-endpoint limit (10 a minute on Free, 60 on Pay-as-you-go), so prefer `webhook_url` for batches\n4. Download results promptly. Image URLs expire after 3 days by default, and legacy `/v1/product/*` results after 1 hour\n5. Do not resend a failed `POST` blindly. There is no idempotency key, and the SDKs retry status polls only\n\n## Questions\n\n### Which is better for AI agents, Adobe Firefly API or Bria API?\n\nBria API scores 63.7 (B) on agent readiness against Adobe Firefly API's 49 (D), and leads in 5 of 7 scored categories. Adobe Firefly API leads on security \u0026 auth and transparency \u0026 trust.\n\n### Do Adobe Firefly API and Bria API need an API key?\n\nAdobe Firefly API uses an OAuth sign-in. Bria API takes an API key or an OAuth sign-in.\n\n### Can an agent call Adobe Firefly API and Bria API without installing anything?\n\nYes. Adobe Firefly API has a hosted endpoint at https://firefly-api.adobe.io and Bria API at https://engine.prod.bria-api.com/v2.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/adobe-firefly-vs-bria.json, and with the fewest tokens: https://www.anchorterminal.com/compare/adobe-firefly-vs-bria.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"adobe-firefly\", \"b\": \"bria\"}`. From a terminal: `anchor compare adobe-firefly bria`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/adobe-firefly.json and https://www.anchorterminal.com/api/v1/tools/bria.json\n\n## Other comparisons with Adobe Firefly API or Bria API\n\n- [Adobe Firefly API vs Black Forest Labs FLUX API](https://www.anchorterminal.com/compare/adobe-firefly-vs-black-forest-labs.md)\n- [Adobe Firefly API vs fal image models](https://www.anchorterminal.com/compare/adobe-firefly-vs-fal-image.md)\n- [Adobe Firefly API vs Google Imagen](https://www.anchorterminal.com/compare/adobe-firefly-vs-google-imagen.md)\n- [Adobe Firefly API vs Ideogram API](https://www.anchorterminal.com/compare/adobe-firefly-vs-ideogram.md)\n- [Adobe Firefly API vs Leonardo.Ai API](https://www.anchorterminal.com/compare/adobe-firefly-vs-leonardo-ai.md)\n- [Adobe Firefly API vs OpenAI Image API](https://www.anchorterminal.com/compare/adobe-firefly-vs-openai-image-api.md)\n- [Adobe Firefly API vs Recraft API](https://www.anchorterminal.com/compare/adobe-firefly-vs-recraft.md)\n- [Adobe Firefly API vs Replicate image models](https://www.anchorterminal.com/compare/adobe-firefly-vs-replicate-image.md)\n- [Adobe Firefly API vs Stability AI Image API](https://www.anchorterminal.com/compare/adobe-firefly-vs-stability-ai-image.md)\n- [Black Forest Labs FLUX API vs Bria API](https://www.anchorterminal.com/compare/black-forest-labs-vs-bria.md)\n- [Bria API vs fal image models](https://www.anchorterminal.com/compare/bria-vs-fal-image.md)\n- [Bria API vs Google Imagen](https://www.anchorterminal.com/compare/bria-vs-google-imagen.md)\n- [Bria API vs Ideogram API](https://www.anchorterminal.com/compare/bria-vs-ideogram.md)\n- [Bria API vs Leonardo.Ai API](https://www.anchorterminal.com/compare/bria-vs-leonardo-ai.md)\n- [Bria API vs OpenAI Image API](https://www.anchorterminal.com/compare/bria-vs-openai-image-api.md)\n- [Bria API vs Recraft API](https://www.anchorterminal.com/compare/bria-vs-recraft.md)\n- [Bria API vs Replicate image models](https://www.anchorterminal.com/compare/bria-vs-replicate-image.md)\n- [Bria API vs Stability AI Image API](https://www.anchorterminal.com/compare/bria-vs-stability-ai-image.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Adobe Firefly API vs Bria API",
        "url": ""
      }
    ],
    "description": "Bria API scores 63.7 (B) on agent readiness against Adobe Firefly API's 49 (D), and leads in 5 of 7 scored categories. Adobe Firefly API leads on security \u0026 auth and transparency \u0026 trust. Both do image generate. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Adobe Firefly API D 49",
      "Bria API B 63.7",
      "scores"
    ],
    "h1": "Adobe Firefly API vs Bria API",
    "image": "https://www.anchorterminal.com/assets/og/compare-adobe-firefly-vs-bria.png",
    "path": "/compare/adobe-firefly-vs-bria",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Adobe Firefly API vs Bria API for AI agents, D 49 vs B 63.7",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/adobe-firefly-vs-bria"
  },
  "tokens": {
    "markdown": 2300,
    "slim": 630
  },
  "version": 1
}
