My App

Subsidiaries

Subsidiary management API endpoints

Subsidiaries API

Manage subsidiaries in your organization.

Base Path

/api/subsidiaries

Endpoints

List Subsidiaries

List all subsidiaries in your organization.

GET /api/subsidiaries

Query Parameters:

ParameterTypeRequiredDescription
includeInactivebooleanNoInclude inactive records in the results

Example Request:

curl -H "Authorization: Bearer YOUR_TOKEN" \
  https://api.glapi.io/api/subsidiaries

Example Response:

[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "organizationId": "org_123",
    "status": "active",
    "createdAt": "2025-01-15T10:30:00Z",
    "updatedAt": "2025-01-15T10:30:00Z"
  }
]

Get Subsidiarie

Retrieve a specific subsidiarie by ID.

GET /api/subsidiaries/{id}

Path Parameters:

ParameterTypeRequiredDescription
idUUIDYesSubsidiarie ID

Example Request:

curl -H "Authorization: Bearer YOUR_TOKEN" \
  https://api.glapi.io/api/subsidiaries/123e4567-e89b-12d3-a456-426614174000

Error Responses:

  • 404 Not Found - Subsidiarie not found

Create Subsidiarie

Create a new subsidiarie.

POST /api/subsidiaries

Request Body:

{
  "status": "active"
}

Example Request:

curl -X POST \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"status": "active"}' \
  https://api.glapi.io/api/subsidiaries

Update Subsidiarie

Update an existing subsidiarie.

PUT /api/subsidiaries/{id}

Path Parameters:

ParameterTypeRequiredDescription
idUUIDYesSubsidiarie ID

Request Body:

Provide only the fields you want to update. All fields are optional.

{
  "status": "inactive"
}

Example Request:

curl -X PUT \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"status": "inactive"}' \
  https://api.glapi.io/api/subsidiaries/123e4567-e89b-12d3-a456-426614174000

Error Responses:

  • 404 Not Found - Subsidiarie not found

Delete Subsidiarie

Delete a subsidiarie.

DELETE /api/subsidiaries/{id}

Path Parameters:

ParameterTypeRequiredDescription
idUUIDYesSubsidiarie ID

Example Request:

curl -X DELETE \
  -H "Authorization: Bearer YOUR_TOKEN" \
  https://api.glapi.io/api/subsidiaries/123e4567-e89b-12d3-a456-426614174000

Example Response:

{
  "success": true
}

Error Responses:

  • 404 Not Found - Subsidiarie not found

Code Examples

TypeScript

import { createTRPCClient, httpBatchLink } from '@trpc/client';
import type { AppRouter } from '@glapi/trpc';

const client = createTRPCClient<AppRouter>({
  links: [
    httpBatchLink({
      url: 'https://api.glapi.io/api/trpc',
      headers: () => ({
        Authorization: `Bearer ${process.env.GLAPI_TOKEN}`,
      }),
    }),
  ],
});

// List subsidiaries
const items = await client.subsidiaries.list.query();

// Get subsidiarie
const item = await client.subsidiaries.get.query({
  id: '123e4567-e89b-12d3-a456-426614174000'
});

// Create subsidiarie
const newItem = await client.subsidiaries.create.mutate({
  status: 'active',
});

// Update subsidiarie
const updated = await client.subsidiaries.update.mutate({
  id: '123e4567-e89b-12d3-a456-426614174000',
  data: {
    status: 'inactive',
  },
});

// Delete subsidiarie
await client.subsidiaries.delete.mutate({
  id: '123e4567-e89b-12d3-a456-426614174000'
});

Python

import requests
import os

API_BASE = 'https://api.glapi.io/api'
TOKEN = os.environ.get('GLAPI_TOKEN')
HEADERS = {
    'Authorization': f'Bearer {TOKEN}',
    'Content-Type': 'application/json',
}

# List subsidiaries
response = requests.get(f'{API_BASE}/subsidiaries', headers=HEADERS)
items = response.json()

# Get subsidiarie
response = requests.get(
    f'{API_BASE}/subsidiaries/123e4567-e89b-12d3-a456-426614174000',
    headers=HEADERS
)
item = response.json()

# Create subsidiarie
response = requests.post(
    f'{API_BASE}/subsidiaries',
    headers=HEADERS,
    json={'status': 'active'}
)
new_item = response.json()

# Update subsidiarie
response = requests.put(
    f'{API_BASE}/subsidiaries/123e4567-e89b-12d3-a456-426614174000',
    headers=HEADERS,
    json={'status': 'inactive'}
)
updated = response.json()

# Delete subsidiarie
response = requests.delete(
    f'{API_BASE}/subsidiaries/123e4567-e89b-12d3-a456-426614174000',
    headers=HEADERS
)