openapi: 3.1.0 info: title: AFM Access Profiles Partners API version: 0.1.0 tags: - name: Partners paths: /app/v1/partners: get: tags: - Partners summary: Get Partners description: Get a paginated list of partners operationId: get_partners_app_v1_partners_get security: - HTTPBearer: [] parameters: - name: page in: query required: false schema: type: integer default: 1 title: Page - name: page_size in: query required: false schema: type: integer default: 20 title: Page Size - name: search in: query required: false schema: anyOf: - type: string - type: 'null' title: Search responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedPartnersResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /app/v1/partners/{partner_id}: get: tags: - Partners summary: Get Partner Detail description: Get Partner details by ID operationId: get_partner_detail_app_v1_partners__partner_id__get security: - HTTPBearer: [] parameters: - name: partner_id in: path required: true schema: type: string title: Partner Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PartnerDetailResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' components: schemas: HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError PartnerResponse: properties: id: type: string format: uuid title: Id name: type: string title: Name access_profile_id: type: string format: uuid title: Access Profile Id access_profile_name: anyOf: - type: string - type: 'null' title: Access Profile Name rate_limit_profile_id: type: string format: uuid title: Rate Limit Profile Id rate_limit_profile_name: anyOf: - type: string - type: 'null' title: Rate Limit Profile Name type: object required: - id - name - access_profile_id - access_profile_name - rate_limit_profile_id - rate_limit_profile_name title: PartnerResponse 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 PartnerDetailResponse: properties: id: type: string format: uuid title: Id name: type: string title: Name access_profile_id: type: string format: uuid title: Access Profile Id access_profile_name: anyOf: - type: string - type: 'null' title: Access Profile Name rate_limit_profile_id: type: string format: uuid title: Rate Limit Profile Id rate_limit_profile_name: anyOf: - type: string - type: 'null' title: Rate Limit Profile Name created_at: type: string format: date-time title: Created At created_by: anyOf: - type: string format: uuid - type: 'null' title: Created By status: type: string title: Status type: type: string title: Type partner_org: type: boolean title: Partner Org type: object required: - id - name - access_profile_id - access_profile_name - rate_limit_profile_id - rate_limit_profile_name - created_at - created_by - status - type - partner_org title: PartnerDetailResponse PaginatedPartnersResponse: properties: entries: items: $ref: '#/components/schemas/PartnerResponse' type: array title: Entries total: type: integer title: Total page: type: integer title: Page page_size: type: integer title: Page Size total_pages: type: integer title: Total Pages has_next: type: boolean title: Has Next has_prev: type: boolean title: Has Prev type: object required: - entries - total - page - page_size - total_pages - has_next - has_prev title: PaginatedPartnersResponse securitySchemes: HTTPBearer: type: http scheme: bearer