AlayaCare visit inbox API
The visit inbox API from AlayaCare — 14 operation(s) for visit inbox.
The visit inbox API from AlayaCare — 14 operation(s) for visit inbox.
openapi: 3.0.0
info:
version: 1.0.19-oas3
title: AlayaCare Accounting Accounts visit inbox API
description: '**AlayaCare IDs:**
The following terms are used to reference IDs that identify resources in AlayaCare:
- id
- visit_id
- premium_id
- visit_premium_id
- employee_id
- cost_centre_id
- client_id
**External IDs**
The following terms are used to reference IDs that identify resources systems external to AlayaCare:
- employee_external_id
- client_external_id
External IDs are required to be unique.
No other assumptions are made regarding their format they are treated as strings.
'
servers:
- url: https://example.alayacare.com/ext/api/v2/accounting
security:
- basic_auth: []
tags:
- name: visit inbox
paths:
/v1/inbox/visits:
get:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin` who was assigned the associated referral or service.
# Description
Get a collection of Visits for a given referral or service.
One of `referral_id` or `service_id` must be provided.
'
parameters:
- $ref: '#/components/parameters/ReferralIdQueryParam'
- $ref: '#/components/parameters/ServiceIdQueryParam'
- $ref: '#/components/parameters/PageNumberParam'
- $ref: '#/components/parameters/ItemsPerPageParam'
- in: query
name: sort_by
schema:
type: string
enum:
- last_modified
- start_at
default: start_at
- $ref: '#/components/parameters/SortOrderParam'
responses:
200:
description: Successfully retrieved a collection of Visits.
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitPageResponse'
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}:
get:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin` who created or was assigned the visit.
# Description
Get the details of a Visit for a given Visit ID.
'
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
responses:
200:
description: Successfully retrieved a Visit.
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitDetailResponse'
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/by_inbox_id/{visit_inbox_id}:
get:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin` who created or was assigned the visit.
# Description
Get the details of a Visit for a given inbox Visit ID.
'
parameters:
- in: path
name: visit_inbox_id
schema:
type: string
description: ID of a visit in the supply system.
required: true
responses:
200:
description: Successfully retrieved a Visit.
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitDetailResponse'
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/schedule:
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Schedule a visit by the Supply organization for an associated service or
referral.
One of `referral_id` or `service_id` must be provided.
'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitScheduleRequest'
responses:
201:
description: Successfully scheduled a Visit.
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitScheduleResponse'
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/assign:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Assign an employee to a visit.
'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitAssignRequest'
responses:
204:
description: Successfully assigned an employee to the visit.
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/unassign:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Unassign an employee from a visit.
'
responses:
204:
description: Successfully unassigned the employee from the visit.
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/delete:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Delete a visit of a service referral. The supply organization deleting the visit
must be identical to the one that scheduled the original visit.
'
responses:
204:
description: Successfully deleted the visit.
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/hold:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Hold a visit of a service referral. The supply organization holding the visit
must be identical to the one that scheduled the original visit.
'
responses:
204:
description: Successfully held the visit.
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/cancel:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Cancel a visit of a service referral. The supply organization cancelling the visit
must be identical to the one that scheduled the original visit.
'
responses:
204:
description: Successfully cancelled the visit.
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/reactivate:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Reactivates a visit of a service referral. The supply organization ractivating the visit
must be identical to the one that scheduled the original visit.
'
responses:
204:
description: Successfully reactivated the visit.
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/adjust_timekeeping:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Adjust the timekeeping metadata of a visit. The supply organization holding the visit
must be identical to the one that scheduled the original visit.
'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitAdjustTimekeepingRequest'
responses:
204:
description: Successfully adjusted the verified date-times of the visit.
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/reschedule:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Reschedule a visit of a service referral. The supply organization rescheduling
the visit must be identical to the one that scheduled the original visit.
'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitRescheduleRequest'
responses:
200:
description: Successfully rescheduled visit.
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitRescheduleResponse'
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/tasks:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Create visit tasks for a visit scheduled by supply from a service referral.
Each inbox task id must correspond to a referral task''s inbox_id.
Inbox task ids that don''t have corresponding referral tasks will be ignored.
'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitTasksCreationRequest'
responses:
200:
description: Successfully created visit task.
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitTasksCreationResponse'
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
/v1/inbox/visits/{visit_id}/tasks/complete:
parameters:
- $ref: '#/components/parameters/VisitIdPathParam'
post:
tags:
- visit inbox
description: '# Authorization
Required role: supply `org_admin`.
# Description
Complete one (or more) visit task for the specified visit.<br><br>
Subsequent posts for the same task id updates the task.
'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitTaskCompletionRequest'
responses:
200:
description: Successfully completed visit tasks.
content:
application/json:
schema:
$ref: '#/components/schemas/InboxVisitTaskCollectionResponse'
x-amazon-apigateway-integration:
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${OfferApiFunctionV2.Arn}:live/invocations
httpMethod: POST
passthroughBehavior: when_no_match
type: aws_proxy
components:
schemas:
InboxVisitScheduleResponse:
type: object
properties:
id:
type: string
format: uuid
inbox_id:
type: string
minLength: 1
start_at:
type: string
format: date-time
end_at:
type: string
format: date-time
service_id:
type: string
format: uuid
referral_id:
type: string
format: uuid
required:
- id
- inbox_id
- start_at
- end_at
- service_id
- referral_id
InboxVisitTaskCollectionResponse:
type: object
properties:
tasks:
type: array
items:
$ref: '#/components/schemas/InboxVisitTaskCompletionCore'
required:
- tasks
InboxVisitRescheduleResponse:
type: object
properties:
id:
type: string
format: uuid
start_at:
type: string
format: date-time
end_at:
type: string
format: date-time
required:
- id
- start_at
- end_at
PageNumberCore:
type: integer
minimum: 1
default: 1
InboxVisitTaskCompletionCore:
type: object
properties:
id:
type: string
format: uuid
is_completed:
type: boolean
completed_at:
type: string
format: date-time
completion_comment:
type: string
required:
- id
- is_completed
SortOrderCore:
type: string
enum:
- asc
- desc
default: desc
InboxVisitCore:
allOf:
- $ref: '#/components/schemas/VisitCore'
- type: object
properties:
inbox_id:
type: string
InboxVisitPageResponse:
allOf:
- $ref: '#/components/schemas/PageCore'
- type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/InboxVisitCollectionResponse'
InboxVisitScheduleRequest:
type: object
properties:
inbox_id:
type: string
minLength: 1
start_at:
type: string
format: date-time
end_at:
type: string
format: date-time
service_id:
type: string
format: uuid
referral_id:
type: string
format: uuid
required:
- inbox_id
- start_at
- end_at
ItemsPerPageCore:
type: integer
minimum: 1
default: 100
PageCore:
description: Root page schema for returning collections.
type: object
properties:
page:
$ref: '#/components/schemas/PageNumberCore'
items_per_page:
$ref: '#/components/schemas/ItemsPerPageCore'
total_items:
type: integer
minimum: 0
total_pages:
type: integer
minimum: 0
required:
- page
- items_per_page
- total_items
- total_pages
InboxVisitCollectionResponse:
allOf:
- $ref: '#/components/schemas/InboxVisitCore'
VisitCore:
type: object
properties:
id:
type: string
format: uuid
referral_id:
type: string
format: uuid
service_id:
type: string
format: uuid
status:
type: string
enum:
- scheduled
- deleted
- cancelled
- on_hold
start_at:
type: string
format: date-time
end_at:
type: string
format: date-time
required:
- status
- id
- referral_id
- service_id
- start_at
- end_at
InboxVisitTaskCompletionRequest:
type: object
properties:
tasks:
type: array
minItems: 1
items:
$ref: '#/components/schemas/InboxVisitTaskCompletionCore'
required:
- tasks
InboxVisitAdjustTimekeepingRequest:
type: object
properties:
verified_start_at:
type: string
format: date-time
verified_end_at:
type: string
format: date-time
InboxVisitRescheduleRequest:
type: object
properties:
start_at:
type: string
format: date-time
end_at:
type: string
format: date-time
required:
- start_at
- end_at
InboxVisitTasksCreationRequest:
type: object
properties:
inbox_ids:
type: array
items:
type: string
required:
- inbox_ids
InboxVisitDetailResponse:
type: object
properties:
visit:
title: InboxVisitDetailCore
allOf:
- $ref: '#/components/schemas/InboxVisitCore'
- properties:
verified_start_at:
type: string
format: date-time
verified_end_at:
type: string
format: date-time
supply_employee:
title: InboxVisitDetailSupplyEmployeeResponse
type: object
properties:
id:
type: string
format: uuid
supply_persona_id:
type: string
format: uuid
ssn_placeholder:
type: string
inbox_employee_id:
type: integer
first_name:
type: string
last_name:
type: string
date_of_birth:
type: string
format: date
data:
type: object
required:
- id
- supply_persona_id
- ssn_placeholder
- inbox_employee_id
- first_name
- last_name
tasks:
type: array
items:
title: InboxVisitDetailVisitTaskResponse
type: object
properties:
id:
type: string
format: uuid
outbox_id:
type: string
is_completed:
type: boolean
completed_at:
type: string
format: date-time
completion_comment:
type: string
required:
- id
- is_completed
required:
- visit
- tasks
InboxVisitTasksCreationResponse:
type: object
properties:
tasks:
type: array
items:
title: InboxVisitTasksCreationItemResponse
type: object
properties:
id:
type: string
format: uuid
inbox_id:
type: string
required:
- id
- inbox_id
InboxVisitAssignRequest:
type: object
properties:
employee_id:
type: integer
first_name:
type: string
last_name:
type: string
ssn:
type: string
date_of_birth:
type: string
format: date
data:
type: object
required:
- employee_id
- first_name
- last_name
parameters:
SortOrderParam:
in: query
name: sort_order
schema:
$ref: '#/components/schemas/SortOrderCore'
ReferralIdQueryParam:
in: query
name: referral_id
schema:
type: string
format: uuid
PageNumberParam:
in: query
name: page
schema:
$ref: '#/components/schemas/PageNumberCore'
ServiceIdQueryParam:
in: query
name: service_id
schema:
type: string
format: uuid
ItemsPerPageParam:
in: query
name: items_per_page
schema:
$ref: '#/components/schemas/ItemsPerPageCore'
VisitIdPathParam:
in: path
name: visit_id
schema:
type: string
format: uuid
required: true
description: ID of a visit.
securitySchemes:
basic_auth:
type: http
description: Basic HTTP auth over https
scheme: basic