{"openapi":"3.0.0","paths":{"/api/v1/organizations/{organizationId}":{"get":{"description":"This endpoint is used to get an organization by its ID. It returns the organization's details, including its name, unique name, status, system language, etc.","operationId":"publicGetOrganization","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicOrganizationResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get an organization","tags":["Organizations"]}},"/api/v1/organizations/{organizationId}/people":{"get":{"description":"List organization people (data aggregated from SaaS). <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetPeople","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"types","required":false,"in":"query","description":"Filter results by type. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/PeopleType"}}},{"name":"statuses","required":false,"in":"query","description":"Filter results by status. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/PeopleStatus"}}},{"name":"keyword","required":false,"in":"query","description":"Filter results by username, email or displayName.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","description":"Sort results by a specific field.","schema":{"$ref":"#/components/schemas/PeopleSortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort results in ascending or descending order. Defaults to `ASC`.","schema":{"$ref":"#/components/schemas/SortOrder"}},{"name":"includePeopleWithNoAccounts","required":false,"in":"query","description":"By default, won't return people who have no SaaS accounts. This flag will override that behavior.","schema":{"type":"boolean"}},{"name":"serviceIds","required":false,"in":"query","description":"Filter people who own some specific SaaS accounts. Accepts multiple options.","schema":{"example":[1,2,3],"type":"array","items":{"type":"number"}}},{"name":"status","required":false,"in":"query","description":"Filter results by status. Note: please use `statuses` instead, this property is deprecated and will be removed in a future version.","deprecated":true,"schema":{"$ref":"#/components/schemas/PeopleStatus"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetPeopleResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List organization people","tags":["People"]}},"/api/v1/organizations/{organizationId}/people/{peopleId}":{"get":{"operationId":"publicGetPerson","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"peopleId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicPeopleResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get a person in the organization","tags":["People"]}},"/api/v1/organizations/{organizationId}/people/merge":{"post":{"deprecated":true,"description":"Batch merge people in pairs. Each pair consists of: a `fromPeopleId`, which represents a person of type `UNKNOWN` or `GUEST` to be merged into `toPeopleId`, which represents a person of type `GUEST` or `EMPLOYEE` or `SYSTEM`.","operationId":"publicMergePeople","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicMergePeopleRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetPeopleResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Merge people in batch","tags":["People"]}},"/api/v1/organizations/{organizationId}/people/unmerge":{"post":{"deprecated":true,"description":"Unmerge previously merged people.","operationId":"publicUnmergePeople","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUnmergePeopleRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetPeopleResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Unmerges people","tags":["People"]}},"/api/v1/organizations/{organizationId}/people/{peopleId}/accounts":{"get":{"description":"List all SaaS accounts belong to a person. <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetPeopleAccounts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"peopleId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"role","required":false,"in":"query","description":"Filter results by role (not all SaaS support this filter).<br/>`admin` - only SaaS admin accounts<br/>`guest` - only SaaS guest accounts<br/>`other` - SaaS accounts that are neither admin nor guest","schema":{"$ref":"#/components/schemas/PeopleAccountRole"}},{"name":"twoFa","required":false,"in":"query","description":"Filter results by two-factor authentication availability.","schema":{"type":"boolean"}},{"name":"keyword","required":false,"in":"query","description":"Filter results by SaaS name or workspace name (partial match supported).","schema":{"type":"string"}},{"name":"serviceIds","required":false,"in":"query","description":"Filter results by service ID. Accepts multiple options.","schema":{"example":[1,2,3],"type":"array","items":{"type":"number"}}},{"name":"workspaceIds","required":false,"in":"query","description":"Filter results by workspace ID. Accepts multiple options.","schema":{"example":[1,2,3],"type":"array","items":{"type":"number"}}},{"name":"sortBy","required":false,"in":"query","description":"Sort results by a specific field.","schema":{"$ref":"#/components/schemas/PeopleAccountSortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort results in ascending or descending order. Defaults to `ASC`.","schema":{"$ref":"#/components/schemas/SortOrder"}},{"name":"licenses","required":false,"in":"query","description":"Filter results by license. Accepts multiple options.","schema":{"example":["license1","license2"],"type":"array","items":{"type":"string"}}},{"name":"status","required":false,"in":"query","description":"Filter results by status.","schema":{"$ref":"#/components/schemas/PeopleStatus"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetPeopleAccountsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List all SaaS accounts belonging to a person","tags":["People"]}},"/api/v1/organizations/{organizationId}/users":{"get":{"description":"This endpoint is used to list all users in an organization, including their role, status, and other details. List all organization users. <br/><br/>Pagination: [Page-based](#section/Page-based)","operationId":"publicGetUsers","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"query","required":false,"in":"query","description":"Support searching by name, email, role","schema":{"example":"John Doe","type":"string"}},{"name":"page","required":false,"in":"query","description":"Page number to paginate through results.","schema":{"example":1,"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned.","schema":{"example":10,"type":"number"}},{"name":"sortField","required":false,"in":"query","description":"Sort results by a field.","schema":{"$ref":"#/components/schemas/UserSortField"}},{"name":"order","required":false,"in":"query","description":"Sort results in ascending or descending order. Defaults to `ASC`.","schema":{"$ref":"#/components/schemas/SortOrder"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicListOrganizationUsersResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List organization users","tags":["Users"]}},"/api/v1/organizations/{organizationId}/users/admin-count":{"get":{"description":"Get the number of users with admin role in the organization.","operationId":"publicGetAdminCount","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicTotalAdminResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get the number of users with admin role","tags":["Users"]}},"/api/v1/organizations/{organizationId}/users/{userId}":{"patch":{"description":"Update an organization's user. Currently only user's role is allowed to be updated.","operationId":"publicUpdateUser","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"userId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateOrganizationUserRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicOrganizationUserResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Update an organization's user","tags":["Users"]}},"/api/v1/organizations/{organizationId}/services":{"get":{"description":"List all integrated services (SaaS) in the organization. <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetOrganizationServices","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"keyword","required":false,"in":"query","description":"Support searching by service name, workspace name, service unique name, or custom-service people in charge and email (when enabled for the organization)","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","description":"Sort results by a specific field.","schema":{"$ref":"#/components/schemas/ServiceSortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort results in ascending or descending order. Defaults to `ASC`.","schema":{"$ref":"#/components/schemas/SortOrder"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetOrganizationServicesListResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List organization services","tags":["Services"]}},"/api/v1/organizations/{organizationId}/services/engagement-scores":{"get":{"operationId":"publicGetEngagementScores","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceUniqueNames","required":false,"in":"query","description":"Comma separated service unique names. Accepts multiple options.","schema":{"example":"github,gitlab","type":"string"}},{"name":"categoryIds","required":false,"in":"query","description":"Comma separated category ids. Accepts multiple options.","schema":{"example":"1,2,3","type":"string"}},{"name":"startDate","required":true,"in":"query","description":"Start date for the engagement scores calculation.","schema":{"format":"date","example":"2023-01-01","type":"string"}},{"name":"endDate","required":true,"in":"query","description":"End date for the engagement scores calculation.","schema":{"format":"date","example":"2023-02-01","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetEngagementScoresResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Returns the engagement scores of services in an organization","tags":["Services"]}},"/api/v1/organizations/{organizationId}/services/unused-resources":{"get":{"operationId":"publicGetUnusedResources","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"sortBy","required":false,"in":"query","description":"Sort results by a specific field.","schema":{"$ref":"#/components/schemas/GetUnusedResourcesSortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort results in ascending or descending order. Defaults to `ASC`.","schema":{"$ref":"#/components/schemas/SortOrder"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetUnusedResourcesResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get retired and inactive accounts of all services in an organization","tags":["Services"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/accounts":{"get":{"description":"List all SaaS accounts of a service. <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetServiceAccounts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"keyword","required":false,"in":"query","description":"Partial match for name or email address.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","description":"Sort results by a specific field.","schema":{"$ref":"#/components/schemas/PeopleAccountSortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort results in ascending or descending order. Defaults to `ASC`.","schema":{"$ref":"#/components/schemas/SortOrder"}},{"name":"workspaceIds","required":false,"in":"query","description":"Filter results by workspaceIds. Accepts multiple options.","schema":{"example":[1],"type":"array","items":{"type":"number"}}},{"name":"twoFa","required":false,"in":"query","description":"Filter results by two-factor authentication availability.","schema":{"type":"boolean"}},{"name":"roles","required":false,"in":"query","description":"Filter results by role (not all SaaS support this filter).<br/>`admin` - only SaaS admin accounts<br/>`guest` - only SaaS guest accounts<br/>`other` - SaaS accounts that are neither admin nor guest. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/PeopleAccountRole"}}},{"name":"serviceRoles","required":false,"in":"query","description":"Filter results by role in the SaaS. Accepts multiple options.","schema":{"example":["role1","role2"],"type":"array","items":{"type":"string"}}},{"name":"types","required":false,"in":"query","description":"Filter results by type. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/PeopleType"}}},{"name":"employeeTypes","required":false,"in":"query","description":"Filter results by type. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/EmployeeType"}}},{"name":"statuses","required":false,"in":"query","description":"Filter results by status. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/PeopleStatus"}}},{"name":"employeeStatuses","required":false,"in":"query","description":"Filter results by type. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/EmployeeStatus"}}},{"name":"includeDeleted","required":false,"in":"query","description":"Some services contain accounts marked as `deleted`. By default this API does not return those accounts. Setting this flag to `true` will override the default behavior.","schema":{"type":"boolean"}},{"name":"expandIdentities","required":false,"in":"query","description":"All people accounts are linked to an identity. By default this API does not return the related identity. Setting this flag to `true` will override the default behavior.","schema":{"type":"boolean"}},{"name":"onlyInactive","required":false,"in":"query","description":"Show accounts that have been inactive for a while","schema":{"type":"boolean"}},{"name":"licenses","required":false,"in":"query","description":"Filter results by license. Accepts multiple options.","schema":{"example":["license1","license2"],"type":"array","items":{"type":"string"}}},{"name":"alertType","required":false,"in":"query","description":"Filter results by alert type. Required when `alertStatus` is set.","schema":{"$ref":"#/components/schemas/AlertType"}},{"name":"alertStatus","required":false,"in":"query","description":"Filter results by alert status.","schema":{"$ref":"#/components/schemas/AlertStatus"}},{"name":"includeAccountMemo","required":false,"in":"query","description":"Whether to include account memos in the response","schema":{"type":"boolean"}},{"name":"workspaceId","required":false,"in":"query","description":"Filter results by workspaceId. Note: please use `workspaceIds` instead, this property is deprecated and will be removed in a future version.","deprecated":true,"schema":{"type":"number"}},{"name":"status","required":false,"in":"query","description":"Filter results by status. Note: please use `statuses` instead, this property is deprecated and will be removed in a future version.","deprecated":true,"schema":{"$ref":"#/components/schemas/PeopleStatus"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetServiceAccountsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List all SaaS accounts of a service","tags":["Services"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/accounts/memos/{accountId}":{"put":{"description":"Create or update memo for a service account","operationId":"publicCreateOrUpdateAccountMemo","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"accountId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateUpdateServiceAccountMemoRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateUpdateServiceAccountMemoResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create/update account memo","tags":["Services"]},"delete":{"description":"Remove account memo","operationId":"publicRemoveAccountMemo","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"accountId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Remove account memo","tags":["Services"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/files":{"get":{"description":"Get files for a service in an organization. <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetServicesFiles","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"keyword","required":false,"in":"query","description":"Partial match for name.","schema":{"type":"string"}},{"name":"sharingStatus","required":false,"in":"query","description":"Filter results by sharing status.","schema":{"$ref":"#/components/schemas/FileSharingStatus"}},{"name":"fileType","required":false,"in":"query","description":"Filter results by file type.","schema":{"$ref":"#/components/schemas/FileType"}},{"name":"owners","required":false,"in":"query","description":"Filter results by owners.","schema":{"example":["John Doe","Jane Doe"],"type":"array","items":{"type":"string"}}},{"name":"sortBy","required":false,"in":"query","description":"Sort results by a field.","schema":{"$ref":"#/components/schemas/ServiceFilesSortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort results in ascending or descending order. Defaults to `ASC`.","schema":{"$ref":"#/components/schemas/SortOrder"}},{"name":"workspaceId","required":false,"in":"query","description":"Filter results by workspace ID.","schema":{"example":123,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetServiceFilesResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get files for a service in an organization","tags":["Services"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/files/summary":{"get":{"description":"Get summary of files for a service in an organization","operationId":"publicGetServicesFilesSummary","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetServiceFilesSummaryResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get summary of files for a service in an organization","tags":["Services"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/files/safe-lists":{"get":{"description":"Retrieve a paginated list of safe lists across all workspaces of a service. <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetServiceSafeLists","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetServiceFileSafeListsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List safe lists for a service","tags":["Services"]}},"/api/v1/organizations/{organizationId}/workspaces":{"get":{"description":"List all organization workspaces<br/><br/>Simple non-nested objects are serialized as `paramName[prop1]=value1&paramName[prop2]=value2&..` following the `deepObject` <a href=\"https://swagger.io/docs/specification/serialization/\" target=\"_blank\">serialization style</a> as defined in OpenAPI specification.<br/>Example for `workspaceMeta` parameter: `workspaceMeta[businessImpactLevel]=low&workspaceMeta[piiEnabled]=true`<br/>","operationId":"publicGetWorkspaces","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"ids","required":false,"in":"query","description":"Filter workspaces by id. Accepts multiple options.","schema":{"type":"array","items":{"type":"number"}}},{"name":"serviceId","required":false,"in":"query","description":"Filter workspaces by service id.","schema":{"type":"number"}},{"name":"isSpendingMaster","required":false,"in":"query","description":"Filter workspaces by spending master status.","schema":{"type":"boolean"}},{"name":"workspaceMeta","required":false,"in":"query","description":"Filter workspaces by meta data.","schema":{"$ref":"#/components/schemas/WorkspaceMetaQueryDto"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PublicWorkspaceResponseDto"}}}}}},"security":[{"API-Key":[]}],"summary":"List organization workspaces","tags":["Workspaces"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}":{"get":{"description":"Get the details of a workspace in the organization","operationId":"publicGetWorkspace","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicWorkspaceResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get an organization workspace","tags":["Workspaces"]},"delete":{"description":"Delete a workspace in the organization","operationId":"publicDeleteWorkspace","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicWorkspaceResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Delete an organization workspace","tags":["Workspaces"]}},"/api/v1/organizations/{organizationId}/workspaces/custom":{"post":{"description":"Create a custom workspace with serviceId or service name","operationId":"publicCreateCustomWorkspace","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/PublicCustomWorkspaceWithAdminaServiceDto"},{"$ref":"#/components/schemas/PublicCustomWorkspaceWithServiceMasterDto"},{"$ref":"#/components/schemas/PublicCustomWorkspaceWithCustomServiceDto"}]}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateCustomWorkspaceResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create custom service and workspace","tags":["Custom Service and Workspace"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/workspace-meta":{"get":{"description":"Get the metadata details of a workspace in the organization","operationId":"publicGetWorkspaceMeta","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicWorkspaceMetaResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get workspace metadata","tags":["Workspaces"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/provisioning-meta":{"get":{"operationId":"publicGetProvisioningMeta","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"lang","required":false,"in":"query","schema":{"$ref":"#/components/schemas/Locale"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetProvisioningMetaResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get provisioning meta for workspace of a service","tags":["Workspace Accounts"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/files/{fileId}/permissions":{"get":{"description":"Get detailed permissions information for a specific file in a workspace","operationId":"publicGetWorkspaceFilePermissions","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"fileId","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWorkspaceFilePermissionsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get permissions for a file in a workspace","tags":["Workspaces"]}},"/api/v1/services":{"get":{"description":"List all available SaaS applications in Admina. <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetServices","parameters":[{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"keyword","required":false,"in":"query","description":"Search keyword for service name or unique name","schema":{"example":"google","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicListServicesResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List services","tags":["Services"]}},"/api/v1/organizations/{organizationId}/spends/history-by-service":{"get":{"operationId":"publicGetServicesSpends","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceUniqueNames","required":false,"in":"query","description":"Comma separated service unique names. Accepts multiple options.","schema":{"example":"github,gitlab","type":"string"}},{"name":"categoryIds","required":false,"in":"query","description":"Comma separated category ids. Accepts multiple options.","schema":{"example":"1,2,3","type":"string"}},{"name":"startDate","required":false,"in":"query","description":"Filter spends by start date.","schema":{"format":"date","example":"2020-01-01","type":"string"}},{"name":"endDate","required":false,"in":"query","description":"Filter spends by end date.","schema":{"format":"date","example":"2023-01-01","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetSpendsByServicesResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get spends by services","tags":["Spends"]}},"/api/v1/organizations/{organizationId}/spends/history-by-month":{"get":{"operationId":"publicGetMonthlySpends","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"startDate","required":true,"in":"query","description":"Filter spends by start date.","schema":{"format":"date","example":"2022-01-01","type":"string"}},{"name":"endDate","required":true,"in":"query","description":"Filter spends by end date.","schema":{"format":"date","example":"2022-03-31","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetMonthlySpendsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get spends by month","tags":["Spends"]}},"/api/v1/organizations/{organizationId}/spends/import":{"post":{"operationId":"publicImportSpends","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportSpendsRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IggreRequestResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Import spends","tags":["Spends"]}},"/api/v1/organizations/{organizationId}/spends/csv/import":{"post":{"description":"Upload and process CSV file containing spending data","operationId":"publicImportSpendCsv","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Returns requestId for tracking import progress","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IggreRequestResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Import spending data CSV file","tags":["Spends"]}},"/api/v1/organizations/{organizationId}/spends/csv/export":{"get":{"description":"Request CSV export of spending data - returns requestId for tracking progress and download","operationId":"publicExportSpendCsv","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"startDate","required":false,"in":"query","schema":{"example":"2022-01-01","type":"string"}},{"name":"endDate","required":false,"in":"query","schema":{"example":"2022-03-31","type":"string"}},{"name":"serviceNameOrDescription","required":false,"in":"query","schema":{"example":"Zoom","type":"string"}},{"name":"serviceUniqueNames","required":false,"in":"query","schema":{"type":"array","items":{"type":"string"}}},{"name":"source","required":false,"in":"query","schema":{"example":"123","type":"string"}},{"name":"showUnmatched","required":false,"in":"query","schema":{"example":false,"type":"boolean"}},{"name":"contractId","required":false,"in":"query","schema":{"example":1,"type":"number"}},{"name":"maxBillingStartDate","required":false,"in":"query","schema":{"example":"2022-01-01","type":"string"}},{"name":"minBillingEndDate","required":false,"in":"query","schema":{"example":"2022-03-31","type":"string"}},{"name":"spendIds","required":false,"in":"query","schema":{"type":"array","items":{"type":"string"}}},{"name":"sortBy","required":false,"in":"query","schema":{"$ref":"#/components/schemas/GetOrgSpendsSortBy"}},{"name":"sortOrder","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortOrder"}},{"name":"limit","required":false,"in":"query","schema":{"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","schema":{"type":"string"}},{"name":"serviceIds","required":false,"in":"query","description":"authz","schema":{"type":"array","items":{"type":"string"}}}],"responses":{"200":{"description":"Returns requestId for tracking export progress","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IggreRequestResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Export spending data as CSV","tags":["Spends"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/accounts/custom":{"post":{"operationId":"publicSaveCustomAccounts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateCustomAccountBulkRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create, update and delete custom workspace SaaS accounts data","tags":["Custom Service and Workspace"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/accounts":{"post":{"description":"Provision an account for a user in a workspace.","operationId":"publicCreateServiceAccount","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"lang","required":false,"in":"query","schema":{"$ref":"#/components/schemas/Locale"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateAccountRequestDto"}}}},"responses":{"200":{"description":"Please use the `/api/v1/organizations/{organizationId}/requests` endpoint to retrieve the status of the deprovisioning request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCreateAccountResponseDto"}}}},"400":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationErrorListResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create an SaaS account","tags":["Workspace Accounts"]}},"/api/v1/organizations/{organizationId}/workspace/{workspaceId}/accounts/custom":{"post":{"deprecated":true,"description":"This endpoint is deprecated. Please use the `/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/accounts/custom` endpoint instead.","operationId":"publicSaveCustomAccounts_Deprecated","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateCustomAccountBulkRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create, update and delete custom workspace SaaS accounts data","tags":["Custom Service and Workspace"]}},"/api/v1/organizations/{organizationId}/workspace/{workspaceId}/accounts":{"post":{"deprecated":true,"description":"This endpoint is deprecated. Please use the `/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/accounts` endpoint instead.","operationId":"publicCreateServiceAccount_Deprecated","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"lang","required":false,"in":"query","schema":{"$ref":"#/components/schemas/Locale"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateAccountRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCreateAccountResponseDto"}}}},"400":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValidationErrorListResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create an SaaS account","tags":["Workspace Accounts"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/files/safe-lists":{"post":{"description":"Create a new safe list of files, domains, emails, or groups for a workspace.","operationId":"publicCreateWorkspaceSafeList","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateWorkspaceFileSafeListRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create a safe list for a workspace","tags":["Workspaces"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/files/safe-lists/bulk":{"patch":{"description":"Add entries to multiple safe lists of a workspace in a single request.","operationId":"publicBulkUpdateWorkspaceSafeList","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicBulkUpdateWorkspaceFileSafeListRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Bulk update safe lists for a workspace","tags":["Workspaces"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/files/safe-lists/{safeListId}":{"patch":{"description":"Update an existing safe list. The request body supports adding or removing entries in the same call.","operationId":"publicUpdateWorkspaceSafeList","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"safeListId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateWorkspaceFileSafeListRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Update a safe list for a workspace","tags":["Workspaces"]},"delete":{"description":"Delete an existing safe list from a workspace.","operationId":"publicDeleteWorkspaceSafeList","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"safeListId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Delete a safe list for a workspace","tags":["Workspaces"]}},"/api/v1/organizations/{organizationId}/workspaces/{workspaceId}/files/safe-lists/{safeListId}/{safeListType}":{"get":{"description":"Retrieve a paginated list of entries (files, domains, or emails) belonging to a specific safe list. <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetWorkspaceSafeList","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"safeListId","required":true,"in":"path","schema":{"type":"string"}},{"name":"safeListType","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetSafeListResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get entries from a safe list","tags":["Workspaces"]}},"/api/v1/organizations/{organizationId}/usage-optimization/unutilized-resources":{"get":{"operationId":"publicGetUnutilizedResources","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"serviceUniqueName","required":false,"in":"query","description":"The unique name of the service.","schema":{"example":"datadog","type":"string"}},{"name":"resourceType","required":false,"in":"query","description":"The type of the resource.","schema":{"$ref":"#/components/schemas/UsageBasedResourceType"}},{"name":"workspaceId","required":false,"in":"query","description":"The ID of the workspace.","schema":{"example":12345678,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetUnutilizedResourcesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get unutilized resources","tags":["Usage Optimization"]}},"/api/v1alpha/organizations/{organizationId}/devices":{"get":{"deprecated":true,"operationId":"publicGetDevicesV1Alpha","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"locale","required":true,"in":"query","schema":{"$ref":"#/components/schemas/Locale"}},{"name":"type","required":false,"in":"query","schema":{"$ref":"#/components/schemas/DeviceType"}},{"name":"cursor","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDevicesListResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Return a list of devices with localized values","tags":["Devices"]}},"/api/v1alpha/organizations/{organizationId}/devices/fields/all":{"get":{"deprecated":true,"operationId":"publicGetDeviceFieldsList","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"locale","required":true,"in":"query","description":"Translate the field names and labels to the specified locale.","schema":{"$ref":"#/components/schemas/Locale"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceFieldsListResponseDtoV1Alpha"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Return a list of device fields with localized values","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/search":{"post":{"operationId":"publicSearchDevices","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Maximum number of items to return per page","schema":{"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Base64-encoded cursor for pagination. Use the cursor from the previous response to get the next page.","schema":{"type":"string"}},{"name":"sortBy","required":false,"in":"query","description":"The `sortBy` value is a string that contains two parts separated by a dot. The first part is either `preset` or `custom` and the second part is the unique field name. Additionally the following fields can be used for sorting: `people.displayName`.","schema":{"example":"<preset | custom>.<unique field name>","type":"string"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort order for the results (asc or desc)","schema":{"$ref":"#/components/schemas/SortOrder"}},{"name":"expands","required":false,"in":"query","description":"Expand other datasets when fetching devices. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/DeviceExpand"}}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSearchDevicesRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSearchDevicesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Search devices for an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices":{"post":{"operationId":"publicCreateDevice","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateDeviceRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Create a device for an organization","tags":["Devices"]},"get":{"operationId":"publicGetDevices","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"locale","required":true,"in":"query","description":"Translate the field names and labels to the specified locale.","schema":{"$ref":"#/components/schemas/Locale"}},{"name":"type","required":false,"in":"query","description":"Filter by device type.","schema":{"$ref":"#/components/schemas/DeviceType"}},{"name":"status","required":false,"in":"query","description":"Filter by device status.","schema":{"$ref":"#/components/schemas/DeviceStatus"}},{"name":"asset_number","required":false,"in":"query","description":"Filter by asset number.","schema":{"example":"MF-123-01","type":"string"}},{"name":"serial_number","required":false,"in":"query","description":"Filter by serial number.","schema":{"example":"MF4XFR9P7KY","type":"string"}},{"name":"identityId","required":false,"in":"query","description":"Filter by identity Id of the user assigned to this device. `identityId` has precedence over `peopleId`.","schema":{"example":"TALWESJ9WC","type":"string"}},{"name":"peopleId","required":false,"in":"query","description":"Filter by people Id of the user assigned to this device. If `identityId` is present, `peopleId` takes precedence over `identityId`.","schema":{"example":5034567,"type":"number"}},{"name":"expands","required":false,"in":"query","description":"Expand other datasets when fetching devices. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/DeviceExpand"}}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDevicesListResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Return a list of devices with localized values filterable by status, asset number, serial number, and uid (or peopleId)","tags":["Devices"]},"delete":{"operationId":"publicDeleteDevices","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeleteDevicesBulkRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeleteDevicesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Delete multiple devices of an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/bulk":{"post":{"operationId":"publicCreateDevices","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateDevicesBulkRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateDevicesBulkListResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Create devices for an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/{deviceId}":{"patch":{"operationId":"updateDevice","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"deviceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateDeviceRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Update device of an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/stats":{"get":{"operationId":"publicGetDeviceStats","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"type","required":false,"in":"query","schema":{"$ref":"#/components/schemas/DeviceType"}},{"name":"groupId","required":false,"in":"query","description":"Filter stats by device group","schema":{"example":1,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDevicesStatsResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get statistics of devices for an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/insights":{"get":{"operationId":"publicGetDeviceInsights","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"type","required":false,"in":"query","schema":{"$ref":"#/components/schemas/DevicePresetFieldUniqueName"}},{"name":"deviceTypes","required":false,"in":"query","schema":{"type":"array","items":{"$ref":"#/components/schemas/DeviceType"}}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PublicDeviceInsightsResponseDto"}}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get insights of devices for an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/device-types":{"get":{"operationId":"publicGetAllowedDeviceTypes","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDevicePresetFieldDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get allowed device types for the organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/workspaces":{"get":{"operationId":"publicGetWorkspacesForDeviceMDM","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceWorkspaceStatusResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get workspaces for device MDM integration","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/fields/custom":{"get":{"operationId":"publicGetDeviceCustomFields","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceCustomFieldsListResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get all custom fields of an organization","tags":["Devices"]},"post":{"operationId":"publicCreateDeviceCustomField","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateDeviceCustomFieldRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDeviceCustomFieldResponseDto"}}}},"409":{"description":"The custom field unique name is already in use."}},"security":[{"API-Key":[]}],"summary":"Create a custom field for an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/fields/custom/{customFieldId}":{"patch":{"operationId":"publicUpdateDeviceCustomField","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"customFieldId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateDeviceCustomFieldRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDeviceCustomFieldResponseDto"}}}},"409":{"description":"The custom field unique name is already in use."}},"security":[{"API-Key":[]}],"summary":"Update a custom field for an organization","tags":["Devices"]},"delete":{"operationId":"publicDeleteDeviceCustomField","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"customFieldId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"204":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Delete a custom field for an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/device-groups":{"get":{"description":"Retrieve a paginated list of device groups for the organization.","operationId":"publicGetDeviceGroups","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceGroupsResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"List device groups","tags":["Devices"]},"post":{"description":"Create a device group from a set of matching conditions.","operationId":"publicCreateDeviceGroup","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateDeviceGroupRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeviceGroupResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"409":{"description":"A device group with the same name already exists"}},"security":[{"API-Key":[]}],"summary":"Create a device group","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/device-groups/{groupId}":{"get":{"description":"Retrieve a single device group by id.","operationId":"publicGetDeviceGroup","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"groupId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeviceGroupResponseDto"}}}},"401":{"description":"Invalid or missing API key"},"404":{"description":"Device group not found"}},"security":[{"API-Key":[]}],"summary":"Get a device group","tags":["Devices"]},"patch":{"description":"Update the name, description, or conditions of a device group.","operationId":"publicUpdateDeviceGroup","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"groupId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateDeviceGroupRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeviceGroupResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Device group not found"},"409":{"description":"A device group with the same name already exists"}},"security":[{"API-Key":[]}],"summary":"Update a device group","tags":["Devices"]},"delete":{"description":"Delete a device group. Default groups and groups referenced by other features cannot be deleted.","operationId":"publicDeleteDeviceGroup","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"groupId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"204":{"description":"Device group deleted"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Device group not found"},"409":{"description":"Device group is referenced by other features"}},"security":[{"API-Key":[]}],"summary":"Delete a device group","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/device-alert-rules":{"get":{"description":"Retrieve a paginated list of device alert rules for the organization.","operationId":"publicGetDeviceAlertRules","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceAlertRulesResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"List device alert rules","tags":["Devices"]},"post":{"description":"Create a device alert rule bound to a device group.","operationId":"publicCreateDeviceAlertRule","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateDeviceAlertRuleRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeviceAlertRuleResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Referenced device group not found"},"409":{"description":"An alert rule with the same name already exists"}},"security":[{"API-Key":[]}],"summary":"Create a device alert rule","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/device-alert-rules/{ruleId}":{"get":{"description":"Retrieve a single device alert rule by id.","operationId":"publicGetDeviceAlertRule","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"ruleId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeviceAlertRuleResponseDto"}}}},"401":{"description":"Invalid or missing API key"},"404":{"description":"Device alert rule not found"}},"security":[{"API-Key":[]}],"summary":"Get a device alert rule","tags":["Devices"]},"patch":{"description":"Update the name, description, group, condition, or enabled state of an alert rule.","operationId":"publicUpdateDeviceAlertRule","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"ruleId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateDeviceAlertRuleRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeviceAlertRuleResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Device alert rule or referenced device group not found"},"409":{"description":"An alert rule with the same name already exists"}},"security":[{"API-Key":[]}],"summary":"Update a device alert rule","tags":["Devices"]},"delete":{"description":"Delete a device alert rule by id.","operationId":"publicDeleteDeviceAlertRule","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"ruleId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"204":{"description":"Device alert rule deleted"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Device alert rule not found"}},"security":[{"API-Key":[]}],"summary":"Delete a device alert rule","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/asset-number/policy":{"get":{"description":"Retrieve the asset number generation policy for the organization.","operationId":"publicGetAssetNumberPolicy","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetAssetNumberPolicyResponseDto"}}}},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"Get the asset number policy","tags":["Devices"]},"patch":{"description":"Create or update the asset number generation policy for the organization.","operationId":"publicUpdateAssetNumberPolicy","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateAssetNumberPolicyRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetAssetNumberPolicyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"Create or update the asset number policy","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/asset-number/policy/toggle":{"patch":{"description":"Toggle whether asset numbers are auto-generated for the organization.","operationId":"publicToggleAssetNumberPolicy","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicToggleAssetNumberPolicyRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetAssetNumberPolicyResponseDto"}}}},"401":{"description":"Invalid or missing API key"},"404":{"description":"Policy not found for the organization"}},"security":[{"API-Key":[]}],"summary":"Enable or disable asset number auto-generation","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/asset-number/suggest":{"get":{"description":"Preview the next asset number that would be generated for the organization.","operationId":"publicSuggestAssetNumber","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"deviceType","required":false,"in":"query","description":"Device type uniqueName (required if the organization uses the device_type assignment method). Can be a default type (e.g. 'desktop_pc') or a custom device type UUID.","schema":{"example":"desktop_pc","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSuggestAssetNumberResponseDto"}}}},"401":{"description":"Invalid or missing API key"},"404":{"description":"No enabled policy configured"}},"security":[{"API-Key":[]}],"summary":"Suggest the next asset number","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/asset-number/validate":{"post":{"description":"Check whether an asset number is available (not already used) for the organization.","operationId":"publicValidateAssetNumber","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicValidateAssetNumberRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicValidateAssetNumberResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"Validate an asset number","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/field-configurations":{"get":{"description":"Retrieve the device field visibility and ordering configuration for the organization, optionally scoped to a device type.","operationId":"publicGetDeviceFieldConfiguration","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"type","required":false,"in":"query","schema":{"$ref":"#/components/schemas/DeviceType"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeviceFieldConfigurationResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"Get the device field configuration","tags":["Devices"]},"put":{"description":"Update the device field visibility and ordering configuration for the organization.","operationId":"publicUpdateDeviceFieldConfiguration","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateDeviceFieldConfigurationRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeviceFieldConfigurationResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"422":{"description":"Unknown or invalid field configuration"}},"security":[{"API-Key":[]}],"summary":"Update the device field configuration","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/departments":{"get":{"operationId":"publicGetDepartments","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDepartmentsResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List Departments","tags":["Departments"]}},"/api/v1/organizations/{organizationId}/locations":{"get":{"operationId":"publicGetLocations","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetLocationsResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List Locations","tags":["Locations"]}},"/api/v1/organizations/{organizationId}/companies":{"get":{"operationId":"publicGetCompanies","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetCompaniesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List Companies","tags":["Companies"]}},"/api/v1/organizations/{organizationId}/identity":{"post":{"operationId":"publicCreateIdentity","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateIdentityDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicIdentityDto"}}}},"400":{"description":"The request is invalid.","content":{"application/json":{"examples":{"validation_exception":{"summary":"Request rules are not followed.","value":{"statusCode":400,"errorId":"validation_exception","errorDetails":[{"property":"isManager","constraints":{"isEmpty":"isManager must be empty"}}]}},"identity_invalid_employee_type":{"summary":"The employee type is invalid.","value":{"statusCode":400,"errorId":"identity_invalid_employee_type"}},"identity_invalid_employee_status":{"summary":"The employee status is invalid.","value":{"statusCode":400,"errorId":"identity_invalid_employee_status"}},"identity_duplicated_email":{"summary":"The email is already in use.","value":{"statusCode":400,"errorId":"identity_duplicated_email"}}}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."},"422":{"description":"The custom fields are invalid."}},"security":[{"API-Key":[]}],"summary":"Create a new Identity","tags":["Directory"]},"get":{"operationId":"publicGetIdentities","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"managementTypes","required":false,"in":"query","description":"Filter results by management type. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/ManagementType"}}},{"name":"types","required":false,"in":"query","description":"Filter results by type. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/EmployeeType"}}},{"name":"statuses","required":false,"in":"query","description":"Filter results by status. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/ExtendedEmployeeStatus"}}},{"name":"companies","required":false,"in":"query","description":"Filter results by companies. Accepts multiple options.","schema":{"example":["Corp 1","Corp 2"],"type":"array","items":{"type":"string"}}},{"name":"departments","required":false,"in":"query","description":"Filter results by departments. Accepts multiple options.","schema":{"example":["Sales","Marketing"],"type":"array","items":{"type":"string"}}},{"name":"locations","required":false,"in":"query","description":"Filter results by locations. Accepts multiple options.","schema":{"example":["Tokyo","London"],"type":"array","items":{"type":"string"}}},{"name":"keyword","required":false,"in":"query","description":"Filter results by username, identityId, department name, email or displayName (prefix search).","schema":{"type":"string"}},{"name":"contractStartRange","required":false,"in":"query","description":"Filter results by contract start date range. Format: `YYYY-MM-DD:YYYY-MM-DD`, separated by a colon.","schema":{"example":"2023-01-01:2023-12-31","type":"string"}},{"name":"contractEndRange","required":false,"in":"query","description":"Filter results by contract end date range. Format: `YYYY-MM-DD:YYYY-MM-DD`, separated by a colon.","schema":{"example":"2023-01-01:2023-12-31","type":"string"}},{"name":"createdAtRange","required":false,"in":"query","description":"Filter results by created date range. Format: `YYYY-MM-DD:YYYY-MM-DD`, separated by a colon.","schema":{"example":"2023-01-01:2023-12-31","type":"string"}},{"name":"updatedAtRange","required":false,"in":"query","description":"Filter results by updated date range. Format: `YYYY-MM-DD:YYYY-MM-DD`, separated by a colon.","schema":{"example":"2023-01-01:2023-12-31","type":"string"}},{"name":"sortBy","required":false,"in":"query","description":"Sort results by a specific field.","schema":{"$ref":"#/components/schemas/IdentitySortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort results in ascending or descending order. Defaults to `ASC`.","schema":{"example":"ASC","type":"string","enum":["DESC","ASC"]}},{"name":"identityIds","required":false,"in":"query","description":"Filter results by identityIds. Accepts multiple options.","schema":{"type":"array","items":{"type":"string"}}},{"name":"peopleIds","required":false,"in":"query","description":"Filter results by peopleIds. Accepts multiple options.","schema":{"type":"array","items":{"type":"number"}}},{"name":"expands","required":false,"in":"query","description":"Expand other datasets when fetching identities. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/IdentityExpand"}}},{"name":"alertTypes","required":false,"in":"query","description":"Filter result by alert type. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/AlertType"}}},{"name":"managerId","required":false,"in":"query","description":"Filter results by managerId.","schema":{"example":"0","type":"string"}},{"name":"serviceId","required":false,"in":"query","description":"Filter results by serviceId.","schema":{"example":"foo","type":"string"}},{"name":"hasHRM","required":false,"in":"query","description":"Filter results by HRM (employee master) linkage. When true, returns only UIDs with HRM linkage. When not provided, no filtering is applied.","schema":{"example":true,"type":"boolean"}},{"name":"haveAssignedDevice","required":false,"in":"query","description":"Filter results by identities that have at least one assigned device","schema":{"example":true,"type":"boolean"}},{"name":"haveSaasAccount","required":false,"in":"query","description":"Filter results by identities that have at least one SaaS account","schema":{"example":true,"type":"boolean"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIdentitiesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List Identities","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/check":{"get":{"operationId":"publicCheckIdentityManagementType","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"email","required":false,"in":"query","description":"Email of the new Identity to check","schema":{"type":"string"}},{"name":"identityId","required":false,"in":"query","description":"Identity Id to be checked","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCheckIdentitiesManagementTypeResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Check Identity management type","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/stats":{"get":{"operationId":"publicGetIdentitiesStats","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIdentitiesStatisticsResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Identities Stats","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/{identityId}/history":{"get":{"operationId":"publicGetIdentityHistory","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"identityId","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"default":10,"type":"number"}},{"name":"cursor","required":false,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicIdentityHistoryByChangeResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get an Identity History","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/{identityId}/archive":{"put":{"operationId":"publicUpdateIdentityArchive","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"identityId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicIdentityDto"}}}}},"security":[{"API-Key":[]}],"summary":"Toggle Identity Archive flag","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/{identityId}/unregister":{"put":{"operationId":"publicUpdateIdentityUnregister","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"identityId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicIdentityDto"}}}}},"security":[{"API-Key":[]}],"summary":"Toggle Identity Unregistered Management Type","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/bulk":{"patch":{"operationId":"publicBulkUpdateIdentities","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkUpdateIdentitiesDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"string"}}}}},"security":[{"API-Key":[]}],"summary":"Bulk update multiple identities","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/merge":{"post":{"description":"Merging identities depends on the management type of the identities.<br>\n    For example, a `managed` identity can only be merged into another `managed` identity, while an `external` identity can be merged into a `managed` or `external` identity.<br><br>\n    The conditions for merging identities are:<br>\n\n    - managed       -> managed\n    - external      -> managed, external\n    - system        -> managed, external, system\n    - unregistered  -> managed, external, system\n    - unknown       -> managed, external, system, unregistered\n    ","operationId":"publicMergeIdentities","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MergeIdentityRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIdentitiesResponseDto"}}}},"400":{"description":"The requested merge does not follow the allowed patterns."},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Merge identity with another one in batch","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/unmerge":{"post":{"operationId":"publicUnmergeIdentities","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnmergeIdentityRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIdentitiesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Unmerges the identified identity entities","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/{identityId}":{"put":{"description":"Updates an Identity entity.<br><br>\n    Each field has its own validation rules. Below are some notable behaviors to be aware of:<br>\n    <ul>\n    <li><code>managementType</code> — Automatically determined based on the primary email domain and the organization's registered domains. Even if <code>managed</code> is specified, the actual value may be recategorized (e.g. <code>external</code>, <code>system</code>) depending on the email domain.</li>\n    <li><code>employeeType</code> — Must be compatible with the resolved <code>managementType</code>. If an incompatible type is provided, a default will be assigned.</li>\n    <li><code>primaryEmail</code> / <code>secondaryEmails</code> — Swapping values between primary and secondary emails will reorder them. If the current primary email is linked to a SaaS account, the old primary must be preserved in <code>secondaryEmails</code>.</li>\n    <li><code>employeeId</code> — Must be unique within the organization.</li>\n    </ul>\n    Note: Additional system-level validations exist beyond those listed above. Refer to the error responses for details.\n    ","operationId":"publicUpdateIdentity","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"identityId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateIdentityDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicIdentityDto"}}}},"400":{"description":"The request is invalid.","content":{"application/json":{"examples":{"validation_exception":{"summary":"Request rules are not followed.","value":{"statusCode":400,"errorId":"validation_exception","errorDetails":[{"property":"isManager","constraints":{"isEmpty":"isManager must be empty"}}]}},"identity_invalid_employee_type":{"summary":"The employee type is invalid.","value":{"statusCode":400,"errorId":"identity_invalid_employee_type"}},"identity_invalid_employee_status":{"summary":"The employee status is invalid.","value":{"statusCode":400,"errorId":"identity_invalid_employee_status"}},"identity_duplicate_employee_id":{"summary":"The employee id is already in use.","value":{"statusCode":400,"errorId":"identity_duplicate_employee_id"}},"identity_duplicated_email":{"summary":"The email is already in use.","value":{"statusCode":400,"errorId":"identity_duplicated_email"}},"identity_uneditable_email":{"summary":"The email is not editable.","value":{"statusCode":400,"errorId":"identity_uneditable_email"}},"identity_has_devices":{"summary":"The identity has devices.","value":{"statusCode":400,"errorId":"identity_has_devices"}},"identity_has_workspace":{"summary":"The identity has workspaces.","value":{"statusCode":400,"errorId":"identity_has_workspace"}}}}}},"404":{"description":"The identity is not found."},"418":{"description":"The feature isn't available for the organization. Please contact the support team."},"422":{"description":"The custom fields are invalid."}},"security":[{"API-Key":[]}],"summary":"Updates an Identity","tags":["Directory"]},"get":{"operationId":"publicGetIdentity","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"identityId","required":true,"in":"path","schema":{"type":"string"}},{"name":"expands","required":false,"in":"query","description":"Expand other datasets when fetching identities. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/GetSingleIdentityExpand"}}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicIdentityDto"}}}},"404":{"description":"The identity is not found."},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get an Identity","tags":["Directory"]},"delete":{"operationId":"publicDeleteIdentity","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"identityId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicIdentityDto"}}}},"404":{"description":"The identity is not found."},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Delete an Identity","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/fields/custom":{"get":{"operationId":"getIdentityCustomFields","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIdentityCustomFieldsListResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get all custom fields of an organization","tags":["Directory"]},"post":{"operationId":"createIdentityCustomField","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateIdentityCustomFieldRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetIdentityCustomFieldResponseDto"}}}},"409":{"description":"The custom field unique name is already in use."}},"security":[{"API-Key":[]}],"summary":"Create a custom field for an organization","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/fields/custom/{customFieldId}":{"patch":{"operationId":"updateIdentityCustomField","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"customFieldId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateIdentityCustomFieldRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetIdentityCustomFieldResponseDto"}}}},"409":{"description":"The custom field unique name is already in use."}},"security":[{"API-Key":[]}],"summary":"Update a custom field for an organization","tags":["Directory"]},"delete":{"operationId":"deleteIdentityCustomField","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"customFieldId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"204":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Delete a custom field for an organization","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/requests":{"post":{"operationId":"publicGetRequest","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"lang","required":false,"in":"query","schema":{"$ref":"#/components/schemas/Locale"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/PublicGetIggreRequestWithRequestIdDto"},{"$ref":"#/components/schemas/PublicGetIggreRequestWithWorkflowRunIdAndStatusDto"},{"$ref":"#/components/schemas/PublicGetIggreRequestWithPeopleIdAndSuperTypeDto"}]}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIggreRequestsResponseDto"}}}},"429":{"description":""}},"security":[{"API-Key":[]}],"summary":"Get requests by requestId","tags":["Requests"]}},"/api/v1/organizations/{organizationId}/accounts":{"delete":{"description":"Create aggregation req to deprovision standard accounts and delete custom accounts","operationId":"publicDeleteAccounts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeleteAccountBulkRequestDto"}}}},"responses":{"200":{"description":"The ID of the created deprovision request, can be used to check the status of the request. <br/> Please use the `/api/v1/organizations/{organizationId}/requests` endpoint to retrieve the status of the deprovisioning request.","content":{"application/json":{"schema":{"type":"string"}}}}},"security":[{"API-Key":[]}],"summary":"Deactivate or delete accounts","tags":["Accounts"]}},"/api/v1/organizations/{organizationId}/audit-logs/export":{"get":{"description":"Export audit logs csv","operationId":"publicExportAuditLogs","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"startDate","required":true,"in":"query","schema":{"format":"date-time","example":"2022-06","type":"string"}},{"name":"endDate","required":true,"in":"query","schema":{"format":"date-time","example":"2024-01","type":"string"}},{"name":"locale","required":false,"in":"query","schema":{"$ref":"#/components/schemas/Locale"}},{"name":"actorType","required":false,"in":"query","schema":{"$ref":"#/components/schemas/AuditLogFilterableActorType"}},{"name":"actorId","required":false,"in":"query","schema":{"example":123,"type":"number"}},{"name":"category","required":false,"in":"query","schema":{"$ref":"#/components/schemas/AuditLogCategory"}}],"responses":{"200":{"description":"To check the status of the export request, use the Get requests by requestId endpoint.","content":{"application/json":{"schema":{"type":"string"}}}}},"security":[{"API-Key":[]}],"summary":"Export audit logs csv","tags":["AuditLogs"]}},"/api/v1/organizations/{organizationId}/audit-logs/count":{"get":{"description":"Count audit logs","operationId":"publicCountAuditLogs","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"startDate","required":true,"in":"query","schema":{"format":"date-time","example":"2022-06","type":"string"}},{"name":"endDate","required":true,"in":"query","schema":{"format":"date-time","example":"2024-01","type":"string"}},{"name":"locale","required":false,"in":"query","schema":{"$ref":"#/components/schemas/Locale"}},{"name":"actorType","required":false,"in":"query","schema":{"$ref":"#/components/schemas/AuditLogFilterableActorType"}},{"name":"actorId","required":false,"in":"query","schema":{"example":123,"type":"number"}},{"name":"category","required":false,"in":"query","schema":{"$ref":"#/components/schemas/AuditLogCategory"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetAuditLogsCountResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Count audit logs","tags":["AuditLogs"]}},"/api/v1/organizations/{organizationId}/bill-emails":{"get":{"description":"Get all bill emails that belong to an organization. Supports filtering by service name, date range, and pagination.","operationId":"publicGetBillEmails","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"showUnmatchedEmail","required":false,"in":"query","description":"Whether to include emails that are not matched to any service","schema":{"example":true,"type":"boolean"}},{"name":"saasUniqueName","required":false,"in":"query","description":"Filter by service unique name","schema":{"example":"github","type":"string"}},{"name":"startDate","required":false,"in":"query","description":"Filter by start date (YYYY-MM-DD format)","schema":{"example":"2022-10-01","type":"string"}},{"name":"endDate","required":false,"in":"query","description":"Filter by end date (YYYY-MM-DD format)","schema":{"example":"2022-10-10","type":"string"}},{"name":"limit","required":false,"in":"query","description":"Maximum number of items to return","schema":{"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor for pagination","schema":{"example":"xxxxxx","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetBillEmailsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get all bill emails","tags":["Spends"]}},"/api/v1/organizations/{organizationId}/bill-emails/{emailId}/attachments/{fileName}/download-url":{"get":{"description":"Get the S3 signed URL for downloading a specific attachment from a bill email. The URL is valid for a limited time (default: 60 seconds).","operationId":"publicGetBillEmailAttachmentDownloadUrl","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"emailId","required":true,"in":"path","schema":{"type":"string"}},{"name":"fileName","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetAttachmentDownloadUrlResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get download URL for a bill email attachment","tags":["Spends"]}},"/api/v1/organizations/{organizationId}/devices/{deviceId}/meta":{"patch":{"operationId":"publicUpdateDeviceMeta","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"deviceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateDeviceMetaRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Update device's meta information (assignment info and location)","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/{deviceId}/histories":{"post":{"operationId":"publicCreateDeviceHistory","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"deviceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateDeviceHistoryEntryDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceHistoryResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Create history entry of a device of an organization","tags":["Devices"]},"delete":{"operationId":"publicDeleteDeviceHistories","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"deviceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeleteDeviceHistoriesBulkRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicDeleteDeviceHistoryEntriesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Delete multiple history entries of a device of an organization","tags":["Devices"]},"get":{"operationId":"publicGetDeviceHistories","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"deviceId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceHistoriesListResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get all device's history entries","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/devices/{deviceId}/histories/{historyId}":{"put":{"operationId":"publicUpdateDeviceHistory","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"deviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"historyId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateDeviceHistoryEntryDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceHistoryResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Update history entry of a device of an organization","tags":["Devices"]},"delete":{"operationId":"publicDeleteDeviceHistory","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"deviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"historyId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetDeviceHistoryResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Delete a single history entry of a device of an organization","tags":["Devices"]}},"/api/v1/organizations/{organizationId}/event-logs":{"get":{"description":"Retrieve event logs for an organization with filtering and pagination support. Event logs track user activities across integrated services. <br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetEventLogs","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"identityId","required":false,"in":"query","schema":{"type":"string"}},{"name":"startDate","required":false,"in":"query","description":"Filter event logs from this start date. Supports both date format (YYYY-MM-DD) and ISO 8601 datetime format (YYYY-MM-DDTHH:mm:ss.sssZ).","schema":{"example":"2022-01-01T00:00:00.000Z","type":"string"}},{"name":"endDate","required":false,"in":"query","description":"Filter event logs up to this end date. Supports both date format (YYYY-MM-DD) and ISO 8601 datetime format (YYYY-MM-DDTHH:mm:ss.sssZ).","schema":{"example":"2022-10-27T23:59:59.999Z","type":"string"}},{"name":"searchText","required":false,"in":"query","description":"Search text to filter event logs by user email, service name, or event details.","schema":{"type":"string"}},{"name":"showUnmatched","required":false,"in":"query","description":"Include unmatched event logs (events that couldn't be matched to known users).","schema":{"default":false,"type":"boolean"}},{"name":"limit","required":false,"in":"query","description":"Maximum number of items to return per page.","schema":{"default":50,"example":50,"type":"number"}},{"name":"nextCursor","required":false,"in":"query","description":"Cursor for pagination. Use the nextCursor value from the previous response to fetch the next page.","schema":{"type":"string"}}],"responses":{"200":{"description":"Event logs retrieved successfully.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetEventLogsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List event logs","tags":["EventLogs"]}},"/api/v1/organizations/{organizationId}/event-logs/summary/service":{"get":{"description":"List event log summary by service","operationId":"publicGetEventLogSummaryByService","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"date","required":true,"in":"query","description":"Return event logs for the specified month of the year.","schema":{"format":"date","example":"2024-01","type":"string"}},{"name":"excludeUnmatched","required":false,"in":"query","description":"Exclude unmatched event logs.","schema":{"default":false,"type":"boolean"}},{"name":"domainUrl","required":false,"in":"query","description":"Filter by domain URL.","schema":{"type":"string"}},{"name":"skipCache","required":false,"in":"query","description":"Skip cache.","schema":{"default":false,"type":"boolean"}},{"name":"includeMuted","required":false,"in":"query","description":"Include muted (Shadow IT) services in the summary. Defaults to true. Pass false to exclude them; a page may then hold fewer than `limit` items, but no row is lost or repeated.","schema":{"default":true,"type":"boolean"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetEventLogSummaryByServiceResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List event log summary by service","tags":["EventLogs"]}},"/api/v1/organizations/{organizationId}/event-logs/summary/user":{"get":{"description":"List event log summary by user","operationId":"publicGetEventLogSummaryByUser","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"date","required":true,"in":"query","description":"Return event logs for the specified month of the year.","schema":{"format":"date","example":"2024-01","type":"string"}},{"name":"excludeUnmatched","required":false,"in":"query","description":"Exclude unmatched event logs.","schema":{"default":false,"type":"boolean"}},{"name":"domainUrl","required":false,"in":"query","description":"Filter by domain URL.","schema":{"type":"string"}},{"name":"skipCache","required":false,"in":"query","description":"Skip cache.","schema":{"default":false,"type":"boolean"}},{"name":"includeMuted","required":false,"in":"query","description":"Include muted (Shadow IT) services in the summary. Defaults to true. Pass false to exclude them; a page may then hold fewer than `limit` items, but no row is lost or repeated.","schema":{"default":true,"type":"boolean"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetEventLogSummaryByUserResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List event log summary by user","tags":["EventLogs"]}},"/api/v1/organizations/{organizationId}/identity/configuration/configuration":{"get":{"description":"Retrieve the organization-level identity field configuration: preset and custom field definitions, ordering, source-of-truth and service metadata.","operationId":"publicGetIdentityFieldConfiguration","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIdentityFieldConfigurationResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get organization identity field configuration","tags":["Directory"]},"put":{"description":"Update the organization-level identity field configuration (field visibility, ordering, source-of-truth).","operationId":"publicUpdateIdentityFieldConfiguration","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateIdentityFieldConfigurationRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIdentityFieldConfigurationResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Update organization identity field configuration","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/identity/configuration/configuration/{identityId}":{"get":{"operationId":"publicGetSingleIdentityFieldConfiguration","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"identityId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetSingleIdentityFieldConfigurationResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get identity field configuration of an identity","tags":["Directory"]}},"/api/v1/organizations/{organizationId}/contracts":{"get":{"operationId":"publicGetContracts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"query","required":false,"in":"query","schema":{"example":"Monthly payment","type":"string"}},{"name":"startDate","required":false,"in":"query","schema":{"format":"date-time","example":"2022-01-01","type":"string"}},{"name":"endDate","required":false,"in":"query","schema":{"format":"date-time","example":"2022-03-31","type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"example":"50","type":"number"}},{"name":"cursor","required":false,"in":"query","schema":{"example":"aWQ6MjkzNjE0w","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetContractsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get all contracts","tags":["Contracts"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/services/{serviceId}/contracts":{"post":{"operationId":"publicCreateContract","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateContractRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicContractResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create a contract for a service","tags":["Contracts"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/services/{serviceId}/contracts/{contractId}":{"get":{"operationId":"publicGetContract","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicContractResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get a contract by ID","tags":["Contracts"]},"patch":{"operationId":"publicUpdateContract","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateContractRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicContractResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Update a contract by ID","tags":["Contracts"]},"delete":{"operationId":"publicDeleteContract","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicContractResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Delete a contract by ID","tags":["Contracts"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/contracts/{contractId}/contract-reminders":{"get":{"description":"Retrieve all reminders configured for a contract.","operationId":"publicGetContractReminders","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/PublicContractReminderResponseDto"}}}}}},"security":[{"API-Key":[]}],"summary":"List contract reminders","tags":["Contracts"]},"post":{"description":"Create an email reminder for a contract. Slack reminders are not supported via the public API (they require internal Slack OAuth) and must be configured in the Admina UI.","operationId":"publicCreateContractReminder","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateContractReminderRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicContractReminderResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create a contract reminder","tags":["Contracts"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/contracts/{contractId}/contract-reminders/{id}":{"patch":{"description":"Update an email reminder for a contract by its ID. Slack reminders are not supported via the public API and must be managed in the Admina UI.","operationId":"publicUpdateContractReminder","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}},{"name":"id","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateContractReminderRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicContractReminderResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Update a contract reminder","tags":["Contracts"]},"delete":{"description":"Delete a reminder for a contract by its ID.","operationId":"publicDeleteContractReminder","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}},{"name":"id","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Delete a contract reminder","tags":["Contracts"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/contracts/{contractId}/contract-cost-allocations":{"get":{"description":"Retrieve the cost allocation configured for a contract.","operationId":"publicGetContractCostAllocation","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicContractCostAllocationResponseDto"}}}},"404":{"description":"Contract or cost allocation not found"}},"security":[{"API-Key":[]}],"summary":"Get contract cost allocation","tags":["Contracts"]},"post":{"description":"Create the cost allocation for a contract.","operationId":"publicCreateContractCostAllocation","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateOrUpdateContractCostAllocationRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Create a contract cost allocation","tags":["Contracts"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/contracts/{contractId}/contract-cost-allocations/{id}":{"put":{"description":"Update the cost allocation for a contract by its ID.","operationId":"publicUpdateContractCostAllocation","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"contractId","required":true,"in":"path","schema":{"type":"number"}},{"name":"id","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateOrUpdateContractCostAllocationRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Update a contract cost allocation","tags":["Contracts"]}},"/api/v1/organizations/{organizationId}/integration-logs":{"get":{"description":"Retrieve a paginated list of integration logs for the organization.","operationId":"publicGetIntegrationLogs","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"startDate","required":false,"in":"query","schema":{"example":1644399011,"type":"number"}},{"name":"endDate","required":false,"in":"query","schema":{"example":1644399011,"type":"number"}},{"name":"serviceNameOrWorkspaceName","required":false,"in":"query","schema":{"example":"GitHub/Mfi","type":"string"}},{"name":"result","required":false,"in":"query","schema":{"example":"success","type":"string","enum":["success","failed"]}},{"name":"action","required":false,"in":"query","schema":{"example":"aggregateAll","type":"string","enum":["aggregateAll","invite","create","update","delete","deactivate","removeFilePermissions","deleteWorkspace","syncOneFile","createRole","createDevice"]}},{"name":"requester","required":false,"in":"query","schema":{"example":"nguyen.tri.minh@moneyforward.co.jp","type":"string"}},{"name":"requesterType","required":false,"in":"query","schema":{"example":"system","type":"string","enum":["system","user"]}},{"name":"limit","required":false,"in":"query","schema":{"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","schema":{"example":"cmFuZG9tS2V5OnJhbmRvbUtleQ","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIntegrationLogsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List integration logs","tags":["Integration Logs"]}},"/api/v1/organizations/{organizationId}/integration-logs/csv":{"get":{"description":"Export integration logs as a CSV file. When `newWorkflow` is true, the CSV is generated asynchronously and a `requestId` is returned to poll for completion.","operationId":"publicExportIntegrationLogsCsv","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"startDate","required":false,"in":"query","schema":{"example":1644399011,"type":"number"}},{"name":"endDate","required":false,"in":"query","schema":{"example":1644399011,"type":"number"}},{"name":"serviceNameOrWorkspaceName","required":false,"in":"query","schema":{"example":"GitHub/Mfi","type":"string"}},{"name":"result","required":false,"in":"query","schema":{"example":"success","type":"string","enum":["success","failed"]}},{"name":"action","required":false,"in":"query","schema":{"example":"aggregateAll","type":"string","enum":["aggregateAll","invite","create","update","delete","deactivate","removeFilePermissions","deleteWorkspace","syncOneFile","createRole","createDevice"]}},{"name":"requester","required":false,"in":"query","schema":{"example":"nguyen.tri.minh@moneyforward.co.jp","type":"string"}},{"name":"requesterType","required":false,"in":"query","schema":{"example":"system","type":"string","enum":["system","user"]}},{"name":"newWorkflow","required":false,"in":"query","description":"When true, generate the CSV asynchronously via an iggre-request and return a requestId to poll.","schema":{"example":true,"type":"boolean"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetIntegrationLogsCsvResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Export integration logs CSV","tags":["Integration Logs"]}},"/api/v1/organizations/{organizationId}/workflows/{workflowId}/trigger":{"post":{"description":"Trigger a workflow on demand for the given targets. Returns one run ID per target; poll the run endpoints to track progress.","operationId":"publicTriggerWorkflow","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workflowId","required":true,"in":"path","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicTriggerWorkflowRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicTriggerWorkflowResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"Trigger a workflow","tags":["Workflows"]}},"/api/v1/organizations/{organizationId}/workflows/{workflowId}/runs":{"get":{"description":"Retrieve a paginated list of runs for a workflow, optionally filtered by status.","operationId":"publicGetWorkflowRuns","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workflowId","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by run status","schema":{"$ref":"#/components/schemas/WorkflowRunStatus"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetWorkflowRunsResponseDto"}}}}},"security":[{"API-Key":[]}],"summary":"List workflow runs","tags":["Workflows"]}},"/api/v1/organizations/{organizationId}/workflows/{workflowId}/runs/{runId}":{"get":{"description":"Retrieve the current status of a single workflow run.","operationId":"publicGetWorkflowRun","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workflowId","required":true,"in":"path","schema":{"type":"string"}},{"name":"runId","required":true,"in":"path","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicWorkflowRunDto"}}}}},"security":[{"API-Key":[]}],"summary":"Get workflow run status","tags":["Workflows"]}},"/api/v1/organizations/{organizationId}/alerts":{"get":{"description":"Retrieve a paginated list of alerts for the organization. Supports filtering by service, workspace, user, alert type, and alert level.","operationId":"publicGetAlerts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":false,"in":"query","description":"Filter by service ID","schema":{"example":1,"type":"number"}},{"name":"serviceName","required":false,"in":"query","description":"Filter by service name","schema":{"example":"Slack","type":"string"}},{"name":"workspaceId","required":false,"in":"query","description":"Filter by workspace ID","schema":{"example":1,"type":"number"}},{"name":"userIdentifier","required":false,"in":"query","description":"Filter by user identifier. Searches across alert targetId, account key, and primary email. Can accept various formats: peopleAccountId (e.g. '97#user@example.com'), email, or full targetId.","schema":{"example":"user@example.com","type":"string"}},{"name":"type","required":false,"in":"query","description":"Filter by alert type","schema":{"example":"retired_account","type":"string","enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"]}},{"name":"level","required":false,"in":"query","description":"Filter by alert level","schema":{"example":"warning","type":"string","enum":["warning","caution"]}},{"name":"muted","required":false,"in":"query","description":"Filter by muted status (true = only muted, false = only unmuted, undefined = all)","schema":{"example":false,"type":"boolean"}},{"name":"limit","required":false,"in":"query","description":"Number of items per page (1-100)","schema":{"default":20,"example":20,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor for pagination. Use the nextCursor value from a previous response to fetch the next page.","schema":{"example":"eyJwYWdlIjoyLCJsaW1pdCI6MjB9","type":"string"}}],"responses":{"200":{"description":"Successfully retrieved alerts","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetAlertsResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"List organization alerts","tags":["Alerts"]}},"/api/v1/organizations/{organizationId}/alerts/mutes":{"get":{"description":"Retrieve a paginated list of alert type mutes (bulk mutes) for the organization. These are permanent alert suppressions created via the bulk-mute endpoint. Supports filtering by service and alert type.","operationId":"publicGetAlertMutes","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":false,"in":"query","description":"Filter by service ID","schema":{"example":1,"type":"number"}},{"name":"alertType","required":false,"in":"query","description":"Filter by alert type","schema":{"example":"retired_account","type":"string","enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"]}},{"name":"limit","required":false,"in":"query","description":"Number of items per page (1-100)","schema":{"default":20,"example":20,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor for pagination. Use the nextCursor value from a previous response to fetch the next page.","schema":{"example":"eyJwYWdlIjoyLCJsaW1pdCI6MjB9","type":"string"}}],"responses":{"200":{"description":"Successfully retrieved alert mutes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetAlertMutesResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"List alert type mutes","tags":["Alerts"]}},"/api/v1/organizations/{organizationId}/alerts/services/mute":{"post":{"description":"Mute all alerts for one or more services, or mute all alerts of a specific type for services. This creates alert type mutes that suppress future alerts matching the criteria.","operationId":"publicBulkMuteAlerts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicMuteServiceAlertsRequestDto"}}}},"responses":{"200":{"description":"Successfully muted alerts","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Service not found"}},"security":[{"API-Key":[]}],"summary":"Mute alerts for services","tags":["Alerts"]},"delete":{"description":"Unmute all alerts for one or more services, or unmute all alerts of a specific type for services. This removes alert type mutes that were previously created.","operationId":"publicBulkUnmuteAlerts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUnmuteServiceAlertsRequestDto"}}}},"responses":{"200":{"description":"Successfully unmuted alerts","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Service or alert mute not found"}},"security":[{"API-Key":[]}],"summary":"Unmute alerts for services","tags":["Alerts"]}},"/api/v1/organizations/{organizationId}/alerts/accounts/mute":{"post":{"description":"Mute alerts of a specific type for one or more user accounts. Supports temporary mutes with an optional expiration timestamp.","operationId":"publicMuteAccountAlerts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicMuteAccountAlertsRequestDto"}}}},"responses":{"200":{"description":"Successfully muted account alerts","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"Mute alerts for accounts","tags":["Alerts"]},"delete":{"description":"Unmute alerts of a specific type for one or more user accounts. This removes previously set account-level mutes.","operationId":"publicUnmuteAccountAlerts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUnmuteAccountAlertsRequestDto"}}}},"responses":{"200":{"description":"Successfully unmuted account alerts","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"Unmute alerts for accounts","tags":["Alerts"]}},"/api/v1/organizations/{organizationId}/alerts/files/mute":{"post":{"description":"Mute public file alerts for one or more files. Supports temporary mutes with an optional expiration timestamp.","operationId":"publicMuteFileAlerts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicMuteFileAlertsRequestDto"}}}},"responses":{"200":{"description":"Successfully muted file alerts","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"Mute public file alerts","tags":["Alerts"]},"delete":{"description":"Unmute public file alerts for one or more files. This removes previously set file-level mutes.","operationId":"publicUnmuteFileAlerts","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUnmuteFileAlertsRequestDto"}}}},"responses":{"200":{"description":"Successfully unmuted file alerts","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"}},"security":[{"API-Key":[]}],"summary":"Unmute public file alerts","tags":["Alerts"]}},"/api/v1/organizations/{organizationId}/surveys":{"get":{"description":"Retrieve a paginated list of surveys for the organization. Supports search, filtering by status, category, target type and date ranges, sorting, and cursor pagination.","operationId":"publicGetSurveys","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Number of items to return per page. Default is 50, maximum is 200.","schema":{"minimum":1,"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor for pagination. Use the nextCursor from previous response to get next page.","schema":{"example":"eyJwYWdlIjoyLCJsaW1pdCI6NTB9","type":"string"}},{"name":"sortBy","required":false,"in":"query","description":"Field to sort by. Defaults to createdAt.","schema":{"$ref":"#/components/schemas/SurveySortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort order. Defaults to DESC for createdAt.","schema":{"$ref":"#/components/schemas/SortOrder"}},{"name":"search","required":false,"in":"query","description":"Search term to filter surveys by title, description, or content.","schema":{"example":"Device Survey","type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter surveys by status. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/SurveyStatus"}}},{"name":"category","required":false,"in":"query","description":"Filter surveys by category.","schema":{"example":"device_ownership","type":"string"}},{"name":"targetType","required":false,"in":"query","description":"Filter surveys by target type.","schema":{"$ref":"#/components/schemas/TargetType"}},{"name":"launchDateRange","required":false,"in":"query","description":"Filter surveys by scheduled launch date range. Format: `YYYY-MM-DD:YYYY-MM-DD`, separated by a colon.","schema":{"example":"2024-01-01:2024-12-31","type":"string"}},{"name":"deadlineDateRange","required":false,"in":"query","description":"Filter surveys by deadline date range. Format: `YYYY-MM-DD:YYYY-MM-DD`, separated by a colon.","schema":{"example":"2024-01-01:2024-12-31","type":"string"}},{"name":"creationDateRange","required":false,"in":"query","description":"Filter surveys by creation date range. Format: `YYYY-MM-DD:YYYY-MM-DD`, separated by a colon.","schema":{"example":"2024-01-01:2024-12-31","type":"string"}}],"responses":{"200":{"description":"Successfully retrieved surveys","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetSurveysResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List organization surveys","tags":["Surveys"]},"post":{"description":"Create a new survey in the organization. The survey is created in draft status unless publishImmediately is set. scheduledLaunchAt only takes effect when isScheduleLaunch is true (a published survey is then launched automatically at that time); otherwise the survey must be launched manually via POST /surveys/:surveyId/launch. deadlineAt is required when reminderConfig is enabled.","operationId":"publicCreateSurvey","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateSurveyRequestDto"}}}},"responses":{"201":{"description":"Successfully created survey","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSurveyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Create a new survey","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/surveys/{surveyId}":{"get":{"description":"Retrieve a specific survey by its ID, including its questions.","operationId":"publicGetSurvey","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Successfully retrieved survey","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSurveyResponseDto"}}}},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get survey by ID","tags":["Surveys"]},"put":{"description":"Update an existing survey in the organization. Status field cannot be updated through this endpoint.","operationId":"publicUpdateSurvey","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateSurveyRequestDto"}}}},"responses":{"200":{"description":"Successfully updated survey","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSurveyResponseDto"}}}},"400":{"description":"Invalid request body"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Update an existing survey","tags":["Surveys"]},"delete":{"description":"Delete a specific survey by its ID. Only surveys in 'draft' status can be deleted. This will permanently remove the survey and all related data.","operationId":"publicDeleteSurvey","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"204":{"description":"Successfully deleted survey"},"400":{"description":"Survey is not in draft status and cannot be deleted"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Delete survey by ID","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/surveys/{surveyId}/stats":{"get":{"description":"Retrieve delivery and response statistics for a specific survey, including sent, opened, completed, error and pending counts, and the response rate.","operationId":"publicGetSurveyStats","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Successfully retrieved survey statistics","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetSurveyStatsResponseDto"}}}},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Get survey statistics","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/surveys/{surveyId}/targets":{"get":{"description":"Retrieve a paginated list of targets for a specific survey. Supports search, filtering by department and target status, sorting, and cursor pagination.","operationId":"publicGetSurveyTargets","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Number of items to return per page. Default is 50, maximum is 200.","schema":{"minimum":1,"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor for pagination. Use the nextCursor from previous response to get next page.","schema":{"example":"eyJwYWdlIjoyLCJsaW1pdCI6NTB9","type":"string"}},{"name":"sortBy","required":false,"in":"query","description":"Field to sort by. Defaults to createdAt.","schema":{"$ref":"#/components/schemas/SurveyTargetSortBy"}},{"name":"sortOrder","required":false,"in":"query","description":"Sort order. Defaults to DESC for createdAt.","schema":{"$ref":"#/components/schemas/SortOrder"}},{"name":"search","required":false,"in":"query","description":"Search term to filter targets by name, email, department, or device information.","schema":{"example":"john","type":"string"}},{"name":"department","required":false,"in":"query","description":"Filter by department name.","schema":{"example":"Engineering","type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by survey target status. Accepts multiple options.","schema":{"type":"array","items":{"$ref":"#/components/schemas/SurveyTargetStatus"}}}],"responses":{"200":{"description":"Successfully retrieved survey targets","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetSurveyTargetsResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List survey targets","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/surveys/{surveyId}/results":{"get":{"description":"Retrieve a paginated list of submitted results for a specific survey.","operationId":"publicGetSurveyResults","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Number of items to return per page. Default is 50, maximum is 200.","schema":{"minimum":1,"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor for pagination. Use the nextCursor from previous response to get next page.","schema":{"example":"eyJwYWdlIjoyLCJsaW1pdCI6NTB9","type":"string"}}],"responses":{"200":{"description":"Successfully retrieved survey results","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetSurveyResultsResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List survey results","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/surveys/{surveyId}/publish":{"post":{"description":"Publish a specific survey by its ID. This will validate the survey data and set the survey status to published.","operationId":"publicPublishSurvey","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Survey successfully published","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSurveyResponseDto"}}}},"400":{"description":"Survey cannot be published (not in draft status or validation failed)"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Publish survey by ID","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/surveys/{surveyId}/launch":{"post":{"description":"Launch a specific survey by its ID. WARNING: this immediately generates response tokens for every survey target and sends real invitation notifications (email and/or Slack, per the survey's delivery settings) to them — this is not a preview or dry run. This will set the survey status to launched.","operationId":"publicLaunchSurvey","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Survey successfully launched","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmptyResponseDto"}}}},"400":{"description":"Survey cannot be launched (already launched, revoked, or completed)"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Launch survey by ID","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/surveys/{surveyId}/revoke":{"post":{"description":"Revoke a specific survey by its ID. This will set the survey status to revoked and prevent further responses. Only launched, published, or completed surveys can be revoked.","operationId":"publicRevokeSurvey","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Survey successfully revoked","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSurveyResponseDto"}}}},"400":{"description":"Survey cannot be revoked (not in launched, published, or completed status)"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Revoke survey by ID","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/surveys/{surveyId}/complete":{"post":{"description":"Complete a specific survey by its ID. This will set the survey status to completed and mark it as finished. Only launched surveys can be completed.","operationId":"publicCompleteSurvey","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"surveyId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"Survey successfully completed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicSurveyResponseDto"}}}},"400":{"description":"Survey cannot be completed (not in launched status)"},"401":{"description":"Invalid or missing API key"},"404":{"description":"Survey not found"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Complete survey by ID","tags":["Surveys"]}},"/api/v1/organizations/{organizationId}/recommended-services":{"get":{"description":"Retrieve the SaaS services detected for the organization but not integrated with Admina. Muted services are excluded by default; pass <code>includeMuted=true</code> to include them, each carrying its <code>mute</code> object. <code>meta.mutedCount</code> reports how many of the organization's services are muted either way, so a filtered total stays explicable.<br/><br/>Results are read live from the detection service, so the underlying set can change between page requests.<br/><br/>Pagination: [Cursor-based](#section/Cursor-based)","operationId":"publicGetRecommendedServices","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}},{"name":"includeMuted","required":false,"in":"query","description":"Include muted services in the results. Muted services are excluded by default; pass true to include them, each carrying its `mute` object.","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"description":"Successfully retrieved detected services","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetRecommendedServicesResponseDto"}}}},"400":{"description":"Invalid query parameters"},"401":{"description":"Invalid or missing API key"},"418":{"description":"The feature isn't available for the organization. Please contact the support team."},"503":{"description":"The detection service could not be read. Retry later; this is never reported as an empty list."}},"security":[{"API-Key":[]}],"summary":"List detected (Shadow IT) services","tags":["RecommendedServices"]}},"/api/v1/organizations/{organizationId}/custom-services":{"get":{"description":"Retrieve the custom services created for the organization.","operationId":"publicGetCustomServices","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Limit the number of results returned. Maximum 200.","schema":{"maximum":200,"example":50,"type":"number"}},{"name":"cursor","required":false,"in":"query","description":"Cursor to paginate through results.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetCustomServicesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List custom services","tags":["Custom Services"]}},"/api/v1/organizations/{organizationId}/custom-services/create-idp-workspace":{"post":{"description":"Create (or reuse) a custom IdP service and link a new workspace to the given identity-provider application.","operationId":"publicCreateCustomServiceForIdp","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateIdpCustomServiceRequestDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCreateCustomServiceResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Create a custom service for an IdP application","tags":["Custom Services"]}},"/api/v1/organizations/{organizationId}/custom-services/{serviceId}":{"patch":{"description":"Update the name and URL of a fully custom service.","operationId":"publicUpdateCustomService","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicUpdateCustomServiceRequestDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicCustomServiceResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"Update a custom service","tags":["Custom Services"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/roles":{"get":{"description":"Retrieve the roles available for a service, optionally scoped to a workspace.","operationId":"publicGetServiceRoles","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}},{"name":"workspaceId","required":false,"in":"query","schema":{"example":12345,"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetServiceRolesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List service roles","tags":["Service Roles"]}},"/api/v1/organizations/{organizationId}/services/{serviceId}/licenses":{"get":{"description":"Retrieve the license types and counts aggregated for a service.","operationId":"publicGetServiceLicenses","parameters":[{"name":"organizationId","required":true,"in":"path","schema":{"type":"number"}},{"name":"serviceId","required":true,"in":"path","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicGetServiceLicensesResponseDto"}}}},"418":{"description":"The feature isn't available for the organization. Please contact the support team."}},"security":[{"API-Key":[]}],"summary":"List service licenses","tags":["Service Licenses"]}}},"info":{"title":"Admina Public API","description":"Admina API is a RESTfull API providing programmatic access to much of the data in the system. It provides predictable URLs for accessing resources, and uses built-in HTTP features to receive commands and return responses. This makes it easy to communicate with from a wide variety of environments, from command-line utilities to gadgets to the browser URL bar itself.","version":"1.0","contact":{}},"tags":[{"name":"Organizations","description":""},{"name":"Users","description":""},{"name":"Directory","description":""},{"name":"Departments","description":""},{"name":"Locations","description":""},{"name":"Companies","description":""},{"name":"People","description":""},{"name":"Workspaces","description":""},{"name":"Custom Service and Workspace","description":""},{"name":"Custom Services","description":""},{"name":"Workspace Accounts","description":""},{"name":"Accounts","description":""},{"name":"Contracts","description":""},{"name":"Devices","description":""},{"name":"Devices (alpha)","description":""},{"name":"Alerts","description":""},{"name":"Spends","description":""},{"name":"Usage Optimization","description":""},{"name":"Services","description":""},{"name":"Service Roles","description":""},{"name":"Service Licenses","description":""},{"name":"Recommended Services","description":""},{"name":"Requests","description":""},{"name":"AuditLogs","description":""},{"name":"EventLogs","description":""}],"servers":[{"url":"https://api.saas-manager.biz.nuro.jp"}],"components":{"securitySchemes":{"API-Key":{"scheme":"bearer","bearerFormat":"JWT","type":"http","description":"For authenticated requests, set the `Authorization: Bearer your_api_key` parameter in the header. <br/>You can create and manage your API Keys by visiting the **API Keys** tab in the **Settings** page of your organization in <a target='_blank' href='https://itmc.i.moneyforward.com/'>Admina</a>"}},"schemas":{"Location":{"type":"string","enum":["global","us","jp"]},"PublicOrganizationResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Organization Fullname"},"uniqueName":{"type":"string","readOnly":true,"example":"org_unique_name"},"status":{"type":"string","readOnly":true,"example":"active"},"systemLanguage":{"type":"string","readOnly":true,"example":"ja"},"location":{"readOnly":true,"example":"jp","allOf":[{"$ref":"#/components/schemas/Location"}]},"timeZone":{"type":"string","readOnly":true,"example":"Asia/Tokyo"},"domains":{"readOnly":true,"example":["i.moneyforward.com","moneyforward.co.jp"],"type":"array","items":{"type":"string"}},"forwardingEmail":{"type":"string","nullable":true,"readOnly":true,"example":"xxx@forwarding.i.moneyforward.com"},"trialCount":{"type":"number","nullable":false,"readOnly":true,"example":1}},"required":["id","name","uniqueName","status","systemLanguage","location","timeZone","domains","forwardingEmail","trialCount"]},"PeopleType":{"type":"string","enum":["employee","guest","system","unknown"]},"PeopleStatus":{"type":"string","enum":["active","suspended","on_leave"]},"PeopleSortBy":{"type":"string","enum":["type","nameOrAccountKey","accountCount","createdAt"]},"SortOrder":{"type":"string","enum":["DESC","ASC"]},"CursorPaginationMeta":{"type":"object","properties":{"nextCursor":{"type":"string","nullable":true,"readOnly":true,"example":"F3UdkoSbpBNrjwP93AX2HQ"},"totalItems":{"type":"number","nullable":true,"readOnly":true,"example":1}},"required":["nextCursor"]},"PublicCompactPeopleAccountDto":{"type":"object","properties":{"serviceUniqueName":{"type":"string","nullable":true,"readOnly":true,"example":"github"},"serviceName":{"type":"string","nullable":true,"readOnly":true,"example":"GitHub"},"workspaceName":{"type":"string","nullable":true,"readOnly":true,"example":"mfi"},"accountKey":{"type":"string","nullable":true,"readOnly":true,"example":"foo@mfi.com"}},"required":["serviceUniqueName","serviceName","workspaceName","accountKey"]},"PublicPeopleResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"foo@gmail.com"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Yamaha Honda"},"avatar":{"type":"string","nullable":true,"readOnly":true,"example":"avatar_url"},"username":{"type":"string","nullable":true,"readOnly":true,"example":"foo"},"type":{"type":"string","readOnly":true,"example":"employee"},"status":{"type":"string","readOnly":true,"example":"suspended"},"suspendedAt":{"type":"string","nullable":true,"readOnly":true,"example":"2021-07-13T19:15:40.000Z"},"createdAt":{"type":"string","nullable":true,"readOnly":true,"example":"2021-07-13T19:15:40.000Z"},"accounts":{"nullable":false,"description":"This attribute will be removed in the near future. Please use [List all SaaS accounts belonging to a person](#tag/People/operation/getPersonAccounts) API to get the list of accounts.","readOnly":true,"deprecated":true,"type":"array","items":{"$ref":"#/components/schemas/PublicCompactPeopleAccountDto"}}},"required":["id","primaryEmail","displayName","avatar","username","type","status","suspendedAt","createdAt","accounts"]},"PublicGetPeopleResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicPeopleResponseDto"}}},"required":["meta","items"]},"MergePeopleDto":{"type":"object","properties":{"fromPeopleId":{"type":"number","example":1},"toPeopleId":{"type":"number","example":2}},"required":["fromPeopleId","toPeopleId"]},"PublicMergePeopleRequestDto":{"type":"object","properties":{"merges":{"type":"array","items":{"$ref":"#/components/schemas/MergePeopleDto"}}},"required":["merges"]},"PublicUnmergePeopleRequestDto":{"type":"object","properties":{"peopleIds":{"example":[1,2,3],"description":"List of people IDs to unmerge.","type":"array","items":{"type":"number"}}},"required":["peopleIds"]},"PeopleAccountRole":{"type":"string","enum":["admin","guest","other"]},"PeopleAccountSortBy":{"type":"string","enum":["service","twoFa","lastActivity"]},"EmployeeStatus":{"type":"string","enum":["active","on_leave","draft","preactive","retired","untracked"]},"EmployeeType":{"type":"string","enum":["board_member","full_time_employee","fixed_time_employee","temporary_employee","part_time_employee","secondment_employee","contract_employee","collaborator","group_address","shared_address","test_address","other","unknown","unregistered"]},"ManagementType":{"type":"string","enum":["managed","external","system","unknown","unregistered"]},"WorkspaceLastExecutionStatus":{"type":"string","enum":["pending","processing","connected","maintenance","suspended","stopped","manual"]},"DeviceAggregationStatus":{"type":"string","enum":["disabled","processing","finished","failed"]},"AuthenAttribute":{"type":"string","enum":["workspaceName","aggreKey","username","email","password","accessToken","refreshToken","secretKey","secretKeyLogin","clientId","clientSecret","region","technicalAccountId","orgId","issuer","privateKey","publicKey","domain","domainCode","baseUri","accountServer","consumerKey","serverId","apiId","customEmailFieldName","basicAuthUser","basicAuthPassword","tokenId","tokenSecret","externalUrl","apiKey","apiSecretKey","otherApiKey","roleArn","externalId","groups","billingTypes","domains","domainList","permissions","integrationTarget","accountOrSubAccountCodes","deviceEnabled","adminPassword","prioritizeBusinessName","userId","deviceGroup","ignoreExternalUserData","applicationKey","formatOfEmployeeId","serialNumberNullValues"]},"ServiceAuthenTypeDto":{"type":"object","properties":{"name":{"type":"string","example":"oauth"},"requiredAttributes":{"type":"array","example":["username","password"],"items":{"$ref":"#/components/schemas/AuthenAttribute"}},"optionalAttributes":{"type":"array","example":["secretKey"],"items":{"$ref":"#/components/schemas/AuthenAttribute"}},"permittedAttributes":{"type":"array","example":["aggreKey"],"items":{"$ref":"#/components/schemas/AuthenAttribute"}},"separatelyUpdatableAttributes":{"type":"array","example":["groups"],"items":{"$ref":"#/components/schemas/AuthenAttribute"}},"variant":{"type":"string","example":"enterprisePlan"},"permissions":{"example":["read-write","read"],"type":"array","items":{"type":"string"}}},"required":["name","requiredAttributes","optionalAttributes","permittedAttributes","separatelyUpdatableAttributes","permissions"]},"ServiceAggreTypeDto":{"type":"object","properties":{"name":{"type":"string","example":"aggregateAll"},"authenTypes":{"type":"array","items":{"$ref":"#/components/schemas/ServiceAuthenTypeDto"}}},"required":["name"]},"CertificationResponseDto":{"type":"object","properties":{"name":{"type":"string","readOnly":true,"example":"Example"},"url":{"type":"string","readOnly":true,"example":"https://example.com"}},"required":["name","url"]},"ServiceMetaResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"vendorName":{"type":"string","nullable":true,"readOnly":true,"example":"Example Vendor"},"vendorCountryOfOrigin":{"type":"string","nullable":true,"readOnly":true,"example":"Japan"},"termsOfUseUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://example.com"},"privacyPolicyUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://example.com"},"dataSecurityPolicyUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://example.com"},"certifications":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/CertificationResponseDto"}}},"required":["id","vendorName","vendorCountryOfOrigin","termsOfUseUrl","privacyPolicyUrl","dataSecurityPolicyUrl","certifications"]},"ServiceIconColor":{"type":"string","enum":["ai","murasaki","asagi","sakura"]},"ServiceResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Google"},"uniqueName":{"type":"string","readOnly":true,"example":"google"},"url":{"type":"string","readOnly":true,"example":"https://google.com"},"isEmployeeMasterService":{"type":"boolean","readOnly":true,"example":true},"adminUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://admin.google.com/u/0/ac/home"},"userManagementUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://admin.google.com/u/0/ac/users"},"serviceTopUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://workspace.google.com/products/admin/"},"guidanceUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://notion.link/google"},"serviceAlternateUrls":{"nullable":true,"readOnly":true,"example":["www.slides.google.com","www.docs.google.com","www.sheets.google.com"],"type":"array","items":{"type":"string"}},"aggreTypes":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/ServiceAggreTypeDto"}},"canDeleteAccount":{"type":"boolean","readOnly":true,"example":false},"canDeactivateAccount":{"type":"boolean","readOnly":true,"example":false},"canAggregateSpend":{"type":"boolean","readOnly":true,"example":false},"canAggregateFiles":{"type":"boolean","readOnly":true,"example":false},"canManageFilePermissions":{"type":"boolean","readOnly":true,"example":false},"canOnlyAggregatePublicFiles":{"type":"boolean","readOnly":true,"example":false},"canAggregateDevices":{"type":"boolean","readOnly":true,"example":false},"canPerformMatching":{"type":"boolean","readOnly":true,"example":true},"canProvisionAccount":{"type":"boolean","readOnly":true,"example":false},"isCustomService":{"type":"boolean","readOnly":true,"example":false},"isIdentityProvider":{"type":"boolean","readOnly":true,"example":false},"serviceMeta":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ServiceMetaResponseDto"}]},"logoUrl":{"type":"string","nullable":true,"readOnly":true},"iconColor":{"nullable":true,"readOnly":true,"allOf":[{"$ref":"#/components/schemas/ServiceIconColor"}]}},"required":["id","name","uniqueName","url","isEmployeeMasterService","adminUrl","userManagementUrl","serviceTopUrl","guidanceUrl","serviceAlternateUrls","aggreTypes","canDeleteAccount","canDeactivateAccount","canAggregateSpend","canAggregateFiles","canManageFilePermissions","canOnlyAggregatePublicFiles","canAggregateDevices","canPerformMatching","canProvisionAccount","isCustomService","isIdentityProvider","serviceMeta","logoUrl","iconColor"]},"BusinessImpactLevel":{"type":"string","enum":["high","moderate","low"]},"ConfidentialInfo":{"type":"string","enum":["unclassified","confidential","secret","topSecret"]},"SecurityImpactLevel":{"type":"string","enum":["high","moderate","low"]},"WorkspaceMetaResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"workspaceId":{"type":"number","readOnly":true,"example":1},"organizationId":{"type":"number","readOnly":true,"example":1},"note":{"type":"string","nullable":true,"readOnly":true,"example":"Example note"},"businessImpactLevel":{"nullable":true,"readOnly":true,"example":"low","allOf":[{"$ref":"#/components/schemas/BusinessImpactLevel"}]},"dataStoreRegion":{"type":"string","nullable":true,"readOnly":true,"example":"ap-northeast-1"},"piiEnabled":{"type":"boolean","nullable":true,"readOnly":true,"example":false},"pii":{"type":"string","nullable":true,"readOnly":true,"example":"Example note"},"confidentialInfo":{"nullable":true,"readOnly":true,"example":"confidential","allOf":[{"$ref":"#/components/schemas/ConfidentialInfo"}]},"securityImpactLevel":{"nullable":true,"readOnly":true,"example":"low","allOf":[{"$ref":"#/components/schemas/SecurityImpactLevel"}]},"vendorName":{"type":"string","nullable":true,"readOnly":true,"example":"Example Vendor"},"vendorRelationship":{"type":"string","nullable":true,"readOnly":true,"example":"Example Vendor Relationship"},"vendorPhone":{"type":"string","nullable":true,"readOnly":true,"example":"12345567890"},"vendorMailAddress":{"type":"string","nullable":true,"readOnly":true,"example":"Example Vendor Mail address"}},"required":["id","workspaceId","organizationId","note","businessImpactLevel","dataStoreRegion","piiEnabled","pii","confidentialInfo","securityImpactLevel","vendorName","vendorRelationship","vendorPhone","vendorMailAddress"]},"WorkspaceBillingManagerDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"avatar":{"type":"string","nullable":true,"readOnly":true,"example":"avatar"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Example name"},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"Example email"}},"required":["id","avatar","displayName","primaryEmail"]},"WorkspacePeopleInChargeDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"avatar":{"type":"string","nullable":true,"readOnly":true,"example":"avatar"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Example name"},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"Example email"}},"required":["id","avatar","displayName","primaryEmail"]},"UserRoleDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Admin"}},"required":["id","name"]},"UserOrganizationStatus":{"type":"string","enum":["active","invited"]},"OrganizationUserResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"email":{"type":"string","readOnly":true,"example":"foo.bar@example.com"},"name":{"type":"string","readOnly":true,"example":"foo.bar"},"location":{"readOnly":true,"example":"jp","allOf":[{"$ref":"#/components/schemas/Location"}]},"roles":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/UserRoleDto"}},"status":{"readOnly":true,"example":"active","allOf":[{"$ref":"#/components/schemas/UserOrganizationStatus"}]}},"required":["id","email","name","location","roles","status"]},"CustomWorkspaceType":{"type":"string","enum":["google_sheet","manual_import"]},"WorkspaceResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"organizationId":{"type":"number","readOnly":true,"example":1},"serviceId":{"type":"number","readOnly":true,"example":1},"authenType":{"type":"string","nullable":true,"readOnly":true,"example":"api"},"workspaceName":{"type":"string","readOnly":true,"example":"iggre"},"aggreKey":{"type":"string","nullable":true,"readOnly":true,"example":"iggre"},"lastExecutionStatus":{"readOnly":true,"example":"processing","allOf":[{"$ref":"#/components/schemas/WorkspaceLastExecutionStatus"}]},"lastExecutionTime":{"type":"string","nullable":true,"readOnly":true,"example":"2020-11-11 10:00:00"},"lastUsedAt":{"type":"string","nullable":true,"readOnly":true,"example":"2020-11-11 10:00:00"},"lastExecutionResultId":{"type":"string","nullable":true,"readOnly":true,"example":"SUCCESS"},"lastExecutionResultCode":{"type":"number","nullable":true,"readOnly":true,"example":200},"lastExecutionResultMessage":{"type":"string","nullable":true,"readOnly":true,"example":"NOT_FOUND"},"provisioningCredentialEnabled":{"type":"boolean","readOnly":true,"example":false},"description":{"type":"string","nullable":true,"readOnly":true,"example":"Description of the workspace"},"showDescription":{"type":"boolean","readOnly":true,"example":false},"isCustomWorkspace":{"type":"boolean","readOnly":true,"example":false},"deviceAggregationStatus":{"readOnly":true,"example":"finished","allOf":[{"$ref":"#/components/schemas/DeviceAggregationStatus"}]},"service":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ServiceResponseDto"}]},"workspaceMeta":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/WorkspaceMetaResponseDto"}]},"billingManagers":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/WorkspaceBillingManagerDto"}},"peopleInCharge":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/WorkspacePeopleInChargeDto"}},"creator":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/OrganizationUserResponseDto"}]},"accountCount":{"type":"number","readOnly":true},"identityProviderWorkspaceId":{"type":"number","nullable":true,"readOnly":true},"customWorkspaceType":{"readOnly":true,"example":"google_sheet","allOf":[{"$ref":"#/components/schemas/CustomWorkspaceType"}]}},"required":["id","organizationId","serviceId","authenType","workspaceName","aggreKey","lastExecutionStatus","lastExecutionTime","lastUsedAt","lastExecutionResultId","lastExecutionResultCode","lastExecutionResultMessage","provisioningCredentialEnabled","description","showDescription","isCustomWorkspace","deviceAggregationStatus","service","workspaceMeta","billingManagers","peopleInCharge","creator","accountCount","identityProviderWorkspaceId","customWorkspaceType"]},"CurrencyTypeIggre":{"type":"string","enum":["jpy","usd","idr"],"description":"Currency of the cost"},"IdentityCost":{"type":"object","properties":{"amount":{"type":"number","example":100,"description":"Cost amount of the employee"},"currency":{"example":"usd","description":"Currency of the cost","allOf":[{"$ref":"#/components/schemas/CurrencyTypeIggre"}]}},"required":["amount","currency"]},"PublicAccountResponseDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"123#jessica.jones@addresss.com"},"identityId":{"type":"string","nullable":true,"readOnly":true,"example":"AHF5GF12"},"username":{"type":"string","nullable":true,"readOnly":true,"example":"jessia-jones"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Jessia Jones"},"email":{"type":"string","nullable":true,"readOnly":true,"example":"jessica.jones@address.com"},"roles":{"nullable":true,"readOnly":true,"example":["Member","Admin"],"type":"array","items":{"type":"string"}},"status":{"type":"string","nullable":true,"readOnly":true,"example":"active"},"employeeStatus":{"nullable":true,"readOnly":true,"example":"active","allOf":[{"$ref":"#/components/schemas/EmployeeStatus"}]},"employeeType":{"nullable":true,"readOnly":true,"example":"collaborator","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"employeeManagementType":{"nullable":true,"readOnly":true,"example":"system","allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"twoFa":{"type":"boolean","readOnly":true,"example":true},"uniqueKey":{"type":"string","nullable":true,"readOnly":true,"example":"unique_key"},"lastActivity":{"type":"string","nullable":true,"readOnly":true,"example":"Mon Jan 24 2022 13:20:31 GMT+0900 (Japan Standard Time)"},"isInactive":{"type":"boolean","nullable":true,"readOnly":true,"example":false},"licenses":{"nullable":true,"readOnly":true,"example":["Basic","Basic Plus","Pro","Business"],"type":"array","items":{"type":"string"}},"workspace":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/WorkspaceResponseDto"}]},"costs":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityCost"}}},"required":["id","identityId","username","displayName","email","roles","status","employeeStatus","employeeType","employeeManagementType","twoFa","uniqueKey","lastActivity","isInactive","licenses","workspace"]},"PublicGetPeopleAccountsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicAccountResponseDto"}}},"required":["meta","items"]},"UserSortField":{"type":"string","enum":["name","email","role","status"]},"MetaDataDto":{"type":"object","properties":{"prevPage":{"type":"number","nullable":true,"example":1},"nextPage":{"type":"number","nullable":true,"example":3}},"required":["prevPage","nextPage"]},"PublicOrganizationUserResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"email":{"type":"string","readOnly":true,"example":"foo.bar@example.com"},"name":{"type":"string","readOnly":true,"example":"foo.bar"},"location":{"readOnly":true,"example":"jp","allOf":[{"$ref":"#/components/schemas/Location"}]},"roles":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/UserRoleDto"}},"status":{"readOnly":true,"example":"active","allOf":[{"$ref":"#/components/schemas/UserOrganizationStatus"}]}},"required":["id","email","name","location","roles","status"]},"PublicListOrganizationUsersResponseDto":{"type":"object","properties":{"metadata":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/MetaDataDto"}]},"users":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicOrganizationUserResponseDto"}}},"required":["metadata","users"]},"PublicTotalAdminResponseDto":{"type":"object","properties":{"totalAdmins":{"type":"number","readOnly":true,"example":5}},"required":["totalAdmins"]},"PublicUpdateOrganizationUserRequestDto":{"type":"object","properties":{"roleIds":{"example":[2,3],"description":"The list of role ids to assign to the user. Note that admin role cannot be used with other roles, and a user can not have more than 10 roles. This methods performs a full update, so all roles will be replaced with the roles in the request.","type":"array","items":{"type":"number"}}},"required":["roleIds"]},"ServiceSortBy":{"type":"string","enum":["accountCount","serviceName","alertsCount","engagementScore","lastMonthSpending"]},"SpendingOfMonthDto":{"type":"object","properties":{"amount":{"type":"number","nullable":true,"readOnly":true,"example":10000},"currency":{"type":"string","nullable":true,"readOnly":true,"example":"JPY"}},"required":["amount","currency"]},"PublicOrganizationServiceWorkspaceResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"organizationId":{"type":"number","readOnly":true,"example":1},"serviceId":{"type":"number","readOnly":true,"example":1},"workspaceName":{"type":"string","readOnly":true,"example":"iggre"},"lastUsedAt":{"type":"string","nullable":true,"readOnly":true,"example":"2021-07-15T01:54:59.000Z"},"accountsCount":{"type":"number","readOnly":true,"example":30},"isCustomWorkspace":{"type":"boolean","readOnly":true,"example":false}},"required":["id","organizationId","serviceId","workspaceName","lastUsedAt","accountsCount","isCustomWorkspace"]},"ServiceLicenseResponseDto":{"type":"object","properties":{"licenseType":{"type":"string","readOnly":true,"example":"Basic"},"count":{"type":"number","readOnly":true,"example":1}},"required":["licenseType","count"]},"PublicOrganizationServiceResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Google"},"uniqueName":{"type":"string","readOnly":true,"example":"google"},"url":{"type":"string","readOnly":true,"example":"https://google.com"},"isEmployeeMasterService":{"type":"boolean","readOnly":true,"example":true},"adminUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://admin.google.com/u/0/ac/home"},"userManagementUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://admin.google.com/u/0/ac/users"},"serviceTopUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://workspace.google.com/products/admin/"},"guidanceUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://notion.link/google"},"serviceAlternateUrls":{"nullable":true,"readOnly":true,"example":["www.slides.google.com","www.docs.google.com","www.sheets.google.com"],"type":"array","items":{"type":"string"}},"warningsCount":{"type":"number","readOnly":true},"cautionsCount":{"type":"number","readOnly":true},"accountsCount":{"type":"number","readOnly":true},"lastMonthSpending":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/SpendingOfMonthDto"}]},"engagementScore":{"type":"number","nullable":true,"readOnly":true},"spendingTrend":{"type":"number","nullable":true,"readOnly":true},"accountsPreview":{"type":"object","readOnly":true,"example":{"people":{"avatar":"xxx"}}},"canDeleteAccount":{"type":"boolean","readOnly":true,"example":false},"canDeactivateAccount":{"type":"boolean","readOnly":true,"example":false},"canAggregateSpend":{"type":"boolean","readOnly":true,"example":false},"canAggregateFiles":{"type":"boolean","readOnly":true,"example":false},"canManageFilePermissions":{"type":"boolean","readOnly":true,"example":false},"canOnlyAggregatePublicFiles":{"type":"boolean","readOnly":true,"example":false},"canAggregateDevices":{"type":"boolean","readOnly":true,"example":false},"canPerformMatching":{"type":"boolean","readOnly":true,"example":true},"canProvisionAccount":{"type":"boolean","readOnly":true,"example":false},"isCustomService":{"type":"boolean","readOnly":true,"example":false},"workspaces":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicOrganizationServiceWorkspaceResponseDto"}},"licensesCounts":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/ServiceLicenseResponseDto"}}},"required":["id","name","uniqueName","url","isEmployeeMasterService","adminUrl","userManagementUrl","serviceTopUrl","guidanceUrl","serviceAlternateUrls","warningsCount","cautionsCount","accountsCount","lastMonthSpending","engagementScore","spendingTrend","accountsPreview","canDeleteAccount","canDeactivateAccount","canAggregateSpend","canAggregateFiles","canManageFilePermissions","canOnlyAggregatePublicFiles","canAggregateDevices","canPerformMatching","canProvisionAccount","isCustomService","workspaces","licensesCounts"]},"CursorPaginationWithCurrencyMeta":{"type":"object","properties":{"nextCursor":{"type":"string","nullable":true,"readOnly":true,"example":"F3UdkoSbpBNrjwP93AX2HQ"},"totalItems":{"type":"number","nullable":true,"readOnly":true,"example":1},"currency":{"type":"string","nullable":true,"readOnly":true,"example":"jpy"}},"required":["nextCursor","currency"]},"PublicGetOrganizationServicesListResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicOrganizationServiceResponseDto"}},"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationWithCurrencyMeta"}]}},"required":["items","meta"]},"PublicServiceEngagementScore":{"type":"object","properties":{"serviceUniqueName":{"type":"string","readOnly":true,"example":"miro"},"serviceName":{"type":"string","readOnly":true,"example":"Miro"},"totalIds":{"type":"number","readOnly":true,"example":30},"engagementScore":{"type":"number","nullable":true,"readOnly":true,"example":8},"payment":{"type":"number","example":230000},"categoryId":{"type":"number","example":1}},"required":["serviceUniqueName","serviceName","totalIds","engagementScore","payment","categoryId"]},"MetaCurrencyDto":{"type":"object","properties":{"currency":{"type":"string","readOnly":true,"example":"jpy"}},"required":["currency"]},"PublicGetEngagementScoresResponseDto":{"type":"object","properties":{"services":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicServiceEngagementScore"}},"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/MetaCurrencyDto"}]}},"required":["services","meta"]},"GetUnusedResourcesSortBy":{"type":"string","enum":["retiredAccounts","inactiveAccounts","services"]},"PublicUnusedResourceService":{"type":"object","properties":{"id":{"type":"number","description":"Optional field, not present if the service is unsupported","readOnly":true,"example":123},"serviceName":{"type":"string","readOnly":true,"example":"GitHub"},"serviceUniqueName":{"type":"string","readOnly":true,"example":"github"},"retiredAccounts":{"type":"number","readOnly":true,"example":123},"inactiveAccounts":{"type":"number","readOnly":true,"example":321},"isCustomService":{"type":"boolean","readOnly":true,"example":false},"retiredMuteCount":{"type":"number","readOnly":true,"example":42},"inactiveMuteCount":{"type":"number","readOnly":true,"example":420}},"required":["serviceName","serviceUniqueName","retiredAccounts","inactiveAccounts","isCustomService","retiredMuteCount","inactiveMuteCount"]},"PublicGetUnusedResourcesResponseDto":{"type":"object","properties":{"services":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicUnusedResourceService"}}},"required":["services"]},"AlertType":{"type":"string","enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"]},"AlertStatus":{"type":"string","enum":["muted","unmuted"]},"RelatedIdentityDto":{"type":"object","properties":{"id":{"type":"string","description":"ID of the employee"},"displayName":{"type":"string","example":"Display Name","description":"Display name of the employee","nullable":true},"avatar":{"type":"string","description":"URL of the avatar of the employee","nullable":true},"primaryEmail":{"type":"string","example":"primay@email.com","description":"Primary email of the employee","nullable":true}}},"RelatedIdentitiesDto":{"type":"object","properties":{"identityHolder":{"nullable":true,"description":"Identity holder information","type":"object","allOf":[{"$ref":"#/components/schemas/RelatedIdentityDto"}]},"managerHolder":{"nullable":true,"description":"Manager holder information","type":"object","allOf":[{"$ref":"#/components/schemas/RelatedIdentityDto"}]}}},"AccountResponseDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"123#jessica.jones@addresss.com"},"identityId":{"type":"string","nullable":true,"readOnly":true,"example":"AHF5GF12"},"username":{"type":"string","nullable":true,"readOnly":true,"example":"jessia-jones"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Jessia Jones"},"email":{"type":"string","nullable":true,"readOnly":true,"example":"jessica.jones@address.com"},"roles":{"nullable":true,"readOnly":true,"example":["Member","Admin"],"type":"array","items":{"type":"string"}},"status":{"type":"string","nullable":true,"readOnly":true,"example":"active"},"employeeStatus":{"nullable":true,"readOnly":true,"example":"active","allOf":[{"$ref":"#/components/schemas/EmployeeStatus"}]},"employeeType":{"nullable":true,"readOnly":true,"example":"collaborator","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"employeeManagementType":{"nullable":true,"readOnly":true,"example":"system","allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"twoFa":{"type":"boolean","readOnly":true,"example":true},"uniqueKey":{"type":"string","nullable":true,"readOnly":true,"example":"unique_key"},"lastActivity":{"type":"string","nullable":true,"readOnly":true,"example":"Mon Jan 24 2022 13:20:31 GMT+0900 (Japan Standard Time)"},"isInactive":{"type":"boolean","nullable":true,"readOnly":true,"example":false},"licenses":{"nullable":true,"readOnly":true,"example":["Basic","Basic Plus","Pro","Business"],"type":"array","items":{"type":"string"}},"workspace":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/WorkspaceResponseDto"}]},"costs":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityCost"}},"identity":{"type":"object","nullable":true,"readOnly":true},"alertType":{"type":"array","items":{"$ref":"#/components/schemas/AlertType"},"readOnly":true,"example":["retired_account"]},"memo":{"type":"string","readOnly":true,"example":"This account belongs to Jessica"},"relatedIdentities":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/RelatedIdentitiesDto"}]}},"required":["id","identityId","username","displayName","email","roles","status","employeeStatus","employeeType","employeeManagementType","twoFa","uniqueKey","lastActivity","isInactive","licenses","workspace","identity","memo","relatedIdentities"]},"GetServiceAccountsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/AccountResponseDto"}}},"required":["meta","items"]},"CreateUpdateServiceAccountMemoRequestDto":{"type":"object","properties":{"memo":{"type":"string","example":"This account belongs to Jessica"}},"required":["memo"]},"CreateUpdateServiceAccountMemoResponseDto":{"type":"object","properties":{"organizationId":{"type":"number","readOnly":true,"example":12345678},"serviceId":{"type":"number","readOnly":true,"example":12},"accountId":{"type":"string","example":"123#jessica.jones@addresss.com"},"memo":{"type":"string","example":"This account belongs to Jessica"}},"required":["organizationId","serviceId","accountId","memo"]},"EmptyResponseDto":{"type":"object","properties":{}},"FileSharingStatus":{"type":"string","enum":["public","internal","shared"]},"FileType":{"type":"string","enum":["file","folder"]},"ServiceFilesSortBy":{"type":"string","enum":["fileName","fileType","source","sharingStatus","creationDate","workspaceId","workspaceName"]},"PublicServiceFileResponseDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"aggre-file#file-id"},"workspaceId":{"type":"number","readOnly":true,"example":1},"workspaceName":{"type":"string","readOnly":true,"example":"workspace"},"fileName":{"type":"string","readOnly":true,"example":"example.pdf"},"filePath":{"type":"string","nullable":true,"readOnly":true,"example":"/foo/bar/baz"},"fileType":{"type":"string","readOnly":true,"example":"pdf"},"fileUrl":{"type":"string","readOnly":true,"example":"https://drive.google.com/file/d/..."},"source":{"type":"string","readOnly":true,"example":"Google Drive"},"sharingStatus":{"type":"string","readOnly":true,"example":"public"},"creationDate":{"type":"string","readOnly":true,"example":"2022-10-19T14:42:24.931Z"},"owners":{"readOnly":true,"example":["email1@iggre.net","email2@iggre.net"],"type":"array","items":{"type":"string"}},"ownerCount":{"type":"number","readOnly":true,"example":123},"markedAsSafe":{"type":"boolean","readOnly":true,"example":false}},"required":["id","workspaceId","workspaceName","fileName","filePath","fileType","fileUrl","source","sharingStatus","creationDate","owners","ownerCount","markedAsSafe"]},"PublicGetServiceFilesResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicServiceFileResponseDto"}}},"required":["meta","items"]},"PublicGetServiceFilesSummaryResponseDto":{"type":"object","properties":{"total":{"type":"number","readOnly":true},"public":{"type":"number","readOnly":true},"sharedExternally":{"type":"number","readOnly":true}},"required":["total","public","sharedExternally"]},"SafeListStatus":{"type":"string","enum":["not_applied","applied","applying"]},"ServiceFileSafeListDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"asdfgh12345"},"name":{"type":"string","readOnly":true,"example":"Awesome list"},"remarks":{"type":"string","readOnly":true,"example":"Awesome list description"},"workspaceId":{"type":"number","readOnly":true,"example":123},"files":{"type":"number","readOnly":true,"example":123},"emails":{"type":"number","readOnly":true,"example":123},"groups":{"type":"number","readOnly":true,"example":123},"domains":{"type":"number","readOnly":true,"example":123},"status":{"readOnly":true,"example":"applied","allOf":[{"$ref":"#/components/schemas/SafeListStatus"}]},"allFiles":{"type":"boolean","readOnly":true,"example":false},"highConfidence":{"type":"boolean","readOnly":true,"example":false}},"required":["id","name","remarks","workspaceId","files","emails","groups","domains","status","allFiles","highConfidence"]},"PublicGetServiceFileSafeListsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/ServiceFileSafeListDto"}}},"required":["meta","items"]},"WorkspaceMetaQueryDto":{"type":"object","properties":{"businessImpactLevel":{"example":"low","description":"Filter workspaces by business impact level.","allOf":[{"$ref":"#/components/schemas/BusinessImpactLevel"}]},"piiEnabled":{"type":"boolean","description":"Filter workspaces by PII enabled status."},"confidentialInfo":{"example":"confidential","description":"Filter workspaces by confidential info level.","allOf":[{"$ref":"#/components/schemas/ConfidentialInfo"}]},"securityImpactLevel":{"example":"low","description":"Filter workspaces by security impact level.","allOf":[{"$ref":"#/components/schemas/SecurityImpactLevel"}]}}},"PublicServiceResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Google"},"uniqueName":{"type":"string","readOnly":true,"example":"google"},"url":{"type":"string","readOnly":true,"example":"https://google.com"},"adminUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://admin.google.com/u/0/ac/home"},"userManagementUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://admin.google.com/u/0/ac/users"},"serviceTopUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://workspace.google.com/products/admin/"},"serviceAlternateUrls":{"nullable":true,"readOnly":true,"example":["www.slides.google.com","www.docs.google.com","www.sheets.google.com"],"type":"array","items":{"type":"string"}},"canDeleteAccount":{"type":"boolean","readOnly":true,"example":true},"canDeactivateAccount":{"type":"boolean","readOnly":true,"example":true}},"required":["id","name","uniqueName","url","adminUrl","userManagementUrl","serviceTopUrl","serviceAlternateUrls","canDeleteAccount","canDeactivateAccount"]},"PublicWorkspaceMetaResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"workspaceId":{"type":"number","readOnly":true,"example":1},"organizationId":{"type":"number","readOnly":true,"example":1},"note":{"type":"string","nullable":true,"readOnly":true,"example":"Example note"},"businessImpactLevel":{"nullable":true,"readOnly":true,"example":"low","allOf":[{"$ref":"#/components/schemas/BusinessImpactLevel"}]},"dataStoreRegion":{"type":"string","nullable":true,"readOnly":true,"example":"ap-northeast-1"},"piiEnabled":{"type":"boolean","nullable":true,"readOnly":true,"example":false},"pii":{"type":"string","nullable":true,"readOnly":true,"example":"Example note"},"confidentialInfo":{"nullable":true,"readOnly":true,"example":"confidential","allOf":[{"$ref":"#/components/schemas/ConfidentialInfo"}]},"securityImpactLevel":{"nullable":true,"readOnly":true,"example":"low","allOf":[{"$ref":"#/components/schemas/SecurityImpactLevel"}]},"vendorName":{"type":"string","nullable":true,"readOnly":true,"example":"Example Vendor"},"vendorRelationship":{"type":"string","nullable":true,"readOnly":true,"example":"Example Vendor Relationship"},"vendorPhone":{"type":"string","nullable":true,"readOnly":true,"example":"12345567890"},"vendorMailAddress":{"type":"string","nullable":true,"readOnly":true,"example":"Example Vendor Mail address"}},"required":["id","workspaceId","organizationId","note","businessImpactLevel","dataStoreRegion","piiEnabled","pii","confidentialInfo","securityImpactLevel","vendorName","vendorRelationship","vendorPhone","vendorMailAddress"]},"PublicWorkspaceBillingManagerDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"avatar":{"type":"string","nullable":true,"readOnly":true,"example":"avatar"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Example name"},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"Example email"}},"required":["id","avatar","displayName","primaryEmail"]},"PublicWorkspacePeopleInChargeDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"avatar":{"type":"string","nullable":true,"readOnly":true,"example":"avatar"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Example name"},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"Example email"}},"required":["id","avatar","displayName","primaryEmail"]},"PublicWorkspaceResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"organizationId":{"type":"number","readOnly":true,"example":1},"workspaceName":{"type":"string","readOnly":true,"example":"iggre"},"lastUsedAt":{"type":"string","nullable":true,"readOnly":true,"example":"2020-11-11 10:00:00"},"service":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PublicServiceResponseDto"}]},"creator":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PublicOrganizationUserResponseDto"}]},"isCustomWorkspace":{"type":"boolean","readOnly":true,"example":false},"identityProviderWorkspaceId":{"type":"number","nullable":true,"readOnly":true},"workspaceMeta":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PublicWorkspaceMetaResponseDto"}]},"billingManagers":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicWorkspaceBillingManagerDto"}},"peopleInCharge":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicWorkspacePeopleInChargeDto"}},"lastExecutionTime":{"type":"string","nullable":true,"readOnly":true,"example":"2020-11-11 10:00:00"},"lastExecutionStatus":{"type":"string","readOnly":true,"enum":["pending","processing","connected","maintenance","suspended","stopped","manual"],"example":"processing"},"lastExecutionResultId":{"type":"string","nullable":true,"readOnly":true,"enum":["0","1","100","101","103","200","201","202","203","204","205","206","207","208","209","210","211","212","213","214","215","216","217","218","219","220","221","222","223","224","225","226","227","228","229","230","250","300","301","302","303","304","305","306","307","308","309","310","311","312","313","314","315","316","320","350","351","352","353","998","999","SUCCESS","PARTIAL_SUCCESS","REQUIRE_ADDITIONAL_INPUT","REQUIRE_POLICY_CONFIRMATION","REQUIRE_VERIFY_EMAIL","NOT_FOUND","WORKSPACE_NOT_FOUND","NOT_ENOUGH_ACCESS_TOKEN_PERMISSION","INCORRECT_CREDENTIALS","WRONG_PLAN","REFRESH_TOKEN_EXPIRED","TRIAL_ACCOUNT_EXPIRED","ACCOUNT_TYPE_NOT_SUPPORT","USER_NOT_FOUND_IN_DATABASE","USER_CANNOT_BE_DELETED","USER_IS_LAST_ADMIN","USER_CANNOT_BE_DEACTIVATED","USER_HAS_BEEN_DEACTIVATED","USER_DEPROVISIONING_REQUEST_NOT_EXISTS","REQUIRE_OTP_SETUP_FINISHED","TWO_FA_METHOD_NOT_ENABLED","DOMAIN_IS_NOT_VALID","NOT_SUPPORT_SAML_SSO_ONLY","NOT_SUPPORT_LOGIN_WITH_2FA","ACCOUNT_IS_NOT_ACTIVE","USER_ALREADY_EXISTS","SET_GROUPS_ACTION_REQUIRED","TEAM_NOT_FOUND","LICENSE_LIMIT_EXCEED","INVALID_PROVISIONING_INPUT","USER_CANNOT_BE_ASSIGNED_TO_WORKSPACE","USER_LIMIT_EXCEED","CANNOT_TRANSFER_DATA","IP_RESTRICTED","INSUFFICIENT_PASSWORD_COMPLEXITY","USER_ACCOUNT_LOCKED","FILE_AGGRE_ABORTED","SYSTEM_ERROR","API_RATE_LIMIT","INVALID_SCRAPING_DATA_FORMAT","TIMEOUT_ERROR","AGGRE_TARGET_SYSTEM_MAINTENANCE","WRONG_METHOD","AGGRE_TARGET_SYSTEM_ERROR","AGGRE_TARGET_COOKIE_ERROR","AGGRE_TARGET_INSTANCE_HIBERNATED","AGGRE_TARGET_API_VERSION","AGGRE_TARGET_LOCAL_STORAGE_ERROR","AGGRE_TARGET_TOKEN_ERROR","BYPASS_BOT_DETECTED","AGGRE_TARGET_USER_NOT_FOUND","AGGRE_TARGET_USER_ALREADY_DELETED","AGGRE_TARGET_ACTIVE_SESSION_LIMIT_REACHED","RETRYABLE_SYSTEM_ERROR","AGGRE_PROCESSOR_ERROR","IMPORT_CSV_NOT_FOUND","CSV_VALIDATION_ERRORS","UNKNOWN_ENCODING","EMPTY_CSV_FILE","OUT_OF_MEMORY_ERROR","UNKNOWN_ERROR"],"example":0},"lastExecutionResultMessage":{"type":"string","nullable":true,"readOnly":true,"example":"NOT_FOUND"}},"required":["id","organizationId","workspaceName","lastUsedAt","service","creator","isCustomWorkspace","identityProviderWorkspaceId","workspaceMeta","billingManagers","peopleInCharge","lastExecutionTime","lastExecutionStatus","lastExecutionResultId","lastExecutionResultMessage"]},"PublicCustomWorkspaceWithAdminaServiceDto":{"type":"object","properties":{"serviceId":{"type":"number","example":1,"description":"Standard service ID or custom service ID belonging to organization"},"workspaceName":{"type":"string","example":"admina","description":"Name to give to the workspace"},"customWorkspaceType":{"example":"google_sheet","allOf":[{"$ref":"#/components/schemas/CustomWorkspaceType"}]}},"required":["serviceId","workspaceName","customWorkspaceType"]},"PublicCustomWorkspaceWithServiceMasterDto":{"type":"object","properties":{"serviceMasterName":{"type":"string","example":"zoom","description":"Master service name which enables matching for activity logs, spending data and such"},"workspaceName":{"type":"string","example":"admina","description":"Name to give to the workspace"},"customWorkspaceType":{"example":"google_sheet","allOf":[{"$ref":"#/components/schemas/CustomWorkspaceType"}]}},"required":["serviceMasterName","workspaceName","customWorkspaceType"]},"PublicCustomWorkspaceWithCustomServiceDto":{"type":"object","properties":{"serviceName":{"type":"string","example":"Admina","description":"Name to give to the custom service"},"serviceUrl":{"type":"string","example":"https://example.com","description":"URL to attach to the custom service"},"workspaceName":{"type":"string","example":"admina","description":"Name to give to the workspace"},"customWorkspaceType":{"example":"manual_import","allOf":[{"$ref":"#/components/schemas/CustomWorkspaceType"}]}},"required":["serviceName","workspaceName","customWorkspaceType"]},"PublicCreateCustomWorkspaceResponseDto":{"type":"object","properties":{"service":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/ServiceResponseDto"}]},"workspace":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/WorkspaceResponseDto"}]},"isNewService":{"type":"boolean","readOnly":true}},"required":["service","workspace","isNewService"]},"Locale":{"type":"string","enum":["en","ja"]},"ProvisioningSectionDataType":{"type":"string","enum":["text","url","password","email","list of options","option"],"description":"Type of data expected for the field"},"RegexConstraint":{"type":"object","properties":{"value":{"type":"string","readOnly":true,"example":"^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$"},"message":{"type":"string","readOnly":true,"example":"provisioning.default_password_regex_message"}},"required":["value","message"]},"ProvisioningSectionFieldConstraint":{"type":"object","properties":{"required":{"type":"boolean","readOnly":true,"example":true},"minLength":{"type":"number","readOnly":true,"example":1},"maxLength":{"type":"number","readOnly":true,"example":64},"regex":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/RegexConstraint"}]}},"required":["required","minLength","maxLength","regex"]},"Option":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"ab144hnx3e99h"},"label":{"type":"string","readOnly":true,"example":"Administrator License"}}},"ProvisioningType":{"type":"string","enum":["invite","create"],"description":"Do not set this field for the following provisioning types"},"PublicProvisioningField":{"type":"object","properties":{"key":{"type":"string","description":"Key to be used in the request body to set the value for this field","readOnly":true,"example":"setLicenses"},"description":{"type":"string","description":"Describes the data that is expected for each field","readOnly":true,"example":"licenses"},"type":{"description":"Type of data expected for the field","readOnly":true,"example":"list of options","allOf":[{"$ref":"#/components/schemas/ProvisioningSectionDataType"}]},"constraints":{"description":"Constraints for the field","readOnly":true,"allOf":[{"$ref":"#/components/schemas/ProvisioningSectionFieldConstraint"}]},"options":{"description":"List of options to choose from","readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/Option"}},"multiple":{"type":"boolean","description":"Can choose multiple options","readOnly":true,"example":true},"hideForProvisioningType":{"description":"Do not set this field for the following provisioning types","readOnly":true,"example":"invite","allOf":[{"$ref":"#/components/schemas/ProvisioningType"}]}},"required":["key","description","type","constraints","options","multiple","hideForProvisioningType"]},"PublicGetProvisioningMetaResponseDto":{"type":"object","properties":{"fields":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicProvisioningField"}}},"required":["fields"]},"WorkspaceFilePermissionType":{"type":"string","enum":["user","group","link","public_responses"]},"WorkspaceFilePermissionScope":{"type":"string","enum":["internal","external"]},"WorkspaceFileAuthorizedAccount":{"type":"object","properties":{"email":{"type":"string","readOnly":true,"example":"foo@example.com"},"status":{"readOnly":true,"example":"on_leave","allOf":[{"$ref":"#/components/schemas/PeopleStatus"}]},"type":{"readOnly":true,"example":"unknown","allOf":[{"$ref":"#/components/schemas/PeopleType"}]},"name":{"type":"string","nullable":true,"readOnly":true,"example":"Foo Bar Baz"}},"required":["email","status","type"]},"WorkspaceFilePermissionResponseDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"1gr23u79r"},"type":{"readOnly":true,"example":"group","allOf":[{"$ref":"#/components/schemas/WorkspaceFilePermissionType"}]},"scope":{"readOnly":true,"example":"external","allOf":[{"$ref":"#/components/schemas/WorkspaceFilePermissionScope"}]},"isOwner":{"type":"boolean","readOnly":true,"example":false},"canChangePermission":{"type":"boolean","readOnly":true,"example":true},"accounts":{"readOnly":true,"example":["foo@example.com","bar@example.com"],"type":"array","items":{"$ref":"#/components/schemas/WorkspaceFileAuthorizedAccount"}},"name":{"type":"string","readOnly":true,"example":"foo"},"sharingLink":{"type":"string","readOnly":true,"example":"foo"},"safeListIdentifier":{"type":"string","readOnly":true,"example":"foo"},"isMarkedSafe":{"type":"boolean","readOnly":true,"example":false}},"required":["id","type","scope","isOwner","canChangePermission","accounts","isMarkedSafe"]},"GetWorkspaceFilePermissionsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/WorkspaceFilePermissionResponseDto"}}},"required":["meta","items"]},"PublicListServicesResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicServiceResponseDto"}}},"required":["meta","items"]},"PublicSpendEntry":{"type":"object","properties":{"date":{"type":"string","readOnly":true,"format":"date","example":"2021-11-01"},"amount":{"type":"number","readOnly":true,"example":1231231}},"required":["date","amount"]},"PublicSpendsByService":{"type":"object","properties":{"serviceName":{"type":"string","readOnly":true,"example":"Github"},"serviceUniqueName":{"type":"string","readOnly":true,"example":"github"},"spends":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicSpendEntry"}}},"required":["serviceName","serviceUniqueName","spends"]},"PublicGetSpendsByServicesResponseDto":{"type":"object","properties":{"services":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicSpendsByService"}},"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/MetaCurrencyDto"}]}},"required":["services","meta"]},"IntersectionMetaCurrencyDtoMetaDateRangeDto":{"type":"object","properties":{"currency":{"type":"string","readOnly":true,"example":"jpy"},"startDate":{"format":"YYYY-MM-DD","type":"string","readOnly":true,"example":"2021-11-01"},"endDate":{"format":"YYYY-MM-DD","type":"string","readOnly":true,"example":"2022-01-31"}},"required":["currency","startDate","endDate"]},"PublicGetMonthlySpendsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/IntersectionMetaCurrencyDtoMetaDateRangeDto"}]},"spends":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicSpendEntry"}}},"required":["meta","spends"]},"CurrencyType":{"type":"string","enum":["jpy","usd","idr"]},"SimpleSpendDto":{"type":"object","properties":{"date":{"type":"string","example":"2024-10-23","format":"date"},"amount":{"type":"number","example":1000},"currency":{"example":"usd","allOf":[{"$ref":"#/components/schemas/CurrencyType"}]},"serviceName":{"type":"string","example":"Dropbox"},"description":{"type":"string","example":"Dropbox yearly subscription"}},"required":["date","amount","currency"]},"ImportSpendsRequestDto":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/SimpleSpendDto"}}},"required":["data"]},"IggreRequestResponseDto":{"type":"object","properties":{"requestId":{"type":"string","readOnly":true,"example":"123e4567-e89b-12d3-a456-426614174000"}},"required":["requestId"]},"GetOrgSpendsSortBy":{"type":"string","enum":["serviceName","paymentDate","amount"]},"PublicCreateCustomAccountRequestDto":{"type":"object","properties":{"email":{"type":"string","format":"email","example":"test@example.com","description":"The email of the account."},"displayName":{"type":"string","description":"The display name of the account."},"userName":{"type":"string","description":"The user name of the account."},"roles":{"description":"The roles of the account. Accepts a list of role names.","type":"array","items":{"type":"string"}},"licenses":{"description":"The licenses of the account. Accepts a list of license names.","type":"array","items":{"type":"string"}},"twoFa":{"type":"boolean","description":"The two factor authentication status of the account."}},"required":["email"]},"PublicCreateCustomAccountBulkRequestDto":{"type":"object","properties":{"create":{"type":"array","items":{"$ref":"#/components/schemas/PublicCreateCustomAccountRequestDto"}},"update":{"type":"array","items":{"$ref":"#/components/schemas/PublicCreateCustomAccountRequestDto"}},"delete":{"type":"array","items":{"$ref":"#/components/schemas/PublicCreateCustomAccountRequestDto"}}},"required":["create","update","delete"]},"PublicCreateAccountRequestDto":{"type":"object","properties":{"data":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}],"example":{"provisioningType":"invite","licenses":["license1","license2"]},"description":"\nTo create an account for a workspace, following are the steps:\n\n- **Step 1**: `GET /workspaces/:workspaceId/provisioning-meta` This returns a list of fields.\n- **Step 2**: `POST /workspaces/:workspaceId/accounts` Make a request based on the meta response from the previous step.\n- **Step 3**: `GET /requests/:requestId` Use requestId from previous step to check status\n\nContinue polling this API until status changes to “finished” or “failed”. There will be a rate limit on this API, so please use an interval of 1s.\n  "},"workflowRunId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000","description":"The ID of the workflow run."}},"required":["data"]},"GetCreateAccountResponseDto":{"type":"object","properties":{"requestId":{"type":"string","readOnly":true,"example":"1"}},"required":["requestId"]},"ValidationErrorResponseDto":{"type":"object","properties":{"field":{"type":"string","readOnly":true},"message":{"type":"string","readOnly":true}},"required":["field","message"]},"ValidationErrorListResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/ValidationErrorResponseDto"}}},"required":["items"]},"SafeListEntityDto":{"type":"object","properties":{"name":{"type":"string","example":"foo bar baz"},"id":{"type":"string","example":"asdfgh12345"}},"required":["name","id"]},"SafeListRequestDto":{"type":"object","properties":{"safeDomains":{"example":["foo.com","bar.com"],"type":"array","items":{"type":"string"}},"safeEmailIds":{"example":["foo@example.com"],"type":"array","items":{"type":"string"}},"safeFiles":{"example":[{"name":"foo","id":"asdfgh12345"}],"type":"array","items":{"$ref":"#/components/schemas/SafeListEntityDto"}},"safeGroups":{"example":[{"name":"foo","id":"asdfgh12345"}],"type":"array","items":{"$ref":"#/components/schemas/SafeListEntityDto"}}}},"PublicCreateWorkspaceFileSafeListRequestDto":{"type":"object","properties":{"remarks":{"type":"string","example":"foo bar baz description"},"allFiles":{"type":"boolean","example":true},"highConfidence":{"type":"boolean","example":true},"create":{"$ref":"#/components/schemas/SafeListRequestDto"},"name":{"type":"string","example":"foo bar baz"}},"required":["name"]},"PublicBulkUpdateWorkspaceFileSafeListRequestDto":{"type":"object","properties":{"safeListIds":{"example":["asdfgh12345"],"type":"array","items":{"type":"string"}},"create":{"$ref":"#/components/schemas/SafeListRequestDto"}},"required":["safeListIds","create"]},"PublicUpdateWorkspaceFileSafeListRequestDto":{"type":"object","properties":{"name":{"type":"string","example":"foo bar baz"},"remarks":{"type":"string","example":"foo bar baz description"},"allFiles":{"type":"boolean","example":true},"highConfidence":{"type":"boolean","example":true},"create":{"$ref":"#/components/schemas/SafeListRequestDto"},"delete":{"$ref":"#/components/schemas/SafeListRequestDto"}}},"PublicGetSafeListResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/SafeListEntityDto"}}},"required":["meta","items"]},"UsageBasedResourceType":{"type":"string","enum":["datadog-infrastructure-host"]},"PublicUnutilizedResourceResponseDto":{"type":"object","properties":{"organizationId":{"type":"number","readOnly":true,"example":1},"serviceUniqueName":{"type":"string","readOnly":true,"example":"datadog"},"workspaceId":{"type":"number","readOnly":true,"example":12345678},"resourceType":{"type":"string","readOnly":true,"example":"datadog-infrastructure-host"},"resourceId":{"type":"string","readOnly":true,"example":"id-12345678"},"resourceAttributes":{"type":"string","readOnly":true,"example":"abc123"}},"required":["organizationId","serviceUniqueName","workspaceId","resourceType","resourceId","resourceAttributes"]},"PublicGetUnutilizedResourcesResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicUnutilizedResourceResponseDto"}},"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]}},"required":["items","meta"]},"DeviceType":{"type":"string","enum":["pc","phone","other"]},"PublicPeopleResponseDtoWithoutAccounts":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"foo@gmail.com"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Yamaha Honda"},"avatar":{"type":"string","nullable":true,"readOnly":true,"example":"avatar_url"},"username":{"type":"string","nullable":true,"readOnly":true,"example":"foo"},"type":{"type":"string","readOnly":true,"example":"employee"},"status":{"type":"string","readOnly":true,"example":"suspended"},"suspendedAt":{"type":"string","nullable":true,"readOnly":true,"example":"2021-07-13T19:15:40.000Z"},"createdAt":{"type":"string","nullable":true,"readOnly":true,"example":"2021-07-13T19:15:40.000Z"}},"required":["id","primaryEmail","displayName","avatar","username","type","status","suspendedAt","createdAt"]},"ExtendedEmployeeStatus":{"type":"string","enum":["active","on_leave","draft","preactive","retired","untracked","archived"],"description":"Extended status of the employee"},"DepartmentDtoElement":{"type":"object","properties":{"name":{"type":"string","example":"department name","description":"Department name of the employee","nullable":true}}},"PublicSimpleIdentityDto":{"type":"object","properties":{"id":{"type":"string","description":"ID of the employee"},"organizationId":{"type":"number","description":"ID of the organization"},"peopleId":{"type":"string","description":"ID of the people"},"employeeStatus":{"example":"active","description":"Extended status of the employee","allOf":[{"$ref":"#/components/schemas/ExtendedEmployeeStatus"}]},"employeeType":{"example":"full_time_employee","description":"Type of the employee","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"managementType":{"example":"managed","description":"Management type of the employee","nullable":true,"allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"displayName":{"type":"string","example":"Display Name","description":"Display name of the employee","nullable":true},"firstName":{"type":"string","example":"First Name","description":"First name of the employee","nullable":true},"lastName":{"type":"string","example":"Last Name","description":"Last name of the employee","nullable":true},"avatar":{"type":"string","description":"URL of the avatar of the employee","nullable":true},"primaryEmail":{"type":"string","example":"primay@email.com","description":"Primary email of the employee","nullable":true},"secondaryEmails":{"example":["secondary+1@email.com","secondary+2@email.com"],"description":"Secondary emails of the employee","nullable":true,"type":"array","items":{"type":"string"}},"companyName":{"type":"string","example":"company name","description":"Company name of the employee","nullable":true},"workLocation":{"type":"string","example":"work location","description":"Work location of the employee","nullable":true},"department":{"description":"Department of the employee","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DepartmentDtoElement"}]},"serviceCount":{"type":"number","description":"Number of services the employee has","nullable":true},"deviceCount":{"type":"number","description":"Number of devices the employee has","nullable":true},"costs":{"description":"Costs of the employee","nullable":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityCost"}},"createdAt":{"format":"date-time","type":"string","description":"Record created at","nullable":true},"updatedAt":{"format":"date-time","type":"string","description":"Record updated at","nullable":true},"isManager":{"type":"boolean","description":"Is the employee a manager","nullable":true},"isMock":{"type":"boolean","description":"Indicates if the identity is a mock"},"isEmailEditable":{"type":"boolean","description":"Indicates if the email of the identity is editable","nullable":true},"hasPresetFieldsUnlinked":{"type":"boolean","description":"Indicates if the unlink preset fields is enabled","nullable":true}},"required":["employeeStatus","employeeType","firstName","lastName"]},"CustomFieldWithMetadataDto":{"type":"object","properties":{"id":{"type":"number","description":"The ID of the custom field template","example":1},"attributeCode":{"type":"string","description":"The unique identifier for the custom field","example":"custom_uuid"},"attributeName":{"type":"string","description":"The display label for the custom field","example":"custom_text_field"},"value":{"type":"object","description":"The value of the custom field (string, number, or date string depending on the field type)","example":"foo"}},"required":["id","attributeCode","attributeName","value"]},"PublicDeviceDto":{"type":"object","properties":{"id":{"type":"number","example":123,"description":"Unique identifier for the device"},"memo":{"type":"string","example":"foo bar","description":"Additional notes or memo about the device"},"type":{"type":"string","enum":["pc","phone","other"],"example":"pc","description":"Type of the device (e.g., PC, Phone, Tablet)"},"people":{"nullable":true,"description":"Person assigned to this device, or null if unassigned","type":"object","allOf":[{"$ref":"#/components/schemas/PublicPeopleResponseDtoWithoutAccounts"}]},"identity":{"nullable":true,"description":"Identity information of the assigned person, or null if unassigned","type":"object","allOf":[{"$ref":"#/components/schemas/PublicSimpleIdentityDto"}]},"preset":{"type":"object","example":{"subtype":"other","price":123.321},"additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"}]},"description":"Preset fields for the device. This is a hashmap where the key maps to the field `uniqueName` in device fields."},"custom":{"type":"object","example":{"custom_text_field":"foo","custom_date_field":"2024-01-01","custom_number_field":123,"custom_dropdown_field":"Option Displayed Value A","custom_multi_select_field":["Option Displayed Value A","Option Displayed Value B"]},"additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"array","items":{"type":"string"}}]},"description":"Custom fields for the device. This is a hashmap where the key maps to the field `uniqueName` in device fields. A dropdown field configured with `allowMultiple` returns an array of the selected display values."},"createdAt":{"format":"date-time","type":"string","example":"2024-03-20T00:00:00Z","description":"Timestamp when the device was created"},"updatedAt":{"format":"date-time","type":"string","example":"2024-03-20T00:00:00Z","description":"Timestamp when the device was last updated"},"customFieldsWithMetadata":{"readOnly":true,"example":[{"id":1,"attributeCode":"custom_text_field","attributeName":"Text field","value":"foo"},{"id":2,"attributeCode":"custom_date_field","attributeName":"Date field","value":"2024-01-01"},{"id":3,"attributeCode":"custom_number_field","attributeName":"Number field","value":123},{"id":4,"attributeCode":"custom_dropdown_field","attributeName":"Dropdown field","value":"Option Displayed Value A"}],"type":"array","items":{"$ref":"#/components/schemas/CustomFieldWithMetadataDto"}}},"required":["id","memo","type","people","identity","preset","custom","createdAt","updatedAt","customFieldsWithMetadata"]},"PublicGetDevicesListResponseDto":{"type":"object","properties":{"meta":{"description":"Pagination metadata including cursor for next page","allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"description":"List of devices matching the query criteria","type":"array","items":{"$ref":"#/components/schemas/PublicDeviceDto"}}},"required":["meta","items"]},"PublicDeviceFieldDropdownConfigurationDto":{"type":"object","properties":{"label":{"type":"string","readOnly":true,"example":"Foo"}},"required":["label"]},"PublicDeviceFieldDtoV1Alpha":{"type":"object","properties":{"id":{"type":"number","nullable":true,"readOnly":true,"example":123},"uniqueName":{"type":"string","readOnly":true,"example":"foo"},"source":{"type":"string","readOnly":true,"enum":["preset","custom"],"example":"preset"},"kind":{"type":"string","readOnly":true,"enum":["text","date","number","dropdown","link"],"example":"text"},"name":{"type":"string","readOnly":true,"example":"Foo"},"required":{"type":"boolean","readOnly":true,"example":true},"visibleForType":{"type":"array","example":["other","phone"],"items":{"type":"string","enum":["pc","phone","other"]}},"hidden":{"type":"boolean","readOnly":true,"example":true},"configuration":{"type":"object","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/PublicDeviceFieldDropdownConfigurationDto"}}],"nullable":true}},"required":["id","uniqueName","source","kind","name","required","visibleForType","hidden","configuration"]},"PublicGetDeviceFieldsListResponseDtoV1Alpha":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicDeviceFieldDtoV1Alpha"}}},"required":["items"]},"DeviceFilterOptions":{"type":"object","properties":{"minDate":{"type":"string","example":"2021-01-01","format":"date","description":"only supported by fields with `date` kind"},"maxDate":{"type":"string","example":"2021-01-01","format":"date","description":"only supported by fields with `date` kind"},"minNumber":{"type":"number","example":1,"description":"only supported by fields with `number` kind and few special fields such as `$age`"},"maxNumber":{"type":"number","example":2,"description":"only supported by fields with `number` kind and few special fields such as `$age`"},"eq":{"type":"string","example":"foo","description":"only supported by fields with `dropdown` kind"}}},"PublicSearchDevicesRequestDto":{"type":"object","properties":{"peopleId":{"type":"number","example":5034567,"description":"Filter devices by the people ID assigned to them"},"type":{"example":"pc","description":"Filter devices by device type","allOf":[{"$ref":"#/components/schemas/DeviceType"}]},"groupId":{"type":"number","example":42,"description":"Filter devices to those matching the conditions of the given Device Group (restricts results to the group's member devices)."},"employeeStatus":{"example":"active","description":"Filter devices by the employment status of the assigned person","allOf":[{"$ref":"#/components/schemas/EmployeeStatus"}]},"searchTerm":{"type":"string","example":"foo","description":"Search term to filter devices. Searches across fields specified in searchFields"},"searchFields":{"example":["memo","people.primaryEmail","people.displayName","preset.asset_number","preset.<unique field name>","custom.<unique field name>"],"description":"Array of field names to search within when using searchTerm. Supports memo, people fields, preset fields, and custom fields","type":"array","items":{"type":"string"}},"filters":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/DeviceFilterOptions"},"description":"The object key is the field name, and the value is the filter options. Keys look like `preset.<unique field name>`. There are certain extra virtual fields, such as `$age`, please check implementation or ask a backend engineer."}}},"DeviceExpand":{"type":"string","enum":["relatedIdentity","customFieldsMetadata"]},"CompactPeopleAccountDto":{"type":"object","properties":{"id":{"type":"string","nullable":true,"readOnly":true,"example":"1#foo"},"serviceId":{"type":"number","nullable":true,"readOnly":true,"example":42},"serviceUniqueName":{"type":"string","nullable":true,"readOnly":true,"example":"github"},"serviceName":{"type":"string","nullable":true,"readOnly":true,"example":"GitHub"},"workspaceName":{"type":"string","nullable":true,"readOnly":true,"example":"mfi"},"accountKey":{"type":"string","nullable":true,"readOnly":true,"example":"foo@mfi.com"},"serviceIsCustom":{"type":"boolean","nullable":true,"readOnly":true,"example":false}},"required":["id","serviceId","serviceUniqueName","serviceName","workspaceName","accountKey","serviceIsCustom"]},"MergedPeopleDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"foo@gmail.com"},"username":{"type":"string","nullable":true,"readOnly":true,"example":"foo"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Yamaha Honda"}},"required":["id","primaryEmail","username","displayName"]},"PeopleResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"identityId":{"type":"string","nullable":true,"readOnly":true,"example":"I3N5HB4B3G"},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"foo@gmail.com"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Yamaha Honda"},"avatar":{"type":"string","nullable":true,"readOnly":true,"example":"avatar_url"},"username":{"type":"string","nullable":true,"readOnly":true,"example":"foo"},"type":{"type":"string","readOnly":true,"example":"employee"},"status":{"type":"string","readOnly":true,"example":"suspended"},"managementType":{"readOnly":true,"example":"managed","allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"employeeType":{"readOnly":true,"example":"full_time_employee","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"employeeStatus":{"readOnly":true,"example":"active","allOf":[{"$ref":"#/components/schemas/EmployeeStatus"}]},"suspendedAt":{"type":"string","nullable":true,"readOnly":true,"example":"2021-07-13T19:15:40.000Z"},"createdAt":{"type":"string","nullable":true,"readOnly":true,"example":"2021-07-13T19:15:40.000Z"},"accounts":{"nullable":true,"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/CompactPeopleAccountDto"}},"mergedPeople":{"nullable":true,"readOnly":true,"example":[{"id":1,"displayName":"Ron Lee","username":"ron.lee","primaryEmail":null}],"type":"array","items":{"$ref":"#/components/schemas/MergedPeopleDto"}}},"required":["id","identityId","primaryEmail","displayName","avatar","username","type","status","managementType","employeeType","employeeStatus","suspendedAt","createdAt","accounts","mergedPeople"]},"MdmMetadataDto":{"type":"object","properties":{"workspaceId":{"type":"number","readOnly":true,"example":123},"serviceUniqueName":{"type":"string","readOnly":true,"example":"jamf"},"url":{"type":"string","nullable":true,"readOnly":true,"example":"https://example.com"}},"required":["workspaceId","serviceUniqueName","url"]},"DeviceDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":123},"memo":{"type":"string","readOnly":true,"example":"foo bar"},"people":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PeopleResponseDto"}]},"originalPeopleId":{"type":"number","nullable":true,"readOnly":true,"example":456},"fields":{"type":"object","additionalProperties":{"nullable":true,"oneOf":[{"type":"string"},{"type":"number"},{"type":"array","items":{"type":"string"}}]},"readOnly":true,"example":{"preset.subtype":"other","preset.asset_number":"unique value","preset.model_name":"cool gadget","custom.custom_text_field":"foo","custom.custom_date_field":"2024-01-01","custom.custom_number_field":123,"custom.custom_dropdown_field":"Option Displayed Value A","custom.custom_multi_select_field":["Option Displayed Value A","Option Displayed Value B"]}},"mdmMetadata":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/MdmMetadataDto"}]},"relatedIdentities":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/RelatedIdentitiesDto"}]},"customFieldsWithMetadata":{"readOnly":true,"example":[{"id":1,"attributeCode":"custom_text_field","attributeName":"Text field","value":"foo"},{"id":2,"attributeCode":"custom_date_field","attributeName":"Date field","value":"2024-01-01"},{"id":3,"attributeCode":"custom_number_field","attributeName":"Number field","value":123},{"id":4,"attributeCode":"custom_dropdown_field","attributeName":"Dropdown field","value":"Option Displayed Value A"}],"type":"array","items":{"$ref":"#/components/schemas/CustomFieldWithMetadataDto"}}},"required":["id","memo","people","originalPeopleId","fields","mdmMetadata","relatedIdentities","customFieldsWithMetadata"]},"PublicSearchDevicesResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/DeviceDto"}}},"required":["meta","items"]},"PublicCreateDeviceRequestDto":{"type":"object","properties":{"memo":{"type":"string","example":"foo bar"},"fields":{"type":"object","properties":{"preset.asset_number":{"type":"string","example":"(REQUIRED) - example value"},"preset.subtype":{"type":"string","enum":["desktop_pc","laptop_pc","tablet_pc","phone","monitor","server","peripheral_device","other"],"example":"(REQUIRED) - desktop_pc"},"preset.model_name":{"type":"string","example":"(REQUIRED) - example value"},"preset.serial_number":{"type":"string","example":"example value"},"preset.model_number":{"type":"string","example":"example value"},"preset.memory":{"type":"string","example":"example value"},"preset.hdd_ssd":{"type":"string","example":"example value"},"preset.cpu":{"type":"string","example":"example value"},"preset.os":{"type":"string","example":"example value"},"preset.size":{"type":"string","example":"example value"},"preset.manufacturer":{"type":"string","example":"example value"},"preset.supplier":{"type":"string","example":"example value"},"preset.procurement_method":{"type":"string","enum":["purchase","lease","rental","other"],"example":"purchase"},"preset.purchase_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.purchase_cost":{"type":"number","example":"1234"},"preset.warranty_period":{"type":"string","example":"example value"},"preset.decommission_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.scheduled_return_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.fixed_asset":{"type":"string","enum":["yes","no"],"example":"yes"},"preset.phone_number":{"type":"string","example":"example value"},"preset.sim_number":{"type":"string","example":"example value"},"preset.mobile_plan":{"type":"string","example":"example value"},"preset.hostname":{"type":"string","example":"example value"},"preset.version":{"type":"string","example":"example value"},"preset.keyboard_layout":{"type":"string","enum":["us","uk","jis","other"],"example":"us"},"preset.usage_start_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.usage_end_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.status":{"type":"string","enum":["in_stock","pre_use","active","missing","malfunction","decommissioned","on_order","scheduled_for_loan","scheduled_for_return"],"example":"in_stock","description":"Initial device status. If not provided, defaults to 'in_stock'. Valid values: in_stock, pre_use, active, missing, malfunction, decommissioned, on_order, scheduled_for_loan, scheduled_for_return."},"custom.custom_text_field":{"type":"string","example":"foo","description":"This is an example of text field. Please refer to `GET /api/v1alpha/organizations/{organizationId}/devices/fields/all` to get the list of all available custom fields.."},"custom.custom_date_field":{"type":"string","format":"date","example":"2024-01-01","description":"This is an example of date field. Please refer to `GET /api/v1alpha/organizations/{organizationId}/devices/fields/all` to get the list of all available custom fields.."},"custom.custom_number_field":{"type":"number","example":123,"description":"This is an example of number field. Please refer to `GET /api/v1alpha/organizations/{organizationId}/devices/fields/all` to get the list of all available custom fields.."},"custom.custom_dropdown_field":{"type":"string","enum":["Option Displayed Value A","Option Displayed Value B","Option Displayed Value C"],"example":"Option Displayed Value A","description":"This is an example of dropdown field. Please refer to `GET /api/v1alpha/organizations/{organizationId}/devices/fields/all` to get the list of all available custom fields.."}}}},"required":["fields"]},"PublicGetDeviceResponseDto":{"type":"object","properties":{"id":{"type":"number","example":123,"description":"Unique identifier for the device"},"memo":{"type":"string","example":"foo bar","description":"Additional notes or memo about the device"},"type":{"type":"string","enum":["pc","phone","other"],"example":"pc","description":"Type of the device (e.g., PC, Phone, Tablet)"},"people":{"nullable":true,"description":"Person assigned to this device, or null if unassigned","type":"object","allOf":[{"$ref":"#/components/schemas/PublicPeopleResponseDtoWithoutAccounts"}]},"identity":{"nullable":true,"description":"Identity information of the assigned person, or null if unassigned","type":"object","allOf":[{"$ref":"#/components/schemas/PublicSimpleIdentityDto"}]},"preset":{"type":"object","example":{"subtype":"other","price":123.321},"additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"}]},"description":"Preset fields for the device. This is a hashmap where the key maps to the field `uniqueName` in device fields."},"custom":{"type":"object","example":{"custom_text_field":"foo","custom_date_field":"2024-01-01","custom_number_field":123,"custom_dropdown_field":"Option Displayed Value A","custom_multi_select_field":["Option Displayed Value A","Option Displayed Value B"]},"additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"array","items":{"type":"string"}}]},"description":"Custom fields for the device. This is a hashmap where the key maps to the field `uniqueName` in device fields. A dropdown field configured with `allowMultiple` returns an array of the selected display values."},"createdAt":{"format":"date-time","type":"string","example":"2024-03-20T00:00:00Z","description":"Timestamp when the device was created"},"updatedAt":{"format":"date-time","type":"string","example":"2024-03-20T00:00:00Z","description":"Timestamp when the device was last updated"},"customFieldsWithMetadata":{"readOnly":true,"example":[{"id":1,"attributeCode":"custom_text_field","attributeName":"Text field","value":"foo"},{"id":2,"attributeCode":"custom_date_field","attributeName":"Date field","value":"2024-01-01"},{"id":3,"attributeCode":"custom_number_field","attributeName":"Number field","value":123},{"id":4,"attributeCode":"custom_dropdown_field","attributeName":"Dropdown field","value":"Option Displayed Value A"}],"type":"array","items":{"$ref":"#/components/schemas/CustomFieldWithMetadataDto"}}},"required":["id","memo","type","people","identity","preset","custom","createdAt","updatedAt","customFieldsWithMetadata"]},"PublicCreateDevicesBulkRequestDto":{"type":"object","properties":{"devices":{"description":"Array of devices to create. Maximum 50 devices per request.","type":"array","items":{"$ref":"#/components/schemas/PublicCreateDeviceRequestDto"}}},"required":["devices"]},"PublicCreateDevicesBulkListResponseDto":{"type":"object","properties":{"devices":{"description":"List of created devices","type":"array","items":{"$ref":"#/components/schemas/PublicDeviceDto"}}},"required":["devices"]},"DeviceStatus":{"type":"string","enum":["in_stock","pre_use","active","missing","malfunction","decommissioned","on_order","scheduled_for_loan","scheduled_for_return"]},"PublicDeleteDevicesBulkRequestDto":{"type":"object","properties":{"deviceIds":{"example":[1,2,3],"description":"Array of device IDs to delete. Maximum 100 IDs per request.","type":"array","items":{"type":"number"}}},"required":["deviceIds"]},"DeviceHistoryChangesDto":{"type":"object","properties":{"people":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PeopleResponseDto"}]},"status":{"example":"decommissioned","allOf":[{"$ref":"#/components/schemas/DeviceStatus"}]},"location1":{"type":"string","example":"Tokyo","nullable":true},"location2":{"type":"string","example":"msb","nullable":true},"assignmentStartDate":{"type":"string","format":"date","example":"2021-01-01","nullable":true},"assignmentEndDate":{"type":"string","format":"date","example":"2022-01-02","nullable":true},"comment":{"type":"string","example":"Assigned to new employee","nullable":true}},"required":["people","status","location1","location2","assignmentStartDate","assignmentEndDate","comment"]},"PublicGetDeviceHistoryResponseDto":{"type":"object","properties":{"id":{"type":"number","example":123},"deviceId":{"type":"number","example":321},"createdAt":{"type":"string","format":"date-time","example":"2017-07-21T17:32:28Z"},"changes":{"$ref":"#/components/schemas/DeviceHistoryChangesDto"},"comment":{"type":"string","example":"Assigned to new employee","nullable":true}},"required":["id","deviceId","createdAt","changes","comment"]},"PublicDeviceWithHistoryDto":{"type":"object","properties":{"id":{"type":"number","example":123,"description":"Unique identifier for the device"},"memo":{"type":"string","example":"foo bar","description":"Additional notes or memo about the device"},"type":{"type":"string","enum":["pc","phone","other"],"example":"pc","description":"Type of the device (e.g., PC, Phone, Tablet)"},"people":{"nullable":true,"description":"Person assigned to this device, or null if unassigned","type":"object","allOf":[{"$ref":"#/components/schemas/PublicPeopleResponseDtoWithoutAccounts"}]},"identity":{"nullable":true,"description":"Identity information of the assigned person, or null if unassigned","type":"object","allOf":[{"$ref":"#/components/schemas/PublicSimpleIdentityDto"}]},"preset":{"type":"object","example":{"subtype":"other","price":123.321},"additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"}]},"description":"Preset fields for the device. This is a hashmap where the key maps to the field `uniqueName` in device fields."},"custom":{"type":"object","example":{"custom_text_field":"foo","custom_date_field":"2024-01-01","custom_number_field":123,"custom_dropdown_field":"Option Displayed Value A","custom_multi_select_field":["Option Displayed Value A","Option Displayed Value B"]},"additionalProperties":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"array","items":{"type":"string"}}]},"description":"Custom fields for the device. This is a hashmap where the key maps to the field `uniqueName` in device fields. A dropdown field configured with `allowMultiple` returns an array of the selected display values."},"createdAt":{"format":"date-time","type":"string","example":"2024-03-20T00:00:00Z","description":"Timestamp when the device was created"},"updatedAt":{"format":"date-time","type":"string","example":"2024-03-20T00:00:00Z","description":"Timestamp when the device was last updated"},"customFieldsWithMetadata":{"readOnly":true,"example":[{"id":1,"attributeCode":"custom_text_field","attributeName":"Text field","value":"foo"},{"id":2,"attributeCode":"custom_date_field","attributeName":"Date field","value":"2024-01-01"},{"id":3,"attributeCode":"custom_number_field","attributeName":"Number field","value":123},{"id":4,"attributeCode":"custom_dropdown_field","attributeName":"Dropdown field","value":"Option Displayed Value A"}],"type":"array","items":{"$ref":"#/components/schemas/CustomFieldWithMetadataDto"}},"histories":{"description":"History of changes made to this device","type":"array","items":{"$ref":"#/components/schemas/PublicGetDeviceHistoryResponseDto"}}},"required":["id","memo","type","people","identity","preset","custom","createdAt","updatedAt","customFieldsWithMetadata","histories"]},"PublicDeleteDevicesResponseDto":{"type":"object","properties":{"deletedDevicesWithHistory":{"description":"List of deleted devices with their history","type":"array","items":{"$ref":"#/components/schemas/PublicDeviceWithHistoryDto"}}},"required":["deletedDevicesWithHistory"]},"PublicUpdateDeviceRequestDto":{"type":"object","properties":{"memo":{"type":"string","example":"foo bar"},"fields":{"type":"object","properties":{"preset.asset_number":{"type":"string","example":"(REQUIRED) - example value"},"preset.subtype":{"type":"string","enum":["desktop_pc","laptop_pc","tablet_pc","phone","monitor","server","peripheral_device","other"],"example":"(REQUIRED) - desktop_pc"},"preset.model_name":{"type":"string","example":"(REQUIRED) - example value"},"preset.serial_number":{"type":"string","example":"example value"},"preset.model_number":{"type":"string","example":"example value"},"preset.memory":{"type":"string","example":"example value"},"preset.hdd_ssd":{"type":"string","example":"example value"},"preset.cpu":{"type":"string","example":"example value"},"preset.os":{"type":"string","example":"example value"},"preset.size":{"type":"string","example":"example value"},"preset.manufacturer":{"type":"string","example":"example value"},"preset.supplier":{"type":"string","example":"example value"},"preset.procurement_method":{"type":"string","enum":["purchase","lease","rental","other"],"example":"purchase"},"preset.purchase_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.purchase_cost":{"type":"number","example":"1234"},"preset.warranty_period":{"type":"string","example":"example value"},"preset.decommission_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.scheduled_return_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.fixed_asset":{"type":"string","enum":["yes","no"],"example":"yes"},"preset.phone_number":{"type":"string","example":"example value"},"preset.sim_number":{"type":"string","example":"example value"},"preset.mobile_plan":{"type":"string","example":"example value"},"preset.hostname":{"type":"string","example":"example value"},"preset.version":{"type":"string","example":"example value"},"preset.keyboard_layout":{"type":"string","enum":["us","uk","jis","other"],"example":"us"},"preset.usage_start_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.usage_end_date":{"type":"string","example":"2012-05-18","format":"date"},"preset.status":{"type":"string","enum":["in_stock","pre_use","active","missing","malfunction","decommissioned","on_order","scheduled_for_loan","scheduled_for_return"],"example":"in_stock","description":"Initial device status. If not provided, defaults to 'in_stock'. Valid values: in_stock, pre_use, active, missing, malfunction, decommissioned, on_order, scheduled_for_loan, scheduled_for_return."},"custom.custom_text_field":{"type":"string","example":"foo","description":"This is an example of text field. Please refer to `GET /api/v1alpha/organizations/{organizationId}/devices/fields/all` to get the list of all available custom fields.."},"custom.custom_date_field":{"type":"string","format":"date","example":"2024-01-01","description":"This is an example of date field. Please refer to `GET /api/v1alpha/organizations/{organizationId}/devices/fields/all` to get the list of all available custom fields.."},"custom.custom_number_field":{"type":"number","example":123,"description":"This is an example of number field. Please refer to `GET /api/v1alpha/organizations/{organizationId}/devices/fields/all` to get the list of all available custom fields.."},"custom.custom_dropdown_field":{"type":"string","enum":["Option Displayed Value A","Option Displayed Value B","Option Displayed Value C"],"example":"Option Displayed Value A","description":"This is an example of dropdown field. Please refer to `GET /api/v1alpha/organizations/{organizationId}/devices/fields/all` to get the list of all available custom fields.."}}}},"required":["fields"]},"PublicGetDevicesStatsResponseDto":{"type":"object","properties":{"total":{"type":"number","readOnly":true,"example":123},"active":{"type":"number","readOnly":true,"example":123},"inStock":{"type":"number","readOnly":true,"example":123},"preUse":{"type":"number","readOnly":true,"example":123},"decommissioned":{"type":"number","readOnly":true,"example":123},"malfunction":{"type":"number","readOnly":true,"example":123},"onOrder":{"type":"number","readOnly":true,"example":123},"missing":{"type":"number","readOnly":true,"example":123},"scheduledForLoan":{"type":"number","readOnly":true,"example":123},"scheduledForReturn":{"type":"number","readOnly":true,"example":123},"urgent":{"type":"number","readOnly":true,"example":123}},"required":["total","active","inStock","preUse","decommissioned","malfunction","onOrder","missing","scheduledForLoan","scheduledForReturn","urgent"]},"DevicePresetFieldUniqueName":{"type":"string","enum":["asset_number","subtype","model_name","status","serial_number","model_number","memory","hdd_ssd","cpu","os","size","manufacturer","supplier","procurement_method","purchase_date","purchase_cost","warranty_period","decommission_date","scheduled_return_date","location_1","location_2","assignment_start_date","assignment_end_date","fixed_asset","phone_number","sim_number","mobile_plan","hostname","version","keyboard_layout","usage_start_date","usage_end_date","last_activity_from_mdm"]},"PublicDeviceInsightsResponseDto":{"type":"object","properties":{"key":{"type":"string","readOnly":true},"count":{"type":"number","readOnly":true}},"required":["key","count"]},"DeviceMultiLanguageNameDto":{"type":"object","properties":{"ja":{"type":"string","readOnly":true,"example":"こんにちは"},"en":{"type":"string","readOnly":true,"example":"Hello"}},"required":["ja","en"]},"DeviceFieldDropdownValueDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"option_1"},"group":{"type":"string","readOnly":true,"example":"phone"},"label":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/DeviceMultiLanguageNameDto"}]},"value":{"type":"string","readOnly":true,"example":"phone"}},"required":["id","value"]},"DeviceFieldDropdownGroupDto":{"type":"object","properties":{"label":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/DeviceMultiLanguageNameDto"}]},"value":{"type":"string","readOnly":true,"example":"phone"}},"required":["value"]},"DeviceFieldDropdownConfigurationDto":{"type":"object","properties":{"values":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/DeviceFieldDropdownValueDto"}},"groups":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/DeviceFieldDropdownGroupDto"}},"allowMultiple":{"type":"boolean"}},"required":["values","groups"]},"DeviceFieldKind":{"type":"string","enum":["text","date","number","dropdown","link"],"description":"The type of field (e.g., text, number, date, dropdown)"},"PublicDevicePresetFieldDto":{"type":"object","properties":{"uniqueName":{"type":"string","example":"serial_number","description":"Unique identifier for the device field"},"name":{"description":"Multi-language names for the field","allOf":[{"$ref":"#/components/schemas/DeviceMultiLanguageNameDto"}]},"kind":{"example":"dropdown","description":"The type of field (e.g., text, number, date, dropdown)","allOf":[{"$ref":"#/components/schemas/DeviceFieldKind"}]},"configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/DeviceFieldDropdownConfigurationDto"}],"nullable":true,"description":"Additional configuration for the field, such as dropdown options"},"visibleForType":{"type":"array","example":"phone","description":"List of device types this field is visible for","items":{"$ref":"#/components/schemas/DeviceType"}},"required":{"type":"boolean","example":true,"description":"Indicates if this field is required"}},"required":["uniqueName","name","kind","configuration","visibleForType","required"]},"PublicGetDeviceWorkspaceStatusResponseDto":{"type":"object","properties":{"haveDeviceDisabledWs":{"type":"boolean","readOnly":true},"haveAnyMdmSyncingWorkspace":{"type":"boolean","readOnly":true},"haveAnyMdmSyncableWorkspace":{"type":"boolean","readOnly":true}},"required":["haveDeviceDisabledWs","haveAnyMdmSyncingWorkspace","haveAnyMdmSyncableWorkspace"]},"CreateDeviceFieldDropdownValueDto":{"type":"object","properties":{"id":{"type":"string","example":"option_1"},"value":{"type":"string","example":"Option 1"},"group":{"type":"string"}},"required":["id","value"]},"CreateDeviceFieldDropdownConfigurationDto":{"type":"object","properties":{"values":{"description":"Dropdown items with id (stable identifier) and value (display name)","type":"array","items":{"$ref":"#/components/schemas/CreateDeviceFieldDropdownValueDto"}},"allowMultiple":{"type":"boolean","default":false,"description":"When true, the dropdown accepts multiple selected options (stored as an array of option ids)."}},"required":["values"]},"PublicGetDeviceCustomFieldResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"kind":{"example":"dropdown","allOf":[{"$ref":"#/components/schemas/DeviceFieldKind"}]},"configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/DeviceFieldDropdownConfigurationDto"}],"nullable":true},"visibleForType":{"type":"array","example":"phone","items":{"$ref":"#/components/schemas/DeviceType"}},"required":{"type":"boolean","description":"This field will be always `false` in R1","readOnly":true,"example":true},"attributeCode":{"type":"string","readOnly":true,"example":"custom_text_field"},"attributeName":{"type":"string","readOnly":true,"example":"Foo bar"}},"required":["id","kind","configuration","visibleForType","required","attributeCode","attributeName"]},"PublicGetDeviceCustomFieldsListResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicGetDeviceCustomFieldResponseDto"}}},"required":["items"]},"PublicCreateDeviceCustomFieldRequestDto":{"type":"object","properties":{"kind":{"example":"dropdown","allOf":[{"$ref":"#/components/schemas/DeviceFieldKind"}]},"configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CreateDeviceFieldDropdownConfigurationDto"}],"nullable":true},"attributeName":{"type":"string","example":"foo bar"},"attributeCode":{"type":"string","example":"device_id","description":"Unique identifier for the custom field. Must contain only lowercase letters, numbers, and underscores. If not provided, will be auto-generated."}},"required":["kind","configuration","attributeName"]},"GetDeviceCustomFieldResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"uniqueName":{"type":"string","readOnly":true,"example":"custom_text_field"},"name":{"type":"string","readOnly":true,"example":"Foo bar"},"kind":{"example":"dropdown","allOf":[{"$ref":"#/components/schemas/DeviceFieldKind"}]},"configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/DeviceFieldDropdownConfigurationDto"}],"nullable":true},"visibleForType":{"type":"array","example":"phone","items":{"$ref":"#/components/schemas/DeviceType"}},"required":{"type":"boolean","description":"This field will be always `false` in R1","readOnly":true,"example":true}},"required":["id","uniqueName","name","kind","configuration","visibleForType","required"]},"PublicUpdateDeviceCustomFieldRequestDto":{"type":"object","properties":{"visibleForType":{"type":"array","example":"phone","items":{"$ref":"#/components/schemas/DeviceType"}},"configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CreateDeviceFieldDropdownConfigurationDto"}],"nullable":true,"description":"Update the dropdown configuration (values can be added, removed, reordered, or modified)"},"attributeName":{"type":"string","example":"foo bar"},"attributeCode":{"type":"string","example":"device_id","description":"Unique identifier for the custom field. Must contain only lowercase letters, numbers, and underscores. Cannot be changed to a value that already exists in the organization."}}},"DeviceGroupConditionDto":{"type":"object","properties":{"attribute":{"type":"string","example":"preset.os","description":"The device attribute to filter by. Supports preset fields (e.g. \"preset.os\"), custom fields (e.g. \"custom.my_field\"), MDM fields (e.g. \"mdm.field_name\"), or shorthand preset field names (e.g. \"os\", \"status\")"},"operator":{"type":"string","enum":["eq","neq","contains","starts_with","gt","gte","lt","lte"],"example":"eq","description":"Comparison operator. eq = equals, neq = does not equal, contains = substring match, starts_with = prefix match, gt/gte/lt/lte = range comparison (number & date fields)"},"value":{"type":"string","example":"macOS","description":"The value to compare against"},"logicOperator":{"type":"string","enum":["AND","OR"],"example":"AND","description":"Logic operator connecting this condition to the next one. Not required for the last condition"}},"required":["attribute","operator","value"]},"PublicDeviceGroupResponseDto":{"type":"object","properties":{"id":{"type":"number","example":1},"name":{"type":"string","example":"macOS Tokyo Office"},"description":{"type":"string","nullable":true,"example":"macOS devices in use at the Tokyo Office"},"deviceCount":{"type":"number","example":42,"description":"Number of devices matching the group conditions"},"conditions":{"description":"Conditions defining which devices belong to this group","type":"array","items":{"$ref":"#/components/schemas/DeviceGroupConditionDto"}},"isDefault":{"type":"boolean","example":false,"description":"True for built-in PC/Phone/Other groups"},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"}},"required":["id","name","description","deviceCount","conditions","isDefault","createdAt","updatedAt"]},"PublicGetDeviceGroupsResponseDto":{"type":"object","properties":{"meta":{"description":"Pagination metadata including cursor for the next page","allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"description":"List of device groups for the organization","type":"array","items":{"$ref":"#/components/schemas/PublicDeviceGroupResponseDto"}}},"required":["meta","items"]},"PublicCreateDeviceGroupRequestDto":{"type":"object","properties":{"name":{"type":"string","example":"macOS Tokyo Office","description":"The name of the device group"},"description":{"type":"string","example":"macOS devices in use at the Tokyo Office","description":"Optional human-readable description of the group"},"conditions":{"description":"Filtering conditions that define which devices belong to this group","type":"array","items":{"$ref":"#/components/schemas/DeviceGroupConditionDto"}}},"required":["name","conditions"]},"PublicUpdateDeviceGroupRequestDto":{"type":"object","properties":{"name":{"type":"string","example":"macOS Tokyo Office","description":"The name of the device group"},"description":{"type":"string","example":"macOS devices in use at the Tokyo Office","description":"Optional human-readable description of the group"},"conditions":{"description":"Filtering conditions that define which devices belong to this group","type":"array","items":{"$ref":"#/components/schemas/DeviceGroupConditionDto"}}}},"DeviceAlertRuleConditionDto":{"type":"object","properties":{"attribute":{"type":"string","example":"preset.last_activity_from_mdm","description":"Device attribute path the rule evaluates against"},"operator":{"type":"string","enum":["lt","lte","gt","gte","eq","neq","stale_for_days","contains","not_contains","starts_with","is_empty","is_not_empty","before","after"],"example":"stale_for_days"},"value":{"type":"string","example":"30","description":"Comparison value; numeric values are coerced server-side. Omitted for blank operators (is_empty / is_not_empty)."}},"required":["attribute","operator"]},"DeviceAlertRuleConditionGroupDto":{"type":"object","properties":{"combinator":{"type":"string","enum":["and","or"],"example":"and","description":"How the conditions combine: 'and' = all must match, 'or' = any may match"},"conditions":{"description":"One or more conditions evaluated against each device and combined by `combinator`","type":"array","items":{"$ref":"#/components/schemas/DeviceAlertRuleConditionDto"}}},"required":["combinator","conditions"]},"PublicDeviceAlertRuleResponseDto":{"type":"object","properties":{"id":{"type":"number","example":42},"alertType":{"type":"string","enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"],"example":"device_replacement"},"name":{"type":"string","example":"macOS 4-Year Swap"},"urgency":{"type":"string","enum":["critical","warning"],"example":"warning"},"description":{"type":"string","nullable":true},"deviceGroupId":{"type":"number","nullable":true,"example":7,"description":"Null when the rule targets all devices in the organization — always the case for the Standard Rule, and allowed for custom rules. Use isStandard to tell the two apart."},"isStandard":{"type":"boolean","description":"Standard Rule targets all devices and cannot be deleted"},"condition":{"$ref":"#/components/schemas/DeviceAlertRuleConditionGroupDto"},"isEnabled":{"type":"boolean"},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"}},"required":["id","alertType","name","urgency","description","deviceGroupId","isStandard","condition","isEnabled","createdAt","updatedAt"]},"PublicGetDeviceAlertRulesResponseDto":{"type":"object","properties":{"meta":{"description":"Pagination metadata including cursor for the next page","allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"description":"List of device alert rules","type":"array","items":{"$ref":"#/components/schemas/PublicDeviceAlertRuleResponseDto"}}},"required":["meta","items"]},"PublicCreateDeviceAlertRuleRequestDto":{"type":"object","properties":{"alertType":{"type":"string","enum":["device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"],"example":"device_replacement","description":"Device alert type the rule belongs to"},"name":{"type":"string","example":"macOS 4-Year Swap","description":"Rule display name (unique per org)"},"description":{"type":"string","example":"Flag macOS devices older than 4 years"},"deviceGroupId":{"type":"number","example":7,"description":"ID of the device group whose members are evaluated. Omit to target every device in the organization."},"condition":{"$ref":"#/components/schemas/DeviceAlertRuleConditionGroupDto"},"urgency":{"type":"string","enum":["critical","warning"],"default":"warning","description":"Urgency of alerts generated by this rule (defaults to warning)"},"isEnabled":{"type":"boolean","default":true}},"required":["alertType","name","condition"]},"PublicUpdateDeviceAlertRuleRequestDto":{"type":"object","properties":{"name":{"type":"string","example":"macOS 4-Year Swap"},"description":{"type":"string"},"deviceGroupId":{"type":"number","nullable":true,"example":7,"description":"ID of the device group whose members are evaluated. Pass null to target every device in the organization; omit to leave the scope unchanged."},"condition":{"$ref":"#/components/schemas/DeviceAlertRuleConditionGroupDto"},"urgency":{"type":"string","enum":["critical","warning"]},"isEnabled":{"type":"boolean"}}},"PublicAssetNumberPolicyDto":{"type":"object","properties":{"id":{"type":"number","description":"Policy ID","example":1},"prefixPattern":{"description":"Dynamic prefix pattern defining how asset numbers are generated","example":[{"type":"fixed","metadata":{"value":"ADMINA"}}],"type":"array","items":{"type":"string"}},"suffixDigits":{"type":"number","description":"Number of digits for suffix padding (e.g., 2 → 01, 3 → 001)","example":2},"enabled":{"type":"boolean","description":"Whether auto-generation is enabled for this policy","example":true},"createdAt":{"format":"date-time","type":"string","description":"Created timestamp"},"updatedAt":{"format":"date-time","type":"string","description":"Updated timestamp"}},"required":["id","prefixPattern","suffixDigits","enabled","createdAt","updatedAt"]},"PublicGetAssetNumberPolicyResponseDto":{"type":"object","properties":{"assignmentMethod":{"type":"string","description":"Assignment method for this organization. Undefined when no policy is configured.","enum":["shared","device_type"],"example":"shared"},"policy":{"description":"Asset number policy (single policy per organization). Null when no policy is configured.","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PublicAssetNumberPolicyDto"}]}}},"PrefixPatternMetadataDto":{"type":"object","properties":{"value":{"type":"string","description":"Fixed value (for FIXED type)","example":"ADMINA"},"mapping":{"type":"object","description":"Prefix mapping (for DEVICE_TYPE_PREFIX type). Maps key to prefix string.","example":{"desktop_pc":"DT","laptop_pc":"LT"}},"format":{"type":"string","description":"Date format string (for DATE_FORMAT type)","example":"MMYYYY"},"fieldPath":{"type":"string","description":"Field path (for DEVICE_FIELD type)","example":"deviceType"}}},"PrefixPatternDto":{"type":"object","properties":{"type":{"type":"string","description":"Pattern type","enum":["fixed","device_type_prefix","device_field","date_format"],"example":"fixed"},"metadata":{"description":"Pattern metadata","allOf":[{"$ref":"#/components/schemas/PrefixPatternMetadataDto"}]}},"required":["type","metadata"]},"PublicUpdateAssetNumberPolicyRequestDto":{"type":"object","properties":{"prefixPattern":{"description":"Prefix pattern defining how asset numbers are generated","example":[{"type":"fixed","metadata":{"value":"ADMINA"}}],"type":"array","items":{"$ref":"#/components/schemas/PrefixPatternDto"}},"suffixDigits":{"type":"number","description":"Number of digits for suffix padding (e.g., 2 → 01, 3 → 001, 4 → 0001)","example":2,"minimum":1,"maximum":10}},"required":["prefixPattern"]},"PublicToggleAssetNumberPolicyRequestDto":{"type":"object","properties":{"enabled":{"type":"boolean","description":"Whether auto-generation should be enabled","example":true}},"required":["enabled"]},"PublicSuggestAssetNumberResponseDto":{"type":"object","properties":{"suggestedAssetNumber":{"type":"string","description":"Suggested next asset number","example":"ASSET_123"}},"required":["suggestedAssetNumber"]},"PublicValidateAssetNumberRequestDto":{"type":"object","properties":{"assetNumber":{"type":"string","description":"Asset number to validate","example":"ASSET_123"}},"required":["assetNumber"]},"PublicValidateAssetNumberResponseDto":{"type":"object","properties":{"isAvailable":{"type":"boolean","description":"Whether the asset number is available","example":true},"assetNumber":{"type":"string","description":"The asset number that was validated","example":"ADMINA_123"}},"required":["isAvailable","assetNumber"]},"FieldConfigurationDto":{"type":"object","properties":{"uniqueName":{"type":"string","readOnly":true,"example":"asset_number"},"hidden":{"type":"boolean","readOnly":true,"example":false},"visibleForType":{"type":"array","example":"phone","items":{"$ref":"#/components/schemas/DeviceType"}}},"required":["uniqueName","hidden","visibleForType"]},"PublicDeviceFieldConfigurationResponseDto":{"type":"object","properties":{"presetFields":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/FieldConfigurationDto"}},"mdmFields":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/FieldConfigurationDto"}},"fieldOrder":{"readOnly":true,"example":["preset.asset_number","custom.custom_text_field"],"type":"array","items":{"type":"string"}},"availableFields":{"readOnly":true,"example":["preset.asset_number","custom.custom_text_field"],"type":"array","items":{"type":"string"}},"displayNameField":{"type":"string","readOnly":true,"example":"preset.asset_number"}},"required":["presetFields","mdmFields","fieldOrder","availableFields","displayNameField"]},"UpdateFieldConfigurationDto":{"type":"object","properties":{"uniqueName":{"type":"string","example":"asset_number"},"hidden":{"type":"boolean","example":true},"visibleForType":{"type":"array","example":"phone","items":{"$ref":"#/components/schemas/DeviceType"}}},"required":["uniqueName","hidden","visibleForType"]},"PublicUpdateDeviceFieldConfigurationRequestDto":{"type":"object","properties":{"presetFields":{"type":"array","items":{"$ref":"#/components/schemas/UpdateFieldConfigurationDto"}},"mdmFields":{"type":"array","items":{"$ref":"#/components/schemas/UpdateFieldConfigurationDto"}},"fieldOrder":{"example":["preset.asset_number","custom.custom_text_field"],"type":"array","items":{"type":"string"}},"displayNameField":{"type":"string","nullable":true,"example":"preset.asset_number","description":"Field to use as device display name. Null means use default (asset_number)."}},"required":["presetFields","mdmFields","fieldOrder"]},"PublicDepartmentDto":{"type":"object","properties":{"name":{"type":"string","example":"department_name"}},"required":["name"]},"PublicGetDepartmentsResponseDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicDepartmentDto"}}},"required":["items"]},"PublicLocationDto":{"type":"object","properties":{"name":{"type":"string","example":"location_name"}},"required":["name"]},"PublicGetLocationsResponseDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicLocationDto"}}},"required":["items"]},"PublicCompanyDto":{"type":"object","properties":{"name":{"type":"string","example":"company_name"}},"required":["name"]},"PublicGetCompaniesResponseDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicCompanyDto"}}},"required":["items"]},"LifecycleDtoElement":{"type":"object","properties":{"contractStartAt":{"format":"date","type":"string","example":"2021-01-01","description":"Contract start date of the employee. Date-only strings (e.g. \"2021-01-01\") are interpreted as UTC midnight. To specify a local midnight in a specific timezone, provide a full ISO 8601 datetime with offset (e.g. \"2020-12-31T15:00:00.000Z\" for 2021-01-01 00:00 JST).","nullable":true},"contractEndAt":{"format":"date","type":"string","example":"2021-01-02","description":"Contract end date of the employee. Date-only strings (e.g. \"2021-01-02\") are interpreted as UTC midnight. To specify a local midnight in a specific timezone, provide a full ISO 8601 datetime with offset (e.g. \"2021-01-01T15:00:00.000Z\" for 2021-01-02 00:00 JST).","nullable":true},"suspensionStartAt":{"format":"date","type":"string","example":"2021-01-01","description":"Suspension start date of the employee. Date-only strings (e.g. \"2021-01-01\") are interpreted as UTC midnight. To specify a local midnight in a specific timezone, provide a full ISO 8601 datetime with offset (e.g. \"2020-12-31T15:00:00.000Z\" for 2021-01-01 00:00 JST).","nullable":true},"suspensionEndAt":{"format":"date","type":"string","example":"2021-01-03","description":"Suspension end date of the employee. Date-only strings (e.g. \"2021-01-03\") are interpreted as UTC midnight. To specify a local midnight in a specific timezone, provide a full ISO 8601 datetime with offset (e.g. \"2021-01-02T15:00:00.000Z\" for 2021-01-03 00:00 JST).","nullable":true}}},"PublicUpdateIdentityManagerDto":{"type":"object","properties":{"id":{"type":"string","description":"Manager ID","nullable":true}}},"PublicCreateIdentityDto":{"type":"object","properties":{"employeeStatus":{"example":"active","description":"Extended status of the employee","allOf":[{"$ref":"#/components/schemas/ExtendedEmployeeStatus"}]},"employeeType":{"example":"full_time_employee","description":"Type of the employee","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"managementType":{"example":"managed","description":"Management type of the employee","nullable":true,"allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"displayName":{"type":"string","example":"Display Name","description":"Display name of the employee","nullable":true},"firstName":{"type":"string","example":"First Name","description":"First name of the employee","nullable":true},"lastName":{"type":"string","example":"Last Name","description":"Last name of the employee","nullable":true},"primaryEmail":{"type":"string","example":"primay@email.com","description":"Primary email of the employee","nullable":true},"secondaryEmails":{"example":["secondary+1@email.com","secondary+2@email.com"],"description":"Secondary emails of the employee","nullable":true,"type":"array","items":{"type":"string"}},"companyName":{"type":"string","example":"company name","description":"Company name of the employee","nullable":true},"workLocation":{"type":"string","example":"work location","description":"Work location of the employee","nullable":true},"department":{"description":"Department of the employee","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DepartmentDtoElement"}]},"jobTitle":{"type":"string","example":"CTO","description":"Job title of the employee","nullable":true},"employeeId":{"type":"string","example":"EMP12345","description":"Employee ID of the employee","nullable":true},"lifecycle":{"description":"Lifecycle of the employee","allOf":[{"$ref":"#/components/schemas/LifecycleDtoElement"}]},"note":{"type":"string","example":"this is a note","description":"Notes of the employee","nullable":true},"customFields":{"type":"object","example":{"custom_text_field":"foo","custom_date_field":"2024-01-01","custom_number_field":123,"custom_dropdown_field":"Option Displayed Value A"},"additionalProperties":{"nullable":true},"description":"Custom fields of the employee"},"manager":{"description":"Manager of the employee","allOf":[{"$ref":"#/components/schemas/PublicUpdateIdentityManagerDto"}]}},"required":["employeeStatus","employeeType","firstName","lastName"]},"PeopleSimpleResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"identityId":{"type":"string","nullable":true,"readOnly":true,"example":"I3N5HB4B3G"},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"foo@gmail.com"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"Yamaha Honda"},"avatar":{"type":"string","nullable":true,"readOnly":true,"example":"avatar_url"},"username":{"type":"string","nullable":true,"readOnly":true,"example":"foo"},"status":{"type":"string","readOnly":true,"example":"suspended"},"type":{"readOnly":true,"example":"employee","allOf":[{"$ref":"#/components/schemas/PeopleType"}]}},"required":["id","identityId","primaryEmail","displayName","avatar","username","status","type"]},"ManagerDto":{"type":"object","properties":{"id":{"type":"string","description":"Manager ID","nullable":true},"displayName":{"type":"string","description":"Manager name","nullable":true},"people":{"description":"People of the manager","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PeopleSimpleResponseDto"}]}}},"StructureInfo":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"name"}},"required":["id","name"]},"StructureManagerDto":{"type":"object","properties":{"id":{"type":"string","description":"Identity ID"},"displayName":{"type":"string","description":"Identity display name"},"primaryEmail":{"type":"string","description":"Identity primary email"},"avatar":{"type":"string","description":"Avatar URL"}},"required":["id","displayName","primaryEmail","avatar"]},"IdentityStructuresInfoDto":{"type":"object","properties":{"companies":{"description":"Companies that the identity is a member of","type":"array","items":{"$ref":"#/components/schemas/StructureInfo"}},"departments":{"description":"Departments that the identity is a member of","type":"array","items":{"$ref":"#/components/schemas/StructureInfo"}},"locations":{"description":"Locations that the identity is a member of","type":"array","items":{"$ref":"#/components/schemas/StructureInfo"}},"managers":{"description":"Managers of this identity","type":"array","items":{"$ref":"#/components/schemas/StructureManagerDto"}}},"required":["companies","departments","locations","managers"]},"PublicIdentityDto":{"type":"object","properties":{"id":{"type":"string","description":"ID of the employee"},"organizationId":{"type":"number","description":"ID of the organization"},"peopleId":{"type":"string","description":"ID of the people"},"employeeStatus":{"example":"active","description":"Extended status of the employee","allOf":[{"$ref":"#/components/schemas/ExtendedEmployeeStatus"}]},"employeeType":{"example":"full_time_employee","description":"Type of the employee","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"managementType":{"example":"managed","description":"Management type of the employee","nullable":true,"allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"displayName":{"type":"string","example":"Display Name","description":"Display name of the employee","nullable":true},"firstName":{"type":"string","example":"First Name","description":"First name of the employee","nullable":true},"lastName":{"type":"string","example":"Last Name","description":"Last name of the employee","nullable":true},"avatar":{"type":"string","description":"URL of the avatar of the employee","nullable":true},"primaryEmail":{"type":"string","example":"primay@email.com","description":"Primary email of the employee","nullable":true},"secondaryEmails":{"example":["secondary+1@email.com","secondary+2@email.com"],"description":"Secondary emails of the employee","nullable":true,"type":"array","items":{"type":"string"}},"companyName":{"type":"string","example":"company name","description":"Company name of the employee","nullable":true},"workLocation":{"type":"string","example":"work location","description":"Work location of the employee","nullable":true},"department":{"description":"Department of the employee","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DepartmentDtoElement"}]},"serviceCount":{"type":"number","description":"Number of services the employee has","nullable":true},"deviceCount":{"type":"number","description":"Number of devices the employee has","nullable":true},"costs":{"description":"Costs of the employee","nullable":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityCost"}},"createdAt":{"format":"date-time","type":"string","description":"Record created at","nullable":true},"updatedAt":{"format":"date-time","type":"string","description":"Record updated at","nullable":true},"isManager":{"type":"boolean","description":"Is the employee a manager","nullable":true},"isMock":{"type":"boolean","description":"Indicates if the identity is a mock"},"isEmailEditable":{"type":"boolean","description":"Indicates if the email of the identity is editable","nullable":true},"hasPresetFieldsUnlinked":{"type":"boolean","description":"Indicates if the unlink preset fields is enabled","nullable":true},"jobTitle":{"type":"string","example":"CTO","description":"Job title of the employee","nullable":true},"employeeId":{"type":"string","example":"EMP12345","description":"Employee ID of the employee","nullable":true},"lifecycle":{"description":"Lifecycle of the employee","allOf":[{"$ref":"#/components/schemas/LifecycleDtoElement"}]},"manager":{"description":"Manager of the employee","allOf":[{"$ref":"#/components/schemas/ManagerDto"}]},"note":{"type":"string","example":"this is a note","description":"Notes of the employee","nullable":true},"profileUrl":{"type":"string","example":"https://workspace.url/employee/12345","description":"URL of the profile of the employee","format":"uri","nullable":true},"customFields":{"type":"object","example":{"custom_text_field":"foo","custom_date_field":"2024-01-01","custom_number_field":123,"custom_dropdown_field":"Option Displayed Value A"},"additionalProperties":{"nullable":true},"description":"Custom fields of the employee"},"customFieldsWithMetadata":{"description":"Custom fields with metadata including ID, uniqueName, and label","example":[{"id":1,"attributeCode":"custom_text_field","attributeName":"Text field","value":"foo"},{"id":2,"attributeCode":"custom_date_field","attributeName":"Date field","value":"2024-01-01"},{"id":3,"attributeCode":"custom_number_field","attributeName":"Number field","value":123},{"id":4,"attributeCode":"custom_dropdown_field","attributeName":"Dropdown field","value":"Option Displayed Value A"}],"type":"array","items":{"$ref":"#/components/schemas/CustomFieldWithMetadataDto"}},"structuresInfo":{"description":"Structures that the identity is a member of, categorized by type","allOf":[{"$ref":"#/components/schemas/IdentityStructuresInfoDto"}]}},"required":["employeeStatus","employeeType","firstName","lastName"]},"IdentitySortBy":{"type":"string","enum":["name","type","status","company","department","location","servicesCount","devicesCount","costUsd","costJpy","employeeId","contractStart","contractEnd","suspensionStart","suspensionEnd","createdAt","updatedAt","jobTitle"]},"IdentityExpand":{"type":"string","enum":["devices","accounts","customFieldsMetadata","relatedIdentity"]},"PublicGetIdentitiesResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicIdentityDto"}}},"required":["meta","items"]},"PublicCheckIdentitiesManagementTypeResponseDto":{"type":"object","properties":{"type":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/ManagementType"}]}},"required":["type"]},"ManagementTypeDto":{"type":"object","properties":{"type":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"count":{"type":"number","readOnly":true}},"required":["type","count"]},"HrMasterStatistic":{"type":"object","properties":{"workspaceId":{"type":"number","readOnly":true},"serviceId":{"type":"number","readOnly":true},"serviceUniqueName":{"type":"string","readOnly":true},"lastSynchronizationAt":{"format":"date-time","type":"string","nullable":true,"readOnly":true},"serviceName":{"type":"string","readOnly":true}},"required":["workspaceId","serviceId","serviceUniqueName","lastSynchronizationAt","serviceName"]},"PublicGetIdentitiesStatisticsResponseDto":{"type":"object","properties":{"managementTypes":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/ManagementTypeDto"}},"hrMasters":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/HrMasterStatistic"}},"domains":{"readOnly":true,"type":"array","items":{"type":"string"}}},"required":["managementTypes","hrMasters","domains"]},"ActionType":{"type":"string","enum":["create","update","delete","merge","unmerge"]},"ActionSource":{"type":"string","enum":["ui","api","csv","synchronization","domain_settings"]},"HistoryIdentityDto":{"type":"object","properties":{"id":{"type":"string","description":"Identity ID"},"displayName":{"type":"string","description":"Identity display name","nullable":true},"primaryEmail":{"type":"string","description":"Identity primary email","nullable":true}},"required":["id"]},"ActionMetadataElement":{"type":"object","properties":{"targetIdentity":{"description":"Target identity","allOf":[{"$ref":"#/components/schemas/HistoryIdentityDto"}]},"sourceIdentity":{"description":"Source identity","allOf":[{"$ref":"#/components/schemas/HistoryIdentityDto"}]},"iggreRequestId":{"type":"string","description":"Iggre Request ID, only present for aggregation actions"}},"required":["targetIdentity","sourceIdentity","iggreRequestId"]},"IdentityHistoryByChangeDto":{"type":"object","properties":{"id":{"type":"string"},"field":{"type":"string"},"previous":{"type":"string"},"current":{"type":"string"},"type":{"allOf":[{"$ref":"#/components/schemas/ActionType"}]},"source":{"allOf":[{"$ref":"#/components/schemas/ActionSource"}]},"actor":{"type":"string"},"metadata":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ActionMetadataElement"}]},"createdAt":{"type":"string"}}},"PublicIdentityHistoryByChangeResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityHistoryByChangeDto"}}},"required":["meta","items"]},"BulkIdentityDto":{"type":"object","properties":{"id":{"type":"string","description":"ID of the employee"},"organizationId":{"type":"number","description":"ID of the organization"},"peopleId":{"type":"string","description":"ID of the people"},"employeeStatus":{"example":"active","description":"Extended status of the employee","allOf":[{"$ref":"#/components/schemas/ExtendedEmployeeStatus"}]},"employeeType":{"example":"full_time_employee","description":"Type of the employee","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"managementType":{"example":"managed","description":"Management type of the employee","nullable":true,"allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"displayName":{"type":"string","example":"Display Name","description":"Display name of the employee","nullable":true},"firstName":{"type":"string","example":"First Name","description":"First name of the employee","nullable":true},"lastName":{"type":"string","example":"Last Name","description":"Last name of the employee","nullable":true},"avatar":{"type":"string","description":"URL of the avatar of the employee","nullable":true},"primaryEmail":{"type":"string","example":"primay@email.com","description":"Primary email of the employee","nullable":true},"secondaryEmails":{"example":["secondary+1@email.com","secondary+2@email.com"],"description":"Secondary emails of the employee","nullable":true,"type":"array","items":{"type":"string"}},"companyName":{"type":"string","example":"company name","description":"Company name of the employee","nullable":true},"workLocation":{"type":"string","example":"work location","description":"Work location of the employee","nullable":true},"department":{"description":"Department of the employee","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DepartmentDtoElement"}]},"serviceCount":{"type":"number","description":"Number of services the employee has","nullable":true},"deviceCount":{"type":"number","description":"Number of devices the employee has","nullable":true},"costs":{"description":"Costs of the employee","nullable":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityCost"}},"createdAt":{"format":"date-time","type":"string","description":"Record created at","nullable":true},"updatedAt":{"format":"date-time","type":"string","description":"Record updated at","nullable":true},"isManager":{"type":"boolean","description":"Is the employee a manager","nullable":true},"isMock":{"type":"boolean","description":"Indicates if the identity is a mock"},"isEmailEditable":{"type":"boolean","description":"Indicates if the email of the identity is editable","nullable":true},"hasPresetFieldsUnlinked":{"type":"boolean","description":"Indicates if the unlink preset fields is enabled","nullable":true},"jobTitle":{"type":"string","example":"CTO","description":"Job title of the employee","nullable":true},"employeeId":{"type":"string","example":"EMP12345","description":"Employee ID of the employee","nullable":true},"lifecycle":{"description":"Lifecycle of the employee","allOf":[{"$ref":"#/components/schemas/LifecycleDtoElement"}]},"manager":{"description":"Manager of the employee","allOf":[{"$ref":"#/components/schemas/ManagerDto"}]},"note":{"type":"string","example":"this is a note","description":"Notes of the employee","nullable":true},"profileUrl":{"type":"string","example":"https://workspace.url/employee/12345","description":"URL of the profile of the employee","format":"uri","nullable":true},"customFields":{"type":"object","example":{"custom_text_field":"foo","custom_date_field":"2024-01-01","custom_number_field":123,"custom_dropdown_field":"Option Displayed Value A"},"additionalProperties":{"nullable":true},"description":"Custom fields of the employee"},"customFieldsWithMetadata":{"description":"Custom fields with metadata including ID, uniqueName, and label","example":[{"id":1,"attributeCode":"custom_text_field","attributeName":"Text field","value":"foo"},{"id":2,"attributeCode":"custom_date_field","attributeName":"Date field","value":"2024-01-01"},{"id":3,"attributeCode":"custom_number_field","attributeName":"Number field","value":123},{"id":4,"attributeCode":"custom_dropdown_field","attributeName":"Dropdown field","value":"Option Displayed Value A"}],"type":"array","items":{"$ref":"#/components/schemas/CustomFieldWithMetadataDto"}},"structuresInfo":{"description":"Structures that the identity is a member of, categorized by type","allOf":[{"$ref":"#/components/schemas/IdentityStructuresInfoDto"}]}}},"BulkUpdateIdentitiesDto":{"type":"object","properties":{"identityIds":{"description":"Array of identity IDs to update","example":["identity-1","identity-2"],"type":"array","items":{"type":"string"}},"identityUpdates":{"description":"Identity updates to apply to all selected identities. All fields are optional.","allOf":[{"$ref":"#/components/schemas/BulkIdentityDto"}]}},"required":["identityIds","identityUpdates"]},"MergeIdentityDto":{"type":"object","properties":{"fromIdentityId":{"type":"string","example":"identity-1"},"toIdentityId":{"type":"string","example":"identity-2"}},"required":["fromIdentityId","toIdentityId"]},"MergeIdentityRequestDto":{"type":"object","properties":{"merges":{"type":"array","items":{"$ref":"#/components/schemas/MergePeopleDto"}},"identityMerges":{"type":"array","items":{"$ref":"#/components/schemas/MergeIdentityDto"}}}},"UnmergeIdentityRequestDto":{"type":"object","properties":{"peopleIds":{"example":[1,2,3],"description":"List of people IDs to unmerge.","type":"array","items":{"type":"number"}},"identityIds":{"example":["identity-1","identity-2","identity-3"],"description":"List of identity IDs to unmerge.","type":"array","items":{"type":"string"}}}},"PublicUpdateIdentityDto":{"type":"object","properties":{"employeeStatus":{"example":"active","description":"Extended status of the employee","allOf":[{"$ref":"#/components/schemas/ExtendedEmployeeStatus"}]},"employeeType":{"example":"full_time_employee","description":"Type of the employee","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"managementType":{"example":"managed","description":"Management type of the employee","nullable":true,"allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"displayName":{"type":"string","example":"Display Name","description":"Display name of the employee","nullable":true},"firstName":{"type":"string","example":"First Name","description":"First name of the employee","nullable":true},"lastName":{"type":"string","example":"Last Name","description":"Last name of the employee","nullable":true},"primaryEmail":{"type":"string","example":"primay@email.com","description":"Primary email of the employee","nullable":true},"secondaryEmails":{"example":["secondary+1@email.com","secondary+2@email.com"],"description":"Secondary emails of the employee","nullable":true,"type":"array","items":{"type":"string"}},"companyName":{"type":"string","example":"company name","description":"Company name of the employee","nullable":true},"workLocation":{"type":"string","example":"work location","description":"Work location of the employee","nullable":true},"department":{"description":"Department of the employee","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DepartmentDtoElement"}]},"jobTitle":{"type":"string","example":"CTO","description":"Job title of the employee","nullable":true},"employeeId":{"type":"string","example":"EMP12345","description":"Employee ID of the employee","nullable":true},"lifecycle":{"description":"Lifecycle of the employee","allOf":[{"$ref":"#/components/schemas/LifecycleDtoElement"}]},"note":{"type":"string","example":"this is a note","description":"Notes of the employee","nullable":true},"customFields":{"type":"object","example":{"custom_text_field":"foo","custom_date_field":"2024-01-01","custom_number_field":123,"custom_dropdown_field":"Option Displayed Value A"},"additionalProperties":{"nullable":true},"description":"Custom fields of the employee"},"manager":{"description":"Manager of the employee","allOf":[{"$ref":"#/components/schemas/PublicUpdateIdentityManagerDto"}]}},"required":["employeeStatus","employeeType","firstName","lastName"]},"GetSingleIdentityExpand":{"type":"string","enum":["customFieldsMetadata"]},"CreateIdentityFieldDropdownItemDto":{"type":"object","properties":{"id":{"type":"string","example":"option_1"},"value":{"type":"string","example":"Option 1"},"group":{"type":"string"}},"required":["id","value"]},"CreateIdentityFieldDropdownConfigurationDto":{"type":"object","properties":{"values":{"description":"Dropdown items with id (stable identifier) and value (display name)","type":"array","items":{"$ref":"#/components/schemas/CreateIdentityFieldDropdownItemDto"}},"allowMultiple":{"type":"boolean","default":false,"description":"When true, the dropdown accepts multiple selected options (stored as an array of option ids)."}},"required":["values"]},"IdentityFieldKind":{"type":"string","enum":["text","textarea","date","number","dropdown","email","link"]},"ServiceSourceDto":{"type":"object","properties":{"workspaceId":{"type":"number","readOnly":true,"example":1},"serviceFieldId":{"type":"string","readOnly":true,"example":"smarthr_city"}},"required":["workspaceId","serviceFieldId"]},"ServiceDetailsDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":33},"name":{"type":"string","readOnly":true,"example":"SmartHR"},"uniqueName":{"type":"string","readOnly":true,"example":"smarthr"},"serviceTopUrl":{"type":"string","nullable":true,"readOnly":true,"example":"https://smarthr.jp/"}},"required":["id","name","uniqueName","serviceTopUrl"]},"PublicGetIdentityCustomFieldResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"kind":{"example":"dropdown","allOf":[{"$ref":"#/components/schemas/IdentityFieldKind"}]},"serviceSource":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ServiceSourceDto"}]},"serviceDetails":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ServiceDetailsDto"}]},"configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/IdentityFieldDropdownConfigurationDto"}],"nullable":true},"required":{"type":"boolean","description":"This field will be always `false` in R1","readOnly":true,"example":true},"attributeCode":{"type":"string","readOnly":true,"example":"custom_text_field"},"attributeName":{"type":"string","readOnly":true,"example":"Foo bar"}},"required":["id","kind","serviceSource","serviceDetails","configuration","required","attributeCode","attributeName"]},"SuggestedCustomFieldWorkspaceDto":{"type":"object","properties":{"workspaceId":{"type":"number","readOnly":true},"workspaceName":{"type":"string","readOnly":true},"serviceId":{"type":"number","readOnly":true},"serviceUniqueName":{"type":"string","readOnly":true},"serviceName":{"type":"string","readOnly":true}},"required":["workspaceId","workspaceName","serviceId","serviceUniqueName","serviceName"]},"PublicGetIdentityCustomFieldsListResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicGetIdentityCustomFieldResponseDto"}},"availableSourceWorkspaces":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/SuggestedCustomFieldWorkspaceDto"}}},"required":["items","availableSourceWorkspaces"]},"CreateServiceSourceMetadataDto":{"type":"object","properties":{"serviceFieldId":{"type":"string","example":"service_field_id"},"workspaceId":{"type":"number","example":1}},"required":["serviceFieldId","workspaceId"]},"PublicCreateIdentityCustomFieldRequestDto":{"type":"object","properties":{"kind":{"example":"dropdown","allOf":[{"$ref":"#/components/schemas/IdentityFieldKind"}]},"configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CreateIdentityFieldDropdownConfigurationDto"}],"nullable":true},"serviceSource":{"$ref":"#/components/schemas/CreateServiceSourceMetadataDto"},"attributeName":{"type":"string","example":"foo bar"},"attributeCode":{"type":"string","example":"employee_id","description":"Unique identifier for the custom field. Must contain only lowercase letters, numbers, and underscores. If not provided, will be auto-generated."}},"required":["kind","configuration","attributeName"]},"IdentityMultiLanguageNameDto":{"type":"object","properties":{"ja":{"type":"string","readOnly":true,"example":"こんにちは"},"en":{"type":"string","readOnly":true,"example":"Hello"}},"required":["ja","en"]},"IdentityFieldDropdownItemDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"option_1"},"value":{"type":"string","readOnly":true,"example":"Option 1"},"group":{"type":"string"},"label":{"$ref":"#/components/schemas/IdentityMultiLanguageNameDto"}},"required":["id","value"]},"IdentityFieldDropdownGroupDto":{"type":"object","properties":{"label":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/IdentityMultiLanguageNameDto"}]},"value":{"type":"string","readOnly":true,"example":"phone"}},"required":["value"]},"IdentityFieldDropdownConfigurationDto":{"type":"object","properties":{"values":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityFieldDropdownItemDto"}},"groups":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityFieldDropdownGroupDto"}},"allowMultiple":{"type":"boolean"}},"required":["values","groups"]},"GetIdentityCustomFieldResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"uniqueName":{"type":"string","readOnly":true,"example":"custom_text_field"},"name":{"type":"string","readOnly":true,"example":"Foo bar"},"kind":{"example":"dropdown","allOf":[{"$ref":"#/components/schemas/IdentityFieldKind"}]},"serviceSource":{"nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ServiceSourceDto"}]},"serviceDetails":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ServiceDetailsDto"}]},"configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/IdentityFieldDropdownConfigurationDto"}],"nullable":true},"required":{"type":"boolean","description":"This field will be always `false` in R1","readOnly":true,"example":true}},"required":["id","uniqueName","name","kind","serviceSource","serviceDetails","configuration","required"]},"PublicUpdateIdentityCustomFieldRequestDto":{"type":"object","properties":{"attributeName":{"type":"string","example":"foo bar"},"attributeCode":{"type":"string","example":"employee_id","description":"Unique identifier for the custom field. Must contain only lowercase letters, numbers, and underscores. Cannot be changed to a value that already exists in the organization."}}},"PublicGetIggreRequestWithRequestIdDto":{"type":"object","properties":{"requestId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},"required":["requestId"]},"AggreRequestStatus":{"type":"string","enum":["pending","processing","finished","finishedWithErrors","failed"]},"PublicGetIggreRequestWithWorkflowRunIdAndStatusDto":{"type":"object","properties":{"limit":{"type":"number","example":50,"maximum":200,"description":"Limit the number of results returned. Maximum 200."},"cursor":{"type":"string","description":"Cursor to paginate through results."},"workflowRunId":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"},"status":{"example":"pending","allOf":[{"$ref":"#/components/schemas/AggreRequestStatus"}]}},"required":["workflowRunId"]},"AggreRequestSuperType":{"type":"string","enum":["fetch","provision","deprovision","file-aggregation","remove"]},"PublicGetIggreRequestWithPeopleIdAndSuperTypeDto":{"type":"object","properties":{"limit":{"type":"number","example":50,"maximum":200,"description":"Limit the number of results returned. Maximum 200."},"cursor":{"type":"string","description":"Cursor to paginate through results."},"peopleId":{"type":"number"},"superType":{"example":"deprovision","allOf":[{"$ref":"#/components/schemas/AggreRequestSuperType"}]}},"required":["peopleId","superType"]},"PublicIggreRequestDto":{"type":"object","properties":{"requestId":{"type":"string","readOnly":true,"format":"uuid","example":"0da0bb7e-fe60-4b07-8bd1-f5c583ac84f6"},"status":{"readOnly":true,"example":"pending","allOf":[{"$ref":"#/components/schemas/AggreRequestStatus"}]},"rawMessage":{"type":"string","nullable":true,"readOnly":true,"example":"Email a@b.com belongs to Account ax-ax-ax-ax"},"message":{"type":"string","nullable":true,"readOnly":true,"example":"An account with this email already exists"},"data":{"type":"object","additionalProperties":true}},"required":["requestId","status","rawMessage","message","data"]},"PublicGetIggreRequestsResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicIggreRequestDto"}},"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]}},"required":["items","meta"]},"PublicDeleteAccountRequestDto":{"type":"object","properties":{"type":{"type":"string","enum":["delete","deactivate"]},"id":{"type":"string"},"workflowRunId":{"type":"string","format":"uuid"},"dataTransfer":{"type":"object"}},"required":["type","id"]},"PublicDeleteAccountBulkRequestDto":{"type":"object","properties":{"account":{"$ref":"#/components/schemas/PublicDeleteAccountRequestDto"}},"required":["account"]},"AuditLogFilterableActorType":{"type":"string","enum":["user","system","api"]},"AuditLogCategory":{"type":"string","enum":["Alerts","Authentication","Automations","Contracts","CustomServices","Devices","Directory","EventLogs","Files","Notifications","Organizations","Services","Settings","Spends","Structures","Users","Workflows","WorkflowServiceConfigurations","Surveys"]},"PublicGetAuditLogsCountResponseDto":{"type":"object","properties":{"count":{"type":"number","description":"The total number of audit logs","example":100}},"required":["count"]},"EmailAttachment":{"type":"object","properties":{"fileName":{"type":"string","readOnly":true,"example":"body.pdf"},"fileType":{"type":"string","readOnly":true,"example":"application/pdf"},"s3Path":{"type":"string","readOnly":true,"example":"69576014/2024-04-19/d9j1sifi5ggghc2rkjruqpnoqorobvfr2hqedm01/body.pdf"}},"required":["fileName","fileType","s3Path"]},"PublicBillEmailDto":{"type":"object","properties":{"emailId":{"type":"string","readOnly":true,"example":"xxxxx"},"receivedAt":{"type":"string","readOnly":true,"example":"2022-08-31T07:11:20.000Z"},"toAddress":{"type":"string","readOnly":true,"example":"customer-email@gmail.com"},"senderAddress":{"type":"string","readOnly":true,"example":"noreply@github.com"},"fromAddress":{"type":"string","readOnly":true,"example":"noreply@github.com"},"fromName":{"type":"string","readOnly":true,"example":"GitHub"},"forwardedToAddress":{"type":"string","readOnly":true,"example":"mfi-123@forward.i.moneyforward.com"},"subject":{"type":"string","readOnly":true,"example":"Your payment from GitHub"},"serviceName":{"type":"string","readOnly":true,"example":"GitHub"},"serviceUniqueName":{"type":"string","readOnly":true,"example":"github"},"attachments":{"readOnly":true,"example":[{"fileName":"receipt.pdf","fileType":"application/pdf","s3Path":"69576014/2024-04-19/d9j1sifi5ggghc2rkjruqpnoqorobvfr2hqedm01/receipt.pdf"}],"type":"array","items":{"$ref":"#/components/schemas/EmailAttachment"}}},"required":["emailId","receivedAt","toAddress","senderAddress","fromAddress","fromName","forwardedToAddress","subject","serviceName","serviceUniqueName","attachments"]},"PublicGetBillEmailsResponseDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicBillEmailDto"}},"meta":{"$ref":"#/components/schemas/CursorPaginationMeta"}},"required":["items","meta"]},"PublicGetAttachmentDownloadUrlResponseDto":{"type":"object","properties":{"url":{"type":"string","readOnly":true,"example":"https://s3.amazonaws.com/bucket/path/to/file?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Expires=60&..."},"expiresIn":{"type":"number","readOnly":true,"example":60}},"required":["url","expiresIn"]},"PublicUpdateDeviceMetaRequestDto":{"type":"object","properties":{"status":{"example":"active","description":"The status of the device. **If `IN_STOCK` status is set, the device will be unassigned and the assignment start/end date will be cleared. If `DECOMMISSIONED` status is set, the assignment dates will be cleared but the last assigned user will be preserved for audit purposes.**","allOf":[{"$ref":"#/components/schemas/DeviceStatus"}]},"peopleId":{"type":"number","example":123,"nullable":true,"description":"The people ID to assign the device to. If `null`, the device will be unassigned. **Device that has `IN_STOCK` status can't be assigned to a person. For `DECOMMISSIONED` devices, the last assigned user is preserved for audit purposes.**"},"assignmentStartDate":{"type":"string","format":"date","example":"2021-01-01","nullable":true,"description":"The date the device is assigned to the person. **Device that has `IN_STOCK` or `DECOMMISSIONED` can't have assignment start date**"},"assignmentEndDate":{"type":"string","format":"date","example":"2021-01-02","nullable":true,"description":"The date the device assignment ends. **Device that has `IN_STOCK` or `DECOMMISSIONED` can't have assignment end date**"},"location1":{"type":"string","example":"location1","description":"Primary location information for the device"},"location2":{"type":"string","example":"location2","description":"Secondary location information for the device"},"comment":{"type":"string","example":"Assigned to new employee","nullable":true,"description":"Comment or reason for the assignment/status change"}}},"PublicCreateDeviceHistoryChangesDto":{"type":"object","properties":{"status":{"example":"active","allOf":[{"$ref":"#/components/schemas/DeviceStatus"}]},"peopleId":{"type":"number","example":1,"nullable":true,"description":"The people ID of the person the device is assigned to. **peopleId must not be present if status is in_stock or decommissioned**"},"location1":{"type":"string","example":"location1","nullable":true},"location2":{"type":"string","example":"location2","nullable":true},"assignmentStartDate":{"type":"string","format":"date","example":"2021-01-01","description":"The assignment start date of the device. **assignmentStartDate must not be present if status is in_stock or decommissioned**","nullable":true},"assignmentEndDate":{"type":"string","format":"date","example":"2021-01-02","nullable":true,"description":"The assignment end date of the device. **assignmentEndDate must not be present if status is in_stock or decommissioned. Assignment end date must be after assignment start date**"}},"required":["status"]},"PublicCreateDeviceHistoryEntryDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","example":"2021-01-01T00:00:00.000Z"},"changes":{"$ref":"#/components/schemas/PublicCreateDeviceHistoryChangesDto"},"comment":{"type":"string","example":"Status change reason","nullable":true}},"required":["createdAt","changes"]},"PublicUpdateDeviceHistoryChangesDto":{"type":"object","properties":{"peopleId":{"type":"number","example":1,"nullable":true,"description":"The people ID of the person the device is assigned to. **peopleId must not be present if status is in_stock or decommissioned**"},"status":{"example":"active","allOf":[{"$ref":"#/components/schemas/DeviceStatus"}]},"location1":{"type":"string","example":"location1","nullable":true},"location2":{"type":"string","example":"location2","nullable":true},"assignmentStartDate":{"type":"string","format":"date","example":"2021-01-01","description":"The assignment start date of the device. **assignmentStartDate must not be present if status is in_stock or decommissioned**","nullable":true},"assignmentEndDate":{"type":"string","format":"date","example":"2021-01-02","nullable":true,"description":"The assignment end date of the device. **assignmentEndDate must not be present if status is in_stock or decommissioned. Assignment end date must be after assignment start date**"}}},"PublicUpdateDeviceHistoryEntryDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","example":"2021-01-01T00:00:00.000Z","nullable":false},"changes":{"$ref":"#/components/schemas/PublicUpdateDeviceHistoryChangesDto"},"comment":{"type":"string","example":"Status change reason","nullable":true}},"required":["changes"]},"PublicDeleteDeviceHistoriesBulkRequestDto":{"type":"object","properties":{"deviceHistoryIds":{"example":[1,2,3],"description":"Array of device history entry IDs to delete. Maximum 50 IDs per request.","type":"array","items":{"type":"number"}}},"required":["deviceHistoryIds"]},"PublicDeleteDeviceHistoryEntriesResponseDto":{"type":"object","properties":{"deletedDeviceHistoryEntries":{"description":"List of deleted device history entries","type":"array","items":{"$ref":"#/components/schemas/PublicGetDeviceHistoryResponseDto"}}},"required":["deletedDeviceHistoryEntries"]},"PublicDeviceHistoryDto":{"type":"object","properties":{"id":{"type":"number","example":123},"deviceId":{"type":"number","example":321},"createdAt":{"type":"string","format":"date-time","example":"2017-07-21T17:32:28Z"},"changes":{"$ref":"#/components/schemas/DeviceHistoryChangesDto"},"comment":{"type":"string","example":"Assigned to new employee","nullable":true}},"required":["id","deviceId","createdAt","changes","comment"]},"PublicGetDeviceHistoriesListResponseDto":{"type":"object","properties":{"items":{"description":"List of device history entries","type":"array","items":{"$ref":"#/components/schemas/PublicDeviceHistoryDto"}}},"required":["items"]},"PublicGetEventLogsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]}},"required":["meta"]},"PublicEventLogSummaryByServiceDto":{"type":"object","properties":{"serviceName":{"type":"string","example":"マネーフォワード クラウド会計"},"eventCount":{"type":"number","example":100},"domainUrl":{"type":"string","example":"https://example.com","description":"The domain URL of the event log. Only available when skipCache is true."},"numberOfUsers":{"type":"number","example":5}},"required":["serviceName","eventCount","domainUrl","numberOfUsers"]},"OnlyNextCursorMeta":{"type":"object","properties":{"nextCursor":{"type":"string","nullable":true,"readOnly":true,"example":"F3UdkoSbpBNrjwP93AX2HQ"}},"required":["nextCursor"]},"PublicGetEventLogSummaryByServiceResponseDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicEventLogSummaryByServiceDto"}},"meta":{"$ref":"#/components/schemas/OnlyNextCursorMeta"}},"required":["items","meta"]},"PublicEventLogSummaryByServiceBase":{"type":"object","properties":{"serviceName":{"type":"string","example":"マネーフォワード クラウド会計"},"eventCount":{"type":"number","example":100},"domainUrl":{"type":"string","example":"https://example.com","description":"The domain URL of the event log. Only available when skipCache is true."}},"required":["serviceName","eventCount","domainUrl"]},"PublicEventLogSummaryByUserDto":{"type":"object","properties":{"userEmail":{"type":"string","example":"test@example.com"},"summariesByService":{"type":"array","items":{"$ref":"#/components/schemas/PublicEventLogSummaryByServiceBase"}}},"required":["userEmail","summariesByService"]},"PublicGetEventLogSummaryByUserResponseDto":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/PublicEventLogSummaryByUserDto"}},"meta":{"$ref":"#/components/schemas/OnlyNextCursorMeta"}},"required":["items","meta"]},"PresetFieldConfigurationDto":{"type":"object","properties":{"uniqueName":{"type":"string","readOnly":true,"example":"asset_number"},"hidden":{"type":"boolean","readOnly":true,"example":false}},"required":["uniqueName","hidden"]},"IdentitySourceOfTruthSource":{"type":"string","enum":["workspace","admina"]},"SourceOfTruthDto":{"type":"object","properties":{"workspaceId":{"type":"number","readOnly":true,"example":1},"source":{"readOnly":true,"example":"workspace","allOf":[{"$ref":"#/components/schemas/IdentitySourceOfTruthSource"}]}},"required":["workspaceId","source"]},"FieldMetadataDto":{"type":"object","properties":{"fieldName":{"type":"string","readOnly":true,"example":"preset.display_name"},"sourceOfTruth":{"$ref":"#/components/schemas/SourceOfTruthDto"},"serviceSource":{"$ref":"#/components/schemas/ServiceSourceDto"},"serviceDetails":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ServiceDetailsDto"}]}},"required":["fieldName","serviceDetails"]},"FieldType":{"type":"string","enum":["preset","custom"]},"FieldDto":{"type":"object","properties":{"fieldName":{"type":"string","readOnly":true,"example":"preset.display_name"},"sourceOfTruth":{"$ref":"#/components/schemas/SourceOfTruthDto"},"serviceSource":{"$ref":"#/components/schemas/ServiceSourceDto"},"serviceDetails":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/ServiceDetailsDto"}]},"uniqueName":{"type":"string","readOnly":true,"example":"asset_number"},"type":{"readOnly":true,"example":"preset","allOf":[{"$ref":"#/components/schemas/FieldType"}]},"hidden":{"type":"boolean","readOnly":true,"example":false},"editable":{"type":"boolean","readOnly":true,"example":false}},"required":["fieldName","serviceDetails","uniqueName","type","hidden","editable"]},"PublicGetIdentityFieldConfigurationResponseDto":{"type":"object","properties":{"presetFields":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PresetFieldConfigurationDto"}},"fieldOrder":{"readOnly":true,"example":["preset.asset_number","custom.custom_text_field"],"type":"array","items":{"type":"string"}},"availableFields":{"readOnly":true,"example":["preset.asset_number","custom.custom_text_field"],"type":"array","items":{"type":"string"}},"fieldsMetadata":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/FieldMetadataDto"}},"fields":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/FieldDto"}},"restrictedFields":{"readOnly":true,"example":["preset.asset_number","custom.custom_text_field"],"type":"array","items":{"type":"string"}}},"required":["presetFields","fieldOrder","availableFields","fieldsMetadata","fields","restrictedFields"]},"UpdatePresetFieldConfigurationDto":{"type":"object","properties":{"uniqueName":{"type":"string","example":"asset_number"},"hidden":{"type":"boolean","example":true}},"required":["uniqueName","hidden"]},"UpdateSourceOfTruthMetadataDto":{"type":"object","properties":{"source":{"example":"admina","allOf":[{"$ref":"#/components/schemas/IdentitySourceOfTruthSource"}]},"workspaceId":{"type":"number","example":3}},"required":["source"]},"UpdateFieldMetadataDto":{"type":"object","properties":{"fieldName":{"type":"string","example":"preset.display_name"},"sourceOfTruth":{"$ref":"#/components/schemas/UpdateSourceOfTruthMetadataDto"}},"required":["fieldName","sourceOfTruth"]},"PublicUpdateIdentityFieldConfigurationRequestDto":{"type":"object","properties":{"presetFields":{"type":"array","items":{"$ref":"#/components/schemas/UpdatePresetFieldConfigurationDto"}},"fieldOrder":{"example":["preset.asset_number","custom.custom_text_field"],"type":"array","items":{"type":"string"}},"fieldsMetadata":{"type":"array","items":{"$ref":"#/components/schemas/UpdateFieldMetadataDto"}}},"required":["presetFields","fieldOrder"]},"PublicSingleIdentityPresetFieldConfigurationDto":{"type":"object","properties":{"uniqueName":{"type":"string","readOnly":true,"example":"asset_number"},"hidden":{"type":"boolean","readOnly":true,"example":false},"editable":{"type":"boolean","readOnly":true,"example":false},"sourceOfTruth":{"readOnly":true,"example":"asset_number","allOf":[{"$ref":"#/components/schemas/SourceOfTruthDto"}]}},"required":["uniqueName","hidden","editable","sourceOfTruth"]},"PublicGetSingleIdentityFieldConfigurationResponseDto":{"type":"object","properties":{"presetFields":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicSingleIdentityPresetFieldConfigurationDto"}}},"required":["presetFields"]},"PublicContractResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Monthly Contract"},"serviceId":{"type":"number","readOnly":true,"example":123},"serviceName":{"type":"string","readOnly":true,"example":"GitHub"},"workspaceId":{"type":"number","nullable":true,"readOnly":true,"example":456},"workspaceName":{"type":"string","nullable":true,"readOnly":true,"example":"Production Workspace"},"dueDate":{"format":"date-time","type":"string","readOnly":true,"example":"2023-01-01T00:00:00.000Z"},"nextDueDate":{"format":"date-time","type":"string","nullable":true,"readOnly":true,"example":"2023-02-01T00:00:00.000Z"},"note":{"type":"string","nullable":true,"readOnly":true,"example":"Contract notes"}},"required":["id","name","serviceId","serviceName","workspaceId","workspaceName","dueDate","nextDueDate","note"]},"PublicGetContractsResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicContractResponseDto"}},"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]}},"required":["items","meta"]},"ContractRepeatUnit":{"type":"string","enum":["months","years"]},"PublicCreateContractRequestDto":{"type":"object","properties":{"name":{"type":"string","example":"Monthly Contract"},"workspaceId":{"type":"number","example":12345678,"nullable":true},"dueDate":{"type":"string","example":"2023-01-01T00:00:00.000Z"},"repeatUnit":{"example":"months","allOf":[{"$ref":"#/components/schemas/ContractRepeatUnit"}]},"repeatValue":{"type":"number","example":1},"peopleIds":{"example":[1,2,3],"type":"array","items":{"type":"string"}},"note":{"type":"string","example":"Contract notes"}},"required":["name","dueDate","repeatUnit","repeatValue"]},"PublicUpdateContractRequestDto":{"type":"object","properties":{"name":{"type":"string","example":"Updated Monthly Contract"},"workspaceId":{"type":"number","example":12345678,"nullable":true},"dueDate":{"type":"string","example":"2023-02-01T00:00:00.000Z"},"repeatUnit":{"example":"months","allOf":[{"$ref":"#/components/schemas/ContractRepeatUnit"}]},"repeatValue":{"type":"number","example":2},"peopleIds":{"example":[1,2,3],"type":"array","items":{"type":"string"}},"note":{"type":"string","example":"Updated contract notes"}}},"PublicSlackChannelResponseDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"C01ME8GUXXX"},"name":{"type":"string","readOnly":true,"example":"#general"}},"required":["id","name"]},"PublicSlackReminderConfigResponseDto":{"type":"object","properties":{"slackWorkspaceName":{"type":"string","readOnly":true,"example":"Money Forward"},"slackChannels":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicSlackChannelResponseDto"}}},"required":["slackWorkspaceName","slackChannels"]},"PublicEmailReminderConfigResponseDto":{"type":"object","properties":{"emails":{"readOnly":true,"example":["hoge@example.com","dummyaccount@example.com"],"type":"array","items":{"type":"string"}}},"required":["emails"]},"ReminderConfigType":{"type":"string","enum":["SLACK_REMINDER","EMAIL_REMINDER"]},"RemindBeforeUnit":{"type":"string","enum":["days","weeks","months"]},"PublicRemindBeforeConfigResponseDto":{"type":"object","properties":{"unit":{"readOnly":true,"example":"days","allOf":[{"$ref":"#/components/schemas/RemindBeforeUnit"}]},"value":{"type":"number","readOnly":true,"example":3}},"required":["unit","value"]},"PublicContractReminderResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"reminderType":{"readOnly":true,"example":"SLACK_REMINDER","allOf":[{"$ref":"#/components/schemas/ReminderConfigType"}]},"reminderConfigs":{"oneOf":[{"$ref":"#/components/schemas/PublicSlackReminderConfigResponseDto"},{"$ref":"#/components/schemas/PublicEmailReminderConfigResponseDto"}]},"contractId":{"type":"number","readOnly":true,"example":1},"remindBeforeConfig":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/PublicRemindBeforeConfigResponseDto"}]}},"required":["id","reminderType","reminderConfigs","contractId","remindBeforeConfig"]},"EmailReminderConfigDto":{"type":"object","properties":{"emails":{"example":["hoge@i.moneyforward.com","dummyaccount@i.moneyforward.com"],"type":"array","items":{"type":"string"}}},"required":["emails"]},"RemindBeforeConfigDto":{"type":"object","properties":{"unit":{"example":"days","allOf":[{"$ref":"#/components/schemas/RemindBeforeUnit"}]},"value":{"type":"number","example":3}},"required":["unit","value"]},"PublicCreateContractReminderRequestDto":{"type":"object","properties":{"reminderType":{"example":"EMAIL_REMINDER","allOf":[{"$ref":"#/components/schemas/ReminderConfigType"}]},"reminderConfigs":{"$ref":"#/components/schemas/EmailReminderConfigDto"},"remindBeforeConfig":{"$ref":"#/components/schemas/RemindBeforeConfigDto"}},"required":["reminderType","reminderConfigs","remindBeforeConfig"]},"PublicUpdateContractReminderRequestDto":{"type":"object","properties":{"reminderType":{"example":"EMAIL_REMINDER","allOf":[{"$ref":"#/components/schemas/ReminderConfigType"}]},"reminderConfigs":{"$ref":"#/components/schemas/EmailReminderConfigDto"},"remindBeforeConfig":{"$ref":"#/components/schemas/RemindBeforeConfigDto"}},"required":["reminderType","reminderConfigs","remindBeforeConfig"]},"CostAllocationStrategy":{"type":"string","enum":["none","top_down","bottom_up"]},"TotalAmountSource":{"type":"string","enum":["cost_master","manual_input","dynamic_calculation"]},"PaymentCycleUnit":{"type":"string","enum":["day","week","month","year"]},"BillingMethod":{"type":"string","enum":["prepaid","postpaid"]},"CostAllocationItemType":{"type":"string","enum":["total","account","license","exceptional_amount","workspace","remaining_amount","others"]},"AllocationType":{"type":"string","enum":["contract_owners","people","account","nobody","none"]},"PublicCostAllocationItemResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"contractCostAllocationId":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","nullable":true,"readOnly":true,"example":"Copilot"},"price":{"type":"number","nullable":true,"readOnly":true,"example":1000},"workspaceId":{"type":"number","nullable":true,"readOnly":true,"example":1},"type":{"readOnly":true,"example":"account","allOf":[{"$ref":"#/components/schemas/CostAllocationItemType"}]},"allocationType":{"readOnly":true,"example":"people","allOf":[{"$ref":"#/components/schemas/AllocationType"}]}},"required":["id","contractCostAllocationId","name","price","workspaceId","type","allocationType"]},"PublicContractCostAllocationResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"contractId":{"type":"number","readOnly":true,"example":1},"strategy":{"readOnly":true,"example":"bottom_up","allOf":[{"$ref":"#/components/schemas/CostAllocationStrategy"}]},"totalAmountSource":{"readOnly":true,"example":"cost_master","allOf":[{"$ref":"#/components/schemas/TotalAmountSource"}]},"paymentCycleUnit":{"readOnly":true,"example":"month","allOf":[{"$ref":"#/components/schemas/PaymentCycleUnit"}]},"paymentCycleValue":{"type":"number","readOnly":true,"example":1},"currency":{"readOnly":true,"example":"jpy","allOf":[{"$ref":"#/components/schemas/CurrencyTypeIggre"}]},"billingMethod":{"readOnly":true,"example":"postpaid","allOf":[{"$ref":"#/components/schemas/BillingMethod"}]},"note":{"type":"string","nullable":true,"readOnly":true,"example":"note"},"costAllocationItems":{"nullable":true,"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicCostAllocationItemResponseDto"}}},"required":["id","contractId","strategy","totalAmountSource","paymentCycleUnit","paymentCycleValue","currency","billingMethod","note","costAllocationItems"]},"CostAllocationItemRequestDto":{"type":"object","properties":{"name":{"type":"string","example":"Copilot Enterprise","nullable":true},"price":{"type":"number","example":1000,"nullable":true},"workspaceId":{"type":"number","example":1,"nullable":true},"type":{"example":"license","allOf":[{"$ref":"#/components/schemas/CostAllocationItemType"}]},"allocationType":{"example":"contract_owners","allOf":[{"$ref":"#/components/schemas/AllocationType"}]},"peopleIds":{"example":[1,2,3],"type":"array","items":{"type":"number"}}},"required":["type","allocationType"]},"PublicCreateOrUpdateContractCostAllocationRequestDto":{"type":"object","properties":{"strategy":{"example":"bottom_up","allOf":[{"$ref":"#/components/schemas/CostAllocationStrategy"}]},"totalAmountSource":{"example":"cost_master","allOf":[{"$ref":"#/components/schemas/TotalAmountSource"}]},"paymentCycleUnit":{"example":"month","allOf":[{"$ref":"#/components/schemas/PaymentCycleUnit"}]},"paymentCycleValue":{"type":"number","example":1},"currency":{"example":"usd","allOf":[{"$ref":"#/components/schemas/CurrencyTypeIggre"}]},"billingMethod":{"example":"prepaid","allOf":[{"$ref":"#/components/schemas/BillingMethod"}]},"note":{"type":"string","example":"Lorem ipsum dolor sit amet, consectetur adipiscing elit.","nullable":true},"items":{"type":"array","items":{"$ref":"#/components/schemas/CostAllocationItemRequestDto"}}},"required":["strategy","totalAmountSource","paymentCycleUnit","paymentCycleValue","currency","billingMethod"]},"IntegrationLogActionType":{"type":"string","enum":["aggregateAll","invite","create","update","delete","deactivate","removeFilePermissions","deleteWorkspace","syncOneFile","createRole","createDevice"]},"IntegrationLogResult":{"type":"string","enum":["success","failed"]},"IntegrationLogRequesterType":{"type":"string","enum":["system","user"]},"PublicIntegrationLogDto":{"type":"object","properties":{"workspaceId":{"type":"number","readOnly":true,"example":123},"serviceId":{"type":"number","readOnly":true,"example":123},"action":{"readOnly":true,"example":"aggregateAll","allOf":[{"$ref":"#/components/schemas/IntegrationLogActionType"}]},"result":{"readOnly":true,"example":"success","allOf":[{"$ref":"#/components/schemas/IntegrationLogResult"}]},"message":{"type":"string","readOnly":true,"example":"success"},"endedAt":{"type":"string","readOnly":true,"example":"1642136056"},"requester":{"type":"string","readOnly":true,"example":"user@example.com"},"workspaceName":{"type":"string","readOnly":true,"example":"moneyforward"},"serviceName":{"type":"string","readOnly":true,"example":"GitHub"},"item":{"type":"string","readOnly":true,"example":"user@example.com"},"requesterType":{"readOnly":true,"example":"user","allOf":[{"$ref":"#/components/schemas/IntegrationLogRequesterType"}]}},"required":["workspaceId","serviceId","action","result","message","endedAt","requester","workspaceName","serviceName","item","requesterType"]},"PublicGetIntegrationLogsResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicIntegrationLogDto"}},"meta":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/OnlyNextCursorMeta"}]}},"required":["items","meta"]},"PublicGetIntegrationLogsCsvResponseDto":{"type":"object","properties":{"csvUrl":{"type":"string","readOnly":true,"example":"https://integration-logs.s3.ap-northeast-1.amazonaws.com/123456789.csv"},"requestId":{"type":"string","nullable":true,"readOnly":true,"example":"78bf2e33-4459-4e5f-9fe7-a44e3e70b488"}},"required":["csvUrl"]},"PublicTriggerWorkflowRequestDto":{"type":"object","properties":{"targetIds":{"description":"Target IDs (identity IDs) to run the workflow for. At least one is required.","example":["12345"],"type":"array","items":{"type":"string"}},"targetType":{"type":"string","enum":["identity"],"description":"Type of target"}},"required":["targetIds","targetType"]},"PublicTriggerWorkflowResultDto":{"type":"object","properties":{"targetId":{"type":"string","readOnly":true},"runId":{"type":"string","readOnly":true}},"required":["targetId","runId"]},"PublicTriggerWorkflowResponseDto":{"type":"object","properties":{"results":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicTriggerWorkflowResultDto"}}},"required":["results"]},"WorkflowRunStatus":{"type":"string","enum":["scheduled","pending","retry_pending","running","paused","finished","completed_with_errors","failed","aborted","cancelling","cancelled"]},"PublicWorkflowRunDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"format":"uuid"},"workflowId":{"type":"string","readOnly":true,"format":"uuid"},"workflowVersionId":{"type":"string","readOnly":true,"format":"uuid"},"status":{"allOf":[{"$ref":"#/components/schemas/WorkflowRunStatus"}]},"scheduledAt":{"type":"string","nullable":true,"format":"date-time"},"startedAt":{"type":"string","nullable":true,"format":"date-time"},"completedAt":{"type":"string","nullable":true,"format":"date-time"},"createdAt":{"type":"string","readOnly":true,"format":"date-time"},"updatedAt":{"type":"string","readOnly":true,"format":"date-time"},"executionProgress":{"type":"number","readOnly":true,"example":50},"runTime":{"type":"number","readOnly":true,"example":1200},"retryForRunId":{"type":"string","nullable":true,"format":"uuid"},"latestRetryStatus":{"nullable":true,"allOf":[{"$ref":"#/components/schemas/WorkflowRunStatus"}]},"isRunning":{"type":"boolean","nullable":true}},"required":["id","workflowId","workflowVersionId","status","scheduledAt","startedAt","completedAt","createdAt","updatedAt","executionProgress","runTime","retryForRunId","latestRetryStatus","isRunning"]},"PublicGetWorkflowRunsResponseDto":{"type":"object","properties":{"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicWorkflowRunDto"}},"meta":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/OnlyNextCursorMeta"}]}},"required":["items","meta"]},"PublicAlertServiceInfoDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Slack"},"uniqueName":{"type":"string","nullable":true,"readOnly":true,"example":"slack"}},"required":["id","name","uniqueName"]},"PublicAlertWorkspaceInfoDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"workspaceName":{"type":"string","nullable":true,"readOnly":true,"example":"workspace-name"}},"required":["id","workspaceName"]},"PublicAlertUserInfoDto":{"type":"object","properties":{"peopleAccountId":{"type":"string","readOnly":true,"example":"157#user@example.com"},"accountKey":{"type":"string","nullable":true,"readOnly":true,"example":"user@example.com"},"displayName":{"type":"string","nullable":true,"readOnly":true,"example":"John Doe"},"primaryEmail":{"type":"string","nullable":true,"readOnly":true,"example":"user@example.com"}},"required":["peopleAccountId","accountKey","displayName","primaryEmail"]},"PublicAlertResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"type":{"type":"string","readOnly":true,"enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"],"example":"retired_account"},"level":{"type":"string","readOnly":true,"enum":["warning","caution"],"example":"warning"},"muted":{"type":"boolean","readOnly":true},"service":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/PublicAlertServiceInfoDto"}]},"workspace":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/PublicAlertWorkspaceInfoDto"}]},"user":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PublicAlertUserInfoDto"}]},"fileId":{"type":"string","nullable":true,"readOnly":true,"example":"file-id-123"},"lastCheckedAt":{"type":"string","readOnly":true,"example":"2024-01-01T00:00:00.000Z"},"muteUntil":{"type":"string","readOnly":true,"example":"2024-01-01T00:00:00.000Z"},"createdAt":{"type":"string","readOnly":true,"example":"2024-01-01T00:00:00.000Z"},"updatedAt":{"type":"string","readOnly":true,"example":"2024-01-01T00:00:00.000Z"}},"required":["id","type","level","muted","service","workspace","user","fileId","lastCheckedAt","muteUntil","createdAt","updatedAt"]},"PublicGetAlertsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/OnlyNextCursorMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicAlertResponseDto"}}},"required":["meta","items"]},"PublicAlertMuteServiceInfoDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Slack"},"uniqueName":{"type":"string","nullable":true,"readOnly":true,"example":"slack"}},"required":["id","name","uniqueName"]},"PublicAlertMuteDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"service":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/PublicAlertMuteServiceInfoDto"}]},"alertType":{"type":"string","readOnly":true,"enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"],"example":"retired_account"},"reason":{"type":"string","nullable":true,"readOnly":true,"example":"Service being decommissioned"},"createdAt":{"type":"string","readOnly":true,"example":"2024-01-01T00:00:00.000Z"},"updatedAt":{"type":"string","readOnly":true,"example":"2024-01-01T00:00:00.000Z"}},"required":["id","service","alertType","reason","createdAt","updatedAt"]},"PublicGetAlertMutesResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/OnlyNextCursorMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicAlertMuteDto"}}},"required":["meta","items"]},"PublicMuteServiceAlertsRequestDto":{"type":"object","properties":{"serviceIds":{"description":"Service IDs for which to mute alerts (max 50)","example":[1,2,3],"type":"array","items":{"type":"number"}},"alertType":{"type":"string","description":"Optional: Specific alert type to mute (if not provided, mutes all alert types for the services)","enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"],"example":"retired_account"},"reason":{"type":"string","description":"Optional reason for muting. Alert type mutes are permanent until explicitly unmuted.","example":"Service being decommissioned"}},"required":["serviceIds"]},"PublicUnmuteServiceAlertsRequestDto":{"type":"object","properties":{"serviceIds":{"description":"Service IDs for which to unmute alerts (max 50)","example":[1,2,3],"type":"array","items":{"type":"number"}},"alertType":{"type":"string","description":"Optional: Specific alert type to unmute (if not provided, unmutes all alert types for the services)","enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"],"example":"retired_account"}},"required":["serviceIds"]},"PublicMuteAccountAlertsRequestDto":{"type":"object","properties":{"accountIds":{"description":"Account IDs (peopleAccountIds) to mute alerts for","example":["157#user@example.com","158#another@example.com"],"type":"array","items":{"type":"string"}},"alertType":{"type":"string","description":"Alert type to mute","enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"],"example":"retired_account"},"until":{"type":"string","description":"Optional: Timestamp until when the alert should be muted (ISO 8601 format). If not provided, mutes indefinitely.","example":"2024-12-31T23:59:59.000Z"},"muteOtherAccounts":{"type":"boolean","description":"Whether to also mute other accounts of the same people","default":false}},"required":["accountIds","alertType"]},"PublicUnmuteAccountAlertsRequestDto":{"type":"object","properties":{"accountIds":{"description":"Account IDs (peopleAccountIds) to unmute alerts for","example":["157#user@example.com","158#another@example.com"],"type":"array","items":{"type":"string"}},"alertType":{"type":"string","description":"Alert type to unmute","enum":["retired_account","inactive_account","on_leave_account","unknown_account","public_files","device_unreturned_assigned","device_unreturned_leased","device_replacement","device_inactive","device_mdm_compliance","device_inventory_shortage"],"example":"retired_account"},"unmuteOtherAccounts":{"type":"boolean","description":"Whether to also unmute other accounts of the same people","default":false}},"required":["accountIds","alertType"]},"PublicMuteFileAlertsRequestDto":{"type":"object","properties":{"fileIds":{"description":"File IDs to mute public file alerts for","example":["file-id-1","file-id-2"],"type":"array","items":{"type":"string"}},"until":{"type":"string","description":"Optional: Timestamp until when the alert should be muted (ISO 8601 format). If not provided, mutes indefinitely.","example":"2024-12-31T23:59:59.000Z"}},"required":["fileIds"]},"PublicUnmuteFileAlertsRequestDto":{"type":"object","properties":{"fileIds":{"description":"File IDs to unmute public file alerts for","example":["file-id-1","file-id-2"],"type":"array","items":{"type":"string"}}},"required":["fileIds"]},"SurveySortBy":{"type":"string","enum":["createdAt","category","status","targetNumber","scheduledLaunchAt","deadlineAt","publishedAt"]},"SurveyStatus":{"type":"string","enum":["draft","published","launched","completed","revoked"]},"TargetType":{"type":"string","enum":["employees","devices","services"]},"SurveyQuestionResponseDto":{"type":"object","properties":{"id":{"type":"string","readOnly":true,"example":"q1"},"sort":{"type":"number","readOnly":true,"example":0},"name":{"type":"string","readOnly":true,"example":"What type of device do you primarily use for work?"},"type":{"type":"string","readOnly":true,"enum":["text","multiple_choice","checkbox","image"],"example":"checkbox"},"options":{"readOnly":true,"example":["Laptop","Desktop","Mobile","Tablet"],"type":"array","items":{"type":"string"}},"required":{"type":"boolean","readOnly":true,"example":true}},"required":["id","sort","name","type"]},"PublicSurveyResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"surveyName":{"type":"string","readOnly":true,"example":"Employee Device Survey"},"description":{"type":"string","nullable":true,"readOnly":true,"example":"Survey to understand device usage"},"status":{"type":"string","readOnly":true,"enum":["draft","published","launched","completed","revoked"],"example":"draft"},"category":{"type":"string","readOnly":true,"example":"device_ownership"},"targetType":{"type":"string","readOnly":true,"enum":["employees","devices","services","services_by_identities","devices_by_identities"],"example":"employees"},"questions":{"readOnly":true,"example":[],"type":"array","items":{"$ref":"#/components/schemas/SurveyQuestionResponseDto"}},"deliveryEnableEmail":{"type":"boolean","readOnly":true,"example":true},"deliveryEnableSlack":{"type":"boolean","readOnly":true,"example":false},"isScheduleLaunch":{"type":"boolean","readOnly":true,"example":false},"scheduledLaunchAt":{"format":"date-time","type":"string","nullable":true,"readOnly":true,"example":null},"deadlineAt":{"format":"date-time","type":"string","nullable":true,"readOnly":true,"example":null},"destinationType":{"type":"string","enum":["resource_holder","holder_manager"],"nullable":false,"readOnly":true,"example":"resource_holder"},"createdAt":{"format":"date-time","type":"string","readOnly":true,"example":"2026-09-24T02:16:07.406Z"},"updatedAt":{"format":"date-time","type":"string","readOnly":true,"example":"2026-09-24T02:16:07.406Z"},"totalTargets":{"type":"number","readOnly":true,"example":5},"totalResponses":{"type":"number","readOnly":true,"example":3}},"required":["id","surveyName","description","status","category","targetType","questions","deliveryEnableEmail","deliveryEnableSlack","isScheduleLaunch","scheduledLaunchAt","deadlineAt","destinationType","createdAt","updatedAt"]},"PublicGetSurveysResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicSurveyResponseDto"}}},"required":["meta","items"]},"PublicGetSurveyStatsResponseDto":{"type":"object","properties":{"totalSent":{"type":"number","description":"Total number of targets that have been sent (status !== error && status !== pending)","example":150},"totalOpened":{"type":"number","description":"Total number of targets that have been opened (status === opened, completed)","example":120},"totalCompleted":{"type":"number","description":"Total number of targets that have been completed (status === completed)","example":80},"totalError":{"type":"number","description":"Total number of targets with delivery errors (lastDeliverNotificationExecutionStatus === error)","example":5},"totalPending":{"type":"number","description":"Total number of targets that are pending (status === pending)","example":20},"totalUnopened":{"type":"number","description":"Total number of targets that are unopened (status === pending, sent)","example":70},"totalTarget":{"type":"number","description":"Total number of targets for this survey","example":175},"responseRate":{"type":"number","description":"Response rate as percentage (completed / totalSent * 100)","example":53.33}},"required":["totalSent","totalOpened","totalCompleted","totalError","totalPending","totalUnopened","totalTarget","responseRate"]},"SurveyTargetSortBy":{"type":"string","enum":["createdAt","name","email","department"]},"SurveyTargetStatus":{"type":"string","enum":["pending","sent","opened","completed"]},"TargetEntityServiceDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Google"},"uniqueName":{"type":"string","readOnly":true,"example":"google"}},"required":["id","name","uniqueName"]},"IdentityDto":{"type":"object","properties":{"id":{"type":"string","description":"ID of the employee"},"organizationId":{"type":"number","description":"ID of the organization"},"peopleId":{"type":"string","description":"ID of the people"},"employeeStatus":{"example":"active","description":"Extended status of the employee","allOf":[{"$ref":"#/components/schemas/ExtendedEmployeeStatus"}]},"employeeType":{"example":"full_time_employee","description":"Type of the employee","allOf":[{"$ref":"#/components/schemas/EmployeeType"}]},"managementType":{"example":"managed","description":"Management type of the employee","nullable":true,"allOf":[{"$ref":"#/components/schemas/ManagementType"}]},"displayName":{"type":"string","example":"Display Name","description":"Display name of the employee","nullable":true},"firstName":{"type":"string","example":"First Name","description":"First name of the employee","nullable":true},"lastName":{"type":"string","example":"Last Name","description":"Last name of the employee","nullable":true},"avatar":{"type":"string","description":"URL of the avatar of the employee","nullable":true},"primaryEmail":{"type":"string","example":"primay@email.com","description":"Primary email of the employee","nullable":true},"secondaryEmails":{"example":["secondary+1@email.com","secondary+2@email.com"],"description":"Secondary emails of the employee","nullable":true,"type":"array","items":{"type":"string"}},"companyName":{"type":"string","example":"company name","description":"Company name of the employee","nullable":true},"workLocation":{"type":"string","example":"work location","description":"Work location of the employee","nullable":true},"department":{"description":"Department of the employee","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DepartmentDtoElement"}]},"serviceCount":{"type":"number","description":"Number of services the employee has","nullable":true},"deviceCount":{"type":"number","description":"Number of devices the employee has","nullable":true},"costs":{"description":"Costs of the employee","nullable":true,"type":"array","items":{"$ref":"#/components/schemas/IdentityCost"}},"createdAt":{"format":"date-time","type":"string","description":"Record created at","nullable":true},"updatedAt":{"format":"date-time","type":"string","description":"Record updated at","nullable":true},"isManager":{"type":"boolean","description":"Is the employee a manager","nullable":true},"isMock":{"type":"boolean","description":"Indicates if the identity is a mock"},"isEmailEditable":{"type":"boolean","description":"Indicates if the email of the identity is editable","nullable":true},"hasPresetFieldsUnlinked":{"type":"boolean","description":"Indicates if the unlink preset fields is enabled","nullable":true},"jobTitle":{"type":"string","example":"CTO","description":"Job title of the employee","nullable":true},"employeeId":{"type":"string","example":"EMP12345","description":"Employee ID of the employee","nullable":true},"lifecycle":{"description":"Lifecycle of the employee","allOf":[{"$ref":"#/components/schemas/LifecycleDtoElement"}]},"manager":{"description":"Manager of the employee","allOf":[{"$ref":"#/components/schemas/ManagerDto"}]},"note":{"type":"string","example":"this is a note","description":"Notes of the employee","nullable":true},"profileUrl":{"type":"string","example":"https://workspace.url/employee/12345","description":"URL of the profile of the employee","format":"uri","nullable":true},"customFields":{"type":"object","example":{"custom_text_field":"foo","custom_date_field":"2024-01-01","custom_number_field":123,"custom_dropdown_field":"Option Displayed Value A"},"additionalProperties":{"nullable":true},"description":"Custom fields of the employee"},"customFieldsWithMetadata":{"description":"Custom fields with metadata including ID, uniqueName, and label","example":[{"id":1,"attributeCode":"custom_text_field","attributeName":"Text field","value":"foo"},{"id":2,"attributeCode":"custom_date_field","attributeName":"Date field","value":"2024-01-01"},{"id":3,"attributeCode":"custom_number_field","attributeName":"Number field","value":123},{"id":4,"attributeCode":"custom_dropdown_field","attributeName":"Dropdown field","value":"Option Displayed Value A"}],"type":"array","items":{"$ref":"#/components/schemas/CustomFieldWithMetadataDto"}},"structuresInfo":{"description":"Structures that the identity is a member of, categorized by type","allOf":[{"$ref":"#/components/schemas/IdentityStructuresInfoDto"}]}},"required":["employeeStatus","employeeType","firstName","lastName"]},"TargetEntityDto":{"type":"object","properties":{"entityId":{"type":"string","readOnly":true,"example":"device_123"},"entityName":{"type":"string","readOnly":true,"example":"MacBook Pro"},"image":{"type":"string","nullable":true,"readOnly":true,"example":"https://example.com/avatar.jpg"},"uniqueNumber":{"type":"string","nullable":true,"readOnly":true,"example":"EMP-001"},"email":{"type":"string","nullable":true,"readOnly":true,"example":"john.doe@example.com"},"type":{"type":"string","nullable":true,"readOnly":true,"example":"pc"},"relatedIdentities":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/RelatedIdentitiesDto"}]},"service":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/TargetEntityServiceDto"}]},"saasAppDetails":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/AccountResponseDto"}]},"deviceDetails":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/DeviceDto"}]},"employeeDetails":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/IdentityDto"}]}},"required":["entityId","entityName"]},"PublicSurveyTargetResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"surveyId":{"type":"number","readOnly":true,"example":123},"status":{"type":"string","readOnly":true,"enum":["pending","sent","opened","completed"],"example":"pending"},"identityId":{"type":"string","readOnly":true,"example":"user123"},"targetType":{"type":"string","readOnly":true,"enum":["employees","devices","services"],"example":"employees"},"targets":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/TargetEntityDto"}},"sentAt":{"format":"date-time","type":"string","readOnly":true,"example":"2024-01-01T12:00:00Z"},"openedAt":{"format":"date-time","type":"string","readOnly":true,"example":"2024-01-01T12:00:00Z"},"completedAt":{"format":"date-time","type":"string","readOnly":true,"example":"2024-01-01T12:00:00Z"},"createdAt":{"format":"date-time","type":"string","readOnly":true,"example":"2024-01-01T12:00:00Z"},"updatedAt":{"format":"date-time","type":"string","readOnly":true,"example":"2024-01-01T12:00:00Z"}},"required":["id","surveyId","status","identityId","createdAt","updatedAt"]},"PublicGetSurveyTargetsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicSurveyTargetResponseDto"}}},"required":["meta","items"]},"PublicSurveyResultResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"surveyId":{"type":"number","readOnly":true,"example":123},"identityId":{"type":"string","readOnly":true,"example":"user123"},"entityId":{"type":"string","readOnly":true,"example":"device123"},"result":{"type":"object","readOnly":true},"createdAt":{"format":"date-time","type":"string","readOnly":true,"example":"2024-01-01T12:00:00Z"},"updatedAt":{"format":"date-time","type":"string","readOnly":true,"example":"2024-01-01T12:00:00Z"}},"required":["id","surveyId","identityId","entityId","result","createdAt","updatedAt"]},"PublicGetSurveyResultsResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicSurveyResultResponseDto"}}},"required":["meta","items"]},"SurveyTargetType":{"type":"string","enum":["employees","devices","services","services_by_identities","devices_by_identities"],"description":"Type of targets for the survey"},"QuestionType":{"type":"string","enum":["text","multiple_choice","checkbox","image"],"description":"Type of question (single choice, multiple choice, text, etc.)"},"SurveyQuestionRequestDto":{"type":"object","properties":{"id":{"type":"string","example":"q1","description":"Unique identifier for the question"},"sort":{"type":"number","example":0,"minimum":0,"description":"Sort order of the question in the survey"},"name":{"type":"string","example":"What type of device do you primarily use for work?","description":"The question text"},"type":{"example":"checkbox","description":"Type of question (single choice, multiple choice, text, etc.)","allOf":[{"$ref":"#/components/schemas/QuestionType"}]},"options":{"example":["Laptop","Desktop","Mobile","Tablet"],"description":"Array of options for choice-type questions (required for CHECKBOX and MULTIPLE_CHOICE types)","type":"array","items":{"type":"string"}},"required":{"type":"boolean","example":true,"description":"Whether the question is required. Defaults to true if not specified."}},"required":["id","sort","name","type"]},"SurveyTargetRequestDto":{"type":"object","properties":{"identityId":{"type":"string","example":"identity_456","description":"Identity ID of the survey target"},"entityId":{"type":"string","example":"device_123","description":"Unique identifier for the target entity (device/service ID)"},"entityName":{"type":"string","example":"MacBook Pro 2023","description":"Name of the target entity"}},"required":["identityId"]},"ReminderTimeUnit":{"type":"string","enum":["hours","days","weeks"],"description":"Time unit for the reminder (days, hours, etc.)"},"ReminderScheduleRequestDto":{"type":"object","properties":{"value":{"type":"number","example":3,"minimum":1,"description":"Reminder time value (e.g., 3 for 3 days)"},"unit":{"example":"days","description":"Time unit for the reminder (days, hours, etc.)","allOf":[{"$ref":"#/components/schemas/ReminderTimeUnit"}]}},"required":["value","unit"]},"SurveyReminderConfigRequestDto":{"type":"object","properties":{"enabled":{"type":"boolean","example":true,"description":"Whether reminders are enabled for this survey"},"schedules":{"description":"Array of reminder schedules","example":[{"value":1,"unit":"days"}],"type":"array","items":{"$ref":"#/components/schemas/ReminderScheduleRequestDto"}}},"required":["enabled","schedules"]},"DestinationType":{"type":"string","enum":["resource_holder","holder_manager"],"description":"Destination type for the survey"},"PublicCreateSurveyRequestDto":{"type":"object","properties":{"surveyName":{"type":"string","example":"Device Ownership Survey","description":"Name of the survey"},"description":{"type":"string","example":"Survey to collect device ownership information from employees","description":"Optional description of the survey"},"category":{"type":"string","example":"device_ownership","description":"Category of the survey"},"targetType":{"example":"employees","description":"Type of targets for the survey","allOf":[{"$ref":"#/components/schemas/SurveyTargetType"}]},"questions":{"description":"Array of survey questions","type":"array","items":{"$ref":"#/components/schemas/SurveyQuestionRequestDto"}},"targets":{"description":"Array of survey targets","type":"array","items":{"$ref":"#/components/schemas/SurveyTargetRequestDto"}},"deliveryEnableEmail":{"type":"boolean","example":true,"description":"Enable email delivery for the survey"},"publishImmediately":{"type":"boolean","example":true,"description":"Set the status to Published immediately"},"deliveryEnableSlack":{"type":"boolean","example":false,"description":"Enable Slack delivery for the survey"},"deliverySlackNotificationCredentialId":{"type":"number","example":1,"description":"Notification credential ID for Slack delivery. Required when deliveryEnableSlack is true."},"isScheduleLaunch":{"type":"boolean","example":false,"description":"Whether the survey should be scheduled for launch"},"scheduledLaunchAt":{"type":"string","format":"date-time","example":"2024-01-15T10:00:00Z","description":"Scheduled launch date and time for the survey"},"deadlineAt":{"type":"string","format":"date-time","example":"2024-01-30T23:59:59Z","description":"Deadline date and time for the survey responses"},"reminderConfig":{"description":"Reminder configuration for the survey","allOf":[{"$ref":"#/components/schemas/SurveyReminderConfigRequestDto"}]},"destinationType":{"example":"resource_holder","description":"Destination type for the survey","allOf":[{"$ref":"#/components/schemas/DestinationType"}]}},"required":["surveyName","category","targetType","questions","targets","scheduledLaunchAt"]},"PublicUpdateSurveyRequestDto":{"type":"object","properties":{"surveyName":{"type":"string","example":"Device Ownership Survey","description":"Name of the survey"},"description":{"type":"string","example":"Survey to collect device ownership information from employees","description":"Optional description of the survey"},"category":{"type":"string","example":"device_ownership","description":"Category of the survey"},"targetType":{"example":"employees","description":"Type of targets for the survey","allOf":[{"$ref":"#/components/schemas/SurveyTargetType"}]},"questions":{"description":"Array of survey questions","type":"array","items":{"$ref":"#/components/schemas/SurveyQuestionRequestDto"}},"targets":{"description":"Array of survey targets","type":"array","items":{"$ref":"#/components/schemas/SurveyTargetRequestDto"}},"deliveryEnableEmail":{"type":"boolean","example":true,"description":"Enable email delivery for the survey"},"deliveryEnableSlack":{"type":"boolean","example":false,"description":"Enable Slack delivery for the survey"},"deliverySlackNotificationCredentialId":{"type":"number","example":1,"description":"Notification credential ID for Slack delivery. Required when deliveryEnableSlack is true."},"isScheduleLaunch":{"type":"boolean","example":false,"description":"Whether the survey should be scheduled for launch"},"scheduledLaunchAt":{"type":"string","format":"date-time","example":"2024-01-15T10:00:00Z","description":"Scheduled launch date and time for the survey"},"deadlineAt":{"type":"string","format":"date-time","example":"2024-01-30T23:59:59Z","description":"Deadline date and time for the survey responses"},"reminderConfig":{"description":"Reminder configuration for the survey","allOf":[{"$ref":"#/components/schemas/SurveyReminderConfigRequestDto"}]},"destinationType":{"example":"resource_holder","description":"Destination type for the survey","allOf":[{"$ref":"#/components/schemas/DestinationType"}]}},"required":["surveyName","category","targetType","questions","targets","scheduledLaunchAt"]},"PublicGetRecommendedServicesMetaDto":{"type":"object","properties":{"nextCursor":{"type":"string","nullable":true,"readOnly":true,"example":"F3UdkoSbpBNrjwP93AX2HQ"},"totalItems":{"type":"number","nullable":true,"readOnly":true,"example":1},"mutedCount":{"type":"number","readOnly":true,"example":3}},"required":["nextCursor","mutedCount"]},"PublicRecommendedServiceSummaryDto":{"type":"object","properties":{"name":{"type":"string","nullable":true,"readOnly":true,"example":"GitHub"},"uniqueName":{"type":"string","readOnly":true,"example":"github"}},"required":["name","uniqueName"]},"DiscoverMethod":{"type":"string","enum":["chrome_ext","edge_ext","cost_management","google_oauth","office_365_sso","azure_ad_sso","admina_tracker"]},"RecommendedServiceMuteReason":{"type":"string","enum":["decide_later","not_covered_by_plan","no_corporate_contract","not_manageable_or_false_positive","integration_attempt_failed","temporary_or_trial_use","no_intention_to_integrate","other"]},"PublicRecommendedServiceMuteResponseDto":{"type":"object","properties":{"reason":{"readOnly":true,"example":"no_corporate_contract","allOf":[{"$ref":"#/components/schemas/RecommendedServiceMuteReason"}]},"expiresAt":{"format":"date-time","type":"string","nullable":true,"readOnly":true,"example":"2026-12-01T00:00:00.000Z"},"mutedAt":{"format":"date-time","type":"string","readOnly":true,"example":"2026-08-20T09:00:00.000Z"}},"required":["reason","expiresAt","mutedAt"]},"PublicRecommendedServiceResponseDto":{"type":"object","properties":{"service":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/PublicRecommendedServiceSummaryDto"}]},"totalActiveUsers":{"type":"number","nullable":true,"readOnly":true,"example":200},"discoverMethod":{"readOnly":true,"example":"chrome_ext","allOf":[{"$ref":"#/components/schemas/DiscoverMethod"}]},"mute":{"nullable":true,"readOnly":true,"type":"object","allOf":[{"$ref":"#/components/schemas/PublicRecommendedServiceMuteResponseDto"}]}},"required":["service","totalActiveUsers","discoverMethod","mute"]},"PublicGetRecommendedServicesResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/PublicGetRecommendedServicesMetaDto"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicRecommendedServiceResponseDto"}}},"required":["meta","items"]},"PublicCustomServiceResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"name":{"type":"string","readOnly":true,"example":"Google"},"uniqueName":{"type":"string","readOnly":true,"example":"google"},"url":{"type":"string","readOnly":true,"example":"https://google.com"},"isEmployeeMasterService":{"type":"boolean","readOnly":true,"example":true},"isCustomService":{"type":"boolean","readOnly":true,"example":false},"isIdentityProvider":{"type":"boolean","readOnly":true,"example":false}},"required":["id","name","uniqueName","url","isEmployeeMasterService","isCustomService","isIdentityProvider"]},"PublicGetCustomServicesResponseDto":{"type":"object","properties":{"meta":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/CursorPaginationMeta"}]},"items":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicCustomServiceResponseDto"}}},"required":["meta","items"]},"PublicCreateIdpCustomServiceRequestDto":{"type":"object","properties":{"identityProviderWorkspaceId":{"type":"number","example":13},"aggreKey":{"type":"string","example":"000000","maxLength":255},"workspaceName":{"type":"string","example":"Custom service workspace name","maxLength":255},"serviceName":{"type":"string","example":"service name","maxLength":255}},"required":["identityProviderWorkspaceId","aggreKey","workspaceName","serviceName"]},"PublicCustomServiceWorkspaceResponseDto":{"type":"object","properties":{"id":{"type":"number","readOnly":true,"example":1},"organizationId":{"type":"number","readOnly":true,"example":1},"serviceId":{"type":"number","readOnly":true,"example":1},"workspaceName":{"type":"string","readOnly":true,"example":"admina"},"isCustomWorkspace":{"type":"boolean","readOnly":true,"example":true},"customWorkspaceType":{"nullable":true,"readOnly":true,"example":"google_sheet","allOf":[{"$ref":"#/components/schemas/CustomWorkspaceType"}]},"identityProviderWorkspaceId":{"type":"number","nullable":true,"readOnly":true,"example":13}},"required":["id","organizationId","serviceId","workspaceName","isCustomWorkspace","customWorkspaceType","identityProviderWorkspaceId"]},"PublicCreateCustomServiceResponseDto":{"type":"object","properties":{"service":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/PublicCustomServiceResponseDto"}]},"workspace":{"readOnly":true,"allOf":[{"$ref":"#/components/schemas/PublicCustomServiceWorkspaceResponseDto"}]},"isNewService":{"type":"boolean","readOnly":true,"example":true}},"required":["service","workspace","isNewService"]},"PublicUpdateCustomServiceRequestDto":{"type":"object","properties":{"serviceName":{"type":"string","example":"Admina"},"serviceUrl":{"type":"string","format":"base64"}}},"PublicGetServiceRolesResponseDto":{"type":"object","properties":{"roles":{"example":["Admin","Guest"],"type":"array","items":{"type":"string"}}},"required":["roles"]},"PublicServiceLicenseResponseDto":{"type":"object","properties":{"licenseType":{"type":"string","readOnly":true,"example":"Basic"},"count":{"type":"number","readOnly":true,"example":1}},"required":["licenseType","count"]},"PublicGetServiceLicensesResponseDto":{"type":"object","properties":{"licenses":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/PublicServiceLicenseResponseDto"}}},"required":["licenses"]}}}}