{
  "opencollection": "1.0.0",
  "info": {
    "name": "Earnipay Invoicing App Team API",
    "version": "1.0"
  },
  "items": [
    {
      "info": {
        "name": "Team",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Invite team member",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v1/team/invite",
            "params": [
              {
                "name": "businessId",
                "value": "",
                "type": "query",
                "description": "Business ID"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Send an invitation to join the business team. Only OWNER and ADMIN can invite members."
        },
        {
          "info": {
            "name": "Get team members",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v1/team",
            "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"
              },
              {
                "name": "search",
                "value": "",
                "type": "query",
                "description": "Search by name or email"
              },
              {
                "name": "role",
                "value": "",
                "type": "query",
                "description": "Filter by role"
              },
              {
                "name": "includePendingInvitations",
                "value": "",
                "type": "query",
                "description": "Include pending invitations"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Retrieve team members with optional filters and pagination. Can include pending invitations."
        },
        {
          "info": {
            "name": "Accept team invitation",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v1/team/invitations/:token/accept",
            "params": [
              {
                "name": "token",
                "value": "",
                "type": "path",
                "description": "Invitation token"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Accept a team invitation using the token from the invitation email. New users must provide firstName, lastName, and password."
        },
        {
          "info": {
            "name": "Revoke team invitation",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/v1/team/invitations/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Invitation ID"
              },
              {
                "name": "businessId",
                "value": "",
                "type": "query",
                "description": "Business ID"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Cancel a pending team invitation. Only OWNER and ADMIN can revoke invitations."
        },
        {
          "info": {
            "name": "Update team member role",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "{{baseUrl}}/v1/team/members/:id/role",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Team member ID (BusinessUser ID)"
              },
              {
                "name": "businessId",
                "value": "",
                "type": "query",
                "description": "Business ID"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Update the role of a team member. Only OWNER and ADMIN can update roles."
        },
        {
          "info": {
            "name": "Remove team member",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/v1/team/members/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Team member ID (BusinessUser ID)"
              },
              {
                "name": "businessId",
                "value": "",
                "type": "query",
                "description": "Business ID"
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Remove a member from the team. Only OWNER and ADMIN can remove members."
        }
      ]
    }
  ],
  "bundled": true
}