Deel subpackage_organizationStructure API

The subpackage_organizationStructure API from Deel — 6 operation(s) for subpackage_organizationstructure.

Operations 14

POST /hris/organization_structures Create a new HRIS Organization Structure. #
GET /hris/organization_structures Get Organization Structure #
DELETE /hris/organization_structures/external/{external_id} Delete an Org Structure from the Organization by external ID #
GET /hris/organization_structures/external/{external_id} Fetch an Org Structure from the Organization #
PATCH /hris/organization_structures/external/{external_id} Update an existing HRIS Org Structure by external ID #
DELETE /hris/organization_structures/{hrisOrgStr_id} Delete Organization Structure #
GET /hris/organization_structures/{hrisOrgStr_id} Get Organization Structure #
PATCH /hris/organization_structures/{hrisOrgStr_id} Update Organization Structure #
GET /hris/organization-structures/teams/{team_id}/custom-fields Retrieve custom fields for organization #
PATCH /hris/organization-structures/teams/{team_id}/custom-fields Update organization structure team custom fields #
PUT /people/{id}/department Update organization structure #
DELETE /hris/organization_structures/{hris_org_structure_id} Delete an Org Structure from the Organization #
GET /hris/organization_structures/{hris_org_structure_id} Fetch an Org Structure from the Organization #
PATCH /hris/organization_structures/{hris_org_structure_id} Update an existing HRIS Org Structure #

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/deel-subpackage-organizationstructure-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 email required.

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

OpenAPI Specification

deel-subpackage-organizationstructure-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Endpoints Subpackage Organization Structure API
  version: 1.0.0
servers:
- url: https://api.letsdeel.com/rest/v2
- url: https://api-staging.letsdeel.com/rest/v2
tags:
- name: subpackage_organizationStructure
paths:
  /hris/organization_structures:
    post:
      operationId: create-organization-structure
      summary: Create a new HRIS Organization Structure.
      description: "Create a new HRIS Organization Structure.\n **Token scopes**: `organizations:write`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organization-structure_createOrganizationStructure_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/HrisOrganizationStructuresPostRequestBodyContentApplicationJsonSchemaData'
    get:
      operationId: get-organization-structures
      summary: Get Organization Structure
      description: "Retrieves detailed information about the organization's hierarchical structure, including departments and teams.\n **Token scopes**: `organizations:read`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: offset
        in: query
        description: Return a page of results with given number of records.
        required: false
        schema:
          type: integer
          format: int64
          default: 0
      - name: limit
        in: query
        description: Return a page of results with given number of records.
        required: false
        schema:
          type: number
          format: double
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organization-structure_getOrganizationStructures_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
  /hris/organization_structures/external/{external_id}:
    delete:
      operationId: delete-organization-structure-by-external-id
      summary: Delete an Org Structure from the Organization by external ID
      description: "undefined\n **Token scopes**: `organizations:write`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: external_id
        in: path
        description: External ID
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successfully deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organization-structure_deleteOrganizationStructureByExternalId_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
    get:
      operationId: get-organization-structure-by-external-id
      summary: Fetch an Org Structure from the Organization
      description: "undefined\n **Token scopes**: `organizations:read`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: external_id
        in: path
        description: External ID
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organization-structure_getOrganizationStructureByExternalId_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
    patch:
      operationId: update-organization-structure-by-external-id
      summary: Update an existing HRIS Org Structure by external ID
      description: "undefined\n **Token scopes**: `organizations:write`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: external_id
        in: path
        description: External ID
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organization-structure_updateOrganizationStructureByExternalId_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/HrisOrganizationStructuresExternalExternalIdPatchRequestBodyContentApplicationJsonSchemaData'
  /hris/organization_structures/{hrisOrgStr_id}:
    delete:
      operationId: delete-organization-structure
      summary: Delete Organization Structure
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: hrisOrgStr_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
    get:
      operationId: get-organization-structure
      summary: Get Organization Structure
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: hrisOrgStr_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
    patch:
      operationId: update-organization-structure
      summary: Update Organization Structure
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: hrisOrgStr_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
  /hris/organization-structures/teams/{team_id}/custom-fields:
    get:
      operationId: get-team-custom-fields
      summary: Retrieve custom fields for organization
      description: "Retrieves custom field values for a specific organization structure (team). This endpoint returns all custom fields configured for organization structures, including their current values, inheritance status, and any pending change requests. Custom fields can be inherited from parent teams in the organizational hierarchy, and the response indicates whether each value is inherited or set directly on the specified team. If the user has permission to view data change requests, pending changes will also be included in the response.\n **Token scopes**: `organizations:read`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: team_id
        in: path
        description: Public ID (UUID) of the HRIS team/organization structure
        required: true
        schema:
          type: string
          format: uuid
      - name: limit
        in: query
        description: Max items per page (default 20, max 100)
        required: false
        schema:
          type: integer
          default: 20
      - name: cursor
        in: query
        description: Opaque cursor for pagination
        required: false
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Custom field values retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organization-structure_getTeamCustomFields_Response_200'
        '400':
          description: Bad request - Organization is not set or Deel HR is not enabled for this organization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrieveCustomFieldsForOrganizationRequestBadRequestError'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
    patch:
      operationId: update-team-custom-fields
      summary: Update organization structure team custom fields
      description: "Use this endpoint to keep team metadata current or to schedule future organizational changes. Provide the custom field IDs to modify and use an effective date to schedule updates. Set the value to null to delete a field value.\n **Token scopes**: `organizations:read`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: team_id
        in: path
        description: Public ID (UUID) of the HRIS team/organization structure
        required: true
        schema:
          type: string
          format: uuid
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Organization structure custom fields updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organization-structure_updateTeamCustomFields_Response_200'
        '400':
          description: Bad request - Organization is not set or Deel HR is not enabled for this organization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateOrganizationStructureTeamCustomFieldsRequestBadRequestError'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/HrisOrganizationStructuresTeamsTeamIdCustomFieldsPatchRequestBodyContentApplicationJsonSchemaData'
              required:
              - data
  /people/{id}/department:
    put:
      operationId: update-person-department
      summary: Update organization structure
      description: "Update worker's department\n **Token scopes**: `people:write`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: id
        in: path
        description: Hris profile ID
        required: true
        schema:
          type: string
      - name: replace_other_positions
        in: query
        description: Indicates if this department position should replace all other positions or only append to the existing ones.
        required: false
        schema:
          type: boolean
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/organization-structure_updatePersonDepartment_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/PeopleIdDepartmentPutRequestBodyContentApplicationJsonSchemaData'
              required:
              - data
  /hris/organization_structures/{hris_org_structure_id}:
    delete:
      operationId: delete-an-org-structure-from-the-organization-v-2026-01-01
      summary: Delete an Org Structure from the Organization
      description: "Delete an Org Structure from the Organization. Use the force flag to bypass validation checks and remove the structure even when profiles are still assigned to it.\n **Token scopes**: `organizations:write`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: hris_org_structure_id
        in: path
        description: Org Structure
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successfully deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization_structure_deleteAnOrgStructureFromTheOrganization-v2026-01-01_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteAnOrgStructureFromTheOrganization-v2026-01-01RequestBadRequestError'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteAnOrgStructureFromTheOrganization-v2026-01-01RequestInternalServerError'
    get:
      operationId: fetch-an-org-structure-from-the-organization-v-2026-01-01
      summary: Fetch an Org Structure from the Organization
      description: "Retrieves detailed information about a specific organizational structure including its teams and roles.\n **Token scopes**: `organizations:read`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: hris_org_structure_id
        in: path
        description: HRIS Organization Structure ID
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization_structure_fetchAnOrgStructureFromTheOrganization-v2026-01-01_Response_200'
        '400':
          description: Bad request - The provided hrisOrgStructureId is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FetchAnOrgStructureFromTheOrganization-v2026-01-01RequestBadRequestError'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Not found - No organization structure exists for the provided ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FetchAnOrgStructureFromTheOrganization-v2026-01-01RequestNotFoundError'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
    patch:
      operationId: update-an-existing-hris-org-structure-v-2026-01-01
      summary: Update an existing HRIS Org Structure
      description: "Update an existing HRIS Org Structure including its name, settings, and teams hierarchy.\n **Token scopes**: `organizations:write`"
      tags:
      - subpackage_organizationStructure
      parameters:
      - name: hris_org_structure_id
        in: path
        description: Org Structure
        required: true
        schema:
          type: string
      - name: Authorization
        in: header
        description: "## Authentication\nThe Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.\n\n```curl\ncurl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \\\n  -H 'Authorization: Bearer YOUR-TOKEN-HERE'\n```\n\n[Learn more about authentication](/api/authentication)\n"
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization_structure_updateAnExistingHrisOrgStructure-v2026-01-01_Response_200'
        '400':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateAnExistingHrisOrgStructure-v2026-01-01RequestBadRequestError'
        '401':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '403':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '404':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorContainer'
        '500':
          description: Operation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateAnExistingHrisOrgStructure-v2026-01-01RequestInternalServerError'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  $ref: '#/components/schemas/HrisOrganizationStructuresHrisOrgStructureIdPatchRequestBodyContentApplicationJsonSchemaData'
components:
  schemas:
    organization-structure_updateTeamCustomFields_Response_200:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/HrisOrganizationStructuresTeamsTeamIdCustomFieldsPatchResponsesContentApplicationJsonSchemaData'
      required:
      - data
      title: organization-structure_updateTeamCustomFields_Response_200
    HrisOrganizationStructuresExternalExternalIdGetResponsesContentApplicationJsonSchemaDataRolesItems:
      type: object
      properties:
        id:
          type: integer
          description: Role ID
        name:
          type: string
          description: Role name
      title: HrisOrganizationStructuresExternalExternalIdGetResponsesContentApplicationJsonSchemaDataRolesItems
    HrisOrganizationStructuresPostRequestBodyContentApplicationJsonSchemaData:
      type: object
      properties:
        name:
          type: string
          description: The name of the organization structure.
        teams:
          type: array
          items:
            $ref: '#/components/schemas/HrisOrganizationStructuresPostRequestBodyContentApplicationJsonSchemaDataTeamsItems'
        external_id:
          type: string
          description: The external identifier of the organization structure.
        enable_roles:
          type: boolean
          default: true
          description: Whether roles are enabled for the organization structure.
        is_multiple_select:
          type: boolean
          default: true
          description: Whether multiple selection is enabled for the organization structure.
      title: HrisOrganizationStructuresPostRequestBodyContentApplicationJsonSchemaData
    HrisOrganizationStructuresTeamsTeamIdCustomFieldsPatchRequestBodyContentApplicationJsonSchemaDataCustomFieldsItems:
      type: object
      properties:
        value:
          type:
          - string
          - 'null'
          description: The value for the custom field. Use null to delete.
        currency:
          type:
          - string
          - 'null'
          description: Currency code for currency-type custom fields (ISO 4217)
        effective_date:
          type:
          - string
          - 'null'
          format: date
          description: Optional effective date for scheduled changes (YYYY-MM-DD)
        custom_field_id:
          type: string
          format: uuid
          description: The public ID (UUID) of the custom field
      required:
      - custom_field_id
      title: HrisOrganizationStructuresTeamsTeamIdCustomFieldsPatchRequestBodyContentApplicationJsonSchemaDataCustomFieldsItems
    HrisOrganizationStructuresTeamsTeamIdCustomFieldsGetResponsesContentApplicationJsonSchemaDataItemsInheritedFrom:
      type: object
      properties:
        team_id:
          type: string
          format: uuid
          description: Public ID of the parent team from which the value is inherited
        team_name:
          type: string
          description: Name of the parent team from which the value is inherited
      required:
      - team_id
      - team_name
      description: Parent team from which the value is inherited. Null if not inherited.
      title: HrisOrganizationStructuresTeamsTeamIdCustomFieldsGetResponsesContentApplicationJsonSchemaDataItemsInheritedFrom
    HrisOrganizationStructuresHrisOrgStructureIdGetResponsesContentApplicationJsonSchemaErrorsItems:
      type: object
      properties:
        code:
          type: string
        field:
          type: string
        messa

# --- truncated at 32 KB (63 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/deel-com/refs/heads/main/openapi/deel-subpackage-organizationstructure-api-openapi.yml