Mosey Locations API

The Locations API from Mosey — 7 operation(s) for locations.

Operations 7

GET /locations List Locations #
PUT /locations/{location_public_id} Add Location #
PATCH /locations/{region_platform_public_id} Update Location Configuration #
GET /locations/{region_platform_public_id}/tasks List Tasks for Location #
GET /locations/{location_public_id}/logins List Account Logins for Location #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/mosey-locations-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

mosey-locations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Mosey 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.


        has_employeesInclude 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.


        has_physical_locationInclude or filter out tasks that are applicable when the legal entity has a physical presence (such as an office) in the location.


        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.


        e5aa6d3222d22de2AL


        86e384ec4456dd93AK


        43c2b058fdc38bd0AZ


        8a3248de4ff636d4AR


        99be5e8f54c4680dCA


        e8239e013ff4cde4CO


        e69817cba25a7fa6CT


        1f1cc147c009b409DE


        afb903b3dcbe23fcDC


        33cf440c464d38f5FL


        5c392fde8d78eb3cGA


        dcb44d856176eb43HI


        a71f627b1843088aID


        30c18f24ba96c1e2IL


        fbe3a2db6d46f2feIN


        81fb4925ba83f81bIA


        f60f094906bf6e61KS


        0fced19468cca680KY


        b51b14eb685c802fLA


        50b6e06268188bffME


        784c3796c1f6931fMD


        d26e531db2dcbb50MA


        b07e8933d62889e9MI


        2577a77a916b01bdMN


        4641d29a7416dae8MS


        4eecb1031e0ecc97MO


        3c6de0a85af1153bMT


        47b790d36c9135feNE


        c2473d37f8547551NV


        e4656a4c283b7c15NH


        a3cc7e50a63fb347NJ


        43ca15ae2aa526e9NM


        5894aa7b4729ed13NY


        aa79248e404b74d2NC


        5528e71a2a626676ND


        ff6fec03fcfaa7d1OH


        36552f81875623adOK


        e3fd17f3f015b908OR


        1c96f4e30d829772PA


        1e58e23ec4a87036RI


        d2bbb1305f460a69SC


        4e4a5bc7fcf5abd2SD


        13f00f61a16fdabdTN


        7dac61e5b25e151aTX


        5da0217cd400f37aUT


        3683a6d2eec6b45cVT


        f568e8571666ccd6VA


        05a2dfcf81d37e7dWA


        aa5a1dfcbdd37d25WV


        920abf5751681231WI


        0132461d340cded0WY'
      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.


        has_employeesInclude 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. This cannot be updated once payroll is connected."


        has_physical_locationInclude or filter out tasks that are applicable when the legal entity has a physical presence (such as an office) in the location.'
      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:
    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
    MailType:
      type: string
      enum:
      - registered-agent
      - external-mail
      title: MailType
    AccountManagedProvider:
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
      type: object
      required:
      - id
      - name
      title: AccountManagedProvider
    AccountTaskAutomationFormSpec:
      properties: {}
      type: object
      title: AccountTaskAutomationFormSpec
    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
    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
    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
    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
    CreateLocationRequest:
      properties:
        config:
          anyOf:
          - $ref: '#/components/schemas/LocationConfig'
          - type: 'null'
      type: object
      title: CreateLocationRequest
    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
    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
    TaskDefinitionType:
      type: string
      enum:
      - requirement
      - data-collection
      - criteria-collection
      title: TaskDefinitionType
    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
    AccountLegalEntityLocationRef:
      properties:
        location:
          $ref: '#/components/schemas/LocationRef'
        config:
          $ref: '#/components/schemas/LocationConfig'
      type: object
      required:
      - location
      - config
      title: AccountLegalEntityLocationRef
    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
    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
    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
    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
    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
    AccountTaskStatus:
      type: string
      enum:
      - todo
      - dismissed
      - in-progress
      - done
      title: AccountTaskStatus
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    TaskPriority:
      type: string
      enum:
      - high
      - medium
      - low
      title: TaskPriority
    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
    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
    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
    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
    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
    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
    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
    ETAUnit:
      type: string
      enum:
      - hour
      - day
      - week
      - month
      title: ETAUnit
    AccountLegalEntityLocation:
      properties:
        location:
          $ref: '#/components/schemas/LocationRef'
      type: object
      required:
      - location
      title: AccountLegalEntityLocation
    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
    FeeFixed:
      properties:
        type:
          type: string
          const: fixed
          title: Type
          default: fixed
        amount:
          type: string
          title: Amount
      type: object
      required:
      - amount
      title: FeeFixed
    AccountTaskResolutionRedirect:
      properties:
        type:
          type: string
          const: redirect
          title: Type
          default: redirect
        url:
          type: string
          title: Url
      type: object
      required:
      - url
      title: AccountTaskResolutionRedirect
  securitySchemes:
    OAuth2PasswordBearer:
      type: oauth2
      flows:
        password:
          scopes: {}
          tokenUrl: /api/token