Configuring Operand as a Source
In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Operand option from the list of connectors. Click Next and you’ll be prompted to add your access.1. Add account access
You’ll need an Operand API token. It is generated inside Operand by the account owner (root) or an administrator, under Avatar > Configurações > Módulos e Funções > API Operand > Gerar token. The API Operand module must be contracted for the option to appear. The following configurations are available:- API Token: The token generated in Operand. Used to sign in and read your account’s data.
- Start Date: (Optional) The earliest creation date to sync for the incremental streams (projects and jobs). When left empty, the first sync fetches all available history.
- Lookback Window (days): (Default: 90 days) Number of days re-scanned before the last sync point on each incremental run, so records created shortly before it are not missed. Operand only lets you filter projects and jobs by their creation date, so this window is also what lets recently created records be picked up again as they change.
2. Select streams
Choose which data streams you want to sync. For faster extractions, select only the streams that are relevant to your analysis. You can select entire groups of streams or pick specific ones.Tip: The stream can be found more easily by typing its name.Select the streams and click Next.
3. Configure data streams
Customize how you want your data to appear in your catalog. Select the desired layer where the data will be placed, a folder to organize it inside the layer, a name for each table (which will effectively contain the fetched data) and the type of sync.- Layer: choose between the existing layers on your catalog. This is where you will find your new extracted tables as the extraction runs successfully.
- Folder: a folder can be created inside the selected layer to group all tables being created from this new data source.
- Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix to all tables at once and make this process faster!
- Sync Type: you can choose between INCREMENTAL and FULL_TABLE.
- Incremental: every time the extraction happens, we’ll get only the new data - which is good if, for example, you want to keep every record ever fetched.
- Full table: every time the extraction happens, we’ll get the current state of the data - which is good if, for example, you don’t want to have deleted data in your catalog.
4. Configure data source
Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can define some additional settings:- Configure Delta Log Retention and determine for how long we should store old states of this table as it gets updated. Read more about this resource here.
- Determine when to execute an Additional Full Sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while.
5. Check your new source
You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.Streams and Fields
Available streams
The table below lists every stream, its slug (the exact identifier to pass when creating the source via API) and a short description.Fields by stream
Below you’ll find the available data streams from Operand and their main fields. Nested objects and arrays of objects (for examplecontacts, locality, and the joined objects on financial reports) are delivered as JSON strings.
Projects
Projects
Projects registered in Operand. Replicated incrementally by
createdAt.Key Fields:id- Unique identifier of the projecttitle- Title of the projectsituation- Lifecycle situation (active, archived)personId/personName- Associated client/personstatusId- Status of the projectbudget- Estimated budget (decimal string)createdAt- Creation timestamp (replication key)updatedAt- Last update timestamp
requesterId,responsibleId,userUpdateSituationId- Related usersinvolvedIds,involvedProjectIds,favoriteForUserIds- Related IDsdocumentsSituation,counters- Status summary and counts (JSON objects)concludedAt,providedAt,maxDeadline- Related datestotalEstimated,totalRealized,estimatedCost,filesCount,isPrivate
Jobs
Jobs
Jobs registered in Operand. Replicated incrementally by
createdAt.Key Fields:id- Unique identifier of the jobtitle- Title of the jobsituation- Lifecycle situation (active, archived)projectId/projectTitle- Parent projectclientId/clientName- Client the job belongs tostatusId/statusName- Status of the jobcreatedAt- Creation timestamp (replication key)updatedAt- Last update timestamp
responsibleId,jobResponsibleId,requesterId- Related usersopenedTasks,closedTasks,canceledTasks- Task countersestimated,estimatedTime,worked,workedTime- Time trackingdeadline,initialDate- Related datesjsonInvolvedIds- Involved users (JSON array)isDeleted,isShared,hasActiveApproval,isSubtaskBlocked
Tasks
Tasks
Tasks and subtasks belonging to each job.Key Fields:
id- Identifier of the job the task belongs tosubtaskId- Unique identifier of the task/subtasksubtaskTitle- Title of the tasksituation- Lifecycle situationresponsibleId/responsibleName- User responsible for the taskstatusId/statusName- Status of the taskcreatedAt/updatedAt- Creation and last update timestamps
initialDate,deadline,finishedAt- Related datescompleted,orderId,allowDelay,workedTimeblocking,dependents- Dependency lists (JSON arrays)
Clients
Clients
Client registrations.Key Fields:
idClient- Unique identifier of the clientperson- Trade/display namenationalDocument/typeNationalDocument- Document number and type (cpf/cnpj)company- Whether the client is a company (PJ)situation- Lifecycle situation (active, disabled)email,phone,phone2- Contact detailscontacts- List of contacts (JSON array)locality- Full address breakdown (JSON object)totalJobs,lateJobs- Job counters
Vehicles
Vehicles
Media vehicle registrations.Key Fields:
idPerson- Unique identifier of the vehicle registrationperson- Trade/display namename,shortName,network- Vehicle identificationsituation- Lifecycle situationcontacts/locality- Contact and address (JSON)nationalDocument,email,phone,phone2
Providers
Providers
Service provider registrations.Key Fields:
idPerson- Unique identifier of the provider registrationperson- Trade/display namenationalDocument/typeNationalDocument- Document number and typecompany- Whether the provider is a company (PJ)situation- Lifecycle situationcontacts/locality- Contact and address (JSON)
Suppliers
Suppliers
Supplier registrations.Key Fields:
idPerson- Unique identifier of the supplier registrationperson- Trade/display namenationalDocument/typeNationalDocument- Document number and typecompany- Whether the supplier is a company (PJ)situation- Lifecycle situationcontacts/locality- Contact and address (JSON)
Employees
Employees
Employee (collaborator) registrations.Key Fields:
idPerson- Unique identifier of the employee registrationperson- Name of the employeeoccupation- Job title/occupationnationalDocument,stateDocument- Document numbersemail,phone,phone2- Contact detailshiredDate,firedDate,birthdayDate- Related datesgrossSalary,hourlyRate- Compensationbenefits- Benefits (JSON array)
Departments
Departments
Departments configured in the account.Key Fields:
departmentId- Unique identifier of the departmenttitle- Name of the departmentsituation- Lifecycle situationcreatedDate/updatedDate- Creation and last update timestamps
Financial Bills
Financial Bills
Financial bills/invoices (Faturas).Key Fields:
finBillId- Unique identifier of the billbillTitle- Title of the documentbillType- Party type (client, supplier, transfer, …)situation/statusId- Situation and statusvalue,discountValue,increaseValue,totalValue- AmountsdueDate,paymentDate,accrualDate,billingDate- Related datescreatedDate/updatedDate- Creation and last update timestamps
finAccountId,finCategoryId,finCostCenterId,finPaymentMethodIdfinBillGroupId,entPersonId,referrerClientId,userIdattachments,relatedDocuments- JSON arrays
Financial Reports
Financial Reports
Financial ledger entries (Lançamentos). Each record is a denormalized statement joining a bill with its related records. Joined parts are delivered as JSON strings.Fields:
order- Ordering/reference date of the entryfinBills- Bills that make up the entry (JSON array)billets,finAccounts,finCategories,finCostCenters- Joined records (JSON)finNfe,finPaymentMethods,finReconciliation,finStatus- Joined records (JSON)persons,referrerClient,relatedDocument,vehicleDetails- Joined records (JSON)
Financial Billets
Financial Billets
Boletos (bank slips).Key Fields:
billetId- Identifier of the boleto in Operandbillet- Identifier on the external platformfinBillId- Bill the boleto belongs tobilletValue- Value of the boletosituation- Situation (active, settled, removed, …)url- URL to access the boletofineForDelay,latePaymentInterest,instructions,descriptioncreatedDate/updatedDate- Creation and last update timestamps
Financial NFe
Financial NFe
Service invoices (Notas Fiscais).Key Fields:
nfeId- Identifier of the nota fiscal in Operandnumber- Invoice number at the city hallsituation- Situation (waiting, issued, canceling)value,discount- Amountsiss,ir,inss,pis,cofins,csll- Tax fieldscompanyNationalDocument,nationalDocument- DocumentsissuedOn- Issue timestampurlPdf,urlXml- Document URLs
Financial Categories
Financial Categories
Financial categories configuration.Fields:
finCategoryId- Unique identifier of the categorycategoryName- Name of the categorypath- Hierarchical path (e.g. /1/2/)situation- Lifecycle situation
Financial Cost Centers
Financial Cost Centers
Cost centers configuration.Fields:
finCostCenterId- Unique identifier of the cost centercostCenter- Name of the cost centersituation- Lifecycle situation
Financial Bank Accounts
Financial Bank Accounts
Bank accounts configuration.Fields:
finAccountId- Unique identifier of the bank accountaccountName- Display namebankCode,bankName- Bank identificationagency,account,operation,station- Account identificationsituation- Lifecycle situation
Financial Payment Methods
Financial Payment Methods
Payment methods configuration.Fields:
finPaymentMethodId- Unique identifier of the payment methodpaymentMethod- Name of the payment methodsituation- Lifecycle situation
Financial Invoice Statuses
Financial Invoice Statuses
Invoice/document statuses configuration.Fields:
statusId- Unique identifier of the statusstatusName- Name of the statuscolor- Hex colororder- Display ordertypeDoc- Document type the status applies tosituation- Lifecycle situation