ToolJet/marketplace/plugins/microsoft_graph/openapi-specs/users.json
Akshay 8ef5f0682d
Feature: Add QuickBooks Online marketplace plugin (#15903)
* feat: add QuickBooks Online marketplace plugin

Add a QuickBooks Online Accounting API plugin with OAuth2 authentication,
86 API operations via OpenAPI spec, and @spec/ convention for DB-stored
spec files. Includes server-side spec hosting infrastructure and a fix
for duplicate footer rendering on marketplace OAuth2 datasource config pages.

* chore: update submodule pointers

* fix: use parent transaction for spec file DB operations

storeSpecFiles and updateSpecFilesForReload were wrapping each file
insert/update in a separate dbTransactionWrap call, creating independent
transactions instead of participating in the outer install/upgrade
transaction. This could leave orphan File entities if the plugin save
failed. Now uses the parent manager directly.

* fix: use sandbox API URL, remove testConnection, add state param

- Default to sandbox-quickbooks.api.intuit.com (development apps require it)
- Remove testConnection and customTesting (OAuth flow validates connection)
- Add state parameter to auth URL (required by QuickBooks)
- Add access_token validation guard in run()
- Preserve existing refresh_token if provider doesn't reissue
- Remove environment dropdown and company_id from manifest
- Add debug logging for OAuth flow tracing

* Chore: Migrate all OpenAPI plugins from external URLs to @spec/ convention (#15904)

* chore: migrate all OpenAPI plugins from external URLs to @spec/ convention

Downloads 78 OpenAPI spec files from external URLs (7 plugins from
adishM98/base-repo-testing personal repo, 2 from official provider repos,
1 from S3) and stores them locally in openapi-specs/ directories. Updates
all operations.json files to use @spec/<kind>/<name> references, which
are resolved to DB-stored specs at install time.

Eliminates runtime dependency on external GitHub repos for spec rendering.

* chore: remove one-time spec migration script

* POST string body

---------

Co-authored-by: Rudhra Deep Biswas <rudra21ultra@gmail.com>
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
2026-05-13 09:16:38 +05:30

1370 lines
39 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"openapi": "3.1.0",
"info": {
"title": "Microsoft Graph API - Users",
"version": "1.0",
"description": "Microsoft Graph API specification for /users and /users/{user-id} endpoints including all basic operations"
},
"servers": [
{
"url": "https://graph.microsoft.com/v1.0",
"description": "Microsoft Graph API v1.0"
}
],
"paths": {
"/users": {
"get": {
"summary": "List users",
"description": "Retrieve a list of user objects from Azure AD",
"operationId": "listUsers",
"parameters": [
{
"name": "$filter",
"in": "query",
"description": "Filter results using OData query options",
"required": false,
"schema": {
"type": "string"
},
"example": "startswith(displayName,'A')"
},
{
"name": "$select",
"in": "query",
"description": "Select properties to return",
"required": false,
"schema": {
"type": "string"
},
"example": "displayName,mail,userPrincipalName"
},
{
"name": "$expand",
"in": "query",
"description": "Expand related entities",
"required": false,
"schema": {
"type": "string"
},
"example": "manager"
},
{
"name": "$orderby",
"in": "query",
"description": "Order results",
"required": false,
"schema": {
"type": "string"
},
"example": "displayName"
},
{
"name": "$top",
"in": "query",
"description": "Number of items to return",
"required": false,
"schema": {
"type": "integer",
"minimum": 1
}
},
{
"name": "$skip",
"in": "query",
"description": "Number of items to skip",
"required": false,
"schema": {
"type": "integer",
"minimum": 0
}
},
{
"name": "$count",
"in": "query",
"description": "Include count of items",
"required": false,
"schema": {
"type": "boolean"
}
},
{
"name": "$search",
"in": "query",
"description": "Search for items",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "ConsistencyLevel",
"in": "header",
"description": "Consistency level for advanced queries",
"required": false,
"schema": {
"type": "string",
"enum": ["eventual"]
}
}
],
"responses": {
"200": {
"description": "List of users retrieved successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserCollectionResponse"
}
}
}
},
"401": {
"$ref": "#/components/responses/UnauthorizedError"
},
"403": {
"$ref": "#/components/responses/ForbiddenError"
}
},
"security": [
{
"oauth2": ["User.Read.All", "User.ReadWrite.All", "Directory.Read.All", "Directory.ReadWrite.All"]
}
]
},
"post": {
"summary": "Create user",
"description": "Create a new user in Azure AD",
"operationId": "createUser",
"requestBody": {
"description": "User object to create",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserCreateRequest"
}
}
}
},
"responses": {
"201": {
"description": "User created successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/User"
}
}
}
},
"400": {
"$ref": "#/components/responses/BadRequestError"
},
"401": {
"$ref": "#/components/responses/UnauthorizedError"
},
"403": {
"$ref": "#/components/responses/ForbiddenError"
}
},
"security": [
{
"oauth2": ["User.ReadWrite.All", "Directory.ReadWrite.All"]
}
]
}
},
"/users/{user-id}": {
"get": {
"summary": "Get user",
"description": "Retrieve the properties and relationships of a user object",
"operationId": "getUser",
"parameters": [
{
"name": "user-id",
"in": "path",
"description": "The unique identifier of the user. Can be the id property or userPrincipalName",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "$select",
"in": "query",
"description": "Select properties to return",
"required": false,
"schema": {
"type": "string"
},
"example": "displayName,mail,userPrincipalName"
},
{
"name": "$expand",
"in": "query",
"description": "Expand related entities",
"required": false,
"schema": {
"type": "string"
},
"example": "manager,directReports"
}
],
"responses": {
"200": {
"description": "User retrieved successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/User"
}
}
}
},
"401": {
"$ref": "#/components/responses/UnauthorizedError"
},
"403": {
"$ref": "#/components/responses/ForbiddenError"
},
"404": {
"$ref": "#/components/responses/NotFoundError"
}
},
"security": [
{
"oauth2": ["User.Read", "User.Read.All", "User.ReadWrite", "User.ReadWrite.All", "Directory.Read.All", "Directory.ReadWrite.All"]
}
]
},
"patch": {
"summary": "Update user",
"description": "Update the properties of a user object",
"operationId": "updateUser",
"parameters": [
{
"name": "user-id",
"in": "path",
"description": "The unique identifier of the user. Can be the id property or userPrincipalName",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"description": "User properties to update",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserUpdateRequest"
}
}
}
},
"responses": {
"204": {
"description": "User updated successfully"
},
"400": {
"$ref": "#/components/responses/BadRequestError"
},
"401": {
"$ref": "#/components/responses/UnauthorizedError"
},
"403": {
"$ref": "#/components/responses/ForbiddenError"
},
"404": {
"$ref": "#/components/responses/NotFoundError"
}
},
"security": [
{
"oauth2": ["User.ReadWrite", "User.ReadWrite.All", "Directory.ReadWrite.All"]
}
]
},
"delete": {
"summary": "Delete user",
"description": "Delete a user. Deleted users are moved to a temporary container and can be restored within 30 days",
"operationId": "deleteUser",
"parameters": [
{
"name": "user-id",
"in": "path",
"description": "The unique identifier of the user. Can be the id property or userPrincipalName",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "User deleted successfully"
},
"401": {
"$ref": "#/components/responses/UnauthorizedError"
},
"403": {
"$ref": "#/components/responses/ForbiddenError"
},
"404": {
"$ref": "#/components/responses/NotFoundError"
}
},
"security": [
{
"oauth2": ["User.ReadWrite.All", "Directory.ReadWrite.All"]
}
]
}
},
"/me": {
"get": {
"summary": "Get current user",
"description": "Retrieve the properties and relationships of the signed-in user",
"operationId": "getCurrentUser",
"parameters": [
{
"name": "$select",
"in": "query",
"description": "Select properties to return",
"required": false,
"schema": {
"type": "string"
}
},
{
"name": "$expand",
"in": "query",
"description": "Expand related entities",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Current user retrieved successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/User"
}
}
}
},
"401": {
"$ref": "#/components/responses/UnauthorizedError"
}
},
"security": [
{
"oauth2": ["User.Read", "User.ReadWrite"]
}
]
},
"patch": {
"summary": "Update current user",
"description": "Update the properties of the signed-in user",
"operationId": "updateCurrentUser",
"requestBody": {
"description": "User properties to update",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserUpdateRequest"
}
}
}
},
"responses": {
"204": {
"description": "User updated successfully"
},
"400": {
"$ref": "#/components/responses/BadRequestError"
},
"401": {
"$ref": "#/components/responses/UnauthorizedError"
}
},
"security": [
{
"oauth2": ["User.ReadWrite"]
}
]
}
}
},
"components": {
"schemas": {
"User": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The unique identifier for the user",
"readOnly": true
},
"deletedDateTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The date and time the user was deleted"
},
"accountEnabled": {
"type": "boolean",
"description": "true if the account is enabled; otherwise, false"
},
"ageGroup": {
"type": "string",
"nullable": true,
"enum": ["null", "Minor", "NotAdult", "Adult"],
"description": "Sets the age group of the user"
},
"assignedLicenses": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AssignedLicense"
},
"description": "The licenses that are assigned to the user"
},
"assignedPlans": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AssignedPlan"
},
"description": "The plans that are assigned to the user",
"readOnly": true
},
"businessPhones": {
"type": "array",
"items": {
"type": "string"
},
"description": "The telephone numbers for the user"
},
"city": {
"type": "string",
"nullable": true,
"description": "The city in which the user is located"
},
"companyName": {
"type": "string",
"nullable": true,
"description": "The company name which the user is associated"
},
"consentProvidedForMinor": {
"type": "string",
"nullable": true,
"enum": ["null", "Granted", "Denied", "NotRequired"],
"description": "Sets whether consent was obtained for minors"
},
"country": {
"type": "string",
"nullable": true,
"description": "The country/region in which the user is located"
},
"createdDateTime": {
"type": "string",
"format": "date-time",
"description": "The date and time the user was created",
"readOnly": true
},
"creationType": {
"type": "string",
"nullable": true,
"description": "Indicates if the user account was created through regular sign up or invitation",
"readOnly": true
},
"department": {
"type": "string",
"nullable": true,
"description": "The name for the department in which the user works"
},
"displayName": {
"type": "string",
"description": "The name displayed in the address book for the user"
},
"employeeHireDate": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "The date and time when the user was hired"
},
"employeeId": {
"type": "string",
"nullable": true,
"description": "The employee identifier assigned to the user by the organization"
},
"employeeOrgData": {
"$ref": "#/components/schemas/EmployeeOrgData"
},
"employeeType": {
"type": "string",
"nullable": true,
"description": "Captures enterprise worker type"
},
"externalUserState": {
"type": "string",
"nullable": true,
"description": "For external users, the state of the user's invitation",
"readOnly": true
},
"externalUserStateChangeDateTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "When the external user state changed",
"readOnly": true
},
"faxNumber": {
"type": "string",
"nullable": true,
"description": "The fax number of the user"
},
"givenName": {
"type": "string",
"nullable": true,
"description": "The given name (first name) of the user"
},
"identities": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ObjectIdentity"
},
"description": "Represents the identities that can be used to sign in to this user account"
},
"imAddresses": {
"type": "array",
"items": {
"type": "string"
},
"description": "The instant message voice over IP (VOIP) session initiation protocol (SIP) addresses"
},
"isResourceAccount": {
"type": "boolean",
"nullable": true,
"description": "Do not use reserved for future use"
},
"jobTitle": {
"type": "string",
"nullable": true,
"description": "The user's job title"
},
"lastPasswordChangeDateTime": {
"type": "string",
"format": "date-time",
"description": "The time when the user last changed their password",
"readOnly": true
},
"legalAgeGroupClassification": {
"type": "string",
"nullable": true,
"description": "Used by enterprise apps to determine the legal age group",
"readOnly": true
},
"licenseAssignmentStates": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LicenseAssignmentState"
},
"description": "State of license assignments for this user"
},
"mail": {
"type": "string",
"nullable": true,
"description": "The SMTP address for the user"
},
"mailNickname": {
"type": "string",
"description": "The mail alias for the user"
},
"mobilePhone": {
"type": "string",
"nullable": true,
"description": "The primary cellular telephone number for the user"
},
"officeLocation": {
"type": "string",
"nullable": true,
"description": "The office location in the user's place of business"
},
"onPremisesDistinguishedName": {
"type": "string",
"nullable": true,
"description": "Distinguished Name of the on-premises AD user",
"readOnly": true
},
"onPremisesDomainName": {
"type": "string",
"nullable": true,
"description": "Domain name of the on-premises AD",
"readOnly": true
},
"onPremisesExtensionAttributes": {
"$ref": "#/components/schemas/OnPremisesExtensionAttributes"
},
"onPremisesImmutableId": {
"type": "string",
"nullable": true,
"description": "Used to map on-premises AD user to Azure AD user",
"readOnly": true
},
"onPremisesLastSyncDateTime": {
"type": "string",
"format": "date-time",
"nullable": true,
"description": "Last time the user was synced from on-premises AD",
"readOnly": true
},
"onPremisesProvisioningErrors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OnPremisesProvisioningError"
},
"description": "Errors during provisioning",
"readOnly": true
},
"onPremisesSamAccountName": {
"type": "string",
"nullable": true,
"description": "SAM account name from on-premises AD",
"readOnly": true
},
"onPremisesSecurityIdentifier": {
"type": "string",
"nullable": true,
"description": "Security identifier from on-premises AD",
"readOnly": true
},
"onPremisesSyncEnabled": {
"type": "boolean",
"nullable": true,
"description": "true if synced from on-premises AD",
"readOnly": true
},
"onPremisesUserPrincipalName": {
"type": "string",
"nullable": true,
"description": "UPN from on-premises AD",
"readOnly": true
},
"otherMails": {
"type": "array",
"items": {
"type": "string"
},
"description": "Additional email addresses for the user"
},
"passwordPolicies": {
"type": "string",
"nullable": true,
"description": "Specifies password policies for the user"
},
"passwordProfile": {
"$ref": "#/components/schemas/PasswordProfile"
},
"postalCode": {
"type": "string",
"nullable": true,
"description": "The postal code for the user's postal address"
},
"preferredLanguage": {
"type": "string",
"nullable": true,
"description": "The preferred language for the user"
},
"provisionedPlans": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProvisionedPlan"
},
"description": "The plans that are provisioned for the user",
"readOnly": true
},
"proxyAddresses": {
"type": "array",
"items": {
"type": "string"
},
"description": "Proxy addresses for the user",
"readOnly": true
},
"showInAddressList": {
"type": "boolean",
"nullable": true,
"description": "Do not use - reserved for future use"
},
"signInSessionsValidFromDateTime": {
"type": "string",
"format": "date-time",
"description": "Sign-in sessions valid from this time",
"readOnly": true
},
"state": {
"type": "string",
"nullable": true,
"description": "The state or province in the user's address"
},
"streetAddress": {
"type": "string",
"nullable": true,
"description": "The street address of the user's place of business"
},
"surname": {
"type": "string",
"nullable": true,
"description": "The user's surname (family name or last name)"
},
"usageLocation": {
"type": "string",
"nullable": true,
"description": "A two letter country code (ISO 3166)"
},
"userPrincipalName": {
"type": "string",
"description": "The user principal name (UPN) of the user"
},
"userType": {
"type": "string",
"nullable": true,
"description": "A string value that can be used to classify user types"
}
}
},
"UserCreateRequest": {
"type": "object",
"required": ["accountEnabled", "displayName", "mailNickname", "userPrincipalName", "passwordProfile"],
"properties": {
"accountEnabled": {
"type": "boolean",
"description": "true if the account is enabled; otherwise, false"
},
"displayName": {
"type": "string",
"description": "The name to display in the address book for the user"
},
"mailNickname": {
"type": "string",
"description": "The mail alias for the user"
},
"userPrincipalName": {
"type": "string",
"description": "The user principal name (UPN) of the user"
},
"passwordProfile": {
"$ref": "#/components/schemas/PasswordProfile"
},
"ageGroup": {
"type": "string",
"nullable": true,
"enum": ["null", "Minor", "NotAdult", "Adult"]
},
"businessPhones": {
"type": "array",
"items": {
"type": "string"
}
},
"city": {
"type": "string",
"nullable": true
},
"companyName": {
"type": "string",
"nullable": true
},
"consentProvidedForMinor": {
"type": "string",
"nullable": true,
"enum": ["null", "Granted", "Denied", "NotRequired"]
},
"country": {
"type": "string",
"nullable": true
},
"department": {
"type": "string",
"nullable": true
},
"employeeHireDate": {
"type": "string",
"format": "date-time",
"nullable": true
},
"employeeId": {
"type": "string",
"nullable": true
},
"employeeType": {
"type": "string",
"nullable": true
},
"faxNumber": {
"type": "string",
"nullable": true
},
"givenName": {
"type": "string",
"nullable": true
},
"identities": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ObjectIdentity"
}
},
"imAddresses": {
"type": "array",
"items": {
"type": "string"
}
},
"jobTitle": {
"type": "string",
"nullable": true
},
"mail": {
"type": "string",
"nullable": true
},
"mobilePhone": {
"type": "string",
"nullable": true
},
"officeLocation": {
"type": "string",
"nullable": true
},
"otherMails": {
"type": "array",
"items": {
"type": "string"
}
},
"passwordPolicies": {
"type": "string",
"nullable": true
},
"postalCode": {
"type": "string",
"nullable": true
},
"preferredLanguage": {
"type": "string",
"nullable": true
},
"state": {
"type": "string",
"nullable": true
},
"streetAddress": {
"type": "string",
"nullable": true
},
"surname": {
"type": "string",
"nullable": true
},
"usageLocation": {
"type": "string",
"nullable": true
},
"userType": {
"type": "string",
"nullable": true
}
}
},
"UserUpdateRequest": {
"type": "object",
"properties": {
"accountEnabled": {
"type": "boolean"
},
"ageGroup": {
"type": "string",
"nullable": true,
"enum": ["null", "Minor", "NotAdult", "Adult"]
},
"businessPhones": {
"type": "array",
"items": {
"type": "string"
}
},
"city": {
"type": "string",
"nullable": true
},
"companyName": {
"type": "string",
"nullable": true
},
"consentProvidedForMinor": {
"type": "string",
"nullable": true,
"enum": ["null", "Granted", "Denied", "NotRequired"]
},
"country": {
"type": "string",
"nullable": true
},
"department": {
"type": "string",
"nullable": true
},
"displayName": {
"type": "string"
},
"employeeHireDate": {
"type": "string",
"format": "date-time",
"nullable": true
},
"employeeId": {
"type": "string",
"nullable": true
},
"employeeType": {
"type": "string",
"nullable": true
},
"faxNumber": {
"type": "string",
"nullable": true
},
"givenName": {
"type": "string",
"nullable": true
},
"jobTitle": {
"type": "string",
"nullable": true
},
"mail": {
"type": "string",
"nullable": true
},
"mailNickname": {
"type": "string"
},
"mobilePhone": {
"type": "string",
"nullable": true
},
"officeLocation": {
"type": "string",
"nullable": true
},
"otherMails": {
"type": "array",
"items": {
"type": "string"
}
},
"passwordPolicies": {
"type": "string",
"nullable": true
},
"passwordProfile": {
"$ref": "#/components/schemas/PasswordProfile"
},
"postalCode": {
"type": "string",
"nullable": true
},
"preferredLanguage": {
"type": "string",
"nullable": true
},
"state": {
"type": "string",
"nullable": true
},
"streetAddress": {
"type": "string",
"nullable": true
},
"surname": {
"type": "string",
"nullable": true
},
"usageLocation": {
"type": "string",
"nullable": true
},
"userPrincipalName": {
"type": "string"
}
}
},
"UserCollectionResponse": {
"type": "object",
"properties": {
"@odata.context": {
"type": "string",
"description": "The OData context URL"
},
"@odata.nextLink": {
"type": "string",
"description": "URL to get the next page of results"
},
"@odata.count": {
"type": "integer",
"description": "Total count of items (when $count=true is used)"
},
"value": {
"type": "array",
"items": {
"$ref": "#/components/schemas/User"
},
"description": "Collection of users"
}
}
},
"PasswordProfile": {
"type": "object",
"properties": {
"forceChangePasswordNextSignIn": {
"type": "boolean",
"description": "true if the user must change their password on next sign-in"
},
"forceChangePasswordNextSignInWithMfa": {
"type": "boolean",
"description": "true if the user must perform MFA on password change"
},
"password": {
"type": "string",
"description": "The password for the user"
}
},
"required": ["password"]
},
"AssignedLicense": {
"type": "object",
"properties": {
"disabledPlans": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"description": "Disabled service plans"
},
"skuId": {
"type": "string",
"format": "uuid",
"description": "The unique identifier for the SKU"
}
}
},
"AssignedPlan": {
"type": "object",
"properties": {
"assignedDateTime": {
"type": "string",
"format": "date-time",
"description": "Assignment date"
},
"capabilityStatus": {
"type": "string",
"description": "Capability status"
},
"service": {
"type": "string",
"description": "Service name"
},
"servicePlanId": {
"type": "string",
"format": "uuid",
"description": "Service plan identifier"
}
}
},
"EmployeeOrgData": {
"type": "object",
"properties": {
"costCenter": {
"type": "string",
"nullable": true,
"description": "Cost center"
},
"division": {
"type": "string",
"nullable": true,
"description": "Division"
}
}
},
"ObjectIdentity": {
"type": "object",
"properties": {
"signInType": {
"type": "string",
"description": "Type of sign-in (e.g., userName, emailAddress, federated)"
},
"issuer": {
"type": "string",
"description": "Issuer of the identity"
},
"issuerAssignedId": {
"type": "string",
"description": "Unique identifier assigned by the issuer"
}
}
},
"LicenseAssignmentState": {
"type": "object",
"properties": {
"assignedByGroup": {
"type": "string",
"nullable": true,
"description": "Group that assigned this license"
},
"disabledPlans": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
}
},
"error": {
"type": "string",
"nullable": true
},
"lastUpdatedDateTime": {
"type": "string",
"format": "date-time"
},
"skuId": {
"type": "string",
"format": "uuid"
},
"state": {
"type": "string"
}
}
},
"OnPremisesExtensionAttributes": {
"type": "object",
"properties": {
"extensionAttribute1": {
"type": "string",
"nullable": true
},
"extensionAttribute2": {
"type": "string",
"nullable": true
},
"extensionAttribute3": {
"type": "string",
"nullable": true
},
"extensionAttribute4": {
"type": "string",
"nullable": true
},
"extensionAttribute5": {
"type": "string",
"nullable": true
},
"extensionAttribute6": {
"type": "string",
"nullable": true
},
"extensionAttribute7": {
"type": "string",
"nullable": true
},
"extensionAttribute8": {
"type": "string",
"nullable": true
},
"extensionAttribute9": {
"type": "string",
"nullable": true
},
"extensionAttribute10": {
"type": "string",
"nullable": true
},
"extensionAttribute11": {
"type": "string",
"nullable": true
},
"extensionAttribute12": {
"type": "string",
"nullable": true
},
"extensionAttribute13": {
"type": "string",
"nullable": true
},
"extensionAttribute14": {
"type": "string",
"nullable": true
},
"extensionAttribute15": {
"type": "string",
"nullable": true
}
}
},
"OnPremisesProvisioningError": {
"type": "object",
"properties": {
"category": {
"type": "string",
"nullable": true
},
"occurredDateTime": {
"type": "string",
"format": "date-time",
"nullable": true
},
"propertyCausingError": {
"type": "string",
"nullable": true
},
"value": {
"type": "string",
"nullable": true
}
}
},
"ProvisionedPlan": {
"type": "object",
"properties": {
"capabilityStatus": {
"type": "string",
"nullable": true
},
"provisioningStatus": {
"type": "string",
"nullable": true
},
"service": {
"type": "string",
"nullable": true
}
}
},
"Error": {
"type": "object",
"properties": {
"error": {
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "Error code"
},
"message": {
"type": "string",
"description": "Error message"
},
"innerError": {
"type": "object",
"properties": {
"request-id": {
"type": "string",
"description": "Request identifier"
},
"date": {
"type": "string",
"format": "date-time",
"description": "Date of the error"
}
}
}
}
}
}
}
},
"responses": {
"BadRequestError": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"UnauthorizedError": {
"description": "Unauthorized",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"ForbiddenError": {
"description": "Forbidden",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
},
"NotFoundError": {
"description": "Not Found",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
},
"securitySchemes": {
"oauth2": {
"type": "oauth2",
"flows": {
"authorizationCode": {
"authorizationUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/authorize",
"tokenUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/token",
"scopes": {
"User.Read": "Read user profile",
"User.ReadWrite": "Read and write user profile",
"User.Read.All": "Read all users' profiles",
"User.ReadWrite.All": "Read and write all users' profiles",
"Directory.Read.All": "Read directory data",
"Directory.ReadWrite.All": "Read and write directory data",
"Directory.AccessAsUser.All": "Access directory as the signed-in user"
}
},
"clientCredentials": {
"tokenUrl": "https://login.microsoftonline.com/common/oauth2/v2.0/token",
"scopes": {
"User.Read.All": "Read all users' profiles",
"User.ReadWrite.All": "Read and write all users' profiles",
"Directory.Read.All": "Read directory data",
"Directory.ReadWrite.All": "Read and write directory data"
}
}
}
}
}
},
"security": [
{
"oauth2": []
}
]
}