Skip to main content

Tango Space HR Outbound API

Generated from Tango Space HR Outbound API Integration Design Specification V0.9.docx in SharePoint folder 03 Space Integrations. OAS spec: space-hr-outbound-api.yaml

Overview

Async delta REST API: client retrieves People/HR records from Tango — active records updated since the last integration run. Each record includes one or more location assignments (property / store / floor / space / area). People with no assignment are also returned. Owner: Tango Analytics Spec version: 0.9 Status: Draft (auto-generated — needs review)

Endpoints

Auth: x-client + x-api-key.

Integration logic

  • Delta API: only records updated since last run.
  • Active-only — Inactive people are not exported.
  • People without a space/area assignment are still returned (location fields blank).
  • Null fields are omitted from response.

Data model

The record combines a person’s HR data with their location assignment. Key sections:
  • Identity: person_id, person_number, first_name, last_name, middle_name, other_name
  • HR attributes: employee_type, cost_center, title, manager_number, shift_worker, status, country, hire_date, end_date, grade_level, work_from_home, primary_phone, mobile_number, email, seating_type, zip_code, brand_id
  • Identity attributes: mac_addresses, usernames, hostnames (all comma-separated lists)
  • Location assignment: property_number, property_name, store_number, store_name, floor_number, floor_name, space_number, space_name, space_type, space_use, shift_space, area_type, area_number, area_name, flexible_seating, display_name, allocation_type
  • Custom attributes: cattr1..10, nattr1..5, dattr1..5, lovattr1..5

Open Questions / Assumptions

  • shift_worker Client Label is “People Manager” in the source — same semantic mismatch as the inbound API.
  • No required annotations in source data mapping.
  • Multiple locations per person: source v0.6/0.7 notes mention “multiple locations per person record” but the schema as documented shows flat location fields. Real payload may use an array of location objects — confirm.
  • store_number / store_name vs building_number / building_name — this spec uses “store” prefix while Building/Floor Outbound uses “building” prefix. Confirm consistency.
  • manager_number typed NUMBER but inbound API types as VARCHAR — type asymmetry.

Changelog (compressed)