{
    "variable": [
        {
            "id": "baseUrl",
            "key": "baseUrl",
            "type": "string",
            "name": "string",
            "value": "https:\/\/mutamarket.test"
        }
    ],
    "info": {
        "name": "MutaMarket API Documentation",
        "_postman_id": "395a65ff-f212-4ffb-8a5b-305ab4bfe10c",
        "description": "Public API for MutaMarket, the marketplace for abyssal modules in EVE Online. Browse modules with their rolled attributes, roll-quality metrics, price estimates and sale listings, import new modules from the game, and access per-type roll statistics.",
        "schema": "https:\/\/schema.getpostman.com\/json\/collection\/v2.1.0\/collection.json"
    },
    "item": [
        {
            "name": "Abyssal Types",
            "description": "\nRoll statistics of abyssal types and their attributes.",
            "item": [
                {
                    "name": "List attribute roll ranges per abyssal type",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/abyssal-type-statistics",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/abyssal-type-statistics"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns the best and worst possible rolled value of every mutated attribute for every\nabyssal type, including the attribute definition and the abyssal type itself.\n\nUse this to normalize a module's rolls against the theoretical range of its type \u2014 it is\nthe same data MutaMarket uses for the `fraction_type` roll-quality metric and the\nattribute bars.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "[\n  {\n    \"id\": 1,\n    \"type_id\": 47408,\n    \"attribute_id\": 6,\n    \"high_is_good\": false,\n    \"is_virtual\": false,\n    \"best\": 71.5,\n    \"worst\": 261.00001,\n    \"is_derived\": false,\n    \"attribute\": {\n      \"id\": 6,\n      \"name\": \"capacitorNeed\",\n      \"display_name\": \"Activation Cost\",\n      \"high_is_good\": false,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 114,\n        \"name\": \"capacitor units\",\n        \"display_name\": \"GJ\"\n      }\n    },\n    \"type\": {\n      \"id\": 47408,\n      \"name\": \"50MN Abyssal Microwarpdrive\",\n      \"meta_group\": \"Abyssal\",\n      \"meta_group_id\": 15,\n      \"published\": true\n    }\n  },\n  {\n    \"id\": 2,\n    \"type_id\": 47408,\n    \"attribute_id\": 20,\n    \"high_is_good\": true,\n    \"is_virtual\": false,\n    \"best\": 597.99999,\n    \"worst\": 425.00001,\n    \"is_derived\": false,\n    \"attribute\": {\n      \"id\": 20,\n      \"name\": \"speedFactor\",\n      \"display_name\": \"Maximum Velocity Bonus\",\n      \"high_is_good\": true,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 124,\n        \"name\": \"Modifier Relative Percent\",\n        \"display_name\": \"%\"\n      }\n    },\n    \"type\": {\n      \"id\": 47408,\n      \"name\": \"50MN Abyssal Microwarpdrive\",\n      \"meta_group\": \"Abyssal\",\n      \"meta_group_id\": 15,\n      \"published\": true\n    }\n  }\n]",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Estimators",
            "description": "\nQuality metrics of the machine-learning price estimators behind the\nestimated_value of modules.",
            "item": [
                {
                    "name": "List price estimator quality metrics",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/estimator-statistics",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/estimator-statistics"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns quality metrics for every per-type machine-learning price estimator: how much\nhistoric sales data each model was trained on (`data_count`), how well it fits the\ntraining data (`r2`, where 1 is a perfect fit), and its average prediction error in ISK\n(`mae`) and normalized by the mean sale price (`nmae`).\n\nUseful for judging how much trust to put into the `estimated_value` of modules of a\ngiven type.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "[\n  {\n    \"id\": 1,\n    \"type_id\": 47408,\n    \"name\": \"50MN Abyssal Microwarpdrive\",\n    \"data_count\": 4679,\n    \"r2\": 0.41,\n    \"mae\": 183450744.87,\n    \"nmae\": 39.3,\n    \"last_trained_at\": \"2026-02-23T11:00:29.000000Z\",\n    \"data_statistics\": {\n      \"Tech I\": 1804,\n      \"Faction\": 333,\n      \"Officer\": 1,\n      \"Tech II\": 243,\n      \"Deadspace\": 2182,\n      \"Storyline\": 116\n    },\n    \"created_at\": \"2024-11-25T15:02:07.000000Z\",\n    \"updated_at\": \"2026-02-23T11:00:29.000000Z\"\n  },\n  {\n    \"id\": 2,\n    \"type_id\": 47702,\n    \"name\": \"Abyssal Stasis Webifier\",\n    \"data_count\": 11492,\n    \"r2\": 0.71,\n    \"mae\": 117016139.61,\n    \"nmae\": 29.67,\n    \"last_trained_at\": \"2026-02-23T11:01:13.000000Z\",\n    \"data_statistics\": {\n      \"Tech I\": 410,\n      \"Faction\": 9891,\n      \"Officer\": 17,\n      \"Tech II\": 1174\n    },\n    \"created_at\": \"2024-11-25T15:02:07.000000Z\",\n    \"updated_at\": \"2026-02-23T11:01:13.000000Z\"\n  }\n]",
                            "name": ""
                        }
                    ]
                }
            ]
        },
        {
            "name": "Modules",
            "description": "\nBrowse abyssal modules that are for sale, retrieve single modules with all\nrolled attributes and price data, and import modules from EVE.",
            "item": [
                {
                    "name": "Get a single module",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/modules\/:module_slug",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/modules\/:module_slug",
                            "variable": [
                                {
                                    "id": "module_slug",
                                    "key": "module_slug",
                                    "value": "large-abyssal-armor-repairer-1027784685291",
                                    "description": "The slug of the module."
                                },
                                {
                                    "id": "module",
                                    "key": "module",
                                    "value": "1052842251186",
                                    "description": "The EVE item id of the module, or its MutaMarket slug (e.g. `abyssal-ballistic-control-system-1052842251186`)."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Returns a single module with all rolled attributes, roll-quality metrics, the estimated\nvalue, and its current sale listing (contract or MutaMarket sell listing), if any. The\nmodule must have been imported into MutaMarket before; unknown item ids return 404.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 1052842251186,\n  \"type\": {\n    \"id\": 49738,\n    \"name\": \"Abyssal Ballistic Control System\"\n  },\n  \"creator\": {\n    \"id\": 2112606829,\n    \"slug\": \"max1m-bolshakov-2112606829\",\n    \"name\": \"Max1m Bolshakov\",\n    \"description\": null,\n    \"has_premium\": false,\n    \"corporation_id\": 1000045\n  },\n  \"mutated_attributes\": [\n    {\n      \"id\": 50,\n      \"name\": \"cpu\",\n      \"display_name\": \"CPU usage\",\n      \"value\": 21.069600465775,\n      \"base_value\": 24,\n      \"fraction\": 0.814,\n      \"fraction_type\": 0.4884,\n      \"fraction_absolute\": 0.90597529518355,\n      \"bar\": 0,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 106,\n        \"name\": \"Teraflops\",\n        \"display_name\": \"tf\"\n      },\n      \"is_virtual\": false\n    },\n    {\n      \"id\": 1255,\n      \"name\": \"droneDamageBonus\",\n      \"display_name\": \"Drone Damage Bonus\",\n      \"value\": 0,\n      \"base_value\": 0,\n      \"fraction\": 0,\n      \"fraction_type\": 0,\n      \"fraction_absolute\": -2,\n      \"bar\": 0,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 105,\n        \"name\": \"Percentage\",\n        \"display_name\": \"%\"\n      },\n      \"is_virtual\": true\n    },\n    {\n      \"id\": 213,\n      \"name\": \"missileDamageMultiplierBonus\",\n      \"display_name\": \"Missile Damage Bonus\",\n      \"value\": 1.1202800431252,\n      \"base_value\": 1.12,\n      \"fraction\": 0.01786,\n      \"fraction_type\": 0.01,\n      \"fraction_absolute\": 0.59083450673975,\n      \"bar\": 0,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 109,\n        \"name\": \"Modifier Percent\",\n        \"display_name\": \"%\"\n      },\n      \"is_virtual\": false\n    },\n    {\n      \"id\": 204,\n      \"name\": \"speedMultiplier\",\n      \"display_name\": \"Rate Of Fire Bonus\",\n      \"value\": 0.87609376326203,\n      \"base_value\": 0.89,\n      \"fraction\": 0.78125,\n      \"fraction_type\": 0.52083,\n      \"fraction_absolute\": 0.86475956827719,\n      \"bar\": 0,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 111,\n        \"name\": \"Inversed Modifier Percent\",\n        \"display_name\": \"%\"\n      },\n      \"is_virtual\": false\n    },\n    {\n      \"id\": 5000004,\n      \"name\": \"dpsIncreaseMissiles\",\n      \"display_name\": \"DPS Increase\",\n      \"value\": 1.27872162787,\n      \"base_value\": 1.2584269662921,\n      \"fraction\": 0.4648,\n      \"fraction_type\": 0.28443,\n      \"fraction_absolute\": 0.70135645073128,\n      \"bar\": 0,\n      \"is_derived\": true,\n      \"unit\": {\n        \"id\": 109,\n        \"name\": \"Modifier Percent\",\n        \"display_name\": \"%\"\n      },\n      \"is_virtual\": false\n    }\n  ],\n  \"source_type\": {\n    \"id\": 13937,\n    \"name\": \"Dread Guristas Ballistic Control System\",\n    \"meta_group\": \"Faction\",\n    \"meta_group_id\": 4,\n    \"published\": true\n  },\n  \"mutaplasmid\": {\n    \"id\": 49740,\n    \"name\": \"Gravid Ballistic Control System Mutaplasmid\"\n  },\n  \"contract\": {\n    \"id\": 228749822,\n    \"type\": \"item_exchange\",\n    \"price\": 290000000,\n    \"asking_for_items\": false,\n    \"plex_count\": 0,\n    \"non_abyssal_modules_count\": 0,\n    \"abyssal_modules_count\": 1,\n    \"issuer\": {\n      \"id\": 2112606829,\n      \"slug\": \"max1m-bolshakov-2112606829\",\n      \"name\": \"Max1m Bolshakov\",\n      \"description\": null,\n      \"has_premium\": false,\n      \"corporation_id\": 1000045\n    },\n    \"date_issued\": \"2026-02-23T10:42:18.000000Z\",\n    \"date_expired\": \"2026-03-23T10:42:18.000000Z\"\n  },\n  \"estimated_value\": 289601018.52,\n  \"estimated_value_updated_at\": \"2026-02-23T10:41:59.000000Z\",\n  \"public_asset\": null,\n  \"slug\": \"abyssal-ballistic-control-system-1052842251186\",\n  \"average_fraction\": 0.53770333333333\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"No module with this item id is known to MutaMarket.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "List modules of a type",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/modules\/:query",
                            "query": [
                                {
                                    "key": "cursor",
                                    "value": "",
                                    "description": "Pagination cursor taken from `meta.next_cursor` of a previous response.",
                                    "disabled": true
                                },
                                {
                                    "key": "region_id",
                                    "value": "",
                                    "description": "Only include modules whose contract is located in this EVE region, e.g. 10000002 for The Forge.",
                                    "disabled": true
                                }
                            ],
                            "raw": "{{baseUrl}}\/api\/modules\/:query?cursor=&region_id=",
                            "variable": [
                                {
                                    "id": "query",
                                    "key": "query",
                                    "value": "type\/abyssal-ballistic-control-system\/sort\/price\/asc\/goldbar",
                                    "description": "The abyssal type plus any filter and sort options, chained as URL segments (see description). Must contain a type segment with the EVE type id or name slug."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Lists all modules of an abyssal type that are currently for sale, either through a public\nin-game contract or a MutaMarket sell listing. Newest modules come first unless a sort\noption is given.\n\nThe `query` path segment must contain a type option (`type\/{id-or-slug}`, e.g. `type\/49738`\nor `type\/abyssal-ballistic-control-system`) and accepts the same filter options as the\nmodule browser, chained as URL segments in any order:\n\n| Option | Format | Effect |\n|---|---|---|\n| sort | `sort\/{field}\/{direction}` | Sort by `price` (contract price), `value` (estimated value), `fraction` (average roll quality), or a dogma attribute given by id or name (e.g. `sort\/50\/desc` or `sort\/cpu\/asc`). Direction is `asc` or `desc`. Sorting by an attribute only returns modules that have that attribute. |\n| attributes | `attributes\/{attribute}\/{value}` (pairs, repeatable) | Filter by rolled attribute values, e.g. `attributes\/cpu\/20-30\/damageMultiplier\/2.1`. A `min-max` range bounds the value; a single number is a minimum for attributes where high is good, otherwise a maximum. |\n| meta-group | `meta-group\/{group}` | One of `t1`, `t2`, `storyline`, `faction`, `officer`, `deadspace`: only modules mutated from a source module of that meta group. |\n| meta-level | `meta-level\/{n}` | Only modules mutated from a source module of that meta level. |\n| contract-price | `contract-price\/{max}` or `contract-price\/{min}-{max}` | Bound the contract price in ISK. |\n| estimated-value | `estimated-value\/{min}` or `estimated-value\/{min}-{max}` | Bound the estimated value in ISK. |\n| goldbar | flag | Only modules with at least one attribute rolled better than the best regular meta variant. |\n| brownbar | flag | Only modules with at least one attribute rolled worse than the worst regular meta variant. |\n| diamondbar | flag | Only modules with the best recorded roll for the type in at least one attribute. |\n| item-exchange \/ auction | flag | Only contracts of that type. |\n| no-multi-item-contracts | flag | Only contracts that contain exactly one abyssal module and nothing else. |\n| contracts-only | flag | Exclude modules that are only listed as MutaMarket sell listings without a contract. |\n| without-other-items | flag | Only contracts that do not include unrelated items. |\n\nFull example: `\/api\/modules\/type\/abyssal-ballistic-control-system\/sort\/price\/asc\/goldbar\/contract-price\/0-500000000`\n\nResponses are cursor-paginated with 100 modules per page: request the next page by passing\n`meta.next_cursor` as the `cursor` query parameter, or follow `links.next` directly.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"data\": [\n    {\n      \"id\": 1052842251186,\n      \"type\": {\n        \"id\": 49738,\n        \"name\": \"Abyssal Ballistic Control System\"\n      },\n      \"creator\": {\n        \"id\": 2112606829,\n        \"slug\": \"max1m-bolshakov-2112606829\",\n        \"name\": \"Max1m Bolshakov\",\n        \"description\": null,\n        \"has_premium\": false,\n        \"corporation_id\": 1000045\n      },\n      \"mutated_attributes\": [\n        {\n          \"id\": 50,\n          \"name\": \"cpu\",\n          \"display_name\": \"CPU usage\",\n          \"value\": 21.069600465775,\n          \"base_value\": 24,\n          \"fraction\": 0.814,\n          \"fraction_type\": 0.4884,\n          \"fraction_absolute\": 0.90597529518355,\n          \"bar\": 0,\n          \"is_derived\": false,\n          \"unit\": {\n            \"id\": 106,\n            \"name\": \"Teraflops\",\n            \"display_name\": \"tf\"\n          },\n          \"is_virtual\": false\n        },\n        {\n          \"id\": 1255,\n          \"name\": \"droneDamageBonus\",\n          \"display_name\": \"Drone Damage Bonus\",\n          \"value\": 0,\n          \"base_value\": 0,\n          \"fraction\": 0,\n          \"fraction_type\": 0,\n          \"fraction_absolute\": -2,\n          \"bar\": 0,\n          \"is_derived\": false,\n          \"unit\": {\n            \"id\": 105,\n            \"name\": \"Percentage\",\n            \"display_name\": \"%\"\n          },\n          \"is_virtual\": true\n        },\n        {\n          \"id\": 213,\n          \"name\": \"missileDamageMultiplierBonus\",\n          \"display_name\": \"Missile Damage Bonus\",\n          \"value\": 1.1202800431252,\n          \"base_value\": 1.12,\n          \"fraction\": 0.01786,\n          \"fraction_type\": 0.01,\n          \"fraction_absolute\": 0.59083450673975,\n          \"bar\": 0,\n          \"is_derived\": false,\n          \"unit\": {\n            \"id\": 109,\n            \"name\": \"Modifier Percent\",\n            \"display_name\": \"%\"\n          },\n          \"is_virtual\": false\n        },\n        {\n          \"id\": 204,\n          \"name\": \"speedMultiplier\",\n          \"display_name\": \"Rate Of Fire Bonus\",\n          \"value\": 0.87609376326203,\n          \"base_value\": 0.89,\n          \"fraction\": 0.78125,\n          \"fraction_type\": 0.52083,\n          \"fraction_absolute\": 0.86475956827719,\n          \"bar\": 0,\n          \"is_derived\": false,\n          \"unit\": {\n            \"id\": 111,\n            \"name\": \"Inversed Modifier Percent\",\n            \"display_name\": \"%\"\n          },\n          \"is_virtual\": false\n        },\n        {\n          \"id\": 5000004,\n          \"name\": \"dpsIncreaseMissiles\",\n          \"display_name\": \"DPS Increase\",\n          \"value\": 1.27872162787,\n          \"base_value\": 1.2584269662921,\n          \"fraction\": 0.4648,\n          \"fraction_type\": 0.28443,\n          \"fraction_absolute\": 0.70135645073128,\n          \"bar\": 0,\n          \"is_derived\": true,\n          \"unit\": {\n            \"id\": 109,\n            \"name\": \"Modifier Percent\",\n            \"display_name\": \"%\"\n          },\n          \"is_virtual\": false\n        }\n      ],\n      \"source_type\": {\n        \"id\": 13937,\n        \"name\": \"Dread Guristas Ballistic Control System\",\n        \"meta_group\": \"Faction\",\n        \"meta_group_id\": 4,\n        \"published\": true\n      },\n      \"mutaplasmid\": {\n        \"id\": 49740,\n        \"name\": \"Gravid Ballistic Control System Mutaplasmid\"\n      },\n      \"contract\": {\n        \"id\": 228749822,\n        \"type\": \"item_exchange\",\n        \"price\": 290000000,\n        \"asking_for_items\": false,\n        \"plex_count\": 0,\n        \"non_abyssal_modules_count\": 0,\n        \"abyssal_modules_count\": 1,\n        \"issuer\": {\n          \"id\": 2112606829,\n          \"slug\": \"max1m-bolshakov-2112606829\",\n          \"name\": \"Max1m Bolshakov\",\n          \"description\": null,\n          \"has_premium\": false,\n          \"corporation_id\": 1000045\n        },\n        \"date_issued\": \"2026-02-23T10:42:18.000000Z\",\n        \"date_expired\": \"2026-03-23T10:42:18.000000Z\"\n      },\n      \"estimated_value\": 289601018.52,\n      \"estimated_value_updated_at\": \"2026-02-23T10:41:59.000000Z\",\n      \"public_asset\": null,\n      \"slug\": \"abyssal-ballistic-control-system-1052842251186\",\n      \"average_fraction\": 0.53770333333333\n    }\n  ],\n  \"links\": {\n    \"first\": null,\n    \"last\": null,\n    \"prev\": null,\n    \"next\": \"https:\/\/mutamarket.test\/api\/modules\/type\/49738?cursor=eyJtb2R1bGVzLmlkIjoxMDUyNzM1NjA0NDY5LCJfcG9pbnRzVG9OZXh0SXRlbXMiOnRydWV9\"\n  },\n  \"meta\": {\n    \"path\": \"https:\/\/mutamarket.test\/api\/modules\/type\/49738\",\n    \"per_page\": 100,\n    \"next_cursor\": \"eyJtb2R1bGVzLmlkIjoxMDUyNzM1NjA0NDY5LCJfcG9pbnRzVG9OZXh0SXRlbXMiOnRydWV9\",\n    \"prev_cursor\": null\n  }\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\": \"Please provide a valid type.\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "Import a module from EVE",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/modules",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/modules"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"item_id\":1041420958612,\"type_id\":47820}"
                        },
                        "description": "Imports a module from EVE into MutaMarket by its in-game item id and returns it with all\nrolled attributes, roll-quality metrics, and the estimated value.\n\nIdentify the module either explicitly via `type_id` + `item_id`, or by pasting an in-game\nitem link as `message` \u2014 any string containing `showinfo:{type_id}\/\/{item_id}` works,\nwhich is what you get when you drag an item into the EVE chat window and copy the message.\n\nThe module data is fetched live from the EVE ESI API and the value estimation runs\nsynchronously, so expect this request to take a few seconds. Re-submitting an existing\nmodule refreshes its data instead of duplicating it.",
                        "auth": {
                            "type": "noauth"
                        }
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\n  \"id\": 1052842251186,\n  \"type\": {\n    \"id\": 49738,\n    \"name\": \"Abyssal Ballistic Control System\"\n  },\n  \"creator\": {\n    \"id\": 2112606829,\n    \"slug\": \"max1m-bolshakov-2112606829\",\n    \"name\": \"Max1m Bolshakov\",\n    \"description\": null,\n    \"has_premium\": false,\n    \"corporation_id\": 1000045\n  },\n  \"mutated_attributes\": [\n    {\n      \"id\": 50,\n      \"name\": \"cpu\",\n      \"display_name\": \"CPU usage\",\n      \"value\": 21.069600465775,\n      \"base_value\": 24,\n      \"fraction\": 0.814,\n      \"fraction_type\": 0.4884,\n      \"fraction_absolute\": 0.90597529518355,\n      \"bar\": 0,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 106,\n        \"name\": \"Teraflops\",\n        \"display_name\": \"tf\"\n      },\n      \"is_virtual\": false\n    },\n    {\n      \"id\": 1255,\n      \"name\": \"droneDamageBonus\",\n      \"display_name\": \"Drone Damage Bonus\",\n      \"value\": 0,\n      \"base_value\": 0,\n      \"fraction\": 0,\n      \"fraction_type\": 0,\n      \"fraction_absolute\": -2,\n      \"bar\": 0,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 105,\n        \"name\": \"Percentage\",\n        \"display_name\": \"%\"\n      },\n      \"is_virtual\": true\n    },\n    {\n      \"id\": 213,\n      \"name\": \"missileDamageMultiplierBonus\",\n      \"display_name\": \"Missile Damage Bonus\",\n      \"value\": 1.1202800431252,\n      \"base_value\": 1.12,\n      \"fraction\": 0.01786,\n      \"fraction_type\": 0.01,\n      \"fraction_absolute\": 0.59083450673975,\n      \"bar\": 0,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 109,\n        \"name\": \"Modifier Percent\",\n        \"display_name\": \"%\"\n      },\n      \"is_virtual\": false\n    },\n    {\n      \"id\": 204,\n      \"name\": \"speedMultiplier\",\n      \"display_name\": \"Rate Of Fire Bonus\",\n      \"value\": 0.87609376326203,\n      \"base_value\": 0.89,\n      \"fraction\": 0.78125,\n      \"fraction_type\": 0.52083,\n      \"fraction_absolute\": 0.86475956827719,\n      \"bar\": 0,\n      \"is_derived\": false,\n      \"unit\": {\n        \"id\": 111,\n        \"name\": \"Inversed Modifier Percent\",\n        \"display_name\": \"%\"\n      },\n      \"is_virtual\": false\n    },\n    {\n      \"id\": 5000004,\n      \"name\": \"dpsIncreaseMissiles\",\n      \"display_name\": \"DPS Increase\",\n      \"value\": 1.27872162787,\n      \"base_value\": 1.2584269662921,\n      \"fraction\": 0.4648,\n      \"fraction_type\": 0.28443,\n      \"fraction_absolute\": 0.70135645073128,\n      \"bar\": 0,\n      \"is_derived\": true,\n      \"unit\": {\n        \"id\": 109,\n        \"name\": \"Modifier Percent\",\n        \"display_name\": \"%\"\n      },\n      \"is_virtual\": false\n    }\n  ],\n  \"source_type\": {\n    \"id\": 13937,\n    \"name\": \"Dread Guristas Ballistic Control System\",\n    \"meta_group\": \"Faction\",\n    \"meta_group_id\": 4,\n    \"published\": true\n  },\n  \"mutaplasmid\": {\n    \"id\": 49740,\n    \"name\": \"Gravid Ballistic Control System Mutaplasmid\"\n  },\n  \"contract\": {\n    \"id\": 228749822,\n    \"type\": \"item_exchange\",\n    \"price\": 290000000,\n    \"asking_for_items\": false,\n    \"plex_count\": 0,\n    \"non_abyssal_modules_count\": 0,\n    \"abyssal_modules_count\": 1,\n    \"issuer\": {\n      \"id\": 2112606829,\n      \"slug\": \"max1m-bolshakov-2112606829\",\n      \"name\": \"Max1m Bolshakov\",\n      \"description\": null,\n      \"has_premium\": false,\n      \"corporation_id\": 1000045\n    },\n    \"date_issued\": \"2026-02-23T10:42:18.000000Z\",\n    \"date_expired\": \"2026-03-23T10:42:18.000000Z\"\n  },\n  \"estimated_value\": 289601018.52,\n  \"estimated_value_updated_at\": \"2026-02-23T10:41:59.000000Z\",\n  \"public_asset\": null,\n  \"slug\": \"abyssal-ballistic-control-system-1052842251186\",\n  \"average_fraction\": 0.53770333333333\n}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 400,
                            "body": "{\"message\": \"Failed to add module!\"}",
                            "name": ""
                        },
                        {
                            "header": [],
                            "code": 422,
                            "body": "{\"message\": \"The message field is required when item id is not present.\", \"errors\": {\"message\": [\"The message field is required when item id is not present.\"]}}",
                            "name": ""
                        }
                    ]
                }
            ]
        }
    ],
    "auth": {
        "type": "noauth"
    }
}