openapi: 3.0.2 info: title: metadata-api AWSAccount Person API version: '1.2' tags: - name: Person paths: /api/v1/internal/person/: get: tags: - Person summary: List Persons description: Get a list of all persons operationId: get_persons_internal_api_v1_internal_person__get parameters: - required: false schema: title: Is Active type: boolean name: is_active in: query - required: false schema: title: Is Public type: boolean name: is_public in: query - required: false schema: title: Vendor Id type: integer name: vendor_id in: query - required: false schema: title: Role type: string name: role in: query responses: '200': description: Successful Response content: application/json: schema: title: Response Get Persons Internal Api V1 Internal Person Get type: array items: $ref: '#/components/schemas/PersonOutAdmin' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] post: tags: - Person summary: Add Person description: Add a new person operationId: create_person_api_v1_internal_person__post requestBody: content: application/json: schema: $ref: '#/components/schemas/PersonCreate' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PersonOutAdmin' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /api/v1/internal/person/{person_id}/: get: tags: - Person summary: Get Person description: Get Person details by id operationId: get_person_internal_api_v1_internal_person__person_id___get parameters: - required: true schema: title: Person Id type: integer name: person_id in: path responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PersonOutAdmin' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] put: tags: - Person summary: Update person description: Update person details by id operationId: update_person_api_v1_internal_person__person_id___put parameters: - required: true schema: title: Person Id type: integer name: person_id in: path requestBody: content: application/json: schema: $ref: '#/components/schemas/PersonUpdate' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PersonOutAdmin' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] delete: tags: - Person summary: Delete person description: Delete a person record operationId: delete_person_api_v1_internal_person__person_id___delete parameters: - required: true schema: title: Person Id type: integer name: person_id in: path responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PersonOutAdmin' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /api/v1/internal/person/email/{email}/: get: tags: - Person summary: Get Person description: Get Person details by email operationId: get_person_by_email_internal_api_v1_internal_person_email__email___get parameters: - required: true schema: title: Email type: string name: email in: path responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PersonOutAdmin' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /api/v1/internal/person/ext/{person_id}/: get: tags: - Person summary: Get Extended Person description: Get Extended Person details by id operationId: get_ext_person_internal_api_v1_internal_person_ext__person_id___get parameters: - required: true schema: title: Person Id type: integer name: person_id in: path responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ExtPersonOutAdmin' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] components: schemas: PersonOutAdmin: title: PersonOutAdmin required: - first_name - last_name - email - vendor_id - is_active - is_public - id - created - modified type: object properties: first_name: title: First Name type: string last_name: title: Last Name type: string email: title: Email type: string phone: title: Phone type: string role: title: Role type: string vendor_id: title: Vendor Id type: integer is_active: title: Is Active type: boolean is_public: title: Is Public type: boolean notes: title: Notes type: string id: title: Id type: integer created: title: Created type: string format: date-time modified: title: Modified type: string format: date-time PersonCreate: title: PersonCreate required: - first_name - last_name - email - vendor_id type: object properties: first_name: title: First Name type: string last_name: title: Last Name type: string email: title: Email type: string phone: title: Phone type: string role: title: Role type: string vendor_id: title: Vendor Id type: integer is_active: title: Is Active type: boolean is_public: title: Is Public type: boolean notes: title: Notes type: string ValidationError: title: ValidationError required: - loc - msg - type type: object properties: loc: title: Location type: array items: anyOf: - type: string - type: integer msg: title: Message type: string type: title: Error Type type: string ExtVendorOutAdmin: title: ExtVendorOutAdmin required: - text_id - full_name - display_name - internal_name - is_active - is_public - id - created - modified type: object properties: text_id: title: Text Id type: string full_name: title: Full Name type: string display_name: title: Display Name type: string description: title: Description type: string website: title: Website type: string logo_url: title: Logo Url type: string icon_url: title: Icon Url type: string internal_name: title: Internal Name type: string is_active: title: Is Active type: boolean is_public: title: Is Public type: boolean notes: title: Notes type: string id: title: Id type: integer created: title: Created type: string format: date-time modified: title: Modified type: string format: date-time PersonUpdate: title: PersonUpdate type: object properties: first_name: title: First Name type: string last_name: title: Last Name type: string email: title: Email type: string phone: title: Phone type: string role: title: Role type: string vendor_id: title: Vendor Id type: integer is_active: title: Is Active type: boolean is_public: title: Is Public type: boolean notes: title: Notes type: string HTTPValidationError: title: HTTPValidationError type: object properties: detail: title: Detail type: array items: $ref: '#/components/schemas/ValidationError' ExtPersonOutAdmin: title: ExtPersonOutAdmin required: - first_name - last_name - email - id - is_active - is_public - created - modified type: object properties: first_name: title: First Name type: string last_name: title: Last Name type: string email: title: Email type: string phone: title: Phone type: string role: title: Role type: string id: title: Id type: integer is_active: title: Is Active type: boolean is_public: title: Is Public type: boolean notes: title: Notes type: string created: title: Created type: string format: date-time modified: title: Modified type: string format: date-time vendor: $ref: '#/components/schemas/ExtVendorOutAdmin' securitySchemes: HTTPBearer: type: http scheme: bearer