openapi: 3.2.0 info: title: Gloria Terminal Articles API version: 1.0.0 description: AI-powered crypto intelligence API providing real-time news with sentiment analysis, market narratives, category recaps, and articles. contact: name: Gloria Terminal url: https://itsgloria.ai servers: - url: https://ai.gloriaterminal.com description: Production security: - BearerAuth: [] - TokenQuery: [] tags: - name: Articles description: Long-form articles generated from news events paths: /articles: get: operationId: getArticles tags: - Articles summary: List articles description: Returns a paginated list of articles with optional filtering. parameters: - name: limit in: query description: Items per page (max 100) schema: type: integer default: 20 maximum: 100 - name: page in: query description: Page number (1-indexed) schema: type: integer default: 1 minimum: 1 - name: category in: query description: Filter by category schema: type: string - name: search in: query description: Search in headline and content schema: type: string - name: type in: query description: Filter by article type schema: type: string responses: '200': description: Paginated article list content: application/json: schema: type: array items: $ref: '#/components/schemas/Article' '401': $ref: '#/components/responses/Unauthorized' /articles/{article_id}: get: operationId: getArticleById tags: - Articles summary: Get a single article parameters: - name: article_id in: path required: true schema: type: string responses: '200': description: Article content: application/json: schema: $ref: '#/components/schemas/Article' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' components: schemas: Article: type: object required: - id - data - created_at properties: id: type: string data: type: object additionalProperties: true description: Article content and metadata created_at: type: string format: date-time ErrorResponse: type: object required: - detail properties: detail: type: string description: Error message responses: NotFound: description: Resource not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' Unauthorized: description: Missing or invalid authentication token content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: JWT description: JWT token obtained from `/auth/verify` or `/user/api-tokens`. TokenQuery: type: apiKey in: query name: token description: JWT token passed as a query parameter. Equivalent to `BearerAuth`.