Loading
Tjeneste
MuleSoft API-spesifikasjoner for agenthandlinger og tjenesteprosesser

MuleSoft API-spesifikasjoner for agenthandlinger og tjenesteprosesser

Disse API-spesifikasjonene er utformet for å gi et klart og strukturert rammeverk for integrering og behandling av ulike agenthandlinger i MuleSoft-miljøet. Hvert API er skreddersydd til å støtte spesifikke agenthandlinger, slik at brukere effektivt kan håndtere oppgaver som å behandle fravær, oppdatere arbeiderdetaljer, behandle betalingsoppføringer og behandle utgiftsrapporter.

Nødvendige utgaver

Vis støttede versjoner.
API for fraværsbehandling
Section Eksempel
RAML-hode
#%RAML 1.0
title: Absence Management API
description: The Absence Management API is intended to provide operations for managing employee time off, including fetching time off balances and submitting time off requests.
version: 1.0
mediaType: application/json
protocols:
  - HTTPS
documentation:
  - title: Absence Management domain
    content: |- 
      The Absence Management domain contains the following sections:
        - Get Time Off Plan Balances
        - Submit Time Off
  - title: Absence Management sub groups
    content: |- 
      The Absence Management sub-groups contain the following sections:
        - Time Off Balances
        - Time Off Requests
Ressurser/metoder
/Get_Time_Off_Plan_Balances/{employee_id}:
  displayName: Get Time Off Balance
  get:
    description: Fetches the time off plan balances for a specific employee.
    displayName: Get Time Off Balance
Svar
responses:
  '200':
    description: Time off plan balances were returned successfully.
    body:
      application/json:
        type: object
  '400':
    description: Bad request, e.g., invalid query parameters.
    body:
      application/json:
        type: object
  '404':
    description: Resource not found.
    body:
      application/json:
        type: string
  '429':
    description: Too many requests, rate limit exceeded.
    body:
      application/json:
        type: object
Sidehoveder / spørringsparametere
queryParameters:
  effective_date?:
    description: The date for which the balances are effective.
    type: date-only
Datatyper
types:
  AbsencePlan:
    description: Represents an absence plan with its associated leaves.
    type: object
    properties:
      planId:
        required: true
        description: Unique identifier for the absence plan.
        type: string
      planName:
        required: true
        description: Name of the absence plan.
        type: string
      quantity:
        required: true
        description: Total quantity of leave available.
        type: integer
      unit:
        required: true
        description: Unit of measurement for the leave quantity (e.g., hours, days).
        type: string
      leaves:
        required: true
        description: List of leave types within the plan.
        type: array
        items:
          type: object
          properties:
            leaveTypeId:
              required: true
              description: Unique identifier for the leave type.
              type: string
            leaveType:
              required: true
              description: Type of leave (e.g., sick, casual).
              type: string
            quantity:
              required: true
              description: Quantity of leave available for this type.
              type: integer
            unit:
              required: true
              description: Unit of measurement for the leave type quantity (e.g., hours, days).
              type: string
Eksempler
{
"absencePlan":
[
{
"planId": "PTO_USA",
"planName":"paid_time_off_usa",
"quantity": 60,
"unit": "hours",
"leaves":
[
{
"leaveTypeId": "SICK_HOUR",
"leaveType":"sick",
"quantity":30,
"unit":"hours"
},
{
"leaveTypeId": "CASUAL_HOUR",
"leaveType":"casual",
"quantity":30,
"unit":"hours"
}
]
},
{
"planId":"FH_USA",
"planName":"floating_holiday_usa",
"leaves": [
{
"leaveTypeId": "VACATION_HOUR",
"leaveType":"vacation",
"quantity":16,
"unit":"hours"
}
]
}
]
}
API for oppdatering av arbeiderdetaljer
Section Eksempler
RAML-hode
#%RAML 1.0
title: Update Worker Details API
description: The Update Worker Details API is intended to provide operations for updating various details of a worker, including address, email, phone, preferred name, and pronoun.
version: v1
mediaType: application/json
protocols:
  - HTTPS
documentation:
  - title: Worker Details domain
    content: |- 
      The Worker Details domain contains the following sections:
        - Update Worker Details
  - title: Worker Details sub groups
    content: |- 
      The Worker Details sub-groups contain the following sections:
        - Address
        - Email
        - Phone
        - Preferred Name
        - Pronoun
Ressurser/metoder
/Update_Worker_Details:
  displayName: Update Worker Details
  post:
    description: Updates the worker's details, including address, email, phone, preferred name, and pronoun.
    displayName: Update Worker Details
Svar
responses:
  '200':
    description: Worker details were updated successfully.
    body:
      application/json:
        type: object
      application/xml:
        type: object
  '400':
    description: Bad request, e.g., invalid parameters.
    body:
      application/json:
        type: object
  '404':
    description: Resource not found.
    body:
      application/json:
        type: string
  '429':
    description: Too many requests, rate limit exceeded.
    body:
      application/json:
        type: object
  '500':
    description: Internal server error.
    body:
      application/json:
        type: object
Sidehoveder / spørringsparametere
# No specific headers or query parameters for this resource
Datatyper
types:
  WorkerDetails:
    description: Represents the details of a worker that can be updated.
    type: object
    properties:
      workerID:
        required: true
        description: Unique identifier for the worker.
        type: string
      effectiveDate?:
        description: The date from which the changes are effective.
        type: date-only
      address?:
        description: Worker's address details.
        type: object
        properties:
          line1:
            required: true
            description: Address line 1.
            type: string
          line2?:
            description: Address line 2.
            type: string
          city:
            required: true
            description: City.
            type: string
          country:
            required: true
            description: Country.
            type: string
          postalCode:
            required: true
            description: Postal code.
            type: string
          region:
            required: true
            description: Region.
            type: string
          isPrimary?:
            description: Indicates if this is the primary address.
            type: boolean
            default: false
          communicationType?:
            description: Type of communication address.
            type: string
            default: "Home"
          replaceAllNonPrimary?:
            description: Indicates if all non-primary addresses should be replaced.
            type: boolean
            default: false
      email?:
        description: Worker's email details.
        type: object
        properties:
          emailAddress:
            required: true
            description: Email address.
            type: string
          isPrimary?:
            description: Indicates if this is the primary email.
            type: boolean
            default: false
          communicationType?:
            description: Type of communication email.
            type: string
            default: "Home"
          replaceAllNonPrimary?:
            description: Indicates if all non-primary emails should be replaced.
            type: boolean
            default: false
      phone?:
        description: Worker's phone details.
        type: object
        properties:
          mobile:
            required: true
            description: Mobile phone number.
            type: string
          isPrimary?:
            description: Indicates if this is the primary phone.
            type: boolean
            default: false
          communicationType?:
            description: Type of communication phone.
            type: string
            default: "Home"
          deviceType?:
            description: Type of device.
            type: string
            default: "Mobile"
          countryCode?:
            description: Country code.
            type: string
          replaceAllNonPrimary?:
            description: Indicates if all non-primary phones should be replaced.
            type: boolean
            default: false
      preferredName?:
        description: Worker's preferred name details.
        type: object
        properties:
          firstName:
            required: true
            description: First name.
            type: string
          lastName:
            required: true
            description: Last name.
            type: string
          country:
            required: true
            description: Country.
            type: string
      pronoun?:
        description: Worker's preferred pronoun.
        type: string
Betalingspåmeldings-API
Section Eksempel
RAML-hode
#%RAML 1.0
title: Employee Payment Enrollment API
description: The Employee Payment Enrollment API is intended to provide operations for fetching and submitting employee payment enrollment details, including bank account information and payment allocations for various payment types like regular pay, bonuses, and expenses.
version: 1.0
mediaType: application/json
protocols:
  - HTTPS
documentation:
  - title: Payment Enrollment domain
    content: |- 
      The Payment Enrollment domain contains the following sections:
        - Fetch Payment Enrollments
        - Submit Payment Elections
  - title: Payment Enrollment sub groups
    content: |- 
      The Payment Enrollment sub-groups contain the following sections:
        - Payment Type Group Name
        - Allocations
        - Bank Account Details
        - Distribution
Ressurser/metoder
/payment-enrollments/{employeeId}:
  displayName: Payment Enrollments
  get:
    description: Fetches payment enrollment details for a specific employee.
    displayName: Get Payment Enrollments
  post:
    description: Submits a payment election enrollment for a specific employee.
    displayName: Submit Payment Elections
Svar
responses:
  '200':
    description: Payment enrollment details were returned successfully.
    body:
      application/json:
        type: object
  '201':
    description: Payment election enrollment was submitted successfully.
    body:
      application/json:
        type: object
  '400':
    description: Invalid request. Missing or incorrect parameters.
    body:
      application/json:
        type: object
  '403':
    description: Unauthorized or insufficient permissions to submit the payment election enrollment.
    body:
      application/json:
        type: object
  '500':
    description: Internal server error.
    body:
      application/json:
        type: object
Sidehoveder / spørringsparametere
get:
    description: Fetch payment enrollment details.
    displayName: Get Payment Enrollments
    queryParameters:
      routingId?:
        type: string
        required: false
        description: Optional routing identifier.
        displayName: Routing ID
      bankAccountType?:
        type: string
        required: false
        description: Type of account to filter, for example, Checking or Savings
Datatyper
types:
  PaymentEnrollment:
    description: Represents the payment enrollment details for an employee.
    type: object
    properties:
      employeeId:
        required: true
        description: Unique identifier for the employee.
        type: string
      paymentEnrollments:
        required: true
        description: List of payment enrollment groups.
        type: array
        items:
          type: object
          properties:
            paymentTypeGroupName:
              required: true
              description: Group name for the type of payment.
              type: string
              enum:
                - REGULAR_PAYMENTS
                - BONUS_PAYMENTS
                - EXPENSE_PAYMENTS
            allocations:
              required: true
              description: Details on how payments within this group are allocated.
              type: array
              items:
                type: object
                properties:
                  paymentType:
                    required: true
                    description: Type of payment for this allocation.
                    type: string
                    enum:
                      - DIRECT_DEPOSIT
                      - CHECK
                    default: DIRECT_DEPOSIT
                  bankAccountDetails:
                    required: true
description: Bank account details for the payment.
                    type: object
                    properties:
                      AccountNumber:
                        required: true
                        description: Employee’s bank account number.
                        type: string
                      bankIdNumber:
                        required: true
                        description: Bank routing or ID number.
                        type: string
                      bankName:
                        required: true
                        description: Name of the bank.
                        type: string
                      accountType:
                        required: true
                        description: Type of account, for example, Savings or Checking.
                        type: string
                        enum:
                          - Checking
                          - Savings
nameOnAccount:
                        required: true
                        description: The name of the account holder as registered with the bank.
                        type: string
                      bankAccountNickname?:
                        description: Optional nickname for the bank account.
                        type: string
                      iban?:
                        description: International Bank Account Number (if applicable).
                        type: string
                      branchIdNumber?:
                        description: Specific branch identifier, if applicable.
                        type: string
                      rollNumber?:
description: Account roll number, used in some countries (e.g., UK building societies).
                        type: string
                      currencyCode:
                        required: true
                        description: Currency of the bank account (e.g., "USD").
                        type: string
                      countryCode:
                        required: true
                        description: Country where the bank account is held (e.g., "US").
                        type: string
                      additionalFields?:
                        description: Custom fields specific to this allocation.
                        type: array
                        items:
                          type: object
                          properties:
                            fieldName:
                              required: true
                              description: Name of the custom field.
                              type: string
                            fieldValue:
                              required: true
                              description: Value of the custom field (can be any simple type).
                              type: object
                  distribution:
                    required: true
                    description: Defines how much of the payment is allocated here.
                    type: object
                    properties:
                      type:
                        required: true
                        description: Type of distribution, for example, PERCENT.
                        type: string
                        enum:
                          - PERCENT
                          - AMOUNT
                          - BALANCE
                      value:
                        required: true
                        description: The actual percentage, amount, or indicator for balance.
                        type: any
                  currencyCode:
                    required: true
                    description: Currency for this specific allocation (e.g., "USD").
                    type: string
                  countryCode:
                    required: true
                    description: Country context for this allocation (e.g., "US").
                    type: string
                  order:
                    required: true
                    description: The sequence/priority of this allocation among others in the same group. Lower numbers typically process first.
                    type: number
                  additionalFields?:
                    description: Custom fields specific to this allocation.
                    type: array
                    items:
                      type: object
                      properties:
                        fieldName:
                          required: true
                          description: Name of the custom field.
                          type: string
                        fieldValue:
                          required: true
                          description: Value of the custom field (can be any simple type).
                          type: object

    
Workday Expense Management API (API for arbeidsdagsutgiftsbehandling)
Section Eksempel
RAML-hode
#%RAML 1.0
title: WD Expense Management API
description: The WD Expense Management API is intended to provide operations for retrieving available expense item types and submitting new expense reports, including individual expense lines and attachments.
version: 1.0.0
mediaType: application/json
protocols:
  - HTTPS
documentation:
  - title: Expense Management domain
    content: |- 
      The Expense Management domain contains the following sections:
        - Get Expense Items
        - Submit Expense Report
        - Get Expense Reports
  - title: Expense Management sub groups
    content: |- 
      The Expense Management sub-groups contain the following sections:
        - Expense Item
        - Expense Report
        - Expense Line
        - Attachment
Ressurser/metoder
/expense-items:
  displayName: Get Expense Items
  get:
    description: Fetches a list of available expense types that can be used when submitting an expense report.
    displayName: Get Expense Items

/expense-reports:
  displayName: Expense Reports
  post:
    description: Creates and submits a new expense report with associated expenses and attachments.
    displayName: Submit Expense Report
  get:
    description: Fetches existing expense reports.
    displayName: Get Expense Reports
Svar
responses:
  '200':
    description: Successful retrieval.
    body:
      application/json:
        type: array
  '201':
    description: Successfully created.
    body:
      application/json:
        type: object
  '400':
    description: The request was invalid or cannot be parsed.
    body:
      application/json:
        type: object
  '403':
    description: Unauthorized or insufficient permissions to submit the expense report.
    body:
      application/json:
        type: object
  '405':
    description: Method not allowed.
    body:
      application/json:
        type: object
  '500':
    description: Internal server error.
    body:
      application/json:
        type: object
Sidehoveder / spørringsparametere
get:
    displayName: Get Expense Reports
    queryParameters:
      orgId?:
        type: string
      employeeId?:
        type: string
Datatyper
types:
  Attachment:
    description: Represents an attachment file for an expense item.
    type: object
    properties:
      file_name:
        required: true
        description: Name of the attachment file.
        type: string
      file_content:
        required: true
        description: Base64 encoded string of the file's content.
        type: string
      content_type:
        required: true
        description: MIME type of the file.
        type: string

  Expense:
    description: Represents an individual expense item in an expense report.
    type: object
    properties:
      item_id:
        required: true
        description: Unique identifier for the expense item type.
        type: string
      amount:
        required: true
        description: Cost per unit of the expense.
        type: number
      quantity:
        required: true
        description: Quantity of the expense item.
        type: number
      total_amount:
        required: true
        description: Total cost for this line (typically amount * quantity).
        type: number
      currency:
        required: true
        description: Currency code for the amount (e.g., "USD").
        type: string
      memo?:
        description: A note or description for this specific expense line.
        type: string
      expense_date:
        required: true
 
Laster
Salesforce Help | Article