{
  "opencollection": "1.0.0",
  "info": {
    "name": "Earnipay Invoicing App Customers API",
    "version": "1.0"
  },
  "items": [
    {
      "info": {
        "name": "Customers",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Get customers list",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v1/customers",
            "params": [
              {
                "name": "businessId",
                "value": "",
                "type": "query",
                "description": "Business ID"
              },
              {
                "name": "page",
                "value": "",
                "type": "query",
                "description": "Page number"
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "Items per page (max 100)"
              },
              {
                "name": "search",
                "value": "",
                "type": "query",
                "description": "Search in name, business name, TIN, email"
              },
              {
                "name": "dateFrom",
                "value": "",
                "type": "query",
                "description": "Filter by creation date from (YYYY-MM-DD)"
              },
              {
                "name": "dateTo",
                "value": "",
                "type": "query",
                "description": "Filter by creation date to (YYYY-MM-DD)"
              },
              {
                "name": "sortBy",
                "value": "",
                "type": "query",
                "description": "Sort field"
              },
              {
                "name": "sortOrder",
                "value": "",
                "type": "query",
                "description": "Sort order"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Retrieve paginated list of customers with search, filter, and sort capabilities."
        },
        {
          "info": {
            "name": "Create new customer",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v1/customers",
            "params": [
              {
                "name": "businessId",
                "value": "",
                "type": "query",
                "description": "Business ID (passed as query parameter or extracted from context)"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Create a new customer for the current business. Customer names must be unique per business."
        },
        {
          "info": {
            "name": "Get customer details",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v1/customers/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Customer ID"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Retrieve detailed information about a specific customer."
        },
        {
          "info": {
            "name": "Update customer",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "{{baseUrl}}/v1/customers/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Customer ID"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Update customer information. Customer name must remain unique per business."
        },
        {
          "info": {
            "name": "Delete customer",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/v1/customers/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Customer ID"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Soft delete a customer. Historical invoices with this customer will remain intact."
        }
      ]
    }
  ],
  "bundled": true
}