{
    "variable": [
        {
            "id": "baseUrl",
            "key": "baseUrl",
            "type": "string",
            "name": "string",
            "value": "https:\/\/fassiki.com"
        }
    ],
    "info": {
        "name": "Fassiki SaaS API Documentation",
        "_postman_id": "73f9dcfd-ce71-4841-b4c9-0931652615ae",
        "description": "",
        "schema": "https:\/\/schema.getpostman.com\/json\/collection\/v2.1.0\/collection.json"
    },
    "item": [
        {
            "name": "Analytics",
            "description": "",
            "item": [
                {
                    "name": "Lister les sites analytics",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/analytics\/websites",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/analytics\/websites"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Renvoie tous les sites web analytics de l'utilisateur authentifi\u00e9, avec le nombre de visiteurs."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"data\":[{\"id\":1,\"name\":\"Mon site\",\"host\":\"example.com\",\"tracking_type\":\"normal\",\"visitors_count\":0,\"is_enabled\":true}]}",
                            "name": "Liste"
                        }
                    ]
                },
                {
                    "name": "Cr\u00e9er un site analytics",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/analytics\/websites",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/analytics\/websites"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Mon blog\",\"host\":\"example.com\",\"tracking_type\":\"normal\"}"
                        },
                        "description": "Cr\u00e9e un nouveau site web \u00e0 tracker. Une `pixel_key` est g\u00e9n\u00e9r\u00e9e automatiquement\npour int\u00e9grer le script de tracking. Le plan doit avoir le module Analytics activ\u00e9\net ne pas avoir atteint sa limite de sites."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"id\":2,\"name\":\"Mon blog\",\"host\":\"example.com\",\"pixel_key\":\"aB3x...\",\"tracking_type\":\"normal\",\"is_enabled\":true}",
                            "name": "Site cr\u00e9\u00e9"
                        },
                        {
                            "header": [],
                            "code": 402,
                            "body": "{\"message\":\"Limite de sites atteinte pour votre plan (1).\"}",
                            "name": "Limite atteinte"
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Votre plan ne permet pas d'acc\u00e9der \u00e0 cette ressource.\"}",
                            "name": "Module d\u00e9sactiv\u00e9"
                        }
                    ]
                },
                {
                    "name": "Afficher un site analytics",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/analytics\/websites\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/analytics\/websites\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the website."
                                },
                                {
                                    "id": "website",
                                    "key": "website",
                                    "value": 1,
                                    "description": "Identifiant du site."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Renvoie les d\u00e9tails d'un site analytics sp\u00e9cifique appartenant \u00e0 l'utilisateur."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"id\":1,\"name\":\"Mon site\",\"host\":\"example.com\",\"tracking_type\":\"normal\"}",
                            "name": "Site trouv\u00e9"
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Ressource introuvable.\"}",
                            "name": "Introuvable"
                        }
                    ]
                },
                {
                    "name": "Mettre \u00e0 jour un site analytics",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/analytics\/websites\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/analytics\/websites\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the website."
                                },
                                {
                                    "id": "website",
                                    "key": "website",
                                    "value": 1,
                                    "description": "Identifiant du site."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Nouveau nom\",\"host\":\"newdomain.com\",\"tracking_type\":\"normal\",\"is_enabled\":false}"
                        },
                        "description": "Met \u00e0 jour les champs fournis d'un site analytics."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"id\":1,\"name\":\"Nouveau nom\",\"host\":\"newdomain.com\",\"is_enabled\":true}",
                            "name": "Site mis \u00e0 jour"
                        }
                    ]
                },
                {
                    "name": "Supprimer un site analytics",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/analytics\/websites\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/analytics\/websites\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the website."
                                },
                                {
                                    "id": "website",
                                    "key": "website",
                                    "value": 1,
                                    "description": "Identifiant du site."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Supprime d\u00e9finitivement un site analytics et toutes ses donn\u00e9es associ\u00e9es."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 204,
                            "body": "",
                            "name": "Site supprim\u00e9"
                        },
                        {
                            "header": [],
                            "code": 404,
                            "body": "{\"message\":\"Ressource introuvable.\"}",
                            "name": "Introuvable"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Audit",
            "description": "",
            "item": [
                {
                    "name": "Lister les audits",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/audits",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/audits"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Renvoie tous les audits de sites web de l'utilisateur, tri\u00e9s par date."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"data\":[{\"id\":1,\"url\":\"https:\/\/example.com\",\"host\":\"example.com\",\"score\":78,\"total_tests\":22,\"passed_tests\":17}]}",
                            "name": "Liste"
                        }
                    ]
                },
                {
                    "name": "Cr\u00e9er et lancer un audit",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/audits",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/audits"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"url\":\"https:\\\/\\\/example.com\",\"type\":\"single\"}"
                        },
                        "description": "Cr\u00e9e un audit pour l'URL fournie **et le lance imm\u00e9diatement en arri\u00e8re-plan**\n(tests SEO, performance, s\u00e9curit\u00e9, accessibilit\u00e9). Si l'IA est activ\u00e9e, un r\u00e9sum\u00e9\nIA est \u00e9galement demand\u00e9. Le score et les d\u00e9tails sont remplis apr\u00e8s ex\u00e9cution\n(r\u00e9cup\u00e9rables via `GET \/audits\/{id}`). Le plan doit avoir le module Audit activ\u00e9."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"audit\":{\"id\":1,\"url\":\"https:\/\/example.com\",\"host\":\"example.com\",\"type\":\"single\",\"is_queued\":true},\"message\":\"Audit lanc\u00e9 en arri\u00e8re-plan. Le score sera disponible sous peu.\"}",
                            "name": "Audit lanc\u00e9"
                        },
                        {
                            "header": [],
                            "code": 402,
                            "body": "{\"message\":\"Limite d'audits mensuels atteinte (100).\"}",
                            "name": "Limite atteinte"
                        }
                    ]
                },
                {
                    "name": "Relancer un audit (refresh)",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/audits\/:audit\/run",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/audits\/:audit\/run",
                            "variable": [
                                {
                                    "id": "audit",
                                    "key": "audit",
                                    "value": 1,
                                    "description": "Identifiant de l'audit."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Relance un audit existant : l'ancien r\u00e9sultat est archiv\u00e9, un nouveau score est\ncalcul\u00e9, et un r\u00e9sum\u00e9 IA est r\u00e9g\u00e9n\u00e9r\u00e9 si l'IA est activ\u00e9e."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"Audit relanc\u00e9.\",\"audit_id\":1}",
                            "name": "Audit relanc\u00e9"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Compte",
            "description": "",
            "item": [
                {
                    "name": "Profil & formule",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/user",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/user"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Renvoie le profil de l'utilisateur authentifi\u00e9 ainsi que sa formule (plan) et\nles modules auxquels il a acc\u00e8s. Id\u00e9al pour v\u00e9rifier qu'une cl\u00e9 API est valide."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"id\":1,\"name\":\"Administrateur\",\"email\":\"admin@fassiki.com\",\"locale\":\"fr\",\"plan\":{\"name\":\"Business\",\"slug\":\"business\",\"modules\":{\"analytics\":true,\"pusher\":true,\"uptime\":true,\"audit\":true}},\"plan_expiration_date\":null,\"has_active_subscription\":false}",
                            "name": "Profil r\u00e9cup\u00e9r\u00e9"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Endpoints",
            "description": "",
            "item": [
                {
                    "name": "GET api\/v1\/ping",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/ping",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/ping"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": ""
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 200,
                            "body": "{\"name\":\"Fassiki SaaS\",\"version\":\"v1\",\"time\":\"2026-07-30T10:33:09+00:00\"}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "GET \/api\/v1\/pusher\/campaigns\/{campaign}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/pusher\/campaigns\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/pusher\/campaigns\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the campaign."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": ""
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "x-ratelimit-limit",
                                    "value": "6000"
                                },
                                {
                                    "key": "x-ratelimit-remaining",
                                    "value": "5999"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 500,
                            "body": "{\n    \"message\": \"Server Error\"\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "PUT \/api\/v1\/pusher\/campaigns\/{campaign}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/pusher\/campaigns\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/pusher\/campaigns\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the campaign."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"b\",\"title\":\"n\",\"description\":\"Eius et animi quos velit et.\",\"url\":\"http:\\\/\\\/www.ernser.org\\\/harum-mollitia-modi-deserunt-aut-ab-provident-perspiciatis-quo.html\",\"image\":\"http:\\\/\\\/swift.com\\\/quidem-nostrum-qui-commodi-incidunt-iure-odit.html\",\"status\":\"sending\"}"
                        },
                        "description": ""
                    },
                    "response": []
                },
                {
                    "name": "DELETE \/api\/v1\/pusher\/campaigns\/{campaign}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/pusher\/campaigns\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/pusher\/campaigns\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the campaign."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": ""
                    },
                    "response": []
                },
                {
                    "name": "GET \/api\/v1\/uptime\/monitors\/{monitor}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/uptime\/monitors\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/uptime\/monitors\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the monitor."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": ""
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "x-ratelimit-limit",
                                    "value": "6000"
                                },
                                {
                                    "key": "x-ratelimit-remaining",
                                    "value": "5999"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 500,
                            "body": "{\n    \"message\": \"Server Error\"\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "PUT \/api\/v1\/uptime\/monitors\/{monitor}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/uptime\/monitors\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/uptime\/monitors\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the monitor."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"b\",\"type\":\"port\",\"target\":\"n\",\"port\":16,\"is_enabled\":true}"
                        },
                        "description": ""
                    },
                    "response": []
                },
                {
                    "name": "DELETE \/api\/v1\/uptime\/monitors\/{monitor}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/uptime\/monitors\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/uptime\/monitors\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the monitor."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": ""
                    },
                    "response": []
                },
                {
                    "name": "GET \/api\/v1\/audits\/{audit}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/audits\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/audits\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the audit."
                                }
                            ]
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": ""
                    },
                    "response": [
                        {
                            "header": [
                                {
                                    "key": "cache-control",
                                    "value": "no-cache, private"
                                },
                                {
                                    "key": "content-type",
                                    "value": "application\/json"
                                },
                                {
                                    "key": "x-ratelimit-limit",
                                    "value": "6000"
                                },
                                {
                                    "key": "x-ratelimit-remaining",
                                    "value": "5999"
                                },
                                {
                                    "key": "access-control-allow-origin",
                                    "value": "*"
                                }
                            ],
                            "code": 500,
                            "body": "{\n    \"message\": \"Server Error\"\n}",
                            "name": ""
                        }
                    ]
                },
                {
                    "name": "PUT \/api\/v1\/audits\/{audit}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/audits\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/audits\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the audit."
                                }
                            ]
                        },
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"is_public\":false,\"password\":\"|]|{+-\",\"is_archived\":false}"
                        },
                        "description": ""
                    },
                    "response": []
                },
                {
                    "name": "DELETE \/api\/v1\/audits\/{audit}",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/audits\/:id",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/audits\/:id",
                            "variable": [
                                {
                                    "id": "id",
                                    "key": "id",
                                    "value": "architecto",
                                    "description": "The ID of the audit."
                                }
                            ]
                        },
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": ""
                    },
                    "response": []
                }
            ]
        },
        {
            "name": "Pusher",
            "description": "",
            "item": [
                {
                    "name": "Lister les campagnes push",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/pusher\/campaigns",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/pusher\/campaigns"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Renvoie toutes les campagnes de notifications push de l'utilisateur, tri\u00e9es par date."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"data\":[{\"id\":1,\"name\":\"Promo \u00e9t\u00e9\",\"title\":\"-20% aujourd'hui\",\"status\":\"draft\",\"website\":{\"name\":\"Mon site\",\"host\":\"example.com\"}}]}",
                            "name": "Liste"
                        }
                    ]
                },
                {
                    "name": "Cr\u00e9er une campagne push",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/pusher\/campaigns",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/pusher\/campaigns"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"website_id\":1,\"name\":\"Promo \u00e9t\u00e9\",\"title\":\"-20% aujourd'hui\",\"description\":\"Eius et animi quos velit et.\",\"url\":\"http:\\\/\\\/www.bailey.biz\\\/quos-velit-et-fugiat-sunt-nihil-accusantium-harum.html\",\"image\":\"http:\\\/\\\/swift.com\\\/quidem-nostrum-qui-commodi-incidunt-iure-odit.html\"}"
                        },
                        "description": "Cr\u00e9e une nouvelle campagne de notifications push (au statut `draft`). Elle pourra\nensuite \u00eatre planifi\u00e9e\/envoy\u00e9e depuis l'interface ou via le cron `pusher:process-scheduled`."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"id\":1,\"name\":\"Promo \u00e9t\u00e9\",\"title\":\"-20% aujourd'hui\",\"status\":\"draft\"}",
                            "name": "Campagne cr\u00e9\u00e9e"
                        },
                        {
                            "header": [],
                            "code": 403,
                            "body": "{\"message\":\"Votre plan ne permet pas d'acc\u00e9der \u00e0 cette ressource.\"}",
                            "name": "Module d\u00e9sactiv\u00e9"
                        }
                    ]
                }
            ]
        },
        {
            "name": "Uptime",
            "description": "",
            "item": [
                {
                    "name": "Lister les moniteurs",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/uptime\/monitors",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/uptime\/monitors"
                        },
                        "method": "GET",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "Renvoie tous les moniteurs (HTTP\/HTTPS, port, ping) de l'utilisateur avec leurs\nstatistiques d'uptime et de latence."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"data\":[{\"id\":1,\"name\":\"Mon site\",\"type\":\"website\",\"target\":\"https:\/\/example.com\",\"is_ok\":true,\"uptime\":100,\"average_response_time\":0.42}]}",
                            "name": "Liste"
                        }
                    ]
                },
                {
                    "name": "Cr\u00e9er un moniteur",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/uptime\/monitors",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/uptime\/monitors"
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": {
                            "mode": "raw",
                            "raw": "{\"name\":\"Mon site\",\"type\":\"website\",\"target\":\"https:\\\/\\\/example.com\",\"port\":16,\"is_enabled\":false,\"settings\":[]}"
                        },
                        "description": "Cr\u00e9e un nouveau moniteur. Le prochain check est planifi\u00e9 automatiquement selon\nl'intervalle configur\u00e9 (`settings.interval`, d\u00e9faut 5 minutes). Le plan doit avoir\nle module Uptime activ\u00e9 et ne pas avoir atteint sa limite de moniteurs."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 201,
                            "body": "{\"id\":1,\"name\":\"Mon site\",\"type\":\"website\",\"target\":\"https:\/\/example.com\",\"is_ok\":true,\"next_check_datetime\":\"2026-07-30T10:26:14.000000Z\"}",
                            "name": "Moniteur cr\u00e9\u00e9"
                        },
                        {
                            "header": [],
                            "code": 402,
                            "body": "{\"message\":\"Limite de moniteurs atteinte pour votre plan (50).\"}",
                            "name": "Limite atteinte"
                        }
                    ]
                },
                {
                    "name": "Lancer une v\u00e9rification imm\u00e9diate",
                    "request": {
                        "url": {
                            "host": "{{baseUrl}}",
                            "path": "api\/v1\/uptime\/monitors\/:monitor\/check",
                            "query": [],
                            "raw": "{{baseUrl}}\/api\/v1\/uptime\/monitors\/:monitor\/check",
                            "variable": [
                                {
                                    "id": "monitor",
                                    "key": "monitor",
                                    "value": 1,
                                    "description": "Identifiant du moniteur."
                                }
                            ]
                        },
                        "method": "POST",
                        "header": [
                            {
                                "key": "Content-Type",
                                "value": "application\/json"
                            },
                            {
                                "key": "Accept",
                                "value": "application\/json"
                            }
                        ],
                        "body": null,
                        "description": "D\u00e9clenche un check manuel du moniteur (mis en file d'attente). Le r\u00e9sultat\n(uptime, latence, incident \u00e9ventuel) sera mis \u00e0 jour apr\u00e8s ex\u00e9cution."
                    },
                    "response": [
                        {
                            "header": [],
                            "code": 200,
                            "body": "{\"message\":\"V\u00e9rification lanc\u00e9e.\",\"monitor_id\":1}",
                            "name": "Check lanc\u00e9"
                        }
                    ]
                }
            ]
        }
    ],
    "auth": {
        "type": "bearer",
        "bearer": [
            {
                "key": "Authorization",
                "type": "string"
            }
        ]
    }
}