Save a new filter view
Saves a new named filter view for the caller on the page in the route, optionally as the page's default view.
Stores the caller's current filter selections and view options under a name. The owner is always the authenticated user; the page is the route's pageIdentifier. Setting IsDefault makes it the view the page opens with and clears the flag on the caller's other views of that page. The response body is JSON null — the new view's ID is not returned; list the page's views to find it.
Not for:
- Changing an existing view —
PUT /v2/filter-view/{pageIdentifier}
Behaviour:
- Not idempotent.
- Not safe to retry blindly. Each call inserts a new view; names are not unique, so a retry after a lost response creates a duplicate.
- Duplicates: Not deduplicated — same name twice gives two views.
- Side effect: Inserts the view and its values.
- Side effect: IsDefault = true: clears IsDefault on the caller's other views of the same page.
- On failure: Not transactional: if the value insert fails, the view row remains without (some of) its values.
- Changes are visible to the next read immediately.
Next: GET /v2/filter-view/{pageIdentifier}
See also: PUT /v2/filter-view/{pageIdentifier}
Not yet documented: behaviour → side effects on failure; examples.
curl -X POST "https://app3.timelog.com/your-account/api/v2/filter-view/Home" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"Name": "John Doe",
"IsDefault": true,
"FilterValues": [
{
"Name": "John Doe",
"Value": "example_string",
"IsInclusive": true,
"FilterType": "SingleSelect"
}
]
}'
import requests
import json
url = "https://app3.timelog.com/your-account/api/v2/filter-view/Home"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
data = {
"Name": "John Doe",
"IsDefault": true,
"FilterValues": [
{
"Name": "John Doe",
"Value": "example_string",
"IsInclusive": true,
"FilterType": "SingleSelect"
}
]
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://app3.timelog.com/your-account/api/v2/filter-view/Home", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
},
body: JSON.stringify({
"Name": "John Doe",
"IsDefault": true,
"FilterValues": [
{
"Name": "John Doe",
"Value": "example_string",
"IsInclusive": true,
"FilterType": "SingleSelect"
}
]
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"Name": "John Doe",
"IsDefault": true,
"FilterValues": [
{
"Name": "John Doe",
"Value": "example_string",
"IsInclusive": true,
"FilterType": "SingleSelect"
}
]
}`)
req, err := http.NewRequest("POST", "https://app3.timelog.com/your-account/api/v2/filter-view/Home", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://app3.timelog.com/your-account/api/v2/filter-view/Home')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
request.body = '{
"Name": "John Doe",
"IsDefault": true,
"FilterValues": [
{
"Name": "John Doe",
"Value": "example_string",
"IsInclusive": true,
"FilterType": "SingleSelect"
}
]
}'
response = http.request(request)
puts response.body
"null"
{
"Code": 200,
"Details": [
"The value 'test' is not valid for PageIdentifier.",
"'Name' must not be empty."
],
"Message": "Invalid model state error.",
"Parameters": "model: {"Name":null,"IsDefault":false,"FilterValues":null}",
"Url": "https://app{server-number}.timelog.com/{account}/api/v2/filter-view/test"
}
{
"error": "Unauthorized",
"message": "Authentication required. Please provide a valid API token",
"code": 401
}
{
"error": "Not Found",
"message": "The requested resource was not found",
"code": 404
}
{
"error": "Internal Server Error",
"message": "An unexpected error occurred on the server",
"code": 500,
"requestId": "req_1234567890"
}
/v2/filter-view/{pageIdentifier}Target server for requests. Edit to use your own host.
OAuth 2.0 bearer token, sent as Authorization: Bearer <token>. JWT and reference tokens are both accepted. The token must carry the required scope (default tlp).
The token's sub claim is the acting user. A token WITHOUT sub (client-credentials) acts as the system service user. If the sub user cannot log in (inactive, locked, deleted), the request is rejected with 401 — it is no longer let through without a user.
> Not yet documented: how to obtain a token.
> Not yet documented: token lifetime.
Authorization: Bearer <token>. JWT and reference tokens are both accepted. The token must carry the required scope (default tlp).
The token's sub claim is the acting user. A token WITHOUT sub (client-credentials) acts as the system service user. If the sub user cannot log in (inactive, locked, deleted), the request is rejected with 401 — it is no longer let through without a user.
> Not yet documented: how to obtain a token.
> Not yet documented: token lifetime.The page the new view belongs to, as a PageIdentifier member name or integer value (see GET /v2/filter-view/{pageIdentifier}). Not checked for having a saved-view UI.
Allowed values: see PageIdentifier.
The media type of the request body
Display name of the view. Not checked for uniqueness. Can be set on create only. > Not yet documented: constraints → max length.
true = make this the caller's default view for the page; the caller's other views on that page lose the flag. Can be set on create only.
The values to save. May be an empty list. Can be set on create only. - FilterValues omitted or null — No validator rule; the adapter iterates it and fails with HTTP 500 Code 100. > Not yet documented: multiple.
Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token. OAuth 2.0 bearer token, sent as Authorization: Bearer <token>. JWT and reference tokens are both accepted. The token must carry the required scope (default tlp).
The token's sub claim is the acting user. A token WITHOUT sub (client-credentials) acts as the system service user. If the sub user cannot log in (inactive, locked, deleted), the request is rejected with 401 — it is no longer let through without a user.
Not yet documented: how to obtain a token.
Not yet documented: token lifetime.
Path Parameters
The page the new view belongs to, as a PageIdentifier member name or integer value (see GET /v2/filter-view/{pageIdentifier}). Not checked for having a saved-view UI.
Allowed values: see PageIdentifier.
HomeDetailedTimesheetWeeklyTimesheetProjectExpenseTravelExpensesRegistrationEventsImportEmployeeExpensesCRMCustomerCRMContactCRMEventCRMOpportunityCRMRelationCRMCustomerNewCRMContactNewSearchProjectNewProjectNewQuickProjectImportFromMSProjectDebtorListInvoicesDebtorListVouchersSearchInvoiceTransferInvoicesInvoiceNewVoucherNewEmployeesResourcePlannerBookedVsRegisteredApproveTimeReportsApproveExpensesNewEmployeeCVOverviewNewCVSkillMatrixReportsCRMHomeStartCRMPipelineCRMReportCRMJournalCRMLeadInboxProjectSettingProjectTaskPlanViewProjectTaskBudgetViewProjectResourceViewProjectGanttViewProjectResourceGroupProjectPaymentPlanProjectBudgetOverviewProjectDeprecationStatusAmountProjectDeprecationStatusHourProjectInvoiceOverviewProjectDocumentsProjectStatusReportTableViewReportBoxViewExpenseReportSubmitPrintKeyPerformanceIndexProjectPlansProjectAssignmentsWorkloadCustomerSignOffAbsenceSpecificationAbsenceProductivityAbsenceReportFlexBalanceAllEmployeesAbsenceSpecificationAllEmployeesEmployeeOverviewWorkCustomersWorkSingleCustomerEmployeeOverview2HeadCountAccountingProjectsWorkInProgressPaymentPlansOverviewCRMEventNewCRMOpportunityNewBudgetCompanyBudgetEmployeesContributionMarginAccountingMonthlyAccountingCustomersAccountingProjectsRegistrationTypesBalanceProjectBudgetsProjectOverviewAllocatedActualWorkTimeRegistrationsTimeRegistrationsNewActiveProjectTasksBudgetFollowUpMilestonesGanttChartProjectFactorWorkProjectsWorkProjectTypesWorkProjectCategoriesWorkTaskTypesProjectPortfolioProjectCategoriesAnalysisChangeHourlyRatesOnAllocationsAdjustBillableNonBillableRedistributionOfTimeMoveAllocationsDepartmentProjectsEmployeesWorkDepartmentsReportApproveTimeReportsStatusForTimeReportsReportApproveExpensesReportBalanceExpensesTimeRegistrationsDetailedTimeRegistrationsSummarisedTimelogCRMWorkIndustriesPivotReportTimeRegistrationsPerProjectEmployeeContributionAnalysisInvoicingPercentageEmployeeEfficiencyInternalExternalAnalysisEmployeeKeyFiguresEmployeeTimeCustomersAndProjectsEmployeeTimeProjectTypesAndTaskTypesEmployeeTimeHourlyRatesLastTimeRegistrationAccuracyInTimeTrackingDataExtractionProjectsDataExtractionTasksDataExtractionAllocationsDataExtractionInstallmentsDataExtractionProjectBaselineDataExtractionCustomersDataExtractionInvoicesDataExtractionInvoiceLinesDataExtractionExpensesDataExtractionTravelExpensesDataExtractionMileageDataExtractionAbsenceAndSalaryCodesExportProjectsReportImportOfExpensesInvoiceLinesExportExportToKontekPAXmlExportToVismaLonSuperTimesheetEmployeeOverviewTableViewEmployeeOverviewBoxViewSalaryExtractionForLessorLonTimeLogTrackerInstallEditEmployeeCVEventsCustomersAdvanceETCReportSubmitEmployeeCVIntegrationLogWorkEmployeeTypesStatusReportsSystemAdministrationRegistrationTimeRegistrationSettingSystemAdministrationRegistrationExpenseSettingSystemAdministrationEmployeeSettingSystemAdministrationRegistrationAllowanceTypesSystemAdministrationRegistrationPaymentMethodSystemAdministrationRegistrationMileageRatesSystemAdministrationRegistrationExpenseTypesSystemAdministrationApprovalSettingSystemAdministrationCRMSettingSystemAdministrationCRMStandardValuesSystemAdministrationCRMNotificationsSystemAdministrationCRMExtranetSystemAdministrationCRMIndustryCodesSystemAdministrationCRMGroupsSystemAdministrationCRMStatusesSystemAdministrationCRMEventTypesSystemAdministrationCRMRelationsSystemAdministrationCRMBarriersSystemAdministrationCRMOpportunityStatusSystemAdministrationCRMOpportunityTypesSystemAdministrationPMProjectSettingSystemAdministrationPMStandardValuesSystemAdministrationPMProjectInvoicingSystemAdministrationPMNotificationsSystemAdministrationPMProjectTypesSystemAdministrationPMProjectCategoriesSystemAdministrationPMTaskTypesSystemAdministrationPMProjectStagesSystemAdministrationPMProjectTemplatesSystemAdministrationPMETCSettingSystemAdministrationInvoiceSettingSystemAdministrationInvoiceStandardValuesSystemAdministrationInvoiceTemplatesSystemAdministrationInvoiceHourlyRatesSystemAdministrationInvoiceCostPricesSystemAdministrationInvoicePaymentTermsSystemAdministrationInvoiceAccountingPeriodSystemAdministrationInvoiceProductNumberSystemAdministrationInvoiceCurrencySettingSystemAdministrationInvoiceInvoiceLineExportSettingSystemAdministrationInvoiceConfigurationModelOfCalculationSystemAdministrationEmployeePermissionSystemAdministrationEmployeeTypesSystemAdministrationEmployeeNormHoursSystemAdministrationEmployeeHolidayCalendarSystemAdministrationEmployeeSkillSettingSystemAdministrationEmployeeCompetenciesSystemAdministrationReportActivationSystemAdministrationReportAdvancedSettingSystemAdministrationReportKPISettingSystemAdministrationIntegrationAPISettingSystemAdministrationIntegrationSystemIntegrationSystemAdministrationIntegrationStandardFileExportSystemAdministrationIntegrationImportOfStandardFieldSystemAdministrationGeneralSettingDepartmentsSystemAdministrationGeneralSettingNumberSeriesSystemAdministrationGeneralSettingSecurityAccessEditEmployeeEmployeeOverviewBaseShowMyCustomersCRMHomeCompanyCRMHomeEmployeeSystemAdministrationGeneralSettingRootPageSystemAdministrationGeneralSettingLicenseSettingSystemAdministrationEmployeeNotificationPrintJournalChronologicallyEditCustomerSystemAdministrationGeneralSettingFrontPageProjectPlanProgressCRMEditEventExternalTransactionLogSystemAdministrationEmployeeSalaryCodesCRMRelationNewCRMRelationEditCRMOpportunityEditCRMContactEditFrontPageInvoiceEditInvoiceBookedVoucherEditVoucherBookedCreditNoteNewCreditNoteEditCreditNoteBookedReminderNewReminderEditReminderBookedCRMReportLastUpdatedCustomerCRMReportSalesPipelineCRMReportEventOverviewPersonalProfilePersonalPreferenceChangePasswordProjectAddResourceToTasksProjectAddMultipleResourcesToTaskProjectAddOneResourceProjectUpdateProjectStartAndEndDatesTimeRegistrationDrillDownNewHourlyRateProjectAddMultipleInstallmentsErrorListContractOverviewAccessDeniedProjectFactorDetailsExportSDLonSalaryExtractionForHogiaProjectPendingBookingActionTimeReportUserDefinedSystemAdministrationReportProjectFactorSettingProjectOverviewOldProcessSidePanelCustomLinkSidePanelCustomHelpSidePanelSystemAdministrationEmployeeRolesMatrixesEditProjectExpenseEditTravelExpenseCRMSupplierNewSystemAdministrationIntegrationReportingAPISettingSystemAdministrationIntegrationReportingAPILogTestPageReportMVCTestPageReportNetWebFormTestPageReportClassicASPSystemAdministrationGeneralSettingNotificationSettingsNewInvoiceWithProjectNewInvoiceWithCustomerNewInvoiceWithCustomerAndProjectNewVoucherWithProjectNewVoucherWithCustomerNewCreditNoteWithInvoiceNewReminderWithInvoiceReportProjectSumFiguresSalaryExtractionForAccobatInvoiceLinesExportForAccobatReportWorkInProgressUnitsReportAtkiCopyProjectConsultantHoursReportEmployeeHoursReportHempelInvoiceSpecificationReportImportExpensesDevelcoEmployeeOverviewExportEUProjectsReportEmployeeProductivityReportVoucherSystemStatementReportEdlundInvoiceSpecificationReportGlobeteamExportRegisteredTimeReportGlobeteamExportTasksReportAddProjectTemplateIntoExisitingProjectExportNonInvoicedHoursEmployeeOverviewReportAdjustAllocationWithStandardHourlyRatesOneClickInvoicingLogProjectProfitabilityDataImporterInvoiceAccountingPeriodProjectTaskPlanHourDataExtractionProjectContractBaselineInvoice_InvoiceLogInvoiceArchiveSystemAdministrationProductListErrorExpensesBatchAdjustProjectPaymentsSystemAdministrationInvoiceUnitTypeDataExtractionProjectSubContractSystemAdministrationEmployeeCVStatusBasicoDataExtractionForNavTimeTrackingBaseSystemAdministrationPMMilestoneTypesInvoiceLineExportReportExportInvoiceDataReportAnalysisPivotReportEU_ProjectsReportEnhancedSystemAdministrationPlatformPaymentFormPlatformSignupStepsSystemAdministrationPlatformLicenceOverviewSystemAdministrationPlatformInvoiceOverviewSystemAdministrationPlatformActionLogSalarySpecificationReportSystemAdministrationPlatformAccountSpecificationsSystemAdministrationPlatformAccountSettingsSystemAdministrationPlatformInvoiceInformationCashFlowReportFortnoxExportToCronaLonProjectTemplateSyncChangesToLinkedProjectsReportPlatformSignupSalaryManagementOverviewSalaryManagementNewAdjustmentSystemAdministrationEmployeeSalaryGroupSalaryAccountSpecificationSystemAdministrationEmployeeSalaryAccountTypeSystemAdministrationEmployeeAbsenceCodesSystemAdministrationEmployeeAbsenceCodeTypeSystemAdministrationInvoiceProductNumberDimensionMappingSystemAdministrationEmployeeSalaryAccountApproveProjectTimeReportsTransferSalaryFileDownloadTransferEmployeeSalarySalaryPeriodsSystemAdministrationEmployeeSalaryPeriodsSalaryTransferCheckSystemAdministrationPlatformCustomerSystemOwnerGDPRDataSearchReportProjectPlanAmountAddSalesShareDetailedMileageReimbursementReportExtranetLoginExtranetMainExtranetProjectOverviewExtranetTimeRegistrationsExtranetInvoicesExtranetStatusReportsModalWeeklyTimesheetAddProjectTasksModalWeeklyTimesheetNewSubTaskModalDetailedTimesheetNewSubTaskModalDebtorListDrillDownModalCrmImportCustomersModalCrmSendEmailModalCrmCreateInstallmentsModalProjectSaveAsTemplateModalProjectSendEmailModalProjectNewBaselineModalProjectCalculatorModalProjectDrillDownModalProjectAddResourceToTaskModalProjectAddResourcesToTaskModalProjectAddOneResourceModalProjectAdjustTimePlanModalProjectMoveTaskModalProjectUpdateProjectDatesModalProjectMoveAllocationModalProjectNewHourlyRateModalProjectAddMultipleInstallmentsModalResourcePlannerAddToTaskModalResourcePlannerSetWorkloadModalResourcePlannerRemoveBookingsModalCvAddLanguageModalCvAddCompetencesModalCvAddEducationModalCvAddCourseModalCvAddProjectModalCvActivityModalReportWorkloadAddTasksModalReportRedistributionOfTimeModalHourlyRateNewPriceListModalHourlyRateNewCustomerPriceListModalHourlyRateAdjustPriceGroupsModalAccountingPeriodAddNewModalSalaryCopyGroupModalRedistributionOfTimeSplitterModalCrmImportCustomersStepTwoModalCrmImportCustomersStepThreeModalCrmImportCustomersStepFourModalCrmImportCustomersStepFiveProjectInvoiceSettingsModalCreateContractModelModalProjectAddResourceToMultipleMilestonesModalProjectCopyTasksAndMilestonesInvoiceExportFileListSystemAdministrationGeneralSettingLegalEntitySystemAdministrationBasicPlusFeatureSettingAdvancedResourcePlannerProjectManagerOverviewSalesBudgetGenericBudgetValuesSalesReportContributionRatioReportEmployeeCapacityResourceManagementReportAbsenceCalendarCorporateHolidayCalendarMilestonesReportNewDebtorListInvoiceNewDebtorListVoucherSalaryAccountBalanceSectionSalaryFlexAccountSpecificationSystemAdministrationGeneralSettingPersonalDataProtectionSalaryAccountSpecificationAllModalDeleteProjectNavBarExportReportNitroSAPExportEmployeeExpenseEditEmployeeExpenseEmployeeExpenseChangeCurrencyModalExpenseVisualizePicturesModalModalDeleteExpenseProjectExpenseChangeCurrencyModalAgentOverviewReportTransferEmployeeExpenseProjectAllExpensesImportProjectExpensesAbsenceAnalysisReportSystemAdministrationGeneralSettingSystemStartDateAbsenceAnalysisReportDrillDownExpenseOverviewReportModalMilestoneChangeOwnerIntercompanyInvoiceIntercompanyProjectProfitabilityReportCreateProjectFromTemplateMileageRegistrationEditMileageRegistrationModalDeleteMileageRegistrationProjectRecurringProductSaleIndexationRecurringContractsAndProductsMilestoneInlineEditSystemAdministrationRegistrationCarsIndexationOfHourlyRateBaseIndexationOfHourlyRateByPercentageIndexationOfPriceListsImportDataFileQualityAssuranceReportSystemAdministrationEmployeeSalaryRuleNewResourcePlannerSystemAdministrationResourceManagementSettingModalImportPublicHolidayHistoricalIndexedHourlyRatesDataExtractionAbsenceExpenseDownloadAttachmentsSystemAdministrationOneClickInvoicingInvoiceTemplateIntegrationFortnoxAddNewProcessingSystemAdministrationPMContractTypesAssignCustomersToMCPContractModalLinkCustomerWithIntegrationModalLinkContactWithIntegrationDesignSevenFrontPageDesignSevenReportsSystemAdministrationIntegrationSharePointCallbackSystemAdministrationIntegrationSharePointConnectRedirectPiccaNavRevenueExportDesignSevenSearchProjectDesignSevenEditEmployeeCompetenceDesignSevenMoveHoursRevenueForecastingReportProjectPortfolioOverviewWidgetOverdueInvoicesWidgetPlannedAbsenceWidgetInvoicedPerMonthWidgetBudgetRemainingWidgetProjectEconomyHealthWidgetAverageHourlyRateWidgetTimeTrackingDelayWidgetVacationCalculationWidgetHourKPIWidgetHourKPIWithBARWidgetHourKPIHoursOnlyWidgetBillablePercentageWidgetExternalPercentageWidgetPersonalPlanSystemAdministrationAccountingPeriodPhoenixSystemAdministrationIntercompanyExchangeRateSettingMercuriExportOfMonthlyProjectFiguresReportMercuriExportOfEmployeeFiguresReportPhoenixProjectManagementPhoenixDashboardsOverviewPhoenixDashboardsViewNotSpecifiedBody
Display name of the view. Not checked for uniqueness.
Can be set on create only.
Not yet documented: constraints → max length.
true = make this the caller's default view for the page; the caller's other views on that page lose the flag.
Can be set on create only.
The values to save. May be an empty list.
Can be set on create only.
- FilterValues omitted or null — No validator rule; the adapter iterates it and fails with HTTP 500 Code 100.
Not yet documented: multiple.
Responses
*Success without content: HTTP 200 with the literal JSON body null. Body is the JSON literal null.
Order: none
Empty result: none*