openapi: 3.1.0 info: title: Bloomberg Buyside Enterprise Solutions Bloomberg Analytics Allocations Portfolios API description: Access to Bloomberg's analytics engine for fixed income, derivatives, and multi-asset calculations including scenario analysis, stress testing, yield curve construction, and pricing models. Part of Bloomberg's buy-side enterprise solutions for institutional investors. version: '1.0' contact: name: Bloomberg Support url: https://www.bloomberg.com/professional/support/ termsOfService: https://www.bloomberg.com/professional/terms-of-use/ servers: - url: https://api.bloomberg.com/analytics description: Bloomberg Analytics API Production security: - bearerAuth: [] tags: - name: Portfolios description: Create, read, update, and delete portfolio definitions paths: /v1/portfolios: get: operationId: listPortfolios summary: Bloomberg Buyside Enterprise Solutions List portfolios description: Retrieve a list of all portfolios accessible to the authenticated user, with optional filtering by portfolio type, status, or manager. tags: - Portfolios parameters: - name: type in: query description: Filter by portfolio type schema: type: string enum: - TRADING - MODEL - BENCHMARK - COMPOSITE - name: status in: query description: Filter by portfolio status schema: type: string enum: - ACTIVE - INACTIVE - CLOSED - name: manager in: query description: Filter by portfolio manager identifier schema: type: string - name: limit in: query description: Maximum number of results schema: type: integer default: 50 maximum: 200 - name: offset in: query description: Number of results to skip schema: type: integer default: 0 responses: '200': description: List of portfolios content: application/json: schema: type: object properties: totalCount: type: integer portfolios: type: array items: $ref: '#/components/schemas/Portfolio' '401': description: Unauthorized '403': description: Forbidden post: operationId: createPortfolio summary: Bloomberg Buyside Enterprise Solutions Create a portfolio description: Create a new portfolio with the specified configuration, including portfolio type, base currency, and benchmark assignment. tags: - Portfolios requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreatePortfolioRequest' responses: '201': description: Portfolio created successfully content: application/json: schema: $ref: '#/components/schemas/Portfolio' '400': description: Invalid request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized '409': description: Portfolio with this name already exists /v1/portfolios/{portfolioId}: get: operationId: getPortfolio summary: Bloomberg Buyside Enterprise Solutions Get portfolio details description: Retrieve detailed information about a specific portfolio, including its configuration, metadata, and current summary statistics. tags: - Portfolios parameters: - $ref: '#/components/parameters/portfolioId' responses: '200': description: Portfolio details content: application/json: schema: $ref: '#/components/schemas/Portfolio' '401': description: Unauthorized '404': description: Portfolio not found put: operationId: updatePortfolio summary: Bloomberg Buyside Enterprise Solutions Update a portfolio description: Update portfolio metadata and configuration, including name, description, benchmark, and status. tags: - Portfolios parameters: - $ref: '#/components/parameters/portfolioId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdatePortfolioRequest' responses: '200': description: Portfolio updated successfully content: application/json: schema: $ref: '#/components/schemas/Portfolio' '400': description: Invalid request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' '401': description: Unauthorized '404': description: Portfolio not found delete: operationId: deletePortfolio summary: Bloomberg Buyside Enterprise Solutions Delete a portfolio description: Delete a portfolio. This operation is irreversible and will remove all associated holdings and transaction history. tags: - Portfolios parameters: - $ref: '#/components/parameters/portfolioId' responses: '204': description: Portfolio deleted successfully '401': description: Unauthorized '404': description: Portfolio not found components: schemas: CreatePortfolioRequest: type: object required: - name - type - currency properties: name: type: string description: Portfolio name minLength: 1 maxLength: 256 description: type: string description: Portfolio description type: type: string enum: - TRADING - MODEL - BENCHMARK - COMPOSITE currency: type: string description: Base currency (ISO 4217) benchmarkId: type: string description: Benchmark identifier to assign manager: type: string description: Portfolio manager identifier inceptionDate: type: string format: date description: Portfolio inception date Portfolio: type: object properties: id: type: string description: Unique portfolio identifier name: type: string description: Portfolio name description: type: string description: Portfolio description type: type: string enum: - TRADING - MODEL - BENCHMARK - COMPOSITE description: Portfolio type status: type: string enum: - ACTIVE - INACTIVE - CLOSED description: Portfolio status currency: type: string description: Base currency (ISO 4217) benchmarkId: type: string description: Assigned benchmark identifier manager: type: string description: Portfolio manager identifier inceptionDate: type: string format: date description: Portfolio inception date totalMarketValue: type: number description: Total market value in base currency holdingsCount: type: integer description: Number of current holdings createdAt: type: string format: date-time description: Creation timestamp updatedAt: type: string format: date-time description: Last update timestamp UpdatePortfolioRequest: type: object properties: name: type: string description: type: string status: type: string enum: - ACTIVE - INACTIVE - CLOSED benchmarkId: type: string manager: type: string ErrorResponse: type: object properties: error: type: object properties: code: type: string message: type: string details: type: array items: type: object properties: field: type: string message: type: string parameters: portfolioId: name: portfolioId in: path required: true description: Unique portfolio identifier schema: type: string securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: Bloomberg API bearer token obtained via OAuth 2.0 authentication externalDocs: description: Bloomberg Analytics Documentation url: https://www.bloomberg.com/professional/product/analytics/