{
	"info": {
		"_postman_id": "04d9e4d9-56e8-40cf-9b1b-cd565eadceb0",
		"name": "Catalog Services API",
		"description": "Complete API collection for Services domain including CRUD operations and pricing management with updated endpoints",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
		"_exporter_id": "50681087",
		"_collection_link": "https://speeding-station-761692.postman.co/workspace/749708e5-00c2-41b9-8163-eb8de19b77f2/collection/50681087-04d9e4d9-56e8-40cf-9b1b-cd565eadceb0?action=share&source=collection_link&creator=50681087"
	},
	"item": [
		{
			"name": "Services",
			"item": [
				{
					"name": "List All Services",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services?per_page=15&search=&category=maintenance&is_active=true",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services"
							],
							"query": [
								{
									"key": "per_page",
									"value": "15",
									"description": "Number of items per page (default: 15)"
								},
								{
									"key": "search",
									"value": "",
									"description": "Search by service name"
								},
								{
									"key": "category",
									"value": "maintenance",
									"description": "Filter by service type: maintenance, installation, inspection, consultation, training, emergency"
								},
								{
									"key": "is_active",
									"value": "true",
									"description": "Filter by active status"
								}
							]
						},
						"description": "Get all services with pagination and filtering. Search parameter is built into index for seamless filtering."
					},
					"response": []
				},
				{
					"name": "Get Single Service",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1"
							]
						},
						"description": "Retrieve a single service by ID"
					},
					"response": []
				},
				{
					"name": "Create Service",
					"request": {
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n  \"catalog_item_id\": 1,\n  \"name\": {\n    \"en\": \"Premium Maintenance Service\",\n    \"ar\": \"خدمة الصيانة المميزة\"\n  },\n  \"description\": {\n    \"en\": \"Comprehensive maintenance service covering all equipment checks and repairs\",\n    \"ar\": \"خدمة صيانة شاملة تغطي جميع فحوصات المعدات والإصلاحات\"\n  },\n  \"service_type\": \"maintenance\",\n  \"billing_method\": \"hourly\",\n  \"estimated_duration_minutes\": 120,\n  \"requires_visit\": true,\n  \"is_contract_based\": false\n}"
						},
						"url": {
							"raw": "{{BASE_URL}}/catalog/services",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services"
							]
						},
						"description": "Create a new service.\n\nService type values: maintenance, installation, inspection, consultation, training, emergency\n\nBilling method values: fixed, hourly, daily, per_visit, per_unit"
					},
					"response": []
				},
				{
					"name": "Update Service",
					"request": {
						"method": "PUT",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n  \"catalog_item_id\": 1,\n  \"name\": {\n    \"en\": \"Premium Maintenance Service\",\n    \"ar\": \"خدمة الصيانة المميزة\"\n  },\n  \"description\": {\n    \"en\": \"Comprehensive maintenance service covering all equipment checks and repairs\",\n    \"ar\": \"خدمة صيانة شاملة تغطي جميع فحوصات المعدات والإصلاحات\"\n  },\n  \"service_type\": \"maintenance\",\n  \"billing_method\": \"hourly\",\n  \"estimated_duration_minutes\": 150,\n  \"requires_visit\": true,\n  \"is_contract_based\": true\n}"
						},
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1"
							]
						},
						"description": "Update an existing service. All fields are optional."
					},
					"response": []
				},
				{
					"name": "Delete Service",
					"request": {
						"method": "DELETE",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1"
							]
						},
						"description": "Soft delete a service"
					},
					"response": []
				},
				{
					"name": "Restore Service",
					"request": {
						"method": "POST",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1/restore",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1",
								"restore"
							]
						},
						"description": "Restore a soft-deleted service"
					},
					"response": []
				}
			],
			"description": "Services CRUD operations"
		},
		{
			"name": "Service Prices",
			"item": [
				{
					"name": "List All Service Prices",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/prices?per_page=15",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"prices"
							],
							"query": [
								{
									"key": "per_page",
									"value": "15",
									"description": "Number of items per page"
								}
							]
						},
						"description": "Get all service prices across all services with pagination"
					},
					"response": []
				},
				{
					"name": "Get Prices By Service",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1/prices",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1",
								"prices"
							]
						},
						"description": "Get all prices for a specific service"
					},
					"response": []
				},
				{
					"name": "Get Active Prices By Service",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1/prices/active",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1",
								"prices",
								"active"
							]
						},
						"description": "Get currently active prices for a specific service (based on valid_from and valid_to dates)"
					},
					"response": []
				},
				{
					"name": "Get Single Price",
					"request": {
						"method": "GET",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1/prices/1",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1",
								"prices",
								"1"
							]
						},
						"description": "Retrieve a single service price by ID"
					},
					"response": []
				},
				{
					"name": "Create Service Price",
					"request": {
						"method": "POST",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n  \"service_id\": 1,\n  \"price\": 150.00,\n  \"currency\": \"USD\",\n  \"valid_from\": \"2025-01-01\",\n  \"valid_to\": \"2025-12-31\"\n}"
						},
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1/prices",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1",
								"prices"
							]
						},
						"description": "Create a new price for a service. Currency should be 3-character ISO code (USD, EUR, AED, etc.)"
					},
					"response": []
				},
				{
					"name": "Update Service Price",
					"request": {
						"method": "PUT",
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"body": {
							"mode": "raw",
							"raw": "{\n  \"price\": 150.00,\n  \"currency\": \"USD\",\n  \"valid_from\": \"2025-01-01\",\n  \"valid_to\": \"2025-12-29\"\n}"
						},
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1/prices/1",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1",
								"prices",
								"1"
							]
						},
						"description": "Update an existing service price. All fields are optional."
					},
					"response": []
				},
				{
					"name": "Delete Service Price",
					"request": {
						"method": "DELETE",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1/prices/1",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1",
								"prices",
								"1"
							]
						},
						"description": "Soft delete a service price"
					},
					"response": []
				},
				{
					"name": "Restore Service Price",
					"request": {
						"method": "POST",
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							},
							{
								"key": "Authorization",
								"value": "Bearer {{ACCESS_TOKEN}}"
							}
						],
						"url": {
							"raw": "{{BASE_URL}}/catalog/services/1/prices/1/restore",
							"host": [
								"{{BASE_URL}}"
							],
							"path": [
								"catalog",
								"services",
								"1",
								"prices",
								"1",
								"restore"
							]
						},
						"description": "Restore a soft-deleted service price"
					},
					"response": []
				}
			],
			"description": "Service pricing management"
		}
	],
	"variable": [
		{
			"key": "BASE_URL",
			"value": "http://localhost:8000/api/v1",
			"type": "string"
		},
		{
			"key": "ACCESS_TOKEN",
			"value": "your_api_token_here",
			"type": "string"
		}
	]
}