openapi: 3.1.0 info: title: SAP Business Intelligence SAP Analytics Cloud Catalog Stories API description: REST API for SAP Analytics Cloud enabling data integration, story management, model administration, and analytics operations. Provides programmatic access to create and manage stories, models, data imports, and user administration within SAP Analytics Cloud. version: '1.0' contact: name: SAP Support url: https://support.sap.com/en/index.html termsOfService: https://www.sap.com/about/legal/terms-of-use.html servers: - url: https://{tenant}.sapanalytics.cloud/api/v1 description: SAP Analytics Cloud Tenant variables: tenant: default: mytenant description: SAP Analytics Cloud tenant identifier security: - oauth2: [] tags: - name: Stories description: Manage analytics stories and dashboards paths: /stories: get: operationId: listStories summary: SAP Business Intelligence List stories description: Retrieve a list of all analytics stories accessible to the authenticated user. tags: - Stories parameters: - $ref: '#/components/parameters/limitParam' - $ref: '#/components/parameters/offsetParam' - name: search in: query description: Search stories by name schema: type: string responses: '200': description: List of stories content: application/json: schema: $ref: '#/components/schemas/StoryCollection' '401': description: Unauthorized '403': description: Forbidden post: operationId: createStory summary: SAP Business Intelligence Create a story description: Create a new analytics story with specified configuration and layout. tags: - Stories requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateStoryRequest' responses: '201': description: Story created content: application/json: schema: $ref: '#/components/schemas/Story' '400': description: Invalid request '401': description: Unauthorized /stories/{storyId}: get: operationId: getStory summary: SAP Business Intelligence Get a story description: Retrieve details of a specific analytics story including its pages and widgets. tags: - Stories parameters: - $ref: '#/components/parameters/storyId' responses: '200': description: Story details content: application/json: schema: $ref: '#/components/schemas/Story' '401': description: Unauthorized '404': description: Story not found put: operationId: updateStory summary: SAP Business Intelligence Update a story description: Update properties of an existing analytics story. tags: - Stories parameters: - $ref: '#/components/parameters/storyId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateStoryRequest' responses: '200': description: Story updated content: application/json: schema: $ref: '#/components/schemas/Story' '400': description: Invalid request '401': description: Unauthorized '404': description: Story not found delete: operationId: deleteStory summary: SAP Business Intelligence Delete a story description: Delete an existing analytics story. tags: - Stories parameters: - $ref: '#/components/parameters/storyId' responses: '204': description: Story deleted '401': description: Unauthorized '404': description: Story not found /stories/{storyId}/publish: post: operationId: publishStory summary: SAP Business Intelligence Publish a story description: Publish an analytics story to make it available to other users. tags: - Stories parameters: - $ref: '#/components/parameters/storyId' responses: '200': description: Story published content: application/json: schema: $ref: '#/components/schemas/Story' '401': description: Unauthorized '404': description: Story not found components: parameters: limitParam: name: limit in: query description: Maximum number of results to return schema: type: integer default: 50 minimum: 1 maximum: 1000 storyId: name: storyId in: path required: true description: Story unique identifier schema: type: string offsetParam: name: offset in: query description: Number of results to skip for pagination schema: type: integer default: 0 minimum: 0 schemas: StoryCollection: type: object properties: items: type: array items: $ref: '#/components/schemas/Story' totalCount: type: integer description: Total number of stories available CreateStoryRequest: type: object required: - name properties: name: type: string description: Name for the new story description: type: string description: Description for the story folderId: type: string description: Target folder ID Widget: type: object properties: id: type: string description: Widget unique identifier type: type: string enum: - Chart - Table - Filter - Text - Image - Shape description: Type of widget name: type: string description: Widget display name modelId: type: string description: Associated model ID UpdateStoryRequest: type: object properties: name: type: string description: Updated name description: type: string description: Updated description folderId: type: string description: Updated folder ID Page: type: object properties: id: type: string description: Page unique identifier name: type: string description: Page name widgets: type: array items: $ref: '#/components/schemas/Widget' description: Widgets on the page Story: type: object properties: id: type: string description: Unique identifier for the story name: type: string description: Name of the story description: type: string description: Description of the story createdBy: type: string description: User who created the story createdTime: type: string format: date-time description: When the story was created modifiedBy: type: string description: User who last modified the story modifiedTime: type: string format: date-time description: When the story was last modified status: type: string enum: - Draft - Published description: Current publication status folderId: type: string description: ID of the folder containing the story pages: type: array items: $ref: '#/components/schemas/Page' description: Pages within the story securitySchemes: oauth2: type: oauth2 description: OAuth 2.0 authentication for SAP Analytics Cloud flows: clientCredentials: tokenUrl: https://{tenant}.sapanalytics.cloud/oauth/token scopes: {} externalDocs: description: SAP Analytics Cloud API Documentation url: https://help.sap.com/docs/SAP_ANALYTICS_CLOUD