{
  "info": {
    "name": "Dons Drôme-Ardèche API",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "item": [
    {
      "name": "Auth",
      "item": [
        {
          "name": "Register",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"John Doe\",\n  \"email\": \"john@example.com\",\n  \"password\": \"password123\",\n  \"password_confirmation\": \"password123\",\n  \"role\": \"fundraiser\"\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/auth/register",
              "host": ["{{base_url}}"],
              "path": ["api", "auth", "register"]
            }
          }
        },
        {
          "name": "Login",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"email\": \"john@example.com\",\n  \"password\": \"password123\"\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/auth/login",
              "host": ["{{base_url}}"],
              "path": ["api", "auth", "login"]
            }
          }
        },
        {
          "name": "Get Me",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{token}}"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/auth/me",
              "host": ["{{base_url}}"],
              "path": ["api", "auth", "me"]
            }
          }
        }
      ]
    },
    {
      "name": "Campaigns",
      "item": [
        {
          "name": "List Campaigns",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/api/campaigns?page=1",
              "host": ["{{base_url}}"],
              "path": ["api", "campaigns"],
              "query": [
                {
                  "key": "page",
                  "value": "1"
                },
                {
                  "key": "category",
                  "value": "health",
                  "disabled": true
                },
                {
                  "key": "search",
                  "value": "emergency",
                  "disabled": true
                },
                {
                  "key": "sort_by",
                  "value": "trending",
                  "disabled": true
                }
              ]
            }
          }
        },
        {
          "name": "Get Campaign",
          "request": {
            "method": "GET",
            "url": {
              "raw": "{{base_url}}/api/campaigns/1",
              "host": ["{{base_url}}"],
              "path": ["api", "campaigns", "1"]
            }
          }
        },
        {
          "name": "Create Campaign",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{token}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"title\": \"Aide pour famille en difficulté\",\n  \"description\": \"Collecte pour aider une famille touchée par le chômage\",\n  \"category\": \"community\",\n  \"goal_amount\": 3000,\n  \"is_urgent\": true\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/campaigns",
              "host": ["{{base_url}}"],
              "path": ["api", "campaigns"]
            }
          }
        },
        {
          "name": "My Campaigns",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{token}}"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/my-campaigns",
              "host": ["{{base_url}}"],
              "path": ["api", "my-campaigns"]
            }
          }
        }
      ]
    },
    {
      "name": "Donations",
      "item": [
        {
          "name": "Create Donation",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"amount\": 50,\n  \"payment_method_id\": \"pm_card_visa\",\n  \"donor_email\": \"donor@example.com\",\n  \"donor_name\": \"Jane Donor\",\n  \"donor_message\": \"Bravo pour votre collecte!\"\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/campaigns/1/donate",
              "host": ["{{base_url}}"],
              "path": ["api", "campaigns", "1", "donate"]
            }
          }
        },
        {
          "name": "List Campaign Donations",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{token}}"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/campaigns/1/donations",
              "host": ["{{base_url}}"],
              "path": ["api", "campaigns", "1", "donations"]
            }
          }
        }
      ]
    },
    {
      "name": "Admin",
      "item": [
        {
          "name": "Pending Campaigns",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{admin_token}}"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/admin/campaigns?status=pending",
              "host": ["{{base_url}}"],
              "path": ["api", "admin", "campaigns"],
              "query": [
                {
                  "key": "status",
                  "value": "pending"
                }
              ]
            }
          }
        },
        {
          "name": "Approve Campaign",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{admin_token}}"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/admin/campaigns/1/approve",
              "host": ["{{base_url}}"],
              "path": ["api", "admin", "campaigns", "1", "approve"]
            }
          }
        },
        {
          "name": "Reject Campaign",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{admin_token}}"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"reason\": \"Collecte en dehors de notre périmètre régional\"\n}"
            },
            "url": {
              "raw": "{{base_url}}/api/admin/campaigns/1/reject",
              "host": ["{{base_url}}"],
              "path": ["api", "admin", "campaigns", "1", "reject"]
            }
          }
        },
        {
          "name": "Stats",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Authorization",
                "value": "Bearer {{admin_token}}"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/admin/stats",
              "host": ["{{base_url}}"],
              "path": ["api", "admin", "stats"]
            }
          }
        }
      ]
    }
  ],
  "variable": [
    {
      "key": "base_url",
      "value": "http://localhost:8000",
      "type": "string"
    },
    {
      "key": "token",
      "value": "your_token_here",
      "type": "string"
    },
    {
      "key": "admin_token",
      "value": "your_admin_token_here",
      "type": "string"
    }
  ]
}
