openapi: 3.2.0 info: title: REST API. Tenants API version: 1.0.0 x-provenance: method: harvested authored_by: Cisco XDR harvested_by: API Evangelist harvested_on: '2026-08-19' first_party: true provider_published: true source_host: visibility.amp.cisco.com note: Anonymously fetchable Swagger 2.0 for nine IROH services plus the CTIA threat-intelligence API. The host returns real 404s on invented paths, so the 200s are genuine. x-evidence: - type: source url: https://visibility.amp.cisco.com/iroh/iroh-int/swagger.json - type: source url: https://private.intel.amp.cisco.com/swagger.json servers: - url: https://automate.us.security.cisco.com/{basePath} variables: basePath: default: api security: - oAuth2: - integration:read - private-intel:read - profile:read - inspect:read - users:read - invite:read - enrich:read - oauth:read - response:read - global-intel:read - ao:read - playbook:read tags: - name: Tenants paths: /v1/tenants: get: tags: - Tenants summary: Handler returning tenant and its sub tenants. description: 'Allowed Role(s): admin' operationId: getAllTenants responses: '200': description: 'An TenantGetAllResponse response model # This is used for returning a response of Tenant and Its sub tenants as a body' content: application/json: schema: type: array items: $ref: '#/components/schemas/Tenant' '403': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '500': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} /v1/tenants/{tenant_id}: get: tags: - Tenants summary: ReadTenantByID Handler to return tenant infomration. description: 'Allowed Role(s): admin' operationId: getTenantById parameters: - name: tenant_id in: path description: The id of tenant required: true schema: type: string x-go-name: TenantID x-go-name: TenantID responses: '200': description: 'The TenantResponse response model # This is used for returning a response of Tenant as body' content: application/json: schema: $ref: '#/components/schemas/Tenant' '403': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '404': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '500': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} put: tags: - Tenants summary: Handler to update a Tenant. description: 'Allowed Role(s): admin' operationId: tenantUpdateRequest parameters: - name: tenant_id in: path description: The id of Tenant required: true schema: type: string x-go-name: TenantID x-go-name: TenantID requestBody: description: The tenant to submit. content: application/json: schema: $ref: '#/components/schemas/TenantPutRequest' required: true x-go-name: RequestBody responses: '200': description: 'The TenantResponse response model # This is used for returning a response of Tenant as body' content: application/json: schema: $ref: '#/components/schemas/Tenant' '400': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '403': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '404': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '409': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '500': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} x-codegen-request-body-name: request_body /v2/tenants: post: tags: - Tenants summary: Handler to create a Tenant. description: 'Allowed Role(s): admin, user' operationId: TenantPostRequest responses: '201': description: Tenant content: application/json: schema: $ref: '#/components/schemas/Tenant' '400': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '403': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '404': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '409': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} '500': description: A Error is a swagger response to represent error headers: code: schema: type: integer format: int64 description: schema: type: string message: schema: type: string content: {} components: schemas: TierName: title: TierName ... type: string x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/lib-data/models EntitlementSummary: type: object properties: techvals: $ref: '#/components/schemas/TechVals' tier: $ref: '#/components/schemas/Tier' x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/lib-data/models State: type: string description: DefinitionState x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/lib-data/models Status: title: Status ... type: object properties: details: $ref: '#/components/schemas/StatusDetails' prev_state: $ref: '#/components/schemas/State' state: $ref: '#/components/schemas/State' x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/lib-data/models TechVals: type: object properties: data-maximal-size-in-GB: type: integer format: uint64 x-go-name: DataMaximalSizeInGB data-retention-in-days: type: integer format: uint64 x-go-name: DataRetentionInDays modules: $ref: '#/components/schemas/TechValsModules' description: TechVals organization or tenant data retention information x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/lib-data/models StatusDetails: type: object properties: code: type: string x-go-name: Code description: type: string x-go-name: Description message: type: string x-go-name: Message x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/lib-data/models Tenant: title: Tenant ... type: object properties: available_version: type: string x-go-name: AvailableVersion created_by: type: string x-go-name: CreatedBy created_on: type: string format: date-time x-go-name: CreatedOn deleted: type: boolean x-go-name: Deleted description: type: string x-go-name: Description disable_auto_upgrade: type: boolean x-go-name: DisableAutoUpgrade enabled: type: boolean x-go-name: Enabled entitlement_summary: $ref: '#/components/schemas/EntitlementSummary' externalId: type: string x-go-name: ExternalID features: type: array items: type: string x-go-name: Features id: type: string x-go-name: TenantID is_xdr_enabled: type: boolean x-go-name: IsXDREnabled name: type: string x-go-name: Name parent_id: type: string x-go-name: ParentID status: $ref: '#/components/schemas/Status' tenant_name: type: string x-go-name: TenantName unique_name: type: string x-go-name: UniqueName updated_by: type: string x-go-name: UpdatedBy updated_on: type: string format: date-time x-go-name: UpdatedOn version: type: string x-go-name: Version x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/be-console/models TenantPutRequest: title: TenantPutRequest ... type: object properties: description: type: string x-go-name: Description enabled: type: boolean x-go-name: Enabled x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/be-console/models TechValsModules: title: TechValsModules ... type: string x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/lib-data/models Tier: type: object properties: enforce?: type: boolean x-go-name: Enforce quantity: type: integer format: uint64 x-go-name: Quantity title: $ref: '#/components/schemas/TierName' unit: type: string x-go-name: Unit description: Tier organization or tenant tier level information x-go-package: bitbucket-eng-sjc1.cisco.com/bitbucket/nextg/lib-data/models securitySchemes: oAuth2: type: oauth2 flows: clientCredentials: tokenUrl: https://visibility.amp.cisco.com/iroh/oauth2/token scopes: telemetry: Collect application data for analytics integration:read: Manage your modules private-intel:read: Access Private Intelligence admin: Provide admin privileges cognitive: Cognitive Integration profile:read: Get your profile information inspect:read: Extract Observables and data from text asset: Access and modify your assets event: Read IROH Events feedback: Submit Customer Feedback sse: SSE Integration. Manage your Devices. registry: Manage registry entries users:read: Manage users of your organization investigation: Perform threat analysis investigation invite:read: Invite users into your organization casebook: Access and modify your casebooks playbook: Access and modify your playbooks orbital: Orbital Integration. enrich:read: Query your configured modules for threat intelligence oauth:read: Manage OAuth2 Clients vault: Grants access to Module Vaults response:read: List and execute response actions using configured modules notification: Receive notifications from integrations global-intel:read: Access AMP Global Intelligence webhook: Manage your Webhooks ao:read: AO Integration. x-original-swagger-version: '2.0'