Back to top

Ajera API

message for Ajera API general doc

For additional api methods see the following below:
Home
Clients API
Contacts API
Employees API
Vendors API
Projects API
Expense Reports API
GL Accounts API

Messages

Group of all messages-related resources.

API Endpoint

id is an Ajera API specific id that is required to access the API for any given API server call. This id and specific url can be obtained from the Ajera 8 Menu Utility -> Setup Integrations -> API Settings

List Account Groups
POST/AjeraAPI.ashx?{id}

NOTE: ListAccountGroups requires that the API user be setup with an Authorized Ajera User.

ListAccountGroups at a minimum takes no arguments, but can be filtered.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListAccountGroups
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListAccountGroups",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ["Active"]
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: { //this object is required but can be just {} an empty object
        FilterByStatus: "string array, optional, Active, Inactive"
    }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    Content: {
        GLAccounts: [
            {
                "AccountGroupKey": integer, GL Account Group Key,
                "Description": string, "Cash", Account Group Description
                "Status": string, "Active", Status, Active/Inactive
                "Notes": string, "", Any notes applied to the account group
            }
        ]
    },
    Errors: [],
    Message: "Success",
    ResponseCode: 200,
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
        type: int
    },
    Message: {
        type: "string"
    },
    Errors: {
        type: "array"
    },
    Content: {
        type: "object"
    },
    UsageKey: {
        type: "guid"
    }
}

List Activities
POST/AjeraAPI.ashx?{id}

ListActivities returns an array of Activities, limited by the optional filters detailed below.

Each returned Activity includes only very basic information. This method is intended to be used for querying Activities for particular key values, which can then be passed to GetActivities for more detailed information.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListActivities
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListActivities",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['inactive', 'active'],
        FilterByDescriptionLike: 'admin',
        FilterByActivityType: [3],
        FilterByUtilizationType: [1, null],
        FilterByIsUnitBased: [true],
        FilterByIsTaxable: [true],
        FilterByAllowExpenseEntry: [false],
        FilterByAllowPurchaseOrderEntry: [true],
        FilterByIsICRExpense: [true]
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
        FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
        FilterByDescriptionLike: "string, optional",
        FilterByActivityType: "int array, can include null, optional",
        FilterByUtilizationType: "int array, can include null, optional",
        FilterByIsUnitBased: "bool array, optional",
        FilterByIsTaxable: "bool array, optional",
        FilterByAllowExpenseEntry: "bool array, optional",
        FilterByAllowPurchaseOrderEntry: "bool array, optional",
        FilterByIsICRExpense: "bool array, optional"
    }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        ActivityKey: 3,
        Description: "description",
        Status: "Active",
        Notes: "notes",
        ICRExpense: false
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    type: "object",
    properties: {
        ResponseCode: {
            type: int
        },
        Message: {
            type: "string"
        },
        Errors: {
            type: "array"
        },
        Content: {
            type: "object",
            properties: {
                ActivityKey: {
                    type: int
                },
                Description: {
                    type: "string"
                },
                Status: {
                    type: "string"
                },
                Notes: {
                    type: "string"
                }
            }
        },
        UsageKey: {
            type: "guid"
        }
    }
}

List Bank Accounts
POST/AjeraAPI.ashx?{id}

ListBankAccounts returns an array of Bank Accounts, limited by the optional filters detailed below.

Each returned Bank Account includes only very basic information. This method is intended to be used for querying Bank Accounts for particular key values.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListBankAccounts
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListBankAccounts",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['active']
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
        FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
    }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        BankAccountKey: 1,
        Description: "bank account",
        Status: "Active",
        Notes: "notes"
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
            type: int
        },
    Errors: {
            type: "array"
        },
    Message: {
            type: "string"
        },

    Content: {
        type: "object",
        properties: {
            BankAccountKey: {
                type: int
            },
            Description: {
                type: "string"
            },
            Status: {
                type: "string"
            },
            Notes: {
                type: "string"
            }

        },
    UsageKey: {
            type: "guid"
        }
    }
}

List Chargeable Phases
POST/AjeraAPI.ashx?{id}

ListChargeablePhases returns an array of Phases, ProjectKey is a required option

Each returned Phase includes the key, the description, the indented level, an a bit indicating if it is selectable for expenses.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListChargeablePhases
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListChargeablePhases",
    SessionToken: "",
    MethodArguments: {
        ProjectKey: 1
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
        ProjectKey: "integer, required, must be a valid project, see ListProjects for keys"
    }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        ChargeablePhases: [
            {
                Key: 1,
                Description: "phase description",
                Level: 0,
                Enabled: false
            }
        ]
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    type: "object",
    properties: {
        ResponseCode: {
            type: int
        },
        Message: {
            type: "string"
        },
        Errors: {
            type: "array"
        },
        Content: {
            type: "object",
            properties: {
                ChargeablePhases: {
                    type: "array"
                    properties: {
                        Key: "int, phase key",
                        Description: "string, phase description",
                        Level: "int, indent level in the tree",
                        Enabled: "boolean, indicates if the phase can be charged to"
                    }
                }
            }
        },
        UsageKey: {
            type: "guid"
        }
    }
}

List Companies
POST/AjeraAPI.ashx?{id}

ListCompanies returns an array of Companies, limited by the optional filters detailed below.

Each returned Company includes only very basic information. This method is intended to be used for querying Companies for particular key values.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListCompanies
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListCompanies",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['active']
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
      FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
   }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        CompanyKey: 1,
        Description: "Accutera Architects",
        Status: "Active",
        Notes: "notes"
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
            type: int
        },
    Errors: {
            type: "array"
        },
    Message: {
            type: "string"
        },

    Content: {
        type: "object",
        properties: {
            CompanyKey: {
                type: int
            },
            Description: {
                type: "string"
            },
            Status: {
                type: "string"
            },
            Notes: {
                type: "string"
            }

        },
    UsageKey: {
            type: "guid"
        }
    }
}

List Departments
POST/AjeraAPI.ashx?{id}

ListDepartments returns an array of Departments, limited by the optional filters detailed below.

Each returned Department includes only very basic information. This method is intended to be used for querying Departments for particular key values.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListDepartments
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListDepartments",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['Active']
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
        FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
    }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        DepartmentKey: integer - 1,
        Department: string - "description of department",
        Notes: string - "",
        Status: string - "Active",
        DPEPercent: float - 0,
        OverheadPercent: float - 0
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
            type: int
        },
    Errors: {
            type: "array"
        },
    Message: {
            type: "string"
        },
    Content: {
        type: "object",
        properties: {
            DepartmentKey: {
                type: integer
            }
            Department: {
                type: string
            }
            Notes: {
                type: string
            }
            Status: {
                type: string
            }
            DPEPercent: {
                type: float
            }
            OverheadPercent: {
                type: float
            }
        },
    UsageKey: {
            type: "guid"
        }
    }
}

List Invoice Formats
POST/AjeraAPI.ashx?{id}

ListInvoiceFormats returns an array of Invoice Formats, limited by the optional filters detailed below.

Each returned Invoice Formats includes only very basic information. This method is intended to be used for querying Invoice Formats for particular key values.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListInvoiceFormats
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListInvoiceFormats",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['active']
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
      FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
   }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        InvoiceFormatKey: 1,
        Description: "Time & Expense",
        Status: "Active",
        Notes: "notes"
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
            type: int
        },
    Errors: {
            type: "array"
        },
    Message: {
            type: "string"
        },

    Content: {
        type: "object",
        properties: {
            CompanyKey: {
                type: int
            },
            Description: {
                type: "string"
            },
            Status: {
                type: "string"
            },
            Notes: {
                type: "string"
            }

        },
    UsageKey: {
            type: "guid"
        }
    }
}

List Payroll Taxes
POST/AjeraAPI.ashx?{id}

ListPayrollTaxes returns an array of Payroll Taxes, limited by the optional filters detailed below.

Each returned Payroll Tax includes only very basic information.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListPayrollTaxes
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListPayrollTaxes",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['active']
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
        FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
   }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        PayrollTaxes: [{
            PayrollTaxKey: int, 1,
            Description: string, "Federal withholding",
            Status: string, "Active"
            Notes: string, ""
        }]
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
            type: int
        },
    Errors: {
            type: "array"
        },
    Message: {
            type: "string"
        },
    Content: {
        type: "object",
        properties: {
            PayrollTaxes: {
                type: "array",
                properties: {
                    PayrollTaxKey: int,
                    Description: string,
                    Status: string,
                    Notes: string
                }
            }
        },
    UsageKey: {
            type: "guid"
        }
    }
}

List Pays
POST/AjeraAPI.ashx?{id}

ListPays returns an array of Pays, limited by the optional filters detailed below.

Each returned Pay includes only very basic information.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListPays
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListPays",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['active']
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
        FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
   }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        Pays: [{
            PayKey: int, 1,
            Description: string, "Regular",
            Status: string, "Active"
            Notes: string, ""
        }]
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
            type: int
        },
    Errors: {
            type: "array"
        },
    Message: {
            type: "string"
        },
    Content: {
        type: "object",
        properties: {
            Pays: {
                type: "array",
                properties: {
                    PayKey: int,
                    Description: string,
                    Status: string,
                    Notes: string
                }
            }
        },
    UsageKey: {
            type: "guid"
        }
    }
}

List Rate Tables
POST/AjeraAPI.ashx?{id}

ListRateTables returns an array of Rate Tables, limited by the optional filters detailed below.

Each returned Rate Table includes only very basic information.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListPays
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListRateTables",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['active']
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
        FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
   }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        RateTables: [{
            RateTableKey: int, 1,
            Description: string, "MEI Current - No markup",
            Status: string, "Active"
            Notes: string, ""
        }]
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
            type: int
        },
    Errors: {
            type: "array"
        },
    Message: {
            type: "string"
        },
    Content: {
        type: "object",
        properties: {
            RateTables: {
                type: "array",
                properties: {
                    RateTableKey: int,
                    Description: string,
                    Status: string,
                    Notes: string
                }
            }
        },
    UsageKey: {
            type: "guid"
        }
    }
}

List Wage Tables
POST/AjeraAPI.ashx?{id}

ListWageTables returns an array of Wage Tables, limited by the optional filters detailed below.

Each returned Wage Table includes only very basic information.

Example URI

POST /AjeraAPI.ashx?ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9
URI Parameters
HideShow
id
string (required) Example: ew0KICAiRGF0YWJhc2VOYW1lIjogIkFqZXJhX01haW4iDQp9

An unique identifier required for api access.

Request  ListPays
HideShow
Headers
Content-Type: application/json
Accept: application/json
Body
{
    Method: "ListWageTables",
    SessionToken: "",
    MethodArguments: {
        FilterByStatus: ['active']
    }
}
Schema
{
    Method: "string, required",
    SessionToken: "string",
    MethodArguments: {
        FilterByStatus: "string array, optional, (either 'Active' or 'Inactive', case-insensitive)"
   }
}
Response  200
HideShow
Headers
Content-Type: application/json
Body
{
    ResponseCode: 200,
    Message: "Success",
    Errors: [],
    Content: {
        WageTables: [{
            WageTableKey: int, 1,
            Description: string, "MEI Current - No markup",
            Status: string, "Active"
            Notes: string, ""
        }]
    },
    UsageKey: "6e983af4-946f-4947-9fbd-a233f796f6b4"
}
Schema
{
    ResponseCode: {
            type: int
        },
    Errors: {
            type: "array"
        },
    Message: {
            type: "string"
        },
    Content: {
        type: "object",
        properties: {
            WageTables: {
                type: "array",
                properties: {
                    WageTableKey: int,
                    Description: string,
                    Status: string,
                    Notes: string
                }
            }
        },
    UsageKey: {
            type: "guid"
        }
    }
}

Generated by aglio on 16 Nov 2023