Palo Alto Networks MSSP Managed Tenant Lifecycle Endpoints API
The MSSP Managed Tenant Lifecycle Endpoints API from Palo Alto Networks — 3 operation(s) for mssp managed tenant lifecycle endpoints.
The MSSP Managed Tenant Lifecycle Endpoints API from Palo Alto Networks — 3 operation(s) for mssp managed tenant lifecycle endpoints.
openapi: 3.2.0
info:
title: 'Prisma Cloud: Managed Security Service Provider (MSSP) MSSP Managed Tenant Lifecycle Endpoints API'
description: 'APIs to interact with the MSSP Backend Service
# Authentication
'
version: '1.0'
servers:
- url: https://mssp-api.prismacloud.io
tags:
- name: MSSP Managed Tenant Lifecycle Endpoints
paths:
/api/v1/mssp/{mssp-id}/managed-tenant:
get:
tags:
- MSSP Managed Tenant Lifecycle Endpoints
summary: Get the managed tenants for an MSSP
description: Gets the list of managed tenants for an MSSP, optionally filterable by tenant group.
operationId: getManagedTenants
parameters:
- name: mssp-id
in: path
description: the mssp the managed tenants belong to
required: true
schema:
type: string
- name: tenant_group
in: query
description: the tenant groups the managed tenants belong to, accepts multiple. Maximum limit of 10
required: false
schema:
uniqueItems: true
type: array
items:
type: string
format: uuid
- name: show_synthetic_tenant
in: query
description: show synthetic tenant, defaults to false
required: false
schema:
type: boolean
default: false
- name: show_deleted_tenants
in: query
description: show deleted tenants, defaults to false
required: false
schema:
type: boolean
default: false
- name: next_page_token
in: query
description: pagination token to continue a previous query
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json; charset=UTF-8:
schema:
$ref: '#/components/schemas/ManagedTenantsResponse'
'400':
description: Client error. One of the required arguments in the request body is not correctly supplied
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: The MSSP does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate limiting error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- UserJwt: []
x-public: 'true'
post:
tags:
- MSSP Managed Tenant Lifecycle Endpoints
summary: Create a new managed tenant
description: Creates a new managed tenant belonging to the MSSP.
operationId: createManagedTenant
parameters:
- name: mssp-id
in: path
description: the id of the MSSP of interest
required: true
schema:
type: string
requestBody:
content:
application/json; charset=UTF-8:
schema:
$ref: '#/components/schemas/CreateManagedTenantRequest'
required: true
responses:
'202':
description: Accepted. Tenant Creation has async components
content:
application/json; charset=UTF-8:
schema:
$ref: '#/components/schemas/ManagedTenantResponse'
'400':
description: Client error. One of the required arguments is missing or fails a constraint
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: The MSSP does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate limiting
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- UserJwt: []
x-public: 'true'
/api/v1/mssp/{mssp-id}/managed-tenant/{tenant-id}:
get:
tags:
- MSSP Managed Tenant Lifecycle Endpoints
summary: Get the details of an existing managed tenant
description: Returns the details of an existing MSSP.
operationId: getManagedTenantById
parameters:
- name: mssp-id
in: path
description: the mssp the managed tenants belong to
required: true
schema:
type: string
- name: tenant-id
in: path
description: the prisma id or external tenant id of the managed tenant of interest
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json; charset=UTF-8:
schema:
$ref: '#/components/schemas/ManagedTenantDetailedResponse'
'400':
description: Client error. One of the required arguments in the request body is not correctly supplied
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: The managed tenant does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate limiting error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- UserJwt: []
x-public: 'true'
delete:
tags:
- MSSP Managed Tenant Lifecycle Endpoints
summary: Delete a managed tenant
description: Marks the requested MSSP as deleted.
operationId: softDeleteManagedTenant
parameters:
- name: mssp-id
in: path
description: the mssp the managed tenants belong to
required: true
schema:
type: string
- name: tenant-id
in: path
description: the prisma id or external tenant if of the managed tenant of interest
required: true
schema:
type: string
responses:
'202':
description: Deletion accepted
'404':
description: The managed tenant does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate limiting error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- UserJwt: []
x-public: 'true'
patch:
tags:
- MSSP Managed Tenant Lifecycle Endpoints
summary: Modify an existing managed tenant
description: Modify select attributes of an existing managed tenant, such as updating its MSSP ID
operationId: updateManagedTenant
parameters:
- name: mssp-id
in: path
description: the mssp the managed tenants belong to
required: true
schema:
type: string
- name: tenant-id
in: path
description: the prisma id or external tenant id of the managed tenant of interest
required: true
schema:
type: string
requestBody:
content:
application/json; charset=UTF-8:
schema:
$ref: '#/components/schemas/UpdateManagedTenantRequest'
required: true
responses:
'200':
description: OK
content:
application/json; charset=UTF-8:
schema:
$ref: '#/components/schemas/ManagedTenantResponse'
'400':
description: Client error. One of the required arguments in the request body is not correctly supplied
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: The managed tenant does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate limiting error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
security:
- UserJwt: []
x-public: 'true'
/api/v1/mssp/{mssp-id}/managed-tenant/{tenant-id}/login:
get:
tags:
- MSSP Managed Tenant Lifecycle Endpoints
summary: Seamless login
description: Seamless login to managed tenant
operationId: seamlessLogin
parameters:
- name: mssp-id
in: path
description: the mssp the managed tenants belong to
required: true
schema:
type: string
- name: tenant-id
in: path
description: the prisma id or external tenant if of the managed tenant of interest
required: true
schema:
type: string
- name: landing_page
in: query
description: The landing page for redirection on prisma tenant
required: false
schema:
type: string
responses:
'200':
description: Login Successful
content:
application/json:
schema:
$ref: '#/components/schemas/SeamlessLoginResponse'
'400':
description: MsspId doesnt match with token
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Authentication error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Tenant Not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'429':
description: Rate limiting error
content:
application/json:
schema:
$ref: '#/components/schemas/SeamlessLoginResponse'
security:
- UserJwt: []
x-public: 'true'
components:
schemas:
ManagedTenantResponse:
type: object
properties:
prismaId:
type: string
externalTenantId:
type: string
customerName:
type: string
companyName:
type: string
status:
type: string
enum:
- ACTIVE
- PROVISIONING
- UPDATING
- DELETING
- DELETED
- OFFBOARDING
- ERRORED
isSynthetic:
type: boolean
wasMigrated:
type: boolean
msspId:
type: string
tenantGroupId:
type: string
format: uuid
planType:
type: string
enum:
- RS_STANDARD
- RS_FOUNDATION
- RS_ADVANCED
contactInfo:
$ref: '#/components/schemas/ContactInfo'
stack:
type: string
region:
type: string
baseApiUrl:
type: string
tenantLicense:
$ref: '#/components/schemas/ManagedTenantLicenseResponse'
createdBy:
type: string
createdAt:
type: integer
format: int64
modules:
type: array
items:
$ref: '#/components/schemas/ModuleInfo'
erroredBy:
type: string
format: uuid
ManagedTenantDetailedResponse:
type: object
properties:
prismaId:
type: string
externalTenantId:
type: string
customerName:
type: string
companyName:
type: string
status:
type: string
enum:
- ACTIVE
- PROVISIONING
- UPDATING
- DELETING
- DELETED
- OFFBOARDING
- ERRORED
isSynthetic:
type: boolean
wasMigrated:
type: boolean
msspId:
type: string
tenantGroupId:
type: string
format: uuid
planType:
type: string
enum:
- RS_STANDARD
- RS_FOUNDATION
- RS_ADVANCED
contactInfo:
$ref: '#/components/schemas/ContactInfo'
stack:
type: string
region:
type: string
baseApiUrl:
type: string
tenantLicense:
$ref: '#/components/schemas/ManagedTenantLicenseResponse'
createdBy:
type: string
createdAt:
type: integer
format: int64
modules:
type: array
items:
$ref: '#/components/schemas/ModuleInfo'
erroredBy:
type: string
format: uuid
policyGroups:
type: array
items:
$ref: '#/components/schemas/PolicyGroupInfo'
ModuleInfoRequest:
required:
- enabled
- featureName
type: object
properties:
featureName:
pattern: iam-security
type: string
enabled:
type: boolean
additionalData:
type: object
additionalProperties:
type: object
ModuleInfo:
required:
- feature_name
type: object
properties:
feature_name:
type: string
enabled:
type: boolean
billing_type:
type: string
enum:
- TRIAL
- BUY
state:
type: string
enum:
- PROVISION_STARTED
- PROVISION_SUCCESSFUL
- PROVISION_FAILED
additional_data:
type: object
additionalProperties:
type: object
ManagedTenantLicenseResponse:
type: object
properties:
tenantLicenseId:
type: string
serialNumber:
type: string
licensePoolId:
type: string
allocatedCredits:
type: integer
format: int32
startDate:
type: integer
format: int64
endDate:
type: integer
format: int64
ContactInfo:
required:
- email
- firstName
- lastName
type: object
properties:
firstName:
maxLength: 63
minLength: 1
type: string
lastName:
maxLength: 63
minLength: 1
type: string
email:
maxLength: 128
minLength: 1
type: string
ErrorResponse:
required:
- error
type: object
properties:
error:
$ref: '#/components/schemas/Error'
PolicyGroupInfo:
type: object
properties:
id:
type: string
format: uuid
name:
type: string
policyCount:
type: integer
format: int32
SeamlessLoginResponse:
type: object
properties:
token:
type: string
location:
type: string
LicenseInfo:
required:
- allocatedCredits
- licensePoolId
type: object
properties:
licensePoolId:
type: string
allocatedCredits:
minimum: 1
type: integer
format: int32
Error:
required:
- code
- message
type: object
properties:
code:
type: string
message:
type: string
target:
type: string
details:
type: array
items:
$ref: '#/components/schemas/Error'
UpdateManagedTenantRequest:
type: object
properties:
tenantGroupId:
type: string
format: uuid
companyName:
maxLength: 63
minLength: 3
type: string
licenseInfo:
$ref: '#/components/schemas/LicenseInfo'
modules:
type: array
items:
$ref: '#/components/schemas/ModuleInfoRequest'
ManagedTenantsResponse:
type: object
properties:
value:
type: array
items:
$ref: '#/components/schemas/ManagedTenantResponse'
nextPageToken:
type: string
CreateManagedTenantRequest:
required:
- companyName
- contactInfo
- licenseInfo
- name
- planType
- region
type: object
properties:
name:
maxLength: 63
minLength: 3
type: string
companyName:
maxLength: 63
minLength: 3
type: string
region:
type: string
tenantGroupId:
type: string
format: uuid
planType:
type: string
enum:
- RS_STANDARD
- RS_FOUNDATION
- RS_ADVANCED
contactInfo:
$ref: '#/components/schemas/ContactInfo'
licenseInfo:
$ref: '#/components/schemas/LicenseInfo'
modules:
type: array
items:
$ref: '#/components/schemas/ModuleInfoRequest'
securitySchemes:
ServiceJwt:
type: http
description: Service to Service communication JWT. Such tokens are available to other microservices
scheme: bearer
bearerFormat: JWT
UserJwt:
type: http
description: JWT for User to Service communication. Such tokens are available to MSSP account users
scheme: bearer
bearerFormat: JWT
x-tagGroups:
- tags:
- User Authentication
- MSSP Account Management
- User Management
- MSSP Managed Tenant Lifecycle Endpoints
- Tenant Group Lifecycle Endpoints
- Policy Group Lifecycle Endpoints
- Policy Group to Tenant Group Management
- MSSP Operations Retry
- Mssp License Endpoints
- Stack Details Endpoint
- Proxy Endpoint Provider
name: public
- tags:
- Managed Tenant Management Service
- MSSP Async Change Management
- Licensing Job Schedule Management
- OIDC Discovery Endpoint
- MSSP Account Management Service Endpoint
name: service
- tags:
- Hard Delete Managed Tenant
name: support