{
  "apiVersion" : "1",
  "swaggerVersion" : "1.2",
  "basePath" : "https://app.effektif.com/api/v1",
  "apis" : [ {
    "path" : "/",
    "operations" : [ {
      "method" : "POST",
      "nickname" : "/",
      "type" : "Organization",
      "parameters" : [ {
        "paramType" : "body",
        "name" : "organization",
        "dataType" : "Organization",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/systemconfiguration",
    "operations" : [ {
      "method" : "GET",
      "nickname" : "/systemconfiguration",
      "type" : "SystemConfiguration",
      "parameters" : [ ]
    } ]
  }, {
    "path" : "/{organizationKey}",
    "operations" : [ {
      "method" : "DELETE",
      "nickname" : "/{organizationKey}",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      } ]
    }, {
      "method" : "GET",
      "nickname" : "/{organizationKey}",
      "type" : "Organization",
      "parameters" : [ {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      } ]
    }, {
      "method" : "PUT",
      "nickname" : "/{organizationKey}",
      "type" : "Organization",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "body",
        "name" : "organization",
        "dataType" : "Organization",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/features",
    "operations" : [ {
      "method" : "GET",
      "nickname" : "/{organizationKey}/features",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/groups",
    "operations" : [ {
      "method" : "GET",
      "nickname" : "/{organizationKey}/groups",
      "parameters" : [ {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      } ]
    }, {
      "method" : "POST",
      "nickname" : "/{organizationKey}/groups",
      "type" : "Group",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "body",
        "name" : "group",
        "dataType" : "Group",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/groups/{groupId}",
    "operations" : [ {
      "method" : "DELETE",
      "nickname" : "/{organizationKey}/groups/{groupId}",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "groupId",
        "dataType" : "string",
        "required" : true
      } ]
    }, {
      "method" : "GET",
      "nickname" : "/{organizationKey}/groups/{groupId}",
      "type" : "Group",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "groupId",
        "dataType" : "string",
        "required" : true
      } ]
    }, {
      "method" : "PUT",
      "nickname" : "/{organizationKey}/groups/{groupId}",
      "type" : "Group",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "groupId",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "body",
        "name" : "group",
        "dataType" : "Group",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/info/licenses",
    "operations" : [ {
      "method" : "GET",
      "nickname" : "/{organizationKey}/info/licenses",
      "parameters" : [ {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/invitations/{inviteeMailAddress}",
    "operations" : [ {
      "method" : "DELETE",
      "nickname" : "/{organizationKey}/invitations/{inviteeMailAddress}",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "inviteeMailAddress",
        "dataType" : "string",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/invitations/{inviteeMailAddress}/resend",
    "operations" : [ {
      "method" : "POST",
      "nickname" : "/{organizationKey}/invitations/{inviteeMailAddress}/resend",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "inviteeMailAddress",
        "dataType" : "string",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/licenseProfiles/{profile}",
    "operations" : [ {
      "method" : "POST",
      "nickname" : "/{organizationKey}/licenseProfiles/{profile}",
      "type" : "Organization",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "profile",
        "dataType" : "string",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/licenses",
    "operations" : [ {
      "method" : "GET",
      "nickname" : "/{organizationKey}/licenses",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/licenses/{licenseId}",
    "operations" : [ {
      "method" : "GET",
      "nickname" : "/{organizationKey}/licenses/{licenseId}",
      "type" : "License",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "licenseId",
        "dataType" : "string",
        "required" : true
      } ]
    }, {
      "method" : "PUT",
      "nickname" : "/{organizationKey}/licenses/{licenseId}",
      "type" : "License",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "licenseId",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "body",
        "name" : "license",
        "dataType" : "License",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/organizations",
    "operations" : [ {
      "method" : "GET",
      "nickname" : "/{organizationKey}/organizations",
      "type" : "Organization",
      "parameters" : [ {
        "paramType" : "query",
        "name" : "name",
        "dataType" : "string",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/purchase",
    "operations" : [ {
      "method" : "POST",
      "nickname" : "/{organizationKey}/purchase",
      "parameters" : [ {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "body",
        "name" : "purchaseOrder",
        "dataType" : "PurchaseOrder",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/users",
    "operations" : [ {
      "method" : "POST",
      "nickname" : "/{organizationKey}/users",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "body",
        "name" : "newUser",
        "dataType" : "NewUser",
        "required" : true
      } ]
    } ]
  }, {
    "path" : "/{organizationKey}/users/{userId}",
    "operations" : [ {
      "method" : "DELETE",
      "nickname" : "/{organizationKey}/users/{userId}",
      "parameters" : [ {
        "paramType" : "header",
        "name" : "Authorization",
        "description" : "The authentication token must belong to an admin of the organization admin. The token can be obtained from /users/login.",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "organizationKey",
        "dataType" : "string",
        "required" : true
      }, {
        "paramType" : "path",
        "name" : "userId",
        "dataType" : "string",
        "required" : true
      } ]
    } ]
  } ],
  "models" : {
    "SystemConfiguration" : {
      "id" : "SystemConfiguration",
      "properties" : { }
    },
    "NewWorkflow" : {
      "id" : "NewWorkflow",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        }
      }
    },
    "License" : {
      "id" : "License",
      "properties" : {
        "nullFields" : {
          "type" : "array",
          "items" : {
            "$ref" : "string"
          }
        }
      }
    },
    "FormInstance" : {
      "id" : "FormInstance",
      "properties" : { }
    },
    "ExecutableWorkflow" : {
      "id" : "ExecutableWorkflow",
      "properties" : { }
    },
    "PasswordResetConfirmation" : {
      "id" : "PasswordResetConfirmation",
      "properties" : { }
    },
    "NewCase" : {
      "id" : "NewCase",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        },
        "hasDueDate" : {
          "type" : "boolean"
        },
        "hasPriority" : {
          "type" : "boolean"
        }
      }
    },
    "Registration" : {
      "id" : "Registration",
      "properties" : {
        "nullFields" : {
          "type" : "array",
          "items" : {
            "$ref" : "string"
          }
        },
        "pictureId" : {
          "type" : "object-id"
        }
      }
    },
    "Organization" : {
      "id" : "Organization",
      "properties" : {
        "nullFields" : {
          "type" : "array",
          "items" : {
            "$ref" : "string"
          }
        },
        "created" : {
          "type" : "LocalDateTime"
        }
      }
    },
    "HandoverLogin" : {
      "id" : "HandoverLogin",
      "properties" : { }
    },
    "OauthStartResponse" : {
      "id" : "OauthStartResponse",
      "properties" : { }
    },
    "LoginRequest" : {
      "id" : "LoginRequest",
      "properties" : { }
    },
    "AbstractWorkflow" : {
      "id" : "AbstractWorkflow",
      "properties" : { }
    },
    "TaskDetail" : {
      "id" : "TaskDetail",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        }
      }
    },
    "EmptyObject" : {
      "id" : "EmptyObject",
      "properties" : { }
    },
    "Case" : {
      "id" : "Case",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        },
        "hasDueDate" : {
          "type" : "boolean"
        },
        "hasPriority" : {
          "type" : "boolean"
        }
      }
    },
    "RegistrationRequest" : {
      "id" : "RegistrationRequest",
      "properties" : { }
    },
    "EditorWorkflowDetail" : {
      "id" : "EditorWorkflowDetail",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        }
      }
    },
    "OauthStartRequest" : {
      "id" : "OauthStartRequest",
      "properties" : { }
    },
    "EditorWorkflow" : {
      "id" : "EditorWorkflow",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        }
      }
    },
    "ActionInstanceEnd" : {
      "id" : "ActionInstanceEnd",
      "properties" : { }
    },
    "Task" : {
      "id" : "Task",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        }
      }
    },
    "TriggerInstance" : {
      "id" : "TriggerInstance",
      "properties" : { }
    },
    "FileStream" : {
      "id" : "FileStream",
      "properties" : { }
    },
    "WorkflowInstance" : {
      "id" : "WorkflowInstance",
      "properties" : { }
    },
    "NewTask" : {
      "id" : "NewTask",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        }
      }
    },
    "FormInstanceField" : {
      "id" : "FormInstanceField",
      "properties" : { }
    },
    "VersionRequest" : {
      "id" : "VersionRequest",
      "properties" : { }
    },
    "Group" : {
      "id" : "Group",
      "properties" : {
        "nullFields" : {
          "type" : "array",
          "items" : {
            "$ref" : "string"
          }
        }
      }
    },
    "NewUser" : {
      "id" : "NewUser",
      "properties" : { }
    },
    "ActionInstance" : {
      "id" : "ActionInstance",
      "properties" : { }
    },
    "ServiceLogin" : {
      "id" : "ServiceLogin",
      "properties" : { }
    },
    "About" : {
      "id" : "About",
      "properties" : { }
    },
    "LeaveRequest" : {
      "id" : "LeaveRequest",
      "properties" : { }
    },
    "Account" : {
      "id" : "Account",
      "properties" : { }
    },
    "CaseDetail" : {
      "id" : "CaseDetail",
      "properties" : {
        "nameLower" : {
          "type" : "string"
        },
        "hasDueDate" : {
          "type" : "boolean"
        },
        "hasPriority" : {
          "type" : "boolean"
        }
      }
    },
    "File" : {
      "id" : "File",
      "properties" : { }
    },
    "Event" : {
      "id" : "Event",
      "properties" : {
        "nullFields" : {
          "type" : "array",
          "items" : {
            "$ref" : "string"
          }
        }
      }
    },
    "User" : {
      "id" : "User",
      "properties" : {
        "nullFields" : {
          "type" : "array",
          "items" : {
            "$ref" : "string"
          }
        },
        "features" : {
          "type" : "FeatureCache"
        },
        "emailAddressLower" : {
          "type" : "string"
        },
        "passwordHash" : {
          "type" : "string"
        },
        "passwordReset" : {
          "type" : "PasswordReset"
        },
        "permissions" : {
          "type" : "array",
          "items" : {
            "$ref" : "Permission"
          }
        },
        "token" : {
          "type" : "string"
        }
      }
    },
    "ScriptResult" : {
      "id" : "ScriptResult",
      "properties" : { }
    },
    "PurchaseOrder" : {
      "id" : "PurchaseOrder",
      "properties" : {
        "nullFields" : {
          "type" : "array",
          "items" : {
            "$ref" : "string"
          }
        }
      }
    },
    "UserMailAddress" : {
      "id" : "UserMailAddress",
      "properties" : { }
    },
    "LoginResponse" : {
      "id" : "LoginResponse",
      "properties" : { }
    }
  }
}