openapi: 3.2.0 info: title: Fast Admin API version: 0.1.0 x-spec-profile: public-filtered x-spec-note: This is the PUBLIC spec for external agents + ChatGPT Actions. Super-admin and internal debug routes are excluded. Regenerated via backend/scripts/filter_public_openapi.py. description: Public API for external agents and ChatGPT Custom GPT Actions. servers: - url: https://matchitup.in description: Production tags: - name: Admin paths: /api/admin/community-admin/invite-analytics/{community_id}: get: tags: - Admin summary: Get Community Invite Analytics description: 'Get aggregated invite code analytics for a community. Available to community admins of that community.' operationId: get_community_invite_analytics_api_admin_community_admin_invite_analytics__community_id__get security: - HTTPBearer: [] parameters: - name: community_id in: path required: true schema: type: string title: Community Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/dashboard: get: tags: - Admin summary: Get Community Admin Dashboard description: Get community admin dashboard data. Optionally specify community_id for multi-community admins. operationId: get_community_admin_dashboard_api_admin_community_admin_dashboard_get security: - HTTPBearer: [] parameters: - name: community_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Community Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/members: get: tags: - Admin summary: Get Community Admin Members description: Get members list for community admin. Optionally specify community_id for multi-community admins. operationId: get_community_admin_members_api_admin_community_admin_members_get security: - HTTPBearer: [] parameters: - name: page in: query required: false schema: type: integer default: 0 title: Page - name: limit in: query required: false schema: type: integer default: 20 title: Limit - name: search in: query required: false schema: anyOf: - type: string - type: 'null' title: Search - name: community_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Community Id - name: circle_filter in: query required: false schema: anyOf: - type: string - type: 'null' title: Circle Filter responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/members/{member_id}: delete: tags: - Admin summary: Remove Member From Community description: 'Remove a member from community. Works for both Community Admins (their own community) and Super Admins (any community).' operationId: remove_member_from_community_api_admin_community_admin_members__member_id__delete security: - HTTPBearer: [] parameters: - name: member_id in: path required: true schema: type: string title: Member Id - name: community_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Community Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/codes: post: tags: - Admin summary: Create Community Code Endpoint description: Create a new community code operationId: create_community_code_endpoint_api_admin_community_admin_codes_post requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCodeRequest' required: true responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /api/admin/community-admin/codes/{code_id}: put: tags: - Admin summary: Update Community Code Endpoint description: Update a community code status operationId: update_community_code_endpoint_api_admin_community_admin_codes__code_id__put security: - HTTPBearer: [] parameters: - name: code_id in: path required: true schema: type: string title: Code Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateCodeStatusRequest' responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/code-qr/{code}: get: tags: - Admin summary: Get Code Qr description: Get QR code for a specific community code operationId: get_code_qr_api_admin_community_admin_code_qr__code__get security: - HTTPBearer: [] parameters: - name: code in: path required: true schema: type: string title: Code responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/circles/{circle_id}/visibility: put: tags: - Admin summary: Update Circle Visibility Community Admin description: 'Update brew circle visibility - Community Admin endpoint. Community admins can only change visibility for circles in their own communities. - public: Visible on homepage (if community is open), anyone can request to join - community: Only visible to community members - private: Invite-only, hidden from non-members' operationId: update_circle_visibility_community_admin_api_admin_community_admin_circles__circle_id__visibility_put security: - HTTPBearer: [] parameters: - name: circle_id in: path required: true schema: type: string title: Circle Id - name: visibility in: query required: true schema: type: string title: Visibility - name: community_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Community Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/circle-requests: get: tags: - Admin summary: Get Community Admin Circle Requests description: 'Get circle join requests for communities this admin manages. Community admins can view and manage requests for their communities.' operationId: get_community_admin_circle_requests_api_admin_community_admin_circle_requests_get security: - HTTPBearer: [] parameters: - name: status in: query required: false schema: anyOf: - type: string - type: 'null' title: Status responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/circle-requests/{request_id}/approve: post: tags: - Admin summary: Community Admin Approve Request description: 'Approve a circle join request - Community Admin endpoint. Community admins can only approve requests for their own communities.' operationId: community_admin_approve_request_api_admin_community_admin_circle_requests__request_id__approve_post security: - HTTPBearer: [] parameters: - name: request_id in: path required: true schema: type: string title: Request Id - name: admin_note in: query required: false schema: anyOf: - type: string - type: 'null' default: '' title: Admin Note responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/admin/community-admin/circle-requests/{request_id}/reject: post: tags: - Admin summary: Community Admin Reject Request description: 'Reject a circle join request - Community Admin endpoint. Community admins can only reject requests for their own communities.' operationId: community_admin_reject_request_api_admin_community_admin_circle_requests__request_id__reject_post security: - HTTPBearer: [] parameters: - name: request_id in: path required: true schema: type: string title: Request Id - name: admin_note in: query required: false schema: anyOf: - type: string - type: 'null' default: '' title: Admin Note responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' components: schemas: ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type type: object required: - loc - msg - type title: ValidationError UpdateCodeStatusRequest: properties: status: type: string title: Status community_id: anyOf: - type: string - type: 'null' title: Community Id type: object required: - status title: UpdateCodeStatusRequest HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError CreateCodeRequest: properties: max_uses: anyOf: - type: integer - type: 'null' title: Max Uses expires_days: anyOf: - type: integer - type: 'null' title: Expires Days discount_percent: anyOf: - type: integer - type: 'null' title: Discount Percent default: 0 discount_valid_months: anyOf: - type: integer - type: 'null' title: Discount Valid Months default: 0 community_id: anyOf: - type: string - type: 'null' title: Community Id grant_tier: anyOf: - type: string - type: 'null' title: Grant Tier grant_duration_months: anyOf: - type: integer - type: 'null' title: Grant Duration Months default: 0 brew_circle_id: anyOf: - type: string - type: 'null' title: Brew Circle Id brew_circle_name: anyOf: - type: string - type: 'null' title: Brew Circle Name type: object title: CreateCodeRequest securitySchemes: HTTPBearer: type: http scheme: bearer