Mosey Locations API
The Locations API from Mosey — 7 operation(s) for locations.
The Locations API from Mosey — 7 operation(s) for locations.
openapi: 3.1.0
info:
title: Mosey Accounts Locations API
description: If you'd like to use the Mosey API, please contact sales@mosey.com.
version: 1.0.0
x-logo:
url: null
tags:
- name: Locations
paths:
/locations:
get:
summary: List Locations
description: Returns the list of locations associated with the authenticated legal entity.
operationId: list_locations_handler_locations_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/AccountLegalEntityLocationRef'
type: array
title: Response List Locations Handler Locations Get
security:
- OAuth2PasswordBearer: []
- OAuth2PasswordBearer: []
tags:
- Locations
/locations/{location_public_id}:
put:
summary: Add Location
description: 'Returns the specified location that is associated with the authenticated legal entity.
An optional configuration can be provided to help decide if some tasks should be included or not.
<table>
<tr><td>has_employees</td><td>Include or filter out tasks that are applicable when employees are living or working in the location. Once payroll is connected for the legal entity, this value will be kept in sync.</td></tr>
<tr><td>has_physical_location</td><td>Include or filter out tasks that are applicable when the legal entity has a physical presence (such as an office) in the location.</td></tr>
</table>
This table maps Location IDs to the state abbreviation code it represents. The IDs are globally unique and are used regardless of which legal entity is authenticated.
<table>
<tr><td>e5aa6d3222d22de2</td><td>AL</td></tr>
<tr><td>86e384ec4456dd93</td><td>AK</td></tr>
<tr><td>43c2b058fdc38bd0</td><td>AZ</td></tr>
<tr><td>8a3248de4ff636d4</td><td>AR</td></tr>
<tr><td>99be5e8f54c4680d</td><td>CA</td></tr>
<tr><td>e8239e013ff4cde4</td><td>CO</td></tr>
<tr><td>e69817cba25a7fa6</td><td>CT</td></tr>
<tr><td>1f1cc147c009b409</td><td>DE</td></tr>
<tr><td>afb903b3dcbe23fc</td><td>DC</td></tr>
<tr><td>33cf440c464d38f5</td><td>FL</td></tr>
<tr><td>5c392fde8d78eb3c</td><td>GA</td></tr>
<tr><td>dcb44d856176eb43</td><td>HI</td></tr>
<tr><td>a71f627b1843088a</td><td>ID</td></tr>
<tr><td>30c18f24ba96c1e2</td><td>IL</td></tr>
<tr><td>fbe3a2db6d46f2fe</td><td>IN</td></tr>
<tr><td>81fb4925ba83f81b</td><td>IA</td></tr>
<tr><td>f60f094906bf6e61</td><td>KS</td></tr>
<tr><td>0fced19468cca680</td><td>KY</td></tr>
<tr><td>b51b14eb685c802f</td><td>LA</td></tr>
<tr><td>50b6e06268188bff</td><td>ME</td></tr>
<tr><td>784c3796c1f6931f</td><td>MD</td></tr>
<tr><td>d26e531db2dcbb50</td><td>MA</td></tr>
<tr><td>b07e8933d62889e9</td><td>MI</td></tr>
<tr><td>2577a77a916b01bd</td><td>MN</td></tr>
<tr><td>4641d29a7416dae8</td><td>MS</td></tr>
<tr><td>4eecb1031e0ecc97</td><td>MO</td></tr>
<tr><td>3c6de0a85af1153b</td><td>MT</td></tr>
<tr><td>47b790d36c9135fe</td><td>NE</td></tr>
<tr><td>c2473d37f8547551</td><td>NV</td></tr>
<tr><td>e4656a4c283b7c15</td><td>NH</td></tr>
<tr><td>a3cc7e50a63fb347</td><td>NJ</td></tr>
<tr><td>43ca15ae2aa526e9</td><td>NM</td></tr>
<tr><td>5894aa7b4729ed13</td><td>NY</td></tr>
<tr><td>aa79248e404b74d2</td><td>NC</td></tr>
<tr><td>5528e71a2a626676</td><td>ND</td></tr>
<tr><td>ff6fec03fcfaa7d1</td><td>OH</td></tr>
<tr><td>36552f81875623ad</td><td>OK</td></tr>
<tr><td>e3fd17f3f015b908</td><td>OR</td></tr>
<tr><td>1c96f4e30d829772</td><td>PA</td></tr>
<tr><td>1e58e23ec4a87036</td><td>RI</td></tr>
<tr><td>d2bbb1305f460a69</td><td>SC</td></tr>
<tr><td>4e4a5bc7fcf5abd2</td><td>SD</td></tr>
<tr><td>13f00f61a16fdabd</td><td>TN</td></tr>
<tr><td>7dac61e5b25e151a</td><td>TX</td></tr>
<tr><td>5da0217cd400f37a</td><td>UT</td></tr>
<tr><td>3683a6d2eec6b45c</td><td>VT</td></tr>
<tr><td>f568e8571666ccd6</td><td>VA</td></tr>
<tr><td>05a2dfcf81d37e7d</td><td>WA</td></tr>
<tr><td>aa5a1dfcbdd37d25</td><td>WV</td></tr>
<tr><td>920abf5751681231</td><td>WI</td></tr>
<tr><td>0132461d340cded0</td><td>WY</td></tr>
</table>'
operationId: add_location_handler_locations__location_public_id__put
security:
- OAuth2PasswordBearer: []
- OAuth2PasswordBearer: []
parameters:
- name: location_public_id
in: path
required: true
schema:
type: string
title: Location Public Id
requestBody:
content:
application/json:
schema:
anyOf:
- $ref: '#/components/schemas/CreateLocationRequest'
- type: 'null'
title: Location Request
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/AccountLegalEntityLocation'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Locations
/locations/{region_platform_public_id}:
patch:
summary: Update Location Configuration
description: 'Updates the configuration for the specified legal entity and region.
An optional configuration can be provided to help decide if some tasks should be included or not.
<table>
<tr><td>has_employees</td><td>Include or filter out tasks that are applicable when employees are living or working in the location. Once payroll is connected for the legal entity, this value will be kept in sync. <b>This cannot be updated once payroll is connected."</b></td></tr>
<tr><td>has_physical_location</td><td>Include or filter out tasks that are applicable when the legal entity has a physical presence (such as an office) in the location.</td></tr>
</table>'
operationId: update_location_handler_locations__region_platform_public_id__patch
security:
- OAuth2PasswordBearer: []
- OAuth2PasswordBearer: []
parameters:
- name: region_platform_public_id
in: path
required: true
schema:
type: string
title: Region Platform Public Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateLocationRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/AccountLegalEntityLocation'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Locations
/locations/{region_platform_public_id}/tasks:
get:
summary: List Tasks for Location
description: Returns a list of tasks relevant for the authenticated legal entity for the specified location. Tasks are sorted by their due date in ascending order, where tasks without a due date are first.
operationId: list_location_tasks_handler_locations__region_platform_public_id__tasks_get
security:
- OAuth2PasswordBearer: []
- OAuth2PasswordBearer: []
parameters:
- name: region_platform_public_id
in: path
required: true
schema:
type: string
title: Region Platform Public Id
- name: definition_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Definition Id
- name: start_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
title: Start Date
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
title: End Date
- name: include_managed
in: query
required: false
schema:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Include Managed
- name: status
in: query
required: false
schema:
anyOf:
- type: array
items:
$ref: '#/components/schemas/AccountTaskStatus'
- type: 'null'
title: Status
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AccountTask'
title: Response List Location Tasks Handler Locations Region Platform Public Id Tasks Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Locations
/locations/{location_public_id}/logins:
get:
summary: List Account Logins for Location
description: Lists _Account Login_ for the current _Legal Entity_ and location id.
operationId: list_account_logins_for_location_locations__location_public_id__logins_get
security:
- OAuth2PasswordBearer: []
- OAuth2PasswordBearer: []
parameters:
- name: location_public_id
in: path
required: true
schema:
type: string
title: Location Public Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PlatformLegalEntityAccountLogin'
title: Response List Account Logins For Location Locations Location Public Id Logins Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Locations
/locations/{region_platform_public_id}/mail:
get:
summary: List Mail by Location
description: 'Returns mail information received by the authorized legal entity in the specified region
Follow each returned `url` in order to download the mail content in PDF format'
operationId: get_legal_entity_mail_handler_for_location_locations__region_platform_public_id__mail_get
security:
- OAuth2PasswordBearer: []
- OAuth2PasswordBearer: []
parameters:
- name: region_platform_public_id
in: path
required: true
schema:
type: string
title: Region Platform Public Id
- name: start_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
title: Start Date
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
title: End Date
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PlatformMail'
title: Response Get Legal Entity Mail Handler For Location Locations Region Platform Public Id Mail Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Locations
/locations/{region_platform_public_id}/agency_accounts:
get:
summary: List Agency Accounts for Location
operationId: get_agency_accounts_for_legal_entity_and_location_locations__region_platform_public_id__agency_accounts_get
security:
- OAuth2PasswordBearer: []
- OAuth2PasswordBearer: []
parameters:
- name: region_platform_public_id
in: path
required: true
schema:
type: string
title: Region Platform Public Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/app__api__platform__models__PlatformAgencyAccount'
title: Response Get Agency Accounts For Legal Entity And Location Locations Region Platform Public Id Agency Accounts Get
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Locations
components:
schemas:
AccountTaskStatus:
type: string
enum:
- todo
- dismissed
- in-progress
- done
title: AccountTaskStatus
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
FeeFixed:
properties:
type:
type: string
const: fixed
title: Type
default: fixed
amount:
type: string
title: Amount
type: object
required:
- amount
title: FeeFixed
AccountTaskResolutionManualStepPath:
properties:
type:
type: string
title: Type
value:
type: string
title: Value
text:
anyOf:
- type: string
- type: 'null'
title: Text
type: object
required:
- type
- value
title: AccountTaskResolutionManualStepPath
TaskDefinitionType:
type: string
enum:
- requirement
- data-collection
- criteria-collection
title: TaskDefinitionType
AccountTaskResolutionManual:
properties:
type:
type: string
const: manual
title: Type
default: manual
steps:
items:
$ref: '#/components/schemas/AccountTaskResolutionManualStep'
type: array
title: Steps
type: object
required:
- steps
title: AccountTaskResolutionManual
TaskContextEmployee:
properties:
scope:
type: string
const: employee
title: Scope
default: employee
employee_id:
type: string
title: Employee Id
type: object
required:
- employee_id
title: TaskContextEmployee
FeeVariable:
properties:
type:
type: string
const: variable
title: Type
default: variable
reason:
type: string
title: Reason
type: object
required:
- reason
title: FeeVariable
AccountTaskResolutionManualStep:
properties:
id:
type: string
title: Id
title:
type: string
title: Title
description:
type: string
title: Description
paths:
items:
$ref: '#/components/schemas/AccountTaskResolutionManualStepPath'
type: array
title: Paths
order:
type: integer
title: Order
type: object
required:
- id
- title
- description
- paths
- order
title: AccountTaskResolutionManualStep
AccountTaskResolutionAction:
properties:
type:
type: string
const: action
title: Type
default: action
description:
type: string
title: Description
method:
type: string
title: Method
url:
type: string
title: Url
content_type:
type: string
title: Content Type
fields:
items:
$ref: '#/components/schemas/ActionField'
type: array
title: Fields
type: object
required:
- description
- method
- url
- content_type
- fields
title: AccountTaskResolutionAction
ActionField:
properties:
name:
type: string
title: Name
description:
type: string
title: Description
required:
type: boolean
title: Required
type:
type: string
title: Type
type: object
required:
- name
- description
- required
- type
title: ActionField
AccountTask:
properties:
id:
type: string
title: Id
context:
oneOf:
- $ref: '#/components/schemas/TaskContextEmployee'
- $ref: '#/components/schemas/TaskContextLegalEntity'
title: Context
discriminator:
propertyName: scope
mapping:
employee: '#/components/schemas/TaskContextEmployee'
legal-entity: '#/components/schemas/TaskContextLegalEntity'
definition:
$ref: '#/components/schemas/AccountTaskDefinition'
resolutions:
additionalProperties:
oneOf:
- $ref: '#/components/schemas/AccountTaskResolutionAction'
- $ref: '#/components/schemas/AccountTaskResolutionAutomate'
- $ref: '#/components/schemas/AccountTaskResolutionManual'
- $ref: '#/components/schemas/AccountTaskResolutionRedirect'
discriminator:
propertyName: type
mapping:
action: '#/components/schemas/AccountTaskResolutionAction'
automate: '#/components/schemas/AccountTaskResolutionAutomate'
manual: '#/components/schemas/AccountTaskResolutionManual'
redirect: '#/components/schemas/AccountTaskResolutionRedirect'
type: object
title: Resolutions
default_resolution_name:
type: string
title: Default Resolution Name
managed_provider:
anyOf:
- $ref: '#/components/schemas/AccountManagedProvider'
- type: 'null'
status:
$ref: '#/components/schemas/AccountTaskStatus'
period_start_date:
anyOf:
- type: string
format: date
- type: 'null'
title: Period Start Date
period_end_date:
anyOf:
- type: string
format: date
- type: 'null'
title: Period End Date
due_date:
anyOf:
- type: string
format: date
- type: 'null'
title: Due Date
unblocks:
items:
$ref: '#/components/schemas/AccountTaskDefinition'
type: array
title: Unblocks
fee:
anyOf:
- oneOf:
- $ref: '#/components/schemas/FeeFixed'
- $ref: '#/components/schemas/FeeRange'
- $ref: '#/components/schemas/FeeVariable'
discriminator:
propertyName: type
mapping:
fixed: '#/components/schemas/FeeFixed'
range: '#/components/schemas/FeeRange'
variable: '#/components/schemas/FeeVariable'
- type: 'null'
title: Fee
eta:
anyOf:
- $ref: '#/components/schemas/AccountTaskETA'
- type: 'null'
priority:
$ref: '#/components/schemas/TaskPriority'
default: medium
criteria_met:
items:
$ref: '#/components/schemas/AccountTaskCriteria'
type: array
title: Criteria Met
tags:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Tags
type: object
required:
- id
- context
- definition
- resolutions
- default_resolution_name
- status
- unblocks
- criteria_met
title: AccountTask
TaskContextLegalEntity:
properties:
scope:
type: string
const: legal-entity
title: Scope
default: legal-entity
legal_entity_id:
type: string
title: Legal Entity Id
type: object
required:
- legal_entity_id
title: TaskContextLegalEntity
AccountTaskDefinition:
properties:
id:
type: string
title: Id
title:
type: string
title: Title
summary:
anyOf:
- type: string
- type: 'null'
title: Summary
description:
type: string
title: Description
type:
$ref: '#/components/schemas/TaskDefinitionType'
resources:
items:
additionalProperties:
type: string
type: object
type: array
title: Resources
location:
$ref: '#/components/schemas/LocationRef'
type: object
required:
- id
- title
- description
- type
- resources
- location
title: AccountTaskDefinition
AccountTaskETA:
properties:
estimation:
$ref: '#/components/schemas/AccountTaskEstimation'
earliest_date:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Earliest Date
latest_date:
anyOf:
- type: string
format: date-time
- type: 'null'
title: Latest Date
type: object
required:
- estimation
title: AccountTaskETA
FeeRange:
properties:
type:
type: string
const: range
title: Type
default: range
min:
type: string
title: Min
max:
type: string
title: Max
type: object
required:
- min
- max
title: FeeRange
AccountManagedProvider:
properties:
id:
type: string
title: Id
name:
type: string
title: Name
type: object
required:
- id
- name
title: AccountManagedProvider
AccountLegalEntityLocation:
properties:
location:
$ref: '#/components/schemas/LocationRef'
type: object
required:
- location
title: AccountLegalEntityLocation
AccountTaskResolutionRedirect:
properties:
type:
type: string
const: redirect
title: Type
default: redirect
url:
type: string
title: Url
type: object
required:
- url
title: AccountTaskResolutionRedirect
MailType:
type: string
enum:
- registered-agent
- external-mail
title: MailType
app__api__platform__models__PlatformAgencyAccount:
properties:
location_id:
type: string
title: Location Id
id:
type: string
title: Id
name:
type: string
title: Name
agency:
$ref: '#/components/schemas/PlatformAgency'
data:
items:
$ref: '#/components/schemas/PlatformAgencyAttributeAndValue'
type: array
title: Data
logins:
items:
$ref: '#/components/schemas/PlatformLegalEntityAccountLogin'
type: array
title: Logins
type: object
required:
- location_id
- id
- name
- agency
- data
- logins
title: PlatformAgencyAccount
PlatformLegalEntityAccountLogin:
properties:
id:
type: string
title: Id
description: The identifier of this Account Login
name:
type: string
title: Name
description: The name of the Login
location_id:
type: string
title: Location Id
description: The location id the login belongs to
login_url:
type: string
title: Login Url
description: This field is deprecated, please use url.
url:
type: string
title: Url
description: The url pointing to the login page for this Login
type: object
required:
- id
- name
- location_id
- login_url
- url
title: PlatformLegalEntityAccountLogin
LocationConfig:
properties:
has_employees:
anyOf:
- type: boolean
- type: 'null'
title: Has Employees
has_physical_location:
anyOf:
- type: boolean
- type: 'null'
title: Has Physical Location
type: object
title: LocationConfig
UpdateLocationRequest:
properties:
config:
anyOf:
- $ref: '#/components/schemas/LocationConfig'
- type: 'null'
type: object
title: UpdateLocationRequest
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
AccountLegalEntityLocationRef:
properties:
location:
$ref: '#/components/schemas/LocationRef'
config:
$ref: '#/components/schemas/LocationConfig'
type: object
required:
- location
- config
title: AccountLegalEntityLocationRef
TaskPriority:
type: string
enum:
- high
- medium
- low
title: TaskPriority
AccountTaskEstimation:
properties:
min:
type: integer
title: Min
max:
type: integer
title: Max
unit:
$ref: '#/components/schemas/ETAUnit'
type: object
required:
- min
- max
- unit
title: AccountTaskEstimation
AccountTaskCriteria:
properties:
key:
type: string
title: Key
reason:
type: string
title: Reason
data:
anyOf:
- type: object
- {}
title: Data
default: {}
type: object
required:
- key
- reason
title: AccountTaskCriteria
AccountTaskResolutionAutomate:
properties:
type:
type: string
const: automate
title: Type
default: automate
form_spec:
$ref: '#/components/schemas/AccountTaskAutomationFormSpec'
submit_url:
type: string
title: Submit Url
hosted_url:
type: string
title: Hosted Url
type: object
required:
- form_spec
- submit_url
- hosted_url
title: AccountTaskResolutionAutomate
PlatformMail:
properties:
id:
type: string
title: Id
location_id:
anyOf:
- type: string
- type: 'null'
title: Location Id
type:
$ref: '#/components/schemas/MailType'
received:
type: string
format: date
title: Received
sender:
anyOf:
- type: string
- type: 'null'
title: Sender
file_url:
type: string
title: File Url
type: object
required:
- id
- type
- received
- file_url
title: PlatformMail
PlatformAgency:
properties:
id:
type: string
title: Id
name:
type: string
title: Name
website:
type: string
title: Website
type: object
required:
- id
- name
- website
title: PlatformAgency
LocationRef:
properties:
id:
type: string
title: Id
code:
type: string
title: Code
name:
type: string
title: Name
type: object
required:
- id
- code
- name
title: LocationRef
PlatformAgencyAttributeAndValue:
properties:
name:
type: string
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
value:
anyOf:
- type: string
- type: 'null'
title: Value
type: object
required:
- name
- description
- value
title: PlatformAgencyAttributeAndValue
CreateLocationRequest:
properties:
config:
anyOf:
- $ref: '#/components/schemas/LocationConfig'
- type: 'null'
type: object
title: CreateLocationRequest
AccountTaskAutomationFormSpec:
properties: {}
type: object
title: AccountTaskAutomationFormSpec
ETAUnit:
type: string
enum:
- hour
- day
- week
- month
title: ETAUnit
securitySchemes:
OAuth2PasswordBearer:
type: oauth2
flows:
password:
scopes: {}
tokenUrl: /api/token